# Makefile for PCSX ReARMed (libretro)
DEBUG=0
+WANT_ZLIB=1
ifeq ($(platform),)
platform = unix
ifneq ($(GIT_VERSION)," unknown")
CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
endif
+ifneq ($(WANT_ZLIB),1)
LIBZ := -lz
+endif
LIBPTHREAD := -lpthread
ifneq ($(findstring Haiku,$(shell uname -s)),)
LIBDL := -lroot -lnetwork
BUILTIN_GPU = neon
USE_DYNAREC = 1
+# Classic Platforms ####################
+# Platform affix = classic_<ISA>_<µARCH>
+# Help at https://modmyclassic.com/comp
+
+# (armv7 a7, hard point, neon based) ###
+# NESC, SNESC, C64 mini
+else ifeq ($(platform), classic_armv7_a7)
+ TARGET := $(TARGET_NAME)_libretro.so
+ fpic := -fPIC
+ CFLAGS += -Ofast \
+ -flto=4 -fwhole-program -fuse-linker-plugin \
+ -fdata-sections -ffunction-sections -Wl,--gc-sections \
+ -fno-stack-protector -fno-ident -fomit-frame-pointer \
+ -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
+ -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
+ -fmerge-all-constants -fno-math-errno \
+ -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
+ CXXFLAGS += $(CFLAGS)
+ CPPFLAGS += $(CFLAGS)
+ ASFLAGS += $(CFLAGS)
+ HAVE_NEON = 1
+ ARCH = arm
+ BUILTIN_GPU = neon
+ USE_DYNAREC = 1
+ ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
+ CFLAGS += -march=armv7-a
+ else
+ CFLAGS += -march=armv7ve
+ # If gcc is 5.0 or later
+ ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
+ LDFLAGS += -static-libgcc -static-libstdc++
+ endif
+ endif
+#######################################
+
# ARM
else ifneq (,$(findstring armv,$(platform)))
TARGET := $(TARGET_NAME)_libretro.so
ARCH = arm
USE_DYNAREC = 1
-# Classic Platforms ####################
-# Platform affix = classic_<ISA>_<µARCH>
-
-# (armv7 a7, hard point, neon based) ###
-# NESC, SNESC, C64 mini
-else ifeq ($(platform), classic_armv7_a7)
- TARGET := $(TARGET_NAME)_libretro.so
- fpic := -fPIC
- CFLAGS += -Ofast \
- -flto=4 -fwhole-program -fuse-linker-plugin \
- -fdata-sections -ffunction-sections -Wl,--gc-sections \
- -fno-stack-protector -fno-ident -fomit-frame-pointer \
- -falign-functions=1 -falign-jumps=1 -falign-loops=1 \
- -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \
- -fmerge-all-constants -fno-math-errno \
- -marm -march=armv7ve -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
- ASFLAGS += $(CFLAGS)
- HAVE_NEON = 1
- ARCH = arm
- BUILTIN_GPU = neon
- USE_DYNAREC = 1
-
-
-#######################################
-
# Windows
else
TARGET := $(TARGET_NAME)_libretro.dll