TARGET := $(TARGET_NAME)_libretro.so
fpic := -fPIC
SHARED := -shared -Wl,--version-script=libretro/link.T
+ BUILTIN_GPU = neon
+ CFLAGS += -DNEON_PC
else ifeq ($(platform), osx)
TARGET := $(TARGET_NAME)_libretro.dylib
fpic := -fPIC
SHARED := -dynamiclib
+ BUILTIN_GPU = neon
+ CFLAGS += -DNEON_PC
else ifeq ($(platform), ios)
ARCH := arm
TARGET := $(TARGET_NAME)_libretro_ios.dylib
fpic := -fPIC
SHARED := -dynamiclib
- CC = clang -arch armv7 -isysroot $(IOSSDK)
- CXX = clang++ -arch armv7 -isysroot $(IOSSDK)
- CC_AS = perl ./tools/gas-preprocessor.pl $(CC)
- CFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -marm
+ CC = clang -arch armv7 -isysroot $(IOSSDK) -miphoneos-version-min=5.0
+ CXX = clang++ -arch armv7 -isysroot $(IOSSDK) -miphoneos-version-min=5.0
+ CC_AS = perl ./tools/gas-preprocessor.pl $(CC) -miphoneos-version-min=5.0
+ CFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -marm -miphoneos-version-min=5.0
ASFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon
HAVE_NEON = 1
BUILTIN_GPU = neon
USE_DYNAREC = 1
- CFLAGS += -DIOS
+ CFLAGS += -DIOS -miphoneos-version-min=5.0
else ifeq ($(platform), ps3)
TARGET := $(TARGET_NAME)_libretro_ps3.a
CC = $(CELL_SDK)/host-win32/ppu/bin/ppu-lv2-gcc.exe
ARCH = arm
CFLAGS += -DBASE_ADDR_FIXED=0 -D__BLACKBERRY_QNX__ -marm -mcpu=cortex-a9 -mtune=cortex-a9 -mfpu=neon -mfloat-abi=softfp
ASFLAGS += -mcpu=cortex-a9 -mfpu=neon -mfloat-abi=softfp
-else ifeq ($(platform), arm)
+else ifneq (,$(findstring armv,$(platform)))
TARGET := $(TARGET_NAME)_libretro.so
- HAVE_NEON = 1
- USE_DYNAREC = 1
+ SHARED := -shared -Wl,--no-undefined
DRC_CACHE_BASE = 0
+ifneq (,$(findstring cortexa8,$(platform)))
+ CFLAGS += -marm -mcpu=cortex-a8
+ ASFLAGS += -mcpu=cortex-a8
+else ifneq (,$(findstring cortexa9,$(platform)))
+ CFLAGS += -marm -mcpu=cortex-a9
+ ASFLAGS += -mcpu=cortex-a9
+endif
+ CFLAGS += -marm
+ifneq (,$(findstring neon,$(platform)))
+ CFLAGS += -mfpu=neon
+ ASFLAGS += -mfpu=neon
+ HAVE_NEON = 1
BUILTIN_GPU = neon
+endif
+ifneq (,$(findstring softfloat,$(platform)))
+ CFLAGS += -mfloat-abi=softfp
+ ASFLAGS += -mfloat-abi=softfp
+else ifneq (,$(findstring hardfloat,$(platform)))
+ CFLAGS += -mfloat-abi=hard
+ ASFLAGS += -mfloat-abi=hard
+endif
ARCH = arm
- CFLAGS += -marm -mcpu=cortex-a8 -mfpu=neon
- ASFLAGS += -mcpu=cortex-a8 -mfpu=neon
+ USE_DYNAREC = 1
else
TARGET := $(TARGET_NAME)_retro.dll
CC = gcc
LD_FLAGS := -fPIC
SHARED := -shared -static-libgcc -static-libstdc++ -s -Wl,--version-script=libretro/link.T
CFLAGS += -D__WIN32__ -D__WIN32_LIBRETRO__
+ BUILTIN_GPU = neon
+ CFLAGS += -DNEON_PC
endif
-CFLAGS += -D__LIBRETRO__
-
CFLAGS += -fPIC
ifneq ($(platform),qnx)
LDLIBS += -lpthread
include Makefile
-# workaround segfault for this file seen on:
-# Apple LLVM version 4.2 (clang-425.0.27) (based on LLVM 3.2svn)
-libpcsxcore/new_dynarec/pcsxmem.o: libpcsxcore/new_dynarec/pcsxmem.c
- $(CC) -c -o $@ $< $(CPPFLAGS) $(CFLAGS) -Os
-
# no special AS needed for gpu_neon
plugins/gpu_neon/psx_gpu/psx_gpu_arm_neon.o: plugins/gpu_neon/psx_gpu/psx_gpu_arm_neon.S
$(CC) $(CFLAGS) -c $^ -o $@