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)
asm_render = 0
asm_ym2612 = 0
asm_misc = 0
-asm_cdpico = 0
asm_cdmemory = 0
asm_mix = 0
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 :=
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
# zlib/unzip
$(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)