Implement spawning particles with node texture appearance
[oweals/minetest.git] / build / 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)/libIrrlicht.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 # You can use `OpenSSL and Crypto` instead `mbedTLS mbedx509 mbedcrypto`,
51 #but it increase APK size on ~0.7MB
52 #include $(CLEAR_VARS)
53 #LOCAL_MODULE := OpenSSL
54 #LOCAL_SRC_FILES := deps/Android/OpenSSL/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libssl.a
55 #include $(PREBUILT_STATIC_LIBRARY)
56
57 #include $(CLEAR_VARS)
58 #LOCAL_MODULE := Crypto
59 #LOCAL_SRC_FILES := deps/Android/OpenSSL/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libcrypto.a
60 #include $(PREBUILT_STATIC_LIBRARY)
61
62 include $(CLEAR_VARS)
63 LOCAL_MODULE := Vorbis
64 LOCAL_SRC_FILES := deps/Android/Vorbis/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libvorbis.a
65 include $(PREBUILT_STATIC_LIBRARY)
66
67 include $(CLEAR_VARS)
68 LOCAL_MODULE := Minetest
69
70 LOCAL_CFLAGS += \
71         -DJSONCPP_NO_LOCALE_SUPPORT     \
72         -DHAVE_TOUCHSCREENGUI           \
73         -DENABLE_GLES=1                 \
74         -DUSE_CURL=1                    \
75         -DUSE_SOUND=1                   \
76         -DUSE_FREETYPE=1                \
77         -DUSE_LEVELDB=0                 \
78         -DUSE_LUAJIT=1                  \
79         -DVERSION_MAJOR=${versionMajor} \
80         -DVERSION_MINOR=${versionMinor} \
81         -DVERSION_PATCH=${versionPatch} \
82         -DVERSION_EXTRA=${versionExtra} \
83         $(GPROF_DEF)
84
85 ifdef NDEBUG
86         LOCAL_CFLAGS += -DNDEBUG=1
87 endif
88
89 ifdef GPROF
90         GPROF_DEF := -DGPROF
91         PROFILER_LIBS := android-ndk-profiler
92         LOCAL_CFLAGS += -pg
93 endif
94
95 LOCAL_C_INCLUDES := \
96         ../../../src                                    \
97         ../../../src/script                             \
98         ../../../lib/gmp                                \
99         ../../../lib/jsoncpp                            \
100         deps/Android/Curl/include                       \
101         deps/Android/Freetype/include                   \
102         deps/Android/Irrlicht/include                   \
103         deps/Android/LevelDB/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
111 LOCAL_SRC_FILES := \
112         $(wildcard ../../../src/client/*.cpp)           \
113         $(wildcard ../../../src/client/*/*.cpp)         \
114         $(wildcard ../../../src/content/*.cpp)          \
115         ../../../src/database/database.cpp              \
116         ../../../src/database/database-dummy.cpp        \
117         ../../../src/database/database-files.cpp        \
118         ../../../src/database/database-sqlite3.cpp      \
119         $(wildcard ../../../src/gui/*.cpp)              \
120         $(wildcard ../../../src/irrlicht_changes/*.cpp) \
121         $(wildcard ../../../src/mapgen/*.cpp)           \
122         $(wildcard ../../../src/network/*.cpp)          \
123         $(wildcard ../../../src/script/*.cpp)           \
124         $(wildcard ../../../src/script/*/*.cpp)         \
125         $(wildcard ../../../src/server/*.cpp)           \
126         $(wildcard ../../../src/threading/*.cpp)        \
127         $(wildcard ../../../src/util/*.c)               \
128         $(wildcard ../../../src/util/*.cpp)             \
129         ../../../src/ban.cpp                            \
130         ../../../src/chat.cpp                           \
131         ../../../src/clientiface.cpp                    \
132         ../../../src/collision.cpp                      \
133         ../../../src/content_mapnode.cpp                \
134         ../../../src/content_nodemeta.cpp               \
135         ../../../src/convert_json.cpp                   \
136         ../../../src/craftdef.cpp                       \
137         ../../../src/debug.cpp                          \
138         ../../../src/defaultsettings.cpp                \
139         ../../../src/emerge.cpp                         \
140         ../../../src/environment.cpp                    \
141         ../../../src/face_position_cache.cpp            \
142         ../../../src/filesys.cpp                        \
143         ../../../src/gettext.cpp                        \
144         ../../../src/httpfetch.cpp                      \
145         ../../../src/hud.cpp                            \
146         ../../../src/inventory.cpp                      \
147         ../../../src/inventorymanager.cpp               \
148         ../../../src/itemdef.cpp                        \
149         ../../../src/itemstackmetadata.cpp              \
150         ../../../src/light.cpp                          \
151         ../../../src/log.cpp                            \
152         ../../../src/main.cpp                           \
153         ../../../src/map.cpp                            \
154         ../../../src/map_settings_manager.cpp           \
155         ../../../src/mapblock.cpp                       \
156         ../../../src/mapnode.cpp                        \
157         ../../../src/mapsector.cpp                      \
158         ../../../src/metadata.cpp                       \
159         ../../../src/modchannels.cpp                    \
160         ../../../src/nameidmapping.cpp                  \
161         ../../../src/nodedef.cpp                        \
162         ../../../src/nodemetadata.cpp                   \
163         ../../../src/nodetimer.cpp                      \
164         ../../../src/noise.cpp                          \
165         ../../../src/objdef.cpp                         \
166         ../../../src/object_properties.cpp              \
167         ../../../src/particles.cpp                      \
168         ../../../src/pathfinder.cpp                     \
169         ../../../src/player.cpp                         \
170         ../../../src/porting.cpp                        \
171         ../../../src/porting_android.cpp                \
172         ../../../src/profiler.cpp                       \
173         ../../../src/raycast.cpp                        \
174         ../../../src/reflowscan.cpp                     \
175         ../../../src/remoteplayer.cpp                   \
176         ../../../src/rollback.cpp                       \
177         ../../../src/rollback_interface.cpp             \
178         ../../../src/serialization.cpp                  \
179         ../../../src/server.cpp                         \
180         ../../../src/serverenvironment.cpp              \
181         ../../../src/serverlist.cpp                     \
182         ../../../src/settings.cpp                       \
183         ../../../src/staticobject.cpp                   \
184         ../../../src/texture_override.cpp               \
185         ../../../src/tileanimation.cpp                  \
186         ../../../src/tool.cpp                           \
187         ../../../src/translation.cpp                    \
188         ../../../src/version.cpp                        \
189         ../../../src/voxel.cpp                          \
190         ../../../src/voxelalgorithms.cpp
191
192 # LevelDB backend is disabled
193 #       ../../../src/database/database-leveldb.cpp
194
195 # GMP
196 LOCAL_SRC_FILES += ../../../lib/gmp/mini-gmp.c
197
198 # JSONCPP
199 LOCAL_SRC_FILES += ../../../lib/jsoncpp/jsoncpp.cpp
200
201 # iconv
202 LOCAL_SRC_FILES += \
203         deps/Android/libiconv/lib/iconv.c               \
204         deps/Android/libiconv/libcharset/lib/localcharset.c
205
206 # SQLite3
207 LOCAL_SRC_FILES += deps/Android/sqlite/sqlite3.c
208
209 LOCAL_STATIC_LIBRARIES += Curl Freetype Irrlicht OpenAL mbedTLS mbedx509 mbedcrypto Vorbis LuaJIT android_native_app_glue $(PROFILER_LIBS) #LevelDB
210 #OpenSSL Crypto
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)