libretro: Allow setting GIT_VERSION.
[picodrive.git] / jni / Android.mk
index 8389f7e..9252d9f 100644 (file)
@@ -2,12 +2,13 @@ LOCAL_PATH := $(call my-dir)
 
 include $(CLEAR_VARS)
 
-ifeq ($(NEON_BUILD)$(TARGET_ARCH_ABI),1armeabi-v7a)
-  LOCAL_MODULE := retro_picodrive-neon
-else
-  LOCAL_MODULE := retro_picodrive
+GIT_VERSION ?= " $(shell git rev-parse --short HEAD || echo unknown)"
+ifneq ($(GIT_VERSION)," unknown")
+       LOCAL_CFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
 endif
 
+LOCAL_MODULE := retro
+
 R := ../
 FR := $(LOCAL_PATH)/$(R)
 
@@ -24,7 +25,6 @@ asm_memory = 0
 asm_render = 0
 asm_ym2612 = 0
 asm_misc = 0
-asm_cdpico = 0
 asm_cdmemory = 0
 asm_mix = 0
 
@@ -35,23 +35,36 @@ ifeq ($(TARGET_ARCH),arm)
   endif
 
   use_cyclone = 1
-  use_drz80 = 1
+
+  # texrels, -perf ~~8%
+  use_drz80 = 0
+  use_cz80 = 1
+
   use_sh2drc = 1
   use_svpdrc = 1
 
-  asm_memory = 1
+#  asm_memory = 1 # texrels, -perf negligible
   asm_render = 1
-  asm_ym2612 = 1
+#  asm_ym2612 = 1 # texrels, -perf ~~4%
   asm_misc = 1
-  asm_cdpico = 1
-  asm_cdmemory = 1
+#  asm_cdmemory = 1 # texrels
   asm_mix = 1
+
+# for armeabi to build...
+CYCLONE_CONFIG = cyclone_config_armv4.h
+
+$(cleantarget)::
+       $(MAKE) -C $(FR)cpu/cyclone/ clean
+
 else
   use_fame = 1
   use_cz80 = 1
   use_sh2mame = 1
 endif
 
+# PD is currently not strict aliasing safe
+LOCAL_CFLAGS += -fno-strict-aliasing
+
 # sources
 SRCS_COMMON :=
 DEFINES :=
@@ -59,7 +72,7 @@ ARCH := $(TARGET_ARCH)
 include $(R)platform/common/common.mak
 
 LOCAL_SRC_FILES += $(SRCS_COMMON)
-LOCAL_SRC_FILES += $(R)platform/libretro.c
+LOCAL_SRC_FILES += $(R)platform/libretro/libretro.c
 LOCAL_SRC_FILES += $(R)platform/common/mp3.c
 LOCAL_SRC_FILES += $(R)platform/common/mp3_dummy.c
 
@@ -69,12 +82,13 @@ LOCAL_SRC_FILES += $(R)zlib/gzio.c $(R)zlib/inffast.c $(R)zlib/inflate.c \
        $(R)zlib/crc32.c $(R)zlib/adler32.c $(R)zlib/zutil.c \
        $(R)zlib/compress.c $(R)zlib/uncompr.c
 
-LOCAL_SRC_FILES += $(R)unzip/unzip.c $(R)unzip/unzip_stream.c
+LOCAL_SRC_FILES += $(R)unzip/unzip.c
 
-LOCAL_C_INCLUDES += $(R) $(R)platform/linux
+LOCAL_C_INCLUDES += $(R)
 
+# note: don't use -O3, causes some NDKs run out of memory while compiling FAME
+LOCAL_CFLAGS += -Wall -O2 -ffast-math -DNDEBUG
 LOCAL_CFLAGS += $(addprefix -D,$(DEFINES))
-LOCAL_CFLAGS += -Wall -O3 -ffast-math -DNDEBUG
 LOCAL_LDLIBS := -llog
 
 include $(BUILD_SHARED_LIBRARY)