73 Commits

Author SHA1 Message Date
est31
f4010f89c6 Android: hardcode irrlicht revision, update other dependencies
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-11-16 17:33:01 +01:00
paramat
5b0fdfaa00 Mapgen: Add flat mapgen in hidden form 2015-11-11 09:37:54 +00:00
est31
5c89027811 Android: statically load iconv library
Fixes #3291

Thanks to @arpruss for reporting the bug, and suggesting the fix.

Also, remove trailing whitespaces.
2015-10-24 20:47:02 +02:00
paramat
9fdc33b4f8 Android/Mapgen: Add fractal mapgen file to android makefiles 2015-10-06 22:32:13 +01:00
est31
d59bc5ce28 Update leveldb git url
Google code was shut down, project moved to github.
2015-09-08 21:45:16 +02:00
ShadowNinja
f5c3118427 Add setting for mods to copy to Android app 2015-08-24 14:37:14 -04:00
ShadowNinja
eb29fb535b Fix Android build of threading sources 2015-08-24 11:20:53 -04:00
ShadowNinja
098d28aa5e Clean up threading
* Rename everything.
    * Strip J prefix.
    * Change UpperCamelCase functions to lowerCamelCase.
  * Remove global (!) semaphore count mutex on OSX.
  * Remove semaphore count getter (unused, unsafe, depended on internal
    API functions on Windows, and used a hack on OSX).
  * Add `Atomic<type>`.
  * Make `Thread` handle thread names.
  * Add support for C++11 multi-threading.
  * Combine pthread and win32 sources.
  * Remove `ThreadStarted` (unused, unneeded).
  * Move some includes from the headers to the sources.
  * Move all of `Event` into its header (allows inlining with no new includes).
  * Make `Event` use `Semaphore` (except on Windows).
  * Move some porting functions into `Thread`.
  * Integrate logging with `Thread`.
  * Add threading test.
2015-08-23 22:04:06 -04:00
est31
7249f5ee2c Fix wrong android versionName
Before, android versionName was set to "...13", which made the f-droid build fail.
2015-08-21 22:47:04 +02:00
est31
9721b4cf60 Bump version to 0.4.13 2015-08-20 04:02:00 +02:00
est31
622b1a193b Android: fix sound issue, and gitignore
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-02 19:23:17 +02:00
est31
5d5be00ce3 Android: Add githash header to spare rebuilds after new commits
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-08-01 20:42:07 +02:00
est31
3bb3e66709 Android: speed up rebuild, and prevent race condition fail
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-31 10:12:20 +02:00
est31
b1b351a2af Fix 0.4.11 githash for android
Also make only one >-redirection, sparing repetition.
Also, use cut instead of awk, which is shorter and should be a bit faster.
2015-07-31 04:51:57 +02:00
est31
f0d4c34375 Android: fix horrible libiconv build
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-29 15:59:06 +02:00
est31
dd7c703a1c Android: Fix minor makefile bugs
Fix commenting happening thanks to missing quotes and dereference variable the right way,
to get rid of a compile error.
2015-07-29 15:53:23 +02:00
est31
d4a7cfcd71 Add AreaStore data structure 2015-07-27 06:42:56 +02:00
RealBadAngel
15bbb593e4 Add minimap feature 2015-06-27 03:42:01 +02:00
est31
ef0e155635 Android: use loop inside makefile to spare repetition 2015-06-20 07:48:17 +02:00
est31
a2998bba96 Add utf-8 conversion utilities and re-add intlGUIEditBox 2015-06-13 19:49:55 +02:00
est31
7ba3664b45 Reposition irrlicht timestamp in makefile 2015-06-11 23:56:54 +02:00
kwolekr
7e10e81669 Split ObjDef/ObjDefManager out to objdef.cpp 2015-05-18 22:30:25 -04:00
ShadowNinja
1008aefa8c Add mod security
Due to compatibility concerns, this is temporarily disabled.
2015-05-16 18:32:31 -04:00
est31
d1a15c3cdb Fix libgmp for Android
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-15 05:08:59 +02:00
est31
4769d4fe1d Make early protocol auth mechanism generic, and add SRP
Adds everything needed for SRP (and everything works too),
but still deactivated, as protocol v25 init packets aren't final yet.
Can be activated by changing the LATEST_PROTOCOL_VERSION header to 25
inside networkprotocol.h.
2015-05-11 18:40:27 +02:00
est31
17ba159bbf Add LibGMP
Uses system provided libgmp if found, if not it falls back to mini-gmp.
2015-05-11 17:48:33 +02:00
kwolekr
9f679f6b11 Tests: Add schematic unittests
Improve schematic file-saving interface
Add ability to create temporary test files
2015-05-08 00:55:42 -04:00
kwolekr
127b35ba69 Tests: Add NodeResolver unittests
Minor misc. NodeResolver cleanups
Prefix faux content type constants for testing with t_ to avoid
confusion or name collisions
2015-05-05 12:00:36 -04:00
kwolekr
41e897f279 Tests: Add ObjDef unittests 2015-05-03 22:19:35 -04:00
kwolekr
2eca582d90 Fix MSVC compatibility
Make sure to include random unittests in android builds, too
Use SWAP() macro
Ensure that negative ranges are tested as well in random unittests
2015-04-29 13:20:01 -04:00
kwolekr
25edaf443c Tests: Modularize unit testing
Split unit tests into separate files under src/unittest/
Give better unittest diagnostics
Clean up some code
2015-04-26 15:08:54 -04:00
Craig Robbins
0731f9ed2a Move globals from main.cpp to more sane locations
Move debug streams to log.cpp|h

Move GUI-related globals to clientlauncher

Move g_settings and g_settings_path to settings.cpp|h

Move g_menuclouds to clouds.cpp|h

Move g_profiler to profiler.cpp|h
2015-04-01 23:04:25 +10:00
Aaron Suen
e8d51554ae Clean scaling pre-filter for formspec/HUD. 2015-04-01 00:01:05 -04:00
Craig Robbins
5e2bb20166 Fix Android build-related bugs
E.g. Sound and freetype always being disabled, redefinition of pre-processor directives
2015-03-29 22:27:01 +10:00
ShadowNinja
2de60ae349 Clean up and tweak build system
* 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-27 15:00:48 -04:00
est31
a346e6c2fc Fix Android build on 32 bit
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-23 14:11:39 +10:00
Loic Blot
638fffbf80 Remove Android makefile ugly make -j hack 2015-03-17 15:48:48 +01:00
Loic Blot
671e448d3c Bump android version code 2015-03-16 20:37:31 +01:00
Loic Blot
569596f0b1 Rename packethandler/{client,server}.cpp to {client,server}packethandler.cpp
* Requested by @Zeno-
* Approved by @nerzhul
2015-03-16 10:19:19 +01:00
Loic Blot
6e62992e96 Android Makefile update backported from stable-0.4 with minor changes 2015-03-15 11:21:34 +01:00
Loic Blot
d71219e01c Android: Backport changes from stable-0.4 2015-03-14 19:59:14 +01:00
Loic Blot
a03fdd923f Android: fix package name in JAVA sources 2015-03-14 18:52:31 +01:00
Loic Blot
1b13972f22 Fix package name in AndroidManifest.xml 2015-03-14 18:41:36 +01:00
Loic Blot
fa59f2e69c AndroidManifest.xml version bump 2015-03-14 18:28:02 +01:00
Maksim Gamarnik
58762a2b97 Update Android Makefile
ARMv7 default build
Update curl
Update OpenSSL
2015-03-08 15:48:40 +10:00
Loic Blot
188c15c3d8 Replace std::list to std::vector into tile.cpp (m_texture_trash) and move tile.hpp to src/client/ 2015-03-05 11:59:40 +01:00
Loic Blot
63fbfd1ad5 Fix android build 2015-02-21 17:37:48 +01:00
Perttu Ahola
bb4840d977 Bump version to 0.4.12 2015-02-18 23:50:01 +01:00
Loic Blot
1ebc81ec2e Update missing files for Android.mk 2015-02-18 09:53:43 +01:00
Loic Blot
e42d1a71cf Android build fix 2015-02-18 09:23:24 +01:00