always describe to get git hash in log messages
[pcsx_rearmed.git] / jni / Android.mk
CommitLineData
b2058a5b
TK
1LOCAL_PATH := $(call my-dir)
2
4527b1fd 3$(shell cd "$(LOCAL_PATH)" && ((git describe --always || echo) | sed -e 's/.*/#define REV "\0"/' > ../frontend/revision.h_))
4$(shell cd "$(LOCAL_PATH)" && (diff -q ../frontend/revision.h_ ../frontend/revision.h > /dev/null 2>&1 || cp ../frontend/revision.h_ ../frontend/revision.h))
5$(shell cd "$(LOCAL_PATH)" && (rm ../frontend/revision.h_))
6
b2058a5b
TK
7include $(CLEAR_VARS)
8
9APP_DIR := ../../src
10
11ifneq ($(TARGET_ARCH_ABI),armeabi-v7a)
12 NO_NEON_BUILD := 1
13else
14 NO_NEON_BUILD := $(NO_NEON)
15endif
16
17ifeq ($(NO_NEON_BUILD)$(TARGET_ARCH_ABI),1armeabi-v7a)
18 LOCAL_MODULE := retro-noneon
19else
20 LOCAL_MODULE := retro
21endif
22
23ifeq ($(TARGET_ARCH),arm)
24 LOCAL_ARM_MODE := arm
25
b2058a5b
TK
26 LOCAL_CFLAGS += -DANDROID_ARM
27
28 LOCAL_SRC_FILES += ../libpcsxcore/gte_arm.S
29
30 # dynarec
31 LOCAL_SRC_FILES += ../libpcsxcore/new_dynarec/new_dynarec.c ../libpcsxcore/new_dynarec/linkage_arm.S ../libpcsxcore/new_dynarec/emu_if.c ../libpcsxcore/new_dynarec/pcsxmem.c
32
33 # spu
34 LOCAL_SRC_FILES += ../plugins/dfsound/arm_utils.S
35
c82f907a 36 # misc
37
b2058a5b
TK
38 ifeq ($(NO_NEON_BUILD),1)
39 # gpu
40 LOCAL_CFLAGS += -DREARMED
c82f907a 41 LOCAL_SRC_FILES += ../plugins/gpu_unai/gpulib_if.cpp ../plugins/gpu_unai/gpu_arm.s
d57557c0 42 LOCAL_SRC_FILES += ../frontend/cspace_arm.S
b2058a5b
TK
43 else
44 LOCAL_ARM_NEON := true
45 LOCAL_CFLAGS += -DNEON_BUILD -DTEXTURE_CACHE_4BPP -DTEXTURE_CACHE_8BPP
a288cd9e 46 LOCAL_SRC_FILES += ../libpcsxcore/gte_neon.S ../frontend/cspace_neon.S
b2058a5b
TK
47
48 # gpu
49 LOCAL_SRC_FILES += ../plugins/gpu_neon/psx_gpu_if.c ../plugins/gpu_neon/psx_gpu/psx_gpu_arm_neon.S
50 endif
51endif
52
53ifeq ($(TARGET_ARCH),x86)
54 LOCAL_CFLAGS += -DANDROID_X86
55endif
56
57ifeq ($(TARGET_ARCH),mips)
58 LOCAL_CFLAGS += -DANDROID_MIPS -D__mips__ -D__MIPSEL__
59endif
60
61ifneq ($(TARGET_ARCH),arm)
62 # gpu
63 LOCAL_CFLAGS += -DREARMED
c82f907a 64 LOCAL_SRC_FILES += ../plugins/gpu_unai/gpulib_if.cpp
b2058a5b
TK
65endif
66
b2058a5b
TK
67LOCAL_SRC_FILES += ../libpcsxcore/cdriso.c ../libpcsxcore/cdrom.c ../libpcsxcore/cheat.c ../libpcsxcore/debug.c \
68 ../libpcsxcore/decode_xa.c ../libpcsxcore/disr3000a.c ../libpcsxcore/mdec.c \
69 ../libpcsxcore/misc.c ../libpcsxcore/plugins.c ../libpcsxcore/ppf.c ../libpcsxcore/psxbios.c \
70 ../libpcsxcore/psxcommon.c ../libpcsxcore/psxcounters.c ../libpcsxcore/psxdma.c ../libpcsxcore/psxhle.c \
71 ../libpcsxcore/psxhw.c ../libpcsxcore/psxinterpreter.c ../libpcsxcore/psxmem.c ../libpcsxcore/r3000a.c \
72 ../libpcsxcore/sio.c ../libpcsxcore/socket.c ../libpcsxcore/spu.c
73LOCAL_SRC_FILES += ../libpcsxcore/gte.c ../libpcsxcore/gte_nf.c ../libpcsxcore/gte_divider.c
74
75# spu
76LOCAL_SRC_FILES += ../plugins/dfsound/dma.c ../plugins/dfsound/freeze.c \
77 ../plugins/dfsound/registers.c ../plugins/dfsound/spu.c \
78 ../plugins/dfsound/out.c ../plugins/dfsound/nullsnd.c
79
80# builtin gpu
81LOCAL_SRC_FILES += ../plugins/gpulib/gpu.c ../plugins/gpulib/vout_pl.c
82
83# cdrcimg
84LOCAL_SRC_FILES += ../plugins/cdrcimg/cdrcimg.c
85
86# dfinput
87LOCAL_SRC_FILES += ../plugins/dfinput/main.c ../plugins/dfinput/pad.c ../plugins/dfinput/guncon.c
88
a1a232ad 89# misc
c82f907a 90LOCAL_SRC_FILES += ../frontend/main.c ../frontend/plugin.c ../frontend/cspace.c
b2058a5b
TK
91
92# libretro
93LOCAL_SRC_FILES += ../frontend/libretro.c
94
46aa5b98 95LOCAL_CFLAGS += -O3 -ffast-math -funroll-loops -DNDEBUG -D_FILE_OFFSET_BITS=64 -DHAVE_LIBRETRO -DNO_FRONTEND -DFRONTEND_SUPPORTS_RGB565
da710571 96LOCAL_C_INCLUDES += $(LOCAL_PATH)/../include
b2058a5b
TK
97LOCAL_LDLIBS := -lz -llog
98
99include $(BUILD_SHARED_LIBRARY)