]> git.lizzy.rs Git - dragonfireclient.git/blob - android/native/jni/Android.mk
Merge branch 'master' of https://github.com/minetest/minetest
[dragonfireclient.git] / android / native / jni / Android.mk
1 LOCAL_PATH := $(call my-dir)/..
2
3 #LOCAL_ADDRESS_SANITIZER:=true
4
5 include $(CLEAR_VARS)
6 LOCAL_MODULE := Curl
7 LOCAL_SRC_FILES := deps/Android/Curl/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libcurl.a
8 include $(PREBUILT_STATIC_LIBRARY)
9
10 include $(CLEAR_VARS)
11 LOCAL_MODULE := Freetype
12 LOCAL_SRC_FILES := deps/Android/Freetype/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libfreetype.a
13 include $(PREBUILT_STATIC_LIBRARY)
14
15 include $(CLEAR_VARS)
16 LOCAL_MODULE := Irrlicht
17 LOCAL_SRC_FILES := deps/Android/Irrlicht/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libIrrlichtMt.a
18 include $(PREBUILT_STATIC_LIBRARY)
19
20 #include $(CLEAR_VARS)
21 #LOCAL_MODULE := LevelDB
22 #LOCAL_SRC_FILES := deps/Android/LevelDB/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libleveldb.a
23 #include $(PREBUILT_STATIC_LIBRARY)
24
25 include $(CLEAR_VARS)
26 LOCAL_MODULE := LuaJIT
27 LOCAL_SRC_FILES := deps/Android/LuaJIT/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libluajit.a
28 include $(PREBUILT_STATIC_LIBRARY)
29
30 include $(CLEAR_VARS)
31 LOCAL_MODULE := mbedTLS
32 LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedtls.a
33 include $(PREBUILT_STATIC_LIBRARY)
34
35 include $(CLEAR_VARS)
36 LOCAL_MODULE := mbedx509
37 LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedx509.a
38 include $(PREBUILT_STATIC_LIBRARY)
39
40 include $(CLEAR_VARS)
41 LOCAL_MODULE := mbedcrypto
42 LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedcrypto.a
43 include $(PREBUILT_STATIC_LIBRARY)
44
45 include $(CLEAR_VARS)
46 LOCAL_MODULE := OpenAL
47 LOCAL_SRC_FILES := deps/Android/OpenAL-Soft/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libopenal.a
48 include $(PREBUILT_STATIC_LIBRARY)
49
50 include $(CLEAR_VARS)
51 LOCAL_MODULE := GetText
52 LOCAL_SRC_FILES := deps/Android/GetText/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libintl.a
53 include $(PREBUILT_STATIC_LIBRARY)
54
55 include $(CLEAR_VARS)
56 LOCAL_MODULE := Vorbis
57 LOCAL_SRC_FILES := deps/Android/Vorbis/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libvorbis.a
58 include $(PREBUILT_STATIC_LIBRARY)
59
60 include $(CLEAR_VARS)
61 LOCAL_MODULE := Zstd
62 LOCAL_SRC_FILES := deps/Android/Zstd/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libzstd.a
63 include $(PREBUILT_STATIC_LIBRARY)
64
65 include $(CLEAR_VARS)
66 LOCAL_MODULE := Minetest
67
68 LOCAL_CFLAGS += \
69         -DJSONCPP_NO_LOCALE_SUPPORT     \
70         -DHAVE_TOUCHSCREENGUI           \
71         -DENABLE_GLES=1                 \
72         -DUSE_CURL=1                    \
73         -DUSE_SOUND=1                   \
74         -DUSE_FREETYPE=1                \
75         -DUSE_LEVELDB=0                 \
76         -DUSE_LUAJIT=1                  \
77         -DUSE_GETTEXT=1                 \
78         -DVERSION_MAJOR=${versionMajor} \
79         -DVERSION_MINOR=${versionMinor} \
80         -DVERSION_PATCH=${versionPatch} \
81         -DVERSION_EXTRA=${versionExtra} \
82         $(GPROF_DEF)
83
84 ifdef NDEBUG
85         LOCAL_CFLAGS += -DNDEBUG=1
86 endif
87
88 ifdef GPROF
89         GPROF_DEF := -DGPROF
90         PROFILER_LIBS := android-ndk-profiler
91         LOCAL_CFLAGS += -pg
92 endif
93
94 LOCAL_C_INCLUDES := \
95         ../../src                                    \
96         ../../src/script                             \
97         ../../lib/gmp                                \
98         ../../lib/jsoncpp                            \
99         deps/Android/Curl/include                       \
100         deps/Android/Freetype/include                   \
101         deps/Android/Irrlicht/include                   \
102         deps/Android/LevelDB/include                    \
103         deps/Android/GetText/include                    \
104         deps/Android/libiconv/include                   \
105         deps/Android/libiconv/libcharset/include        \
106         deps/Android/LuaJIT/src                         \
107         deps/Android/OpenAL-Soft/include                \
108         deps/Android/sqlite                             \
109         deps/Android/Vorbis/include                     \
110         deps/Android/Zstd/include
111
112 LOCAL_SRC_FILES := \
113         $(wildcard ../../src/client/*.cpp)           \
114         $(wildcard ../../src/client/*/*.cpp)         \
115         $(wildcard ../../src/content/*.cpp)          \
116         ../../src/database/database.cpp              \
117         ../../src/database/database-dummy.cpp        \
118         ../../src/database/database-files.cpp        \
119         ../../src/database/database-sqlite3.cpp      \
120         $(wildcard ../../src/gui/*.cpp)              \
121         $(wildcard ../../src/irrlicht_changes/*.cpp) \
122         $(wildcard ../../src/mapgen/*.cpp)           \
123         $(wildcard ../../src/network/*.cpp)          \
124         $(wildcard ../../src/script/*.cpp)           \
125         $(wildcard ../../src/script/*/*.cpp)         \
126         $(wildcard ../../src/server/*.cpp)           \
127         $(wildcard ../../src/threading/*.cpp)        \
128         $(wildcard ../../src/util/*.c)               \
129         $(wildcard ../../src/util/*.cpp)             \
130         ../../src/ban.cpp                            \
131         ../../src/chat.cpp                           \
132         ../../src/clientiface.cpp                    \
133         ../../src/collision.cpp                      \
134         ../../src/content_mapnode.cpp                \
135         ../../src/content_nodemeta.cpp               \
136         ../../src/convert_json.cpp                   \
137         ../../src/craftdef.cpp                       \
138         ../../src/debug.cpp                          \
139         ../../src/defaultsettings.cpp                \
140         ../../src/emerge.cpp                         \
141         ../../src/environment.cpp                    \
142         ../../src/face_position_cache.cpp            \
143         ../../src/filesys.cpp                        \
144         ../../src/gettext.cpp                        \
145         ../../src/httpfetch.cpp                      \
146         ../../src/hud.cpp                            \
147         ../../src/inventory.cpp                      \
148         ../../src/inventorymanager.cpp               \
149         ../../src/itemdef.cpp                        \
150         ../../src/itemstackmetadata.cpp              \
151         ../../src/light.cpp                          \
152         ../../src/log.cpp                            \
153         ../../src/main.cpp                           \
154         ../../src/map.cpp                            \
155         ../../src/map_settings_manager.cpp           \
156         ../../src/mapblock.cpp                       \
157         ../../src/mapnode.cpp                        \
158         ../../src/mapsector.cpp                      \
159         ../../src/metadata.cpp                       \
160         ../../src/modchannels.cpp                    \
161         ../../src/nameidmapping.cpp                  \
162         ../../src/nodedef.cpp                        \
163         ../../src/nodemetadata.cpp                   \
164         ../../src/nodetimer.cpp                      \
165         ../../src/noise.cpp                          \
166         ../../src/objdef.cpp                         \
167         ../../src/object_properties.cpp              \
168         ../../src/particles.cpp                      \
169         ../../src/pathfinder.cpp                     \
170         ../../src/player.cpp                         \
171         ../../src/porting.cpp                        \
172         ../../src/porting_android.cpp                \
173         ../../src/profiler.cpp                       \
174         ../../src/raycast.cpp                        \
175         ../../src/reflowscan.cpp                     \
176         ../../src/remoteplayer.cpp                   \
177         ../../src/rollback.cpp                       \
178         ../../src/rollback_interface.cpp             \
179         ../../src/serialization.cpp                  \
180         ../../src/server.cpp                         \
181         ../../src/serverenvironment.cpp              \
182         ../../src/serverlist.cpp                     \
183         ../../src/settings.cpp                       \
184         ../../src/staticobject.cpp                   \
185         ../../src/texture_override.cpp               \
186         ../../src/tileanimation.cpp                  \
187         ../../src/tool.cpp                           \
188         ../../src/translation.cpp                    \
189         ../../src/version.cpp                        \
190         ../../src/voxel.cpp                          \
191         ../../src/voxelalgorithms.cpp
192
193 # LevelDB backend is disabled
194 #       ../../src/database/database-leveldb.cpp
195
196 # GMP
197 LOCAL_SRC_FILES += ../../lib/gmp/mini-gmp.c
198
199 # JSONCPP
200 LOCAL_SRC_FILES += ../../lib/jsoncpp/jsoncpp.cpp
201
202 # iconv
203 LOCAL_SRC_FILES += \
204         deps/Android/libiconv/lib/iconv.c               \
205         deps/Android/libiconv/libcharset/lib/localcharset.c
206
207 # SQLite3
208 LOCAL_SRC_FILES += deps/Android/sqlite/sqlite3.c
209
210 LOCAL_STATIC_LIBRARIES += Curl Freetype Irrlicht OpenAL mbedTLS mbedx509 mbedcrypto Vorbis LuaJIT GetText Zstd android_native_app_glue $(PROFILER_LIBS) #LevelDB
211
212 LOCAL_LDLIBS := -lEGL -lGLESv1_CM -lGLESv2 -landroid -lOpenSLES
213
214 include $(BUILD_SHARED_LIBRARY)
215
216 ifdef GPROF
217 $(call import-module,android-ndk-profiler)
218 endif
219 $(call import-module,android/native_app_glue)