X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Makefile.libretro;h=65ca1dc16530dedd164bbb320eaf9ab8aa74682e;hb=eb6943ee04b0f30a6f1cebfe399a94bacd1dfb45;hp=5a59aeaff5a311cbd3ba0f65a6204cb7dbc4f9a7;hpb=99a5a3364ebe6722805802f1861b6a5f6c6d4624;p=pcsx_rearmed.git diff --git a/Makefile.libretro b/Makefile.libretro index 5a59aeaf..65ca1dc1 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -2,6 +2,7 @@ DEBUG ?= 0 WANT_ZLIB ?= 1 +HAVE_CHD ?= 1 ifeq ($(platform),) platform = unix @@ -47,6 +48,12 @@ ifeq ($(platform), unix) ifneq ($(findstring SunOS,$(shell uname -s)),) CC = gcc endif +ifeq ($(ARCH), arm) +ifneq ($(findstring __thumb__,$(shell $(CC) -E -dD $(CFLAGS) include/arm_features.h)),) + # must disable thumb as recompiler can't handle it + CFLAGS += -marm +endif +endif else ifeq ($(platform), linux-portable) TARGET := $(TARGET_NAME)_libretro.so @@ -75,7 +82,11 @@ else ifeq ($(platform),$(filter $(platform),ios-arm64)) USE_DYNAREC = 0 HAVE_NEON = 0 BUILTIN_GPU = peops - TARGET := $(TARGET_NAME)_libretro_ios.dylib + TARGET := $(TARGET_NAME)_interpreter_libretro_ios.dylib + + CC = clang -arch arm64 -isysroot $(IOSSDK) -miphoneos-version-min=8.0 + CXX = clang++ -arch arm64 -isysroot $(IOSSDK) -miphoneos-version-min=8.0 + CFLAGS += -marm -DIOS else ifneq (,$(findstring ios,$(platform))) ARCH := arm @@ -177,12 +188,11 @@ else ifeq ($(platform), ctr) CFLAGS += -Werror=implicit-function-declaration # CFLAGS += -DPCSX -# BUILTIN_GPU = unai + BUILTIN_GPU = unai USE_DYNAREC = 1 DRC_CACHE_BASE = 0 ARCH = arm HAVE_NEON = 0 - STATIC_LINKING = 1 # Xbox 360 @@ -246,6 +256,17 @@ else ifeq ($(platform), rpi3) BUILTIN_GPU = neon USE_DYNAREC = 1 +#Raspberry Pi 4 +else ifeq ($(platform), rpi4) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC + CFLAGS += -marm -mcpu=cortex-a72 -mfpu=neon-fp-armv8 -mfloat-abi=hard + ASFLAGS += -mcpu=cortex-a72 -mfpu=neon-fp-armv8 -mfloat-abi=hard + HAVE_NEON = 1 + ARCH = arm + BUILTIN_GPU = neon + USE_DYNAREC = 1 + # Classic Platforms #################### # Platform affix = classic__<µARCH> # Help at https://modmyclassic.com/comp @@ -279,6 +300,21 @@ else ifeq ($(platform), classic_armv7_a7) LDFLAGS += -static-libgcc -static-libstdc++ endif endif + +# (armv8 a35, hard point, neon based) ### +# PlayStation Classic +else ifeq ($(platform), classic_armv8_a35) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC + CFLAGS += -Ofast \ + -fmerge-all-constants -fno-math-errno -march=armv8-a \ + -marm -mcpu=cortex-a35 -mtune=cortex-a35 -mfpu=neon-fp-armv8 -mfloat-abi=hard + HAVE_NEON = 1 + ARCH = arm + BUILTIN_GPU = neon + USE_DYNAREC = 1 + LDFLAGS += -static-libgcc -static-libstdc++ -fPIC + ####################################### # ARM