Android.mk 8.0 KB

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