042c1f7433f916003006c196bef56166769d3548
[picodrive.git] / jni / Android.mk
1 LOCAL_PATH := $(call my-dir)
2
3 include $(CLEAR_VARS)
4
5 ifeq ($(NEON_BUILD)$(TARGET_ARCH_ABI),1armeabi-v7a)
6   LOCAL_MODULE := retro_picodrive-neon
7 else
8   LOCAL_MODULE := retro_picodrive
9 endif
10
11 R := ../
12 FR := $(LOCAL_PATH)/$(R)
13
14 use_cyclone = 0
15 use_fame = 0
16 use_musashi = 0
17 use_drz80 = 0
18 use_cz80 = 0
19 use_sh2drc = 0
20 use_sh2mame = 0
21 use_svpdrc = 0
22
23 asm_memory = 0
24 asm_render = 0
25 asm_ym2612 = 0
26 asm_misc = 0
27 asm_cdmemory = 0
28 asm_mix = 0
29
30 ifeq ($(TARGET_ARCH),arm)
31   LOCAL_ARM_MODE := arm
32   ifeq ($(NEON_BUILD),1)
33     LOCAL_ARM_NEON := true
34   endif
35
36   use_cyclone = 1
37
38   # texrels, -perf ~~8%
39   use_drz80 = 0
40   use_cz80 = 1
41
42   use_sh2drc = 1
43   use_svpdrc = 1
44
45 #  asm_memory = 1 # texrels, -perf negligible
46   asm_render = 1
47 #  asm_ym2612 = 1 # texrels, -perf ~~4%
48   asm_misc = 1
49 #  asm_cdmemory = 1 # texrels
50   asm_mix = 1
51 else
52   use_fame = 1
53   use_cz80 = 1
54   use_sh2mame = 1
55 endif
56
57 # PD is currently not strict aliasing safe
58 LOCAL_CFLAGS += -fno-strict-aliasing
59
60 # sources
61 SRCS_COMMON :=
62 DEFINES :=
63 ARCH := $(TARGET_ARCH)
64 include $(R)platform/common/common.mak
65
66 LOCAL_SRC_FILES += $(SRCS_COMMON)
67 LOCAL_SRC_FILES += $(R)platform/libretro.c
68 LOCAL_SRC_FILES += $(R)platform/common/mp3.c
69 LOCAL_SRC_FILES += $(R)platform/common/mp3_dummy.c
70
71 # zlib/unzip
72 LOCAL_SRC_FILES += $(R)zlib/gzio.c $(R)zlib/inffast.c $(R)zlib/inflate.c \
73         $(R)zlib/inftrees.c $(R)zlib/trees.c $(R)zlib/deflate.c \
74         $(R)zlib/crc32.c $(R)zlib/adler32.c $(R)zlib/zutil.c \
75         $(R)zlib/compress.c $(R)zlib/uncompr.c
76
77 LOCAL_SRC_FILES += $(R)unzip/unzip.c
78
79 LOCAL_C_INCLUDES += $(R)
80
81 # note: don't use -O3, causes some NDKs run out of memory while compiling FAME
82 LOCAL_CFLAGS += -Wall -O2 -ffast-math -DNDEBUG
83 LOCAL_CFLAGS += $(addprefix -D,$(DEFINES))
84 LOCAL_LDLIBS := -llog
85
86 include $(BUILD_SHARED_LIBRARY)