X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Makefile.libretro;h=5af8d75465a898009406cd575ad6de4ff0cfeac5;hb=7240f8be37667109c41cb566ab4073d7878e4179;hp=e4a102a613cd8a5f8e7f97bc5f5d4e7352475de4;hpb=a9422018bae26b5f1dd65a25d1adef80b0bec99d;p=pcsx_rearmed.git diff --git a/Makefile.libretro b/Makefile.libretro index e4a102a6..5af8d754 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 @@ -182,7 +189,7 @@ else ifeq ($(platform), ctr) DRC_CACHE_BASE = 0 ARCH = arm HAVE_NEON = 0 - + HAVE_CHD = 0 STATIC_LINKING = 1 # Xbox 360 @@ -246,6 +253,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 +297,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 @@ -334,6 +367,11 @@ CFLAGS += $(fpic) MAIN_LDFLAGS += -shared MAIN_LDLIBS += $(LIBPTHREAD) $(LIBM) $(LIBDL) $(LIBZ) +# enable large file support if available +ifeq ($(shell $(CC) -E -dD $(CFLAGS) include/arm_features.h | grep __SIZEOF_LONG__ | awk '{print $$3}'),4) +CFLAGS += -D_FILE_OFFSET_BITS=64 +endif + # try to autodetect stuff for the lazy ifndef ARCH ARCH = $(shell $(CC) -dumpmachine | awk -F- '{print $$1}')