X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=Makefile.libretro;h=b35a0daccfa4b18fd1b8ddfa256a1cab6509a853;hb=refs%2Fheads%2Flibretro-reset;hp=917c765f5f1e967cbd337c37e5826414f2adead9;hpb=8289697e8da6f76975028d2a8e713d3924ab0f4e;p=picodrive.git diff --git a/Makefile.libretro b/Makefile.libretro index 917c765..b35a0da 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -23,21 +23,31 @@ AS ?= as CC_AS ?= $(CC) CFLAGS ?= +STATIC_LINKING:= 0 TARGET_NAME := picodrive LIBM := -lm +GIT_VERSION := " $(shell git rev-parse --short HEAD || echo unknown)" +ifneq ($(GIT_VERSION)," unknown") + CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\" +endif asm_memory = 0 asm_render = 0 asm_ym2612 = 0 asm_misc = 0 -asm_cdpico = 0 asm_cdmemory = 0 asm_mix = 0 fpic := + +ifeq ($(STATIC_LINKING),1) +EXT=a +endif + # Unix ifeq ($(platform), unix) - TARGET := $(TARGET_NAME)_libretro.so + EXT ?= so + TARGET := $(TARGET_NAME)_libretro.$(EXT) fpic := -fPIC SHARED := -shared DONT_COMPILE_IN_ZLIB = 1 @@ -45,7 +55,8 @@ ifeq ($(platform), unix) # Portable Linux else ifeq ($(platform), linux-portable) - TARGET := $(TARGET_NAME)_libretro.so + EXT ?= so + TARGET := $(TARGET_NAME)_libretro.$(EXT) SHARED := -shared -nostdlib fpic := -fPIC LIBM := @@ -54,7 +65,8 @@ else ifeq ($(platform), linux-portable) # OS X else ifeq ($(platform), osx) - TARGET := $(TARGET_NAME)_libretro.dylib + EXT ?= dylib + TARGET := $(TARGET_NAME)_libretro.$(EXT) SHARED := -dynamiclib fpic := -fPIC APPLE := 1 @@ -69,6 +81,32 @@ else ifeq ($(platform), osx) OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"` SHARED += -mmacosx-version-min=10.1 +else ifeq ($(platform), staticios) + TARGET := $(TARGET_NAME)_libretro_ios.a + APPLE := 1 + ifeq ($(IOSSDK),) + IOSSDK := $(shell xcodebuild -version -sdk iphoneos Path) + endif + CC = clang -arch armv7 -arch arm64 -isysroot $(IOSSDK) + CXX = clang++ -arch armv7 -arch arm64 -isysroot $(IOSSDK) + CC_AS = perl ./tools/gas-preprocessor.pl $(CC) + CFLAGS += -marm + CFLAGS += -DIOS + + CC += -miphoneos-version-min=8.0 + CXX += -miphoneos-version-min=8.0 + CC_AS += -miphoneos-version-min=8.0 + CFLAGS += -miphoneos-version-min=8.0 + ARCH := arm + + STATIC_LINKING = 1 + use_cyclone = 0 + use_fame = 1 + use_drz80 = 0 + use_cz80 = 1 + use_sh2drc = 0 + use_svpdrc = 0 + # iOS else ifneq (,$(findstring ios,$(platform))) TARGET := $(TARGET_NAME)_libretro_ios.dylib @@ -177,7 +215,7 @@ else ifeq ($(platform), psp1) CC = psp-gcc$(EXE_EXT) AR = psp-ar$(EXE_EXT) CFLAGS += -G0 -ftracer - CFLAGS += -DPSP -D_ASM_DRAW_C_AMIPS + CFLAGS += -DPSP STATIC_LINKING = 1 NO_MMAP = 1 DONT_COMPILE_IN_ZLIB = 1 @@ -194,8 +232,6 @@ else ifeq ($(platform), psp1) use_drz80 = 0 use_cz80 = 1 - OBJS +=platform/libretro/psp/draw_amips.o - # CTR (3DS) else ifeq ($(platform), ctr) TARGET := $(TARGET_NAME)_libretro_$(platform).a @@ -263,23 +299,28 @@ else ifeq ($(platform), vita) CC = arm-vita-eabi-gcc$(EXE_EXT) AR = arm-vita-eabi-ar$(EXE_EXT) CFLAGS += -DVITA + CFLAGS += -marm -mfpu=neon -mcpu=cortex-a9 -march=armv7-a -mfloat-abi=hard -ffast-math + CFLAGS += -fno-asynchronous-unwind-tables -ftree-vectorize -funroll-loops + CFLAGS += -mword-relocations -fno-unwind-tables + CFLAGS += -fno-optimize-sibling-calls STATIC_LINKING = 1 NO_MMAP = 1 DONT_COMPILE_IN_ZLIB = 1 ARCH = arm - ARM_ASM = 1 asm_memory = 1 asm_render = 1 asm_ym2612 = 1 - asm_misc = 0 - asm_cdpico = 0 - asm_cdmemory = 0 - asm_mix = 0 - use_cyclone = 0 - use_fame = 1 + asm_misc = 1 + asm_cdpico = 1 + asm_cdmemory = 1 + asm_mix = 1 + use_cyclone = 1 + use_fame = 0 use_drz80 = 1 use_cz80 = 0 + use_sh2drc = 1 + use_svpdrc = 1 # Xbox 360 else ifeq ($(platform), xenon) @@ -323,7 +364,7 @@ else ifeq ($(platform), qnx) # ARM else ifneq (,$(findstring armv,$(platform))) TARGET := $(TARGET_NAME)_libretro.so - SHARED := -shared -Wl,--no-undefined + SHARED := -shared -Wl,--no-undefined,-Bsymbolic fpic := -fPIC ifneq (,$(findstring cortexa5,$(platform))) CFLAGS += -marm -mcpu=cortex-a5 @@ -402,16 +443,16 @@ ifeq ($(NO_MMAP),1) endif ifeq ($(ARM_ASM),1) - asm_memory = 1 - asm_render = 1 - asm_ym2612 = 1 - asm_misc = 1 - asm_cdpico = 1 - asm_cdmemory = 1 - asm_mix = 1 +asm_memory = 1 +asm_render = 1 +asm_ym2612 = 1 +asm_misc = 1 +asm_cdmemory = 1 +asm_mix = 1 endif CFLAGS += $(fpic) + ifeq ($(findstring Haiku,$(shell uname -a)),) LDLIBS += $(LIBM) endif