]> git.lizzy.rs Git - dragonfireclient.git/blob - build/android/jni/Android.mk
Drop content_sao.{cpp,h}
[dragonfireclient.git] / build / android / jni / Android.mk
1 LOCAL_PATH := $(call my-dir)/..
2
3 #LOCAL_ADDRESS_SANITIZER:=true
4
5 include $(CLEAR_VARS)
6 LOCAL_MODULE := Irrlicht
7 LOCAL_SRC_FILES := deps/irrlicht/lib/Android/libIrrlicht.a
8 include $(PREBUILT_STATIC_LIBRARY)
9
10 ifeq ($(HAVE_LEVELDB), 1)
11         include $(CLEAR_VARS)
12         LOCAL_MODULE := LevelDB
13         LOCAL_SRC_FILES := deps/leveldb/libleveldb.a
14         include $(PREBUILT_STATIC_LIBRARY)
15 endif
16
17 include $(CLEAR_VARS)
18 LOCAL_MODULE := curl
19 LOCAL_SRC_FILES := deps/curl/lib/.libs/libcurl.a
20 include $(PREBUILT_STATIC_LIBRARY)
21
22 include $(CLEAR_VARS)
23 LOCAL_MODULE := freetype
24 LOCAL_SRC_FILES := deps/freetype2-android/Android/obj/local/$(TARGET_ARCH_ABI)/libfreetype2-static.a
25 include $(PREBUILT_STATIC_LIBRARY)
26
27 include $(CLEAR_VARS)
28 LOCAL_MODULE := iconv
29 LOCAL_SRC_FILES := deps/libiconv/lib/.libs/libiconv.so
30 include $(PREBUILT_SHARED_LIBRARY)
31
32 include $(CLEAR_VARS)
33 LOCAL_MODULE := openal
34 LOCAL_SRC_FILES := deps/openal-soft/libs/$(TARGET_LIBDIR)/libopenal.so
35 include $(PREBUILT_SHARED_LIBRARY)
36
37 include $(CLEAR_VARS)
38 LOCAL_MODULE := ogg
39 LOCAL_SRC_FILES := deps/libvorbis-libogg-android/libs/$(TARGET_LIBDIR)/libogg.so
40 include $(PREBUILT_SHARED_LIBRARY)
41
42 include $(CLEAR_VARS)
43 LOCAL_MODULE := vorbis
44 LOCAL_SRC_FILES := deps/libvorbis-libogg-android/libs/$(TARGET_LIBDIR)/libvorbis.so
45 include $(PREBUILT_SHARED_LIBRARY)
46
47 include $(CLEAR_VARS)
48 LOCAL_MODULE := ssl
49 LOCAL_SRC_FILES := deps/openssl/libssl.a
50 include $(PREBUILT_STATIC_LIBRARY)
51
52 include $(CLEAR_VARS)
53 LOCAL_MODULE := crypto
54 LOCAL_SRC_FILES := deps/openssl/libcrypto.a
55 include $(PREBUILT_STATIC_LIBRARY)
56
57 include $(CLEAR_VARS)
58 LOCAL_MODULE := minetest
59
60 LOCAL_CPP_FEATURES += exceptions
61
62 ifdef GPROF
63 GPROF_DEF=-DGPROF
64 endif
65
66 LOCAL_CFLAGS := -D_IRR_ANDROID_PLATFORM_      \
67                 -DHAVE_TOUCHSCREENGUI         \
68                 -DENABLE_GLES=1               \
69                 -DUSE_CURL=1                  \
70                 -DUSE_SOUND=1                 \
71                 -DUSE_FREETYPE=1              \
72                 -DUSE_LEVELDB=$(HAVE_LEVELDB) \
73                 $(GPROF_DEF)                  \
74                 -pipe -fstrict-aliasing
75
76 ifndef NDEBUG
77 LOCAL_CFLAGS += -g -D_DEBUG -O0 -fno-omit-frame-pointer
78 else
79 LOCAL_CFLAGS += $(TARGET_CFLAGS_ADDON)
80 endif
81
82 ifdef GPROF
83 PROFILER_LIBS := android-ndk-profiler
84 LOCAL_CFLAGS += -pg
85 endif
86
87 # LOCAL_CFLAGS += -fsanitize=address
88 # LOCAL_LDFLAGS += -fsanitize=address
89
90 ifeq ($(TARGET_ABI),x86)
91 LOCAL_CFLAGS += -fno-stack-protector
92 endif
93
94 LOCAL_C_INCLUDES := \
95                 jni/src                                   \
96                 jni/src/script                            \
97                 jni/lib/gmp                               \
98                 jni/lib/lua/src                           \
99                 jni/lib/jsoncpp                           \
100                 jni/src/cguittfont                        \
101                 deps/irrlicht/include                     \
102                 deps/libiconv/include                     \
103                 deps/freetype2-android/include            \
104                 deps/curl/include                         \
105                 deps/openal-soft/jni/OpenAL/include       \
106                 deps/libvorbis-libogg-android/jni/include \
107                 deps/leveldb/include                      \
108                 deps/sqlite/
109
110 LOCAL_SRC_FILES := \
111                 jni/src/ban.cpp                           \
112                 jni/src/chat.cpp                          \
113                 jni/src/client/activeobjectmgr.cpp        \
114                 jni/src/client/camera.cpp                 \
115                 jni/src/client/client.cpp                 \
116                 jni/src/client/clientenvironment.cpp      \
117                 jni/src/client/clientlauncher.cpp         \
118                 jni/src/client/clientmap.cpp              \
119                 jni/src/client/clientmedia.cpp            \
120                 jni/src/client/clientobject.cpp           \
121                 jni/src/client/clouds.cpp                 \
122                 jni/src/client/content_cao.cpp            \
123                 jni/src/client/content_cso.cpp            \
124                 jni/src/client/content_mapblock.cpp       \
125                 jni/src/client/filecache.cpp              \
126                 jni/src/client/fontengine.cpp             \
127                 jni/src/client/game.cpp                   \
128                 jni/src/client/gameui.cpp                 \
129                 jni/src/client/guiscalingfilter.cpp       \
130                 jni/src/client/hud.cpp                    \
131                 jni/src/clientiface.cpp                   \
132                 jni/src/client/imagefilters.cpp           \
133                 jni/src/client/inputhandler.cpp           \
134                 jni/src/client/joystick_controller.cpp    \
135                 jni/src/client/keycode.cpp                \
136                 jni/src/client/localplayer.cpp            \
137                 jni/src/client/mapblock_mesh.cpp          \
138                 jni/src/client/mesh.cpp                   \
139                 jni/src/client/meshgen/collector.cpp      \
140                 jni/src/client/mesh_generator_thread.cpp  \
141                 jni/src/client/minimap.cpp                \
142                 jni/src/client/particles.cpp              \
143                 jni/src/client/render/anaglyph.cpp        \
144                 jni/src/client/render/core.cpp            \
145                 jni/src/client/render/factory.cpp         \
146                 jni/src/client/renderingengine.cpp        \
147                 jni/src/client/render/interlaced.cpp      \
148                 jni/src/client/render/pageflip.cpp        \
149                 jni/src/client/render/plain.cpp           \
150                 jni/src/client/render/sidebyside.cpp      \
151                 jni/src/client/render/stereo.cpp          \
152                 jni/src/client/shader.cpp                 \
153                 jni/src/client/sky.cpp                    \
154                 jni/src/client/sound.cpp                  \
155                 jni/src/client/sound_openal.cpp           \
156                 jni/src/client/tile.cpp                   \
157                 jni/src/client/wieldmesh.cpp              \
158                 jni/src/collision.cpp                     \
159                 jni/src/content/content.cpp               \
160                 jni/src/content_mapnode.cpp               \
161                 jni/src/content/mods.cpp                  \
162                 jni/src/content_nodemeta.cpp              \
163                 jni/src/content/packages.cpp              \
164                 jni/src/content/subgames.cpp              \
165                 jni/src/convert_json.cpp                  \
166                 jni/src/craftdef.cpp                      \
167                 jni/src/database/database.cpp             \
168                 jni/src/database/database-dummy.cpp       \
169                 jni/src/database/database-files.cpp       \
170                 jni/src/database/database-leveldb.cpp     \
171                 jni/src/database/database-sqlite3.cpp     \
172                 jni/src/debug.cpp                         \
173                 jni/src/defaultsettings.cpp               \
174                 jni/src/emerge.cpp                        \
175                 jni/src/environment.cpp                   \
176                 jni/src/face_position_cache.cpp           \
177                 jni/src/filesys.cpp                       \
178                 jni/src/gettext.cpp                       \
179                 jni/src/gui/guiAnimatedImage.cpp          \
180                 jni/src/gui/guiBackgroundImage.cpp        \
181                 jni/src/gui/guiBox.cpp                    \
182                 jni/src/gui/guiButton.cpp                 \
183                 jni/src/gui/guiButtonImage.cpp            \
184                 jni/src/gui/guiButtonItemImage.cpp        \
185                 jni/src/gui/guiChatConsole.cpp            \
186                 jni/src/gui/guiConfirmRegistration.cpp    \
187                 jni/src/gui/guiEditBoxWithScrollbar.cpp   \
188                 jni/src/gui/guiEngine.cpp                 \
189                 jni/src/gui/guiFormSpecMenu.cpp           \
190                 jni/src/gui/guiHyperText.cpp              \
191                 jni/src/gui/guiInventoryList.cpp          \
192                 jni/src/gui/guiItemImage.cpp              \
193                 jni/src/gui/guiKeyChangeMenu.cpp          \
194                 jni/src/gui/guiPasswordChange.cpp         \
195                 jni/src/gui/guiPathSelectMenu.cpp         \
196                 jni/src/gui/guiScrollBar.cpp              \
197                 jni/src/gui/guiSkin.cpp                   \
198                 jni/src/gui/guiTable.cpp                  \
199                 jni/src/gui/guiVolumeChange.cpp           \
200                 jni/src/gui/intlGUIEditBox.cpp            \
201                 jni/src/gui/modalMenu.cpp                 \
202                 jni/src/gui/profilergraph.cpp             \
203                 jni/src/gui/touchscreengui.cpp            \
204                 jni/src/httpfetch.cpp                     \
205                 jni/src/hud.cpp                           \
206                 jni/src/inventory.cpp                     \
207                 jni/src/inventorymanager.cpp              \
208                 jni/src/irrlicht_changes/CGUITTFont.cpp   \
209                 jni/src/irrlicht_changes/static_text.cpp  \
210                 jni/src/itemdef.cpp                       \
211                 jni/src/itemstackmetadata.cpp             \
212                 jni/src/light.cpp                         \
213                 jni/src/log.cpp                           \
214                 jni/src/main.cpp                          \
215                 jni/src/mapblock.cpp                      \
216                 jni/src/map.cpp                           \
217                 jni/src/mapgen/cavegen.cpp                \
218                 jni/src/mapgen/dungeongen.cpp             \
219                 jni/src/mapgen/mapgen_carpathian.cpp      \
220                 jni/src/mapgen/mapgen.cpp                 \
221                 jni/src/mapgen/mapgen_flat.cpp            \
222                 jni/src/mapgen/mapgen_fractal.cpp         \
223                 jni/src/mapgen/mapgen_singlenode.cpp      \
224                 jni/src/mapgen/mapgen_v5.cpp              \
225                 jni/src/mapgen/mapgen_v6.cpp              \
226                 jni/src/mapgen/mapgen_v7.cpp              \
227                 jni/src/mapgen/mapgen_valleys.cpp         \
228                 jni/src/mapgen/mg_biome.cpp               \
229                 jni/src/mapgen/mg_decoration.cpp          \
230                 jni/src/mapgen/mg_ore.cpp                 \
231                 jni/src/mapgen/mg_schematic.cpp           \
232                 jni/src/mapgen/treegen.cpp                \
233                 jni/src/mapnode.cpp                       \
234                 jni/src/mapsector.cpp                     \
235                 jni/src/map_settings_manager.cpp          \
236                 jni/src/metadata.cpp                      \
237                 jni/src/modchannels.cpp                   \
238                 jni/src/nameidmapping.cpp                 \
239                 jni/src/nodedef.cpp                       \
240                 jni/src/nodemetadata.cpp                  \
241                 jni/src/nodetimer.cpp                     \
242                 jni/src/noise.cpp                         \
243                 jni/src/objdef.cpp                        \
244                 jni/src/object_properties.cpp             \
245                 jni/src/pathfinder.cpp                    \
246                 jni/src/player.cpp                        \
247                 jni/src/porting_android.cpp               \
248                 jni/src/porting.cpp                       \
249                 jni/src/profiler.cpp                      \
250                 jni/src/raycast.cpp                       \
251                 jni/src/reflowscan.cpp                    \
252                 jni/src/remoteplayer.cpp                  \
253                 jni/src/rollback.cpp                      \
254                 jni/src/rollback_interface.cpp            \
255                 jni/src/serialization.cpp                 \
256                 jni/src/server/activeobjectmgr.cpp        \
257                 jni/src/server.cpp                        \
258                 jni/src/serverenvironment.cpp             \
259                 jni/src/serverlist.cpp                    \
260                 jni/src/server/luaentity_sao.cpp          \
261                 jni/src/server/mods.cpp                   \
262                 jni/src/server/player_sao.cpp             \
263                 jni/src/server/serveractiveobject.cpp     \
264                 jni/src/server/unit_sao.cpp               \
265                 jni/src/settings.cpp                      \
266                 jni/src/staticobject.cpp                  \
267                 jni/src/tileanimation.cpp                 \
268                 jni/src/tool.cpp                          \
269                 jni/src/translation.cpp                   \
270                 jni/src/unittest/test_authdatabase.cpp    \
271                 jni/src/unittest/test_collision.cpp       \
272                 jni/src/unittest/test_compression.cpp     \
273                 jni/src/unittest/test_connection.cpp      \
274                 jni/src/unittest/test.cpp                 \
275                 jni/src/unittest/test_filepath.cpp        \
276                 jni/src/unittest/test_gameui.cpp          \
277                 jni/src/unittest/test_inventory.cpp       \
278                 jni/src/unittest/test_mapnode.cpp         \
279                 jni/src/unittest/test_map_settings_manager.cpp \
280                 jni/src/unittest/test_nodedef.cpp         \
281                 jni/src/unittest/test_noderesolver.cpp    \
282                 jni/src/unittest/test_noise.cpp           \
283                 jni/src/unittest/test_objdef.cpp          \
284                 jni/src/unittest/test_profiler.cpp        \
285                 jni/src/unittest/test_random.cpp          \
286                 jni/src/unittest/test_schematic.cpp       \
287                 jni/src/unittest/test_serialization.cpp   \
288                 jni/src/unittest/test_settings.cpp        \
289                 jni/src/unittest/test_socket.cpp          \
290                 jni/src/unittest/test_utilities.cpp       \
291                 jni/src/unittest/test_voxelalgorithms.cpp \
292                 jni/src/unittest/test_voxelmanipulator.cpp \
293                 jni/src/util/areastore.cpp                \
294                 jni/src/util/auth.cpp                     \
295                 jni/src/util/base64.cpp                   \
296                 jni/src/util/directiontables.cpp          \
297                 jni/src/util/enriched_string.cpp          \
298                 jni/src/util/ieee_float.cpp               \
299                 jni/src/util/numeric.cpp                  \
300                 jni/src/util/pointedthing.cpp             \
301                 jni/src/util/quicktune.cpp                \
302                 jni/src/util/serialize.cpp                \
303                 jni/src/util/sha1.cpp                     \
304                 jni/src/util/srp.cpp                      \
305                 jni/src/util/string.cpp                   \
306                 jni/src/util/timetaker.cpp                \
307                 jni/src/version.cpp                       \
308                 jni/src/voxelalgorithms.cpp               \
309                 jni/src/voxel.cpp
310
311
312 # intentionally kept out (we already build openssl itself): jni/src/util/sha256.c
313
314 # Network
315 LOCAL_SRC_FILES += \
316                 jni/src/network/address.cpp               \
317                 jni/src/network/connection.cpp            \
318                 jni/src/network/networkpacket.cpp         \
319                 jni/src/network/clientopcodes.cpp         \
320                 jni/src/network/clientpackethandler.cpp   \
321                 jni/src/network/connectionthreads.cpp     \
322                 jni/src/network/serveropcodes.cpp         \
323                 jni/src/network/serverpackethandler.cpp   \
324                 jni/src/network/socket.cpp                \
325
326 # lua api
327 LOCAL_SRC_FILES += \
328                 jni/src/script/common/c_content.cpp       \
329                 jni/src/script/common/c_converter.cpp     \
330                 jni/src/script/common/c_internal.cpp      \
331                 jni/src/script/common/c_types.cpp         \
332                 jni/src/script/common/helper.cpp          \
333                 jni/src/script/cpp_api/s_async.cpp        \
334                 jni/src/script/cpp_api/s_base.cpp         \
335                 jni/src/script/cpp_api/s_client.cpp       \
336                 jni/src/script/cpp_api/s_entity.cpp       \
337                 jni/src/script/cpp_api/s_env.cpp          \
338                 jni/src/script/cpp_api/s_inventory.cpp    \
339                 jni/src/script/cpp_api/s_item.cpp         \
340                 jni/src/script/cpp_api/s_mainmenu.cpp     \
341                 jni/src/script/cpp_api/s_modchannels.cpp  \
342                 jni/src/script/cpp_api/s_node.cpp         \
343                 jni/src/script/cpp_api/s_nodemeta.cpp     \
344                 jni/src/script/cpp_api/s_player.cpp       \
345                 jni/src/script/cpp_api/s_security.cpp     \
346                 jni/src/script/cpp_api/s_server.cpp       \
347                 jni/src/script/lua_api/l_areastore.cpp    \
348                 jni/src/script/lua_api/l_auth.cpp         \
349                 jni/src/script/lua_api/l_base.cpp         \
350                 jni/src/script/lua_api/l_camera.cpp       \
351                 jni/src/script/lua_api/l_client.cpp       \
352                 jni/src/script/lua_api/l_craft.cpp        \
353                 jni/src/script/lua_api/l_env.cpp          \
354                 jni/src/script/lua_api/l_inventory.cpp    \
355                 jni/src/script/lua_api/l_item.cpp         \
356                 jni/src/script/lua_api/l_itemstackmeta.cpp\
357                 jni/src/script/lua_api/l_localplayer.cpp  \
358                 jni/src/script/lua_api/l_mainmenu.cpp     \
359                 jni/src/script/lua_api/l_mapgen.cpp       \
360                 jni/src/script/lua_api/l_metadata.cpp     \
361                 jni/src/script/lua_api/l_minimap.cpp      \
362                 jni/src/script/lua_api/l_modchannels.cpp  \
363                 jni/src/script/lua_api/l_nodemeta.cpp     \
364                 jni/src/script/lua_api/l_nodetimer.cpp    \
365                 jni/src/script/lua_api/l_noise.cpp        \
366                 jni/src/script/lua_api/l_object.cpp       \
367                 jni/src/script/lua_api/l_playermeta.cpp   \
368                 jni/src/script/lua_api/l_particles.cpp    \
369                 jni/src/script/lua_api/l_particles_local.cpp\
370                 jni/src/script/lua_api/l_rollback.cpp     \
371                 jni/src/script/lua_api/l_server.cpp       \
372                 jni/src/script/lua_api/l_settings.cpp     \
373                 jni/src/script/lua_api/l_sound.cpp        \
374                 jni/src/script/lua_api/l_http.cpp         \
375                 jni/src/script/lua_api/l_storage.cpp      \
376                 jni/src/script/lua_api/l_util.cpp         \
377                 jni/src/script/lua_api/l_vmanip.cpp       \
378                 jni/src/script/scripting_client.cpp       \
379                 jni/src/script/scripting_server.cpp       \
380                 jni/src/script/scripting_mainmenu.cpp
381
382 #freetype2 support
383 #LOCAL_SRC_FILES += jni/src/cguittfont/xCGUITTFont.cpp
384
385 # GMP
386 LOCAL_SRC_FILES += jni/lib/gmp/mini-gmp.c
387
388 # Lua
389 LOCAL_SRC_FILES += \
390                 jni/lib/lua/src/lapi.c                    \
391                 jni/lib/lua/src/lauxlib.c                 \
392                 jni/lib/lua/src/lbaselib.c                \
393                 jni/lib/lua/src/lcode.c                   \
394                 jni/lib/lua/src/ldblib.c                  \
395                 jni/lib/lua/src/ldebug.c                  \
396                 jni/lib/lua/src/ldo.c                     \
397                 jni/lib/lua/src/ldump.c                   \
398                 jni/lib/lua/src/lfunc.c                   \
399                 jni/lib/lua/src/lgc.c                     \
400                 jni/lib/lua/src/linit.c                   \
401                 jni/lib/lua/src/liolib.c                  \
402                 jni/lib/lua/src/llex.c                    \
403                 jni/lib/lua/src/lmathlib.c                \
404                 jni/lib/lua/src/lmem.c                    \
405                 jni/lib/lua/src/loadlib.c                 \
406                 jni/lib/lua/src/lobject.c                 \
407                 jni/lib/lua/src/lopcodes.c                \
408                 jni/lib/lua/src/loslib.c                  \
409                 jni/lib/lua/src/lparser.c                 \
410                 jni/lib/lua/src/lstate.c                  \
411                 jni/lib/lua/src/lstring.c                 \
412                 jni/lib/lua/src/lstrlib.c                 \
413                 jni/lib/lua/src/ltable.c                  \
414                 jni/lib/lua/src/ltablib.c                 \
415                 jni/lib/lua/src/ltm.c                     \
416                 jni/lib/lua/src/lundump.c                 \
417                 jni/lib/lua/src/lvm.c                     \
418                 jni/lib/lua/src/lzio.c                    \
419                 jni/lib/lua/src/print.c
420
421 # SQLite3
422 LOCAL_SRC_FILES += deps/sqlite/sqlite3.c
423
424 # Threading
425 LOCAL_SRC_FILES += \
426                 jni/src/threading/event.cpp \
427                 jni/src/threading/semaphore.cpp \
428                 jni/src/threading/thread.cpp
429
430 # JSONCPP
431 LOCAL_SRC_FILES += jni/lib/jsoncpp/jsoncpp.cpp
432
433 LOCAL_SHARED_LIBRARIES := iconv openal ogg vorbis
434 LOCAL_STATIC_LIBRARIES := Irrlicht freetype curl ssl crypto android_native_app_glue $(PROFILER_LIBS)
435
436 ifeq ($(HAVE_LEVELDB), 1)
437         LOCAL_STATIC_LIBRARIES += LevelDB
438 endif
439 LOCAL_LDLIBS := -lEGL -llog -lGLESv1_CM -lGLESv2 -lz -landroid
440
441 include $(BUILD_SHARED_LIBRARY)
442
443 # at the end of Android.mk
444 ifdef GPROF
445 $(call import-module,android-ndk-profiler)
446 endif
447 $(call import-module,android/native_app_glue)