From f16e54e879b49eac0854d6a22c0092f71551e8c1 Mon Sep 17 00:00:00 2001 From: CrystalCT Date: Mon, 21 Feb 2022 13:47:56 +0100 Subject: [PATCH] PS3/PSL1GHT build fix --- libretroBuildSystem/Makefile.libretro | 34 +++++-------------- .../libretro-common/include/libretro.h | 2 +- .../libretro-common/include/memmap.h | 2 +- .../include/retro_miscellaneous.h | 6 ++-- .../libretro-common/vfs/vfs_implementation.c | 4 +-- 5 files changed, 15 insertions(+), 33 deletions(-) diff --git a/libretroBuildSystem/Makefile.libretro b/libretroBuildSystem/Makefile.libretro index a2c0a3f..d913c76 100644 --- a/libretroBuildSystem/Makefile.libretro +++ b/libretroBuildSystem/Makefile.libretro @@ -193,33 +193,15 @@ else ifeq ($(platform), qnx) AR = qcc -Vgcc_ntoarmv7le CFLAGS += -D__BLACKBERRY_QNX__ -# PS3 -else ifeq ($(platform), ps3) - EXT = a - TARGET := $(TARGET_NAME)_libretro_ps3.$(EXT) - CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe - AR = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-ar.exe - CFLAGS += -D__ppc__ -DMSB_FIRST -DWORDS_BIGENDIAN=1 - STATIC_LINKING = 1 - STATIC_LINKING_LINK = 1 - -# PS3 (SNC) -else ifeq ($(platform), sncps3) - EXT = a - TARGET := $(TARGET_NAME)_libretro_ps3.$(EXT) - CC = $(CELL_SDK)/host-win32/sn/bin/ps3ppusnc.exe - AR = $(CELL_SDK)/host-win32/sn/bin/ps3snarl.exe - CFLAGS += -D__ppc__ -DMSB_FIRST -DWORDS_BIGENDIAN=1 - STATIC_LINKING = 1 - STATIC_LINKING_LINK = 1 - # Lightweight PS3 Homebrew SDK -else ifeq ($(platform), psl1ght) - EXT = a - TARGET := $(TARGET_NAME)_libretro_$(platform).$(EXT) - CC = $(PS3DEV)/ppu/bin/ppu-gcc$(EXE_EXT) - AR = $(PS3DEV)/ppu/bin/ppu-ar$(EXE_EXT) - CFLAGS += -D__ppc__ -DMSB_FIRST -DWORDS_BIGENDIAN=1 +else ifneq (,$(filter $(platform), ps3 psl1ght)) + TARGET := $(TARGET_NAME)_libretro_$(platform).a + CC = $(PS3DEV)/ppu/bin/ppu-$(COMMONLV)gcc$(EXE_EXT) + AR = $(PS3DEV)/ppu/bin/ppu-$(COMMONLV)ar$(EXE_EXT) + ifeq ($(platform), psl1ght) + CFLAGS += -D__PSL1GHT__ + endif + CFLAGS += -D__ppc__ -DMSB_FIRST -DWORDS_BIGENDIAN=1 -D__PS3__ STATIC_LINKING = 1 STATIC_LINKING_LINK = 1 diff --git a/libretroBuildSystem/libretro-common/include/libretro.h b/libretroBuildSystem/libretro-common/include/libretro.h index 1482ea4..01c44c2 100644 --- a/libretroBuildSystem/libretro-common/include/libretro.h +++ b/libretroBuildSystem/libretro-common/include/libretro.h @@ -69,7 +69,7 @@ extern "C" { # endif # endif # else -# if defined(__GNUC__) && __GNUC__ >= 4 && !defined(__CELLOS_LV2__) +# if defined(__GNUC__) && __GNUC__ >= 4 && !defined(__PS3__) # define RETRO_API RETRO_CALLCONV __attribute__((__visibility__("default"))) # else # define RETRO_API RETRO_CALLCONV diff --git a/libretroBuildSystem/libretro-common/include/memmap.h b/libretroBuildSystem/libretro-common/include/memmap.h index 2bedd5c..1cf912a 100644 --- a/libretroBuildSystem/libretro-common/include/memmap.h +++ b/libretroBuildSystem/libretro-common/include/memmap.h @@ -26,7 +26,7 @@ #include #include -#if defined(__CELLOS_LV2__) || defined(PSP) || defined(GEKKO) || defined(VITA) || defined(_XBOX) || defined(_3DS) || defined(WIIU) || defined(SWITCH) +#if defined(__PS3__) || defined(PSP) || defined(GEKKO) || defined(VITA) || defined(_XBOX) || defined(_3DS) || defined(WIIU) || defined(SWITCH) /* No mman available */ #elif defined(_WIN32) && !defined(_XBOX) #include diff --git a/libretroBuildSystem/libretro-common/include/retro_miscellaneous.h b/libretroBuildSystem/libretro-common/include/retro_miscellaneous.h index 2fd97d5..83b4cf3 100644 --- a/libretroBuildSystem/libretro-common/include/retro_miscellaneous.h +++ b/libretroBuildSystem/libretro-common/include/retro_miscellaneous.h @@ -39,7 +39,7 @@ #include #endif -#if defined(__CELLOS_LV2__) +#if defined(__PS3__) #include #endif @@ -75,8 +75,8 @@ static INLINE bool bits_any_set(uint32_t* ptr, uint32_t count) } #ifndef PATH_MAX_LENGTH -#if defined(__CELLOS_LV2__) -#define PATH_MAX_LENGTH CELL_FS_MAX_FS_PATH_LENGTH +#if defined(__PS3__) +#define PATH_MAX_LENGTH 1024 #elif defined(_XBOX1) || defined(_3DS) || defined(PSP) || defined(GEKKO)|| defined(WIIU) #define PATH_MAX_LENGTH 512 #else diff --git a/libretroBuildSystem/libretro-common/vfs/vfs_implementation.c b/libretroBuildSystem/libretro-common/vfs/vfs_implementation.c index 3443381..e7f0430 100644 --- a/libretroBuildSystem/libretro-common/vfs/vfs_implementation.c +++ b/libretroBuildSystem/libretro-common/vfs/vfs_implementation.c @@ -55,7 +55,7 @@ # include #endif -#ifdef __CELLOS_LV2__ +#ifdef __PS3__ #include #define O_RDONLY CELL_FS_O_RDONLY #define O_WRONLY CELL_FS_O_WRONLY @@ -123,7 +123,7 @@ int64_t retro_vfs_file_seek_internal(libretro_vfs_implementation_file *stream, i /* VC2005 and up have a special 64-bit fseek */ #ifdef ATLEAST_VC2005 return _fseeki64(stream->fp, offset, whence); -#elif defined(__CELLOS_LV2__) || defined(_MSC_VER) && _MSC_VER <= 1310 +#elif defined(__PS3__) || defined(_MSC_VER) && _MSC_VER <= 1310 return fseek(stream->fp, (long)offset, whence); #else return fseeko(stream->fp, (off_t)offset, whence);