This commit is contained in:
twinaphex 2020-12-20 01:28:11 +01:00
parent 5dc23a3e30
commit c32c2cb793
6 changed files with 13 additions and 94 deletions

View File

@ -46,13 +46,13 @@ ifeq ($(platform), unix)
IS_X86 = 1 IS_X86 = 1
endif endif
LDFLAGS += $(PTHREAD_FLAGS) LDFLAGS += $(PTHREAD_FLAGS)
FLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR FLAGS += $(PTHREAD_FLAGS)
else ifeq ($(platform), osx) else ifeq ($(platform), osx)
TARGET := $(TARGET_NAME).dylib TARGET := $(TARGET_NAME).dylib
fpic := -fPIC fpic := -fPIC
SHARED := -dynamiclib SHARED := -dynamiclib
LDFLAGS += $(PTHREAD_FLAGS) LDFLAGS += $(PTHREAD_FLAGS)
FLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR FLAGS += $(PTHREAD_FLAGS)
ifeq ($(arch),ppc) ifeq ($(arch),ppc)
ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
OLD_GCC := 1 OLD_GCC := 1
@ -108,39 +108,18 @@ else ifeq ($(platform), qnx)
fpic := -fPIC fpic := -fPIC
SHARED := -lcpp -lm -shared -Wl,--no-undefined -Wl,--version-script=link.T SHARED := -lcpp -lm -shared -Wl,--no-undefined -Wl,--version-script=link.T
#LDFLAGS += $(PTHREAD_FLAGS) #LDFLAGS += $(PTHREAD_FLAGS)
#FLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR #FLAGS += $(PTHREAD_FLAGS)
FLAGS += -DHAVE_MKDIR
CC = qcc -Vgcc_ntoarmv7le CC = qcc -Vgcc_ntoarmv7le
CXX = QCC -Vgcc_ntoarmv7le_cpp CXX = QCC -Vgcc_ntoarmv7le_cpp
AR = QCC -Vgcc_ntoarmv7le AR = QCC -Vgcc_ntoarmv7le
FLAGS += -D__BLACKBERRY_QNX__ -marm -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=softfp FLAGS += -D__BLACKBERRY_QNX__ -marm -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=softfp
else ifeq ($(platform), ps3)
TARGET := $(TARGET_NAME)_ps3.a
CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe
CXX = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-g++.exe
AR = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe
ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
OLD_GCC := 1
FLAGS += -DHAVE_MKDIR -DARCH_POWERPC_ALTIVEC
STATIC_LINKING = 1
else ifeq ($(platform), sncps3)
TARGET := $(TARGET_NAME)_ps3.a
CC = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe
CXX = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe
AR = $(CELL_SDK)/host-win32/sn/bin/ps3snarl.exe
ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
CXXFLAGS += -Xc+=exceptions
OLD_GCC := 1
NO_GCC := 1
FLAGS += -DHAVE_MKDIR -DARCH_POWERPC_ALTIVEC
STATIC_LINKING = 1
else ifeq ($(platform), psl1ght) else ifeq ($(platform), psl1ght)
TARGET := $(TARGET_NAME)_psl1ght.a TARGET := $(TARGET_NAME)_psl1ght.a
CC = $(PS3DEV)/ppu/bin/ppu-gcc$(EXE_EXT) CC = $(PS3DEV)/ppu/bin/ppu-gcc$(EXE_EXT)
CXX = $(PS3DEV)/ppu/bin/ppu-g++$(EXE_EXT) CXX = $(PS3DEV)/ppu/bin/ppu-g++$(EXE_EXT)
AR = $(PS3DEV)/ppu/bin/ppu-ar$(EXE_EXT) AR = $(PS3DEV)/ppu/bin/ppu-ar$(EXE_EXT)
ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES := -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
FLAGS += -DHAVE_MKDIR -DBYTE_ORDER=BIG_ENDIAN FLAGS += -DBYTE_ORDER=BIG_ENDIAN
STATIC_LINKING = 1 STATIC_LINKING = 1
else ifeq ($(platform), psp1) else ifeq ($(platform), psp1)
TARGET := $(TARGET_NAME)_psp1.a TARGET := $(TARGET_NAME)_psp1.a
@ -148,7 +127,6 @@ else ifeq ($(platform), psp1)
CXX = psp-g++$(EXE_EXT) CXX = psp-g++$(EXE_EXT)
AR = psp-ar$(EXE_EXT) AR = psp-ar$(EXE_EXT)
FLAGS += -DPSP -G0 FLAGS += -DPSP -G0
FLAGS += -DHAVE_MKDIR
STATIC_LINKING = 1 STATIC_LINKING = 1
else ifeq ($(platform), xenon) else ifeq ($(platform), xenon)
TARGET := $(TARGET_NAME)_xenon360.a TARGET := $(TARGET_NAME)_xenon360.a
@ -157,7 +135,6 @@ else ifeq ($(platform), xenon)
AR = xenon-ar$(EXE_EXT) AR = xenon-ar$(EXE_EXT)
ENDIANNESS_DEFINES += -D__LIBXENON__ -m32 -D__ppc__ -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES += -D__LIBXENON__ -m32 -D__ppc__ -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
LIBS := $(PTHREAD_FLAGS) LIBS := $(PTHREAD_FLAGS)
FLAGS += -DHAVE_MKDIR
STATIC_LINKING = 1 STATIC_LINKING = 1
else ifeq ($(platform), ngc) else ifeq ($(platform), ngc)
TARGET := $(TARGET_NAME)_ngc.a TARGET := $(TARGET_NAME)_ngc.a
@ -167,7 +144,6 @@ else ifeq ($(platform), ngc)
ENDIANNESS_DEFINES += -DGEKKO -DHW_DOL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES += -DGEKKO -DHW_DOL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include
FLAGS += -DHAVE_MKDIR
STATIC_LINKING = 1 STATIC_LINKING = 1
else ifeq ($(platform), wii) else ifeq ($(platform), wii)
@ -178,7 +154,6 @@ else ifeq ($(platform), wii)
ENDIANNESS_DEFINES += -DGEKKO -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES += -DGEKKO -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include
FLAGS += -DHAVE_MKDIR
STATIC_LINKING = 1 STATIC_LINKING = 1
else ifeq ($(platform), wiiu) else ifeq ($(platform), wiiu)
@ -189,7 +164,6 @@ else ifeq ($(platform), wiiu)
ENDIANNESS_DEFINES += -DGEKKO -DWIIU -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN ENDIANNESS_DEFINES += -DGEKKO -DWIIU -DHW_RVL -mrvl -mcpu=750 -meabi -mhard-float -DMSB_FIRST -DBYTE_ORDER=BIG_ENDIAN
EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include EXTRA_INCLUDES := -I$(DEVKITPRO)/libogc/include
FLAGS += -DHAVE_MKDIR
STATIC_LINKING = 1 STATIC_LINKING = 1
# (armv7 a7, hard point, neon based) ### # (armv7 a7, hard point, neon based) ###
@ -213,7 +187,7 @@ else ifeq ($(platform), classic_armv7_a7)
ARCH = arm ARCH = arm
BUILTIN_GPU = neon BUILTIN_GPU = neon
USE_DYNAREC = 1 USE_DYNAREC = 1
FLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR FLAGS += $(PTHREAD_FLAGS)
IS_X86 = 0 IS_X86 = 0
ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1) ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
CFLAGS += -march=armv7-a CFLAGS += -march=armv7-a
@ -232,7 +206,7 @@ else ifneq (,$(findstring armv,$(platform)))
SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
CC = gcc CC = gcc
LDFLAGS += $(PTHREAD_FLAGS) LDFLAGS += $(PTHREAD_FLAGS)
FLAGS += $(PTHREAD_FLAGS) -DHAVE_MKDIR FLAGS += $(PTHREAD_FLAGS)
IS_X86 = 0 IS_X86 = 0
ifneq (,$(findstring cortexa8,$(platform))) ifneq (,$(findstring cortexa8,$(platform)))
FLAGS += -marm -mcpu=cortex-a8 FLAGS += -marm -mcpu=cortex-a8
@ -260,7 +234,6 @@ else
IS_X86 = 1 IS_X86 = 1
SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
LDFLAGS += -static-libgcc -static-libstdc++ -lwinmm LDFLAGS += -static-libgcc -static-libstdc++ -lwinmm
FLAGS += -DHAVE__MKDIR
endif endif
ifeq ($(TILED_RENDERING), 1) ifeq ($(TILED_RENDERING), 1)

View File

@ -80,15 +80,11 @@
#include <pspkernel.h> #include <pspkernel.h>
#endif #endif
#if defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
#include <cell/cell_fs.h>
#endif
#if defined(VITA) #if defined(VITA)
#define FIO_S_ISDIR SCE_S_ISDIR #define FIO_S_ISDIR SCE_S_ISDIR
#endif #endif
#if (defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)) || defined(__QNX__) || defined(PSP) #if defined(__QNX__) || defined(PSP)
#include <unistd.h> /* stat() is defined here */ #include <unistd.h> /* stat() is defined here */
#endif #endif

View File

@ -69,7 +69,7 @@ extern "C" {
# endif # endif
# endif # endif
# else # else
# if defined(__GNUC__) && __GNUC__ >= 4 && !defined(__CELLOS_LV2__) # if defined(__GNUC__) && __GNUC__ >= 4
# define RETRO_API RETRO_CALLCONV __attribute__((__visibility__("default"))) # define RETRO_API RETRO_CALLCONV __attribute__((__visibility__("default")))
# else # else
# define RETRO_API RETRO_CALLCONV # define RETRO_API RETRO_CALLCONV

View File

@ -26,7 +26,7 @@
#include <stdio.h> #include <stdio.h>
#include <stdint.h> #include <stdint.h>
#if defined(__CELLOS_LV2__) || defined(PSP) || defined(PS2) || defined(GEKKO) || defined(VITA) || defined(_XBOX) || defined(_3DS) || defined(WIIU) || defined(SWITCH) || defined(HAVE_LIBNX) #if defined(PSP) || defined(PS2) || defined(GEKKO) || defined(VITA) || defined(_XBOX) || defined(_3DS) || defined(WIIU) || defined(SWITCH) || defined(HAVE_LIBNX)
/* No mman available */ /* No mman available */
#elif defined(_WIN32) && !defined(_XBOX) #elif defined(_WIN32) && !defined(_XBOX)
#include <windows.h> #include <windows.h>

View File

@ -43,10 +43,6 @@
#endif #endif
#if defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
#include <sys/fs_external.h>
#endif
#include <limits.h> #include <limits.h>
#ifdef _MSC_VER #ifdef _MSC_VER
@ -79,9 +75,7 @@ static INLINE bool bits_any_set(uint32_t* ptr, uint32_t count)
} }
#ifndef PATH_MAX_LENGTH #ifndef PATH_MAX_LENGTH
#if defined(__CELLOS_LV2__) && !defined(__PSL1GHT__) #if defined(_XBOX1) || defined(_3DS) || defined(PSP) || defined(PS2) || defined(GEKKO)|| defined(WIIU) || defined(ORBIS)
#define PATH_MAX_LENGTH CELL_FS_MAX_FS_PATH_LENGTH
#elif defined(_XBOX1) || defined(_3DS) || defined(PSP) || defined(PS2) || defined(GEKKO)|| defined(WIIU) || defined(ORBIS)
#define PATH_MAX_LENGTH 512 #define PATH_MAX_LENGTH 512
#else #else
#define PATH_MAX_LENGTH 4096 #define PATH_MAX_LENGTH 4096

View File

@ -64,16 +64,7 @@
# endif # endif
#endif #endif
#if defined (__CELLOS_LV2__) && !defined(__PSL1GHT__)
#include <cell/cell_fs.h>
#define O_RDONLY CELL_FS_O_RDONLY
#define O_WRONLY CELL_FS_O_WRONLY
#define O_CREAT CELL_FS_O_CREAT
#define O_TRUNC CELL_FS_O_TRUNC
#define O_RDWR CELL_FS_O_RDWR
#else
#include <fcntl.h> #include <fcntl.h>
#endif
/* TODO: Some things are duplicated but I'm really afraid of breaking other platforms by touching this */ /* TODO: Some things are duplicated but I'm really afraid of breaking other platforms by touching this */
#if defined(VITA) #if defined(VITA)
@ -95,7 +86,7 @@
# include <unistd.h> # include <unistd.h>
#endif #endif
#if (defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)) || defined(__QNX__) || defined(PSP) #if defined(__QNX__) || defined(PSP)
#include <unistd.h> /* stat() is defined here */ #include <unistd.h> /* stat() is defined here */
#endif #endif
@ -139,15 +130,11 @@
#include <pspkernel.h> #include <pspkernel.h>
#endif #endif
#if defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
#include <cell/cell_fs.h>
#endif
#if defined(VITA) #if defined(VITA)
#define FIO_S_ISDIR SCE_S_ISDIR #define FIO_S_ISDIR SCE_S_ISDIR
#endif #endif
#if (defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)) || defined(__QNX__) || defined(PSP) #if defined(__QNX__) || defined(PSP)
#include <unistd.h> /* stat() is defined here */ #include <unistd.h> /* stat() is defined here */
#endif #endif
@ -922,20 +909,6 @@ int retro_vfs_stat_impl(const char *path, int32_t *size)
orbisDclose(dir_ret); orbisDclose(dir_ret);
is_character_special = S_ISCHR(buf.st_mode); is_character_special = S_ISCHR(buf.st_mode);
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
/* CellOS Lv2 */
CellFsStat buf;
if (!path || !*path)
return 0;
if (cellFsStat(path, &buf) < 0)
return 0;
if (size)
*size = (int32_t)buf.st_size;
is_dir = ((buf.st_mode & S_IFMT) == S_IFDIR);
#elif defined(_WIN32) #elif defined(_WIN32)
/* Windows */ /* Windows */
DWORD file_info; DWORD file_info;
@ -1108,10 +1081,6 @@ struct libretro_vfs_implementation_dir
#elif defined(VITA) || defined(PSP) #elif defined(VITA) || defined(PSP)
SceUID directory; SceUID directory;
SceIoDirent entry; SceIoDirent entry;
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
CellFsErrno error;
int directory;
CellFsDirent entry;
#elif defined(ORBIS) #elif defined(ORBIS)
int directory; int directory;
struct dirent entry; struct dirent entry;
@ -1127,8 +1096,6 @@ static bool dirent_check_error(libretro_vfs_implementation_dir *rdir)
return (rdir->directory == INVALID_HANDLE_VALUE); return (rdir->directory == INVALID_HANDLE_VALUE);
#elif defined(VITA) || defined(PSP) || defined(ORBIS) #elif defined(VITA) || defined(PSP) || defined(ORBIS)
return (rdir->directory < 0); return (rdir->directory < 0);
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
return (rdir->error != CELL_FS_SUCCEEDED);
#else #else
return !(rdir->directory); return !(rdir->directory);
#endif #endif
@ -1192,8 +1159,6 @@ libretro_vfs_implementation_dir *retro_vfs_opendir_impl(
#elif defined(_3DS) #elif defined(_3DS)
rdir->directory = !string_is_empty(name) ? opendir(name) : NULL; rdir->directory = !string_is_empty(name) ? opendir(name) : NULL;
rdir->entry = NULL; rdir->entry = NULL;
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
rdir->error = cellFsOpendir(name, &rdir->directory);
#elif defined(ORBIS) #elif defined(ORBIS)
rdir->directory = orbisDopen(name); rdir->directory = orbisDopen(name);
#else #else
@ -1229,10 +1194,6 @@ bool retro_vfs_readdir_impl(libretro_vfs_implementation_dir *rdir)
return (rdir->directory != INVALID_HANDLE_VALUE); return (rdir->directory != INVALID_HANDLE_VALUE);
#elif defined(VITA) || defined(PSP) #elif defined(VITA) || defined(PSP)
return (sceIoDread(rdir->directory, &rdir->entry) > 0); return (sceIoDread(rdir->directory, &rdir->entry) > 0);
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
uint64_t nread;
rdir->error = cellFsReaddir(rdir->directory, &rdir->entry, &nread);
return (nread != 0);
#elif defined(ORBIS) #elif defined(ORBIS)
return (orbisDread(rdir->directory, &rdir->entry) > 0); return (orbisDread(rdir->directory, &rdir->entry) > 0);
#else #else
@ -1253,7 +1214,7 @@ const char *retro_vfs_dirent_get_name_impl(libretro_vfs_implementation_dir *rdir
if (name) if (name)
free(name); free(name);
return (char*)rdir->entry.cFileName; return (char*)rdir->entry.cFileName;
#elif defined(VITA) || defined(PSP) || defined(__CELLOS_LV2__) && !defined(__PSL1GHT__) || defined(ORBIS) #elif defined(VITA) || defined(PSP) || defined(ORBIS)
return rdir->entry.d_name; return rdir->entry.d_name;
#else #else
if (!rdir || !rdir->entry) if (!rdir || !rdir->entry)
@ -1274,9 +1235,6 @@ bool retro_vfs_dirent_is_dir_impl(libretro_vfs_implementation_dir *rdir)
#elif defined(VITA) #elif defined(VITA)
return SCE_S_ISDIR(entry->d_stat.st_mode); return SCE_S_ISDIR(entry->d_stat.st_mode);
#endif #endif
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
CellFsDirent *entry = (CellFsDirent*)&rdir->entry;
return (entry->d_type == CELL_FS_TYPE_DIRECTORY);
#elif defined(ORBIS) #elif defined(ORBIS)
const struct dirent *entry = &rdir->entry; const struct dirent *entry = &rdir->entry;
if (entry->d_type == DT_DIR) if (entry->d_type == DT_DIR)
@ -1313,8 +1271,6 @@ int retro_vfs_closedir_impl(libretro_vfs_implementation_dir *rdir)
FindClose(rdir->directory); FindClose(rdir->directory);
#elif defined(VITA) || defined(PSP) #elif defined(VITA) || defined(PSP)
sceIoDclose(rdir->directory); sceIoDclose(rdir->directory);
#elif defined(__CELLOS_LV2__) && !defined(__PSL1GHT__)
rdir->error = cellFsClosedir(rdir->directory);
#elif defined(ORBIS) #elif defined(ORBIS)
orbisDclose(rdir->directory); orbisDclose(rdir->directory);
#else #else