1LOCAL_PATH := $(call my-dir)/.. 2 3#LOCAL_ADDRESS_SANITIZER:=true 4 5include $(CLEAR_VARS) 6LOCAL_MODULE := Curl 7LOCAL_SRC_FILES := deps/Android/Curl/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libcurl.a 8include $(PREBUILT_STATIC_LIBRARY) 9 10include $(CLEAR_VARS) 11LOCAL_MODULE := Freetype 12LOCAL_SRC_FILES := deps/Android/Freetype/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libfreetype.a 13include $(PREBUILT_STATIC_LIBRARY) 14 15include $(CLEAR_VARS) 16LOCAL_MODULE := Irrlicht 17LOCAL_SRC_FILES := deps/Android/Irrlicht/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libIrrlicht.a 18include $(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 25include $(CLEAR_VARS) 26LOCAL_MODULE := LuaJIT 27LOCAL_SRC_FILES := deps/Android/LuaJIT/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libluajit.a 28include $(PREBUILT_STATIC_LIBRARY) 29 30include $(CLEAR_VARS) 31LOCAL_MODULE := mbedTLS 32LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedtls.a 33include $(PREBUILT_STATIC_LIBRARY) 34 35include $(CLEAR_VARS) 36LOCAL_MODULE := mbedx509 37LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedx509.a 38include $(PREBUILT_STATIC_LIBRARY) 39 40include $(CLEAR_VARS) 41LOCAL_MODULE := mbedcrypto 42LOCAL_SRC_FILES := deps/Android/mbedTLS/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libmbedcrypto.a 43include $(PREBUILT_STATIC_LIBRARY) 44 45include $(CLEAR_VARS) 46LOCAL_MODULE := OpenAL 47LOCAL_SRC_FILES := deps/Android/OpenAL-Soft/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libopenal.a 48include $(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 62include $(CLEAR_VARS) 63LOCAL_MODULE := Vorbis 64LOCAL_SRC_FILES := deps/Android/Vorbis/${NDK_TOOLCHAIN_VERSION}/$(APP_ABI)/libvorbis.a 65include $(PREBUILT_STATIC_LIBRARY) 66 67include $(CLEAR_VARS) 68LOCAL_MODULE := Minetest 69 70LOCAL_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 85ifdef NDEBUG 86 LOCAL_CFLAGS += -DNDEBUG=1 87endif 88 89ifdef GPROF 90 GPROF_DEF := -DGPROF 91 PROFILER_LIBS := android-ndk-profiler 92 LOCAL_CFLAGS += -pg 93endif 94 95LOCAL_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 111LOCAL_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 196LOCAL_SRC_FILES += ../../../lib/gmp/mini-gmp.c 197 198# JSONCPP 199LOCAL_SRC_FILES += ../../../lib/jsoncpp/jsoncpp.cpp 200 201# iconv 202LOCAL_SRC_FILES += \ 203 deps/Android/libiconv/lib/iconv.c \ 204 deps/Android/libiconv/libcharset/lib/localcharset.c 205 206# SQLite3 207LOCAL_SRC_FILES += deps/Android/sqlite/sqlite3.c 208 209LOCAL_STATIC_LIBRARIES += Curl Freetype Irrlicht OpenAL mbedTLS mbedx509 mbedcrypto Vorbis LuaJIT android_native_app_glue $(PROFILER_LIBS) #LevelDB 210#OpenSSL Crypto 211 212LOCAL_LDLIBS := -lEGL -lGLESv1_CM -lGLESv2 -landroid -lOpenSLES 213 214include $(BUILD_SHARED_LIBRARY) 215 216ifdef GPROF 217$(call import-module,android-ndk-profiler) 218endif 219$(call import-module,android/native_app_glue) 220