aboutsummaryrefslogtreecommitdiff
path: root/build/android/Makefile
AgeCommit message (Collapse)Author
2018-12-05Gradle now copy most of assetsLoic Blot
It depends on cleanAssets, ensuring they are always fresh
2018-07-01Backport Android cleanup parts from #7123 (#7513)Loïc Blot
Also resync properly the dependencies versions. Don't let the makefile handle the cleanups itself. Let gradle do it. This is one of the first steps to remove the makefile and replace it with a full gradle support
2018-06-28Update cURL (7.60.0) & SQLite3 (3.24.0)Loic Blot
2018-06-11Android: fix assets cleanupLoïc Blot
2018-06-10Fix many Android build issuesLoic Blot
It remains one issue with MT itself and rtti
2018-03-11Android: typo fix since recent gradle update, as output path changedLoic Blot
2018-03-11Android build fixes for c++11stujones11
2018-03-11Android: update tools (gradle, NDK) & prepare to switch to clangLoic Blot
2017-12-04Android: Update build system for ndk-r15xstujones11
Add workarounds for ndk-r16.
2017-05-13Android dependencies updates (#5755)Loïc Blot
* irrlicht ogles 5122 -> 5145 * openssl 1.0.2j -> 1.0.2k * curl 7.52 -> 7.54 * sqlite 3.15.2 -> 3.18.0
2017-04-16Disable android leveldb by default (#5596)Nathanaël Courant
1) Now leveldb is brick (thanks google) 2) By default, use SQLite3, this work perfectly and NOBODY not use LevelDB on Android :)
2017-04-14Fix android buildLoic Blot
2016-12-24Add gradle wrapper (#4954)Ner'zhul
Gradle wrapper permit to use multiple gradle versions across OS versions
2016-12-22Android: Workarounds for Googles completely broken NDKsfan5
2016-12-21Android: update curl and libgmpest31
2016-12-09Fix sqlite databases being read-only on 64bit Android by patching sqlite (#4871)rubenwardy
Fixes #4121
2016-12-07Android: fix build and update depsest31
2016-05-16Android: enable parallelism for main target tooest31
This adds to the changes that commit 98d16e0d9a945f5f48462c05f26ae4bde2db5731 "Android: Tell make about sub-makes to speed up build" did, and enables parallel builds for minetest itself as well.
2016-05-12Android: download deps using httpsest31
Its more secure, and some pages even redirect to the https version.
2016-05-12Android: update openssl to 1.0.2hest31
2016-04-28Upgrade Android build to Gradle build systemShadowNinja
The old Ant build system has been deprecated for a while and new development is focused on Gradle. I also removed a hardcoded string that lint caught and moved the patch files to a subdirectory. I left the JNI files in the root directory.
2016-04-26Android: Update dependencies, GMP was required as a dependencyMaksim Gamarnik
2016-03-05Update Android dependencies, -O3 optimization, remove old ARMv5 configMaksim Gamarnik
* Update OpenSSL (thanks @sapier, i use his patch!), Curl and SQLite3. * Remove old arm config. Almost all phones that use ARMv5 have 1 core and 256-512 RAM, it's about 2-5 FPS. * Do -O3 optimization for libs and remove -fexpensive-optimizations for Minetest (-O3 includes this! Read gcc docs). * OpenSSL fix - thanks @sapier, again.
2016-02-22Android: hardcode leveldb revisionest31
Newest leveldb commit breaks build. With no fix in sight, there is no other way than to fall back to the last working leveldb revision, and hardcode it. Workaround for upstream bug https://github.com/google/leveldb/issues/340
2016-01-23Fix compilation warning if compiling for android with c++11est31
2015-12-23Android: Tell make about sub-makes to speed up buildest31
Before, sub-makes called by make were called without make knowing they were sub-makes. This however led make's jobserver not do its tasks, and the build process ended up with inefficient parralelisation. This commit fixes this by applying the two ways the make manual tells about: putting + to the start of the line (used when ndk-build is invoked), and exchanging "make" with "$(MAKE)". Before, make complained with messages like: make[2]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. This complaint can now only been seen for openssl. openssl has issues if make gets exchanged with $(MAKE): if exchanged, above error message is multiplied for various subdirs of the openssl source tree. On a 4 core box, "make -j 4" build time from "make clean_all" cleaned source tree could be improved from 15:34 minutes to 10:45 minutes. This means a speedup of 45%.
2015-12-20Android: Fix extra files being copied to the APKShadowNinja
dcb91cf0c0c9a20622feeb4e5e8104ffbc9fa8ec hacked around the biggest issue this caused, but wasted a lot of CPU time and disk space It also still included a lot of other unwanted files. This removes all of `doc/` except the license, and also removes the server list.
2015-12-17Android: Remove unused build target curl_binarySapier
2015-12-17Android: Don't put html docs to apkSapier
2015-12-17Android: Remove non freetype fonts from apkSapier
2015-11-16Android: hardcode irrlicht revision, update other dependenciesest31
Recent irrlicht revisions break the build, hardcode the revision to a working one until upstream publishes a working version. See issue #3366 for a discussion about this. Also update dependencies to current versions.
2015-09-08Update leveldb git urlest31
Google code was shut down, project moved to github.
2015-08-24Add setting for mods to copy to Android appShadowNinja
2015-08-21Fix wrong android versionNameest31
Before, android versionName was set to "...13", which made the f-droid build fail.
2015-08-20Bump version to 0.4.130.4.13est31
2015-08-02Android: fix sound issue, and gitignoreest31
Previously, sound failed due to errors with hardfp abi build instructions. As the problem couldn't be found, the softfp compatible abi was chosen instead. This move will cause a small performance overhead, but due to the abi being armeabi-v7a, the internal calculations will still be done using the FPU. We also fix some issues with ABI information passing. However, the fixes aren't sufficient to get sound working. The patch also fixes an issue with the gitignore file.
2015-08-01Android: Add githash header to spare rebuilds after new commitsest31
Before, android_version.h got changed at every new commit. Now, we only change it with new minetest releases. Analogous to how cmake does it, we add an android_version_githash.h file that communicates the git hash to C++ code. Also, unify VERS_MAJOR, VERS_MINOR and VERS_PATCH variable calculation inside the whole makefile.
2015-07-31Android: speed up rebuild, and prevent race condition failest31
Speeding up rebuild: Before, we've written the android_version.h file at every rebuild. As it thought the file's content has changed, make has rebuilt files in the source tree that depended on that header file during rebuild, causing lots of files being rebuilt without there being a reason. The reasoning of make can be observed by passing -d and V=1 params to the ndk-build command. You then got logging entries like: Prerequisite `jni/src/android_version.h' is newer than target `obj/local/armeabi-v7a-hard/objs-debug/minetest/jni/src/areastore.o'. Preventing race condition build fail: Before, there was a race condition, where, if the prep_srcdir target was executed in parallel with the $(ROOT)/jni/src/android_version.h one, it could happen that the jni/src directory was nonexistent, and we were trying to write into a file inside. This resulted in a build failue: /bin/sh: 1: cannot create [...]/jni/src/android_version.h: Directory nonexistent Additionally, we now don't remove the link to src/ needlessly anymore. Keeping this wouldn't have affected the rebuild, but this way its more proper.
2015-07-31Fix 0.4.11 githash for androidest31
Also make only one >-redirection, sparing repetition. Also, use cut instead of awk, which is shorter and should be a bit faster.
2015-07-29Android: fix horrible libiconv buildest31
Before, our libiconv build was a joke. We first called configure for our own build host system, then called make, before we executed a Android.mk script we provided as patch. The first "native make" always failed, and the LIBICONV_LIB file setting in our Makefile didn't match the built one, resulting in an always-rebuild of iconv. This commit cleans up this total mess, removes the double-build, and the Android.mk, and properly calls ./configure with the according target platform, and uses a built toolchain. As we have to deal with the android bug "NDK: Support for prebuild libs with full sonames" https://code.google.com/p/android/issues/detail?id=55868 as the 2013 patch https://lists.gnu.org/archive/html/libtool-patches/2013-06/msg00002.html by Google's David Turner wasn't inside the 2011 libtool, we pass -avoid-version to libtool. Thanks to the proper build, wide_to_utf8 works for android now, removing us of the need to disable it.
2015-07-29Android: Fix minor makefile bugsest31
Fix commenting happening thanks to missing quotes and dereference variable the right way, to get rid of a compile error.
2015-06-20Android: use loop inside makefile to spare repetitionest31
2015-06-13Add utf-8 conversion utilities and re-add intlGUIEditBoxest31
2015-06-11Reposition irrlicht timestamp in makefileest31
2015-05-15Fix libgmp for Androidest31
Android terminated immediately after start since commit 181f7baa453c58d4070de7196fd74663110946a8 because library wasn't loaded, and libminetest.so required libgmp.so.10 instead of libgmp.so. The second issue has been solved by the linker flags.
2015-05-11Add LibGMPest31
Uses system provided libgmp if found, if not it falls back to mini-gmp.
2015-03-29Fix Android build-related bugsCraig Robbins
E.g. Sound and freetype always being disabled, redefinition of pre-processor directives
2015-03-27Clean up and tweak build systemShadowNinja
* Combine client and server man pages. * Update unit test options and available databases in man page. * Add `--worldname` to man page. * Fix a bunch of places where `"Minetest"` was used directly instead of `PROJECT_NAME`. * Disable server build by default on all operating systems. * Make `ENABLE_FREETYPE` not fail if FreeType isn't found. * Enable LevelDB, Redis, and FreeType detection by default. * Remove the `VERSION_PATCH_ORIG` hack. * Add option to search for and use system JSONCPP. * Remove broken LuaJIT version detection. * Rename `DISABLE_LUAJIT` to `ENABLE_LUAJIT`. * Rename `minetest_*` variables in `version.{h,cpp}` to `g_*`. * Clean up style of CMake files.
2015-03-23Fix Android build on 32 bitest31
Remove the --system=linux-x86_64 which isn't neccessary on 64 bit, as, when given no --system parameter, the standalone-toolchain.sh script figures out the platform on itself. Naturally, the hardcoded setting broke android building on 32 bit systems.
2015-03-17Remove Android makefile ugly make -j hackLoic Blot