ver. 1.1.6

This commit is contained in:
Maksim Gamarnik 2016-10-16 22:23:15 +03:00
parent aff0e2fec7
commit de3ea028b3
10 changed files with 105 additions and 177 deletions

View File

@ -7,12 +7,12 @@ OS := $(shell uname)
# build for build platform # build for build platform
APP_PLATFORM = android-19 APP_PLATFORM = android-19
COMPILER_VERSION = 4.9
ANDR_ROOT = $(shell pwd) ANDR_ROOT = $(shell pwd)
PROJ_ROOT = $(shell realpath $(ANDR_ROOT)/../..) PROJ_ROOT = $(shell realpath $(ANDR_ROOT)/../..)
APP_ROOT = $(ANDR_ROOT)/src/main APP_ROOT = $(ANDR_ROOT)/src/main
VERSION_MAJOR := $(shell cat $(PROJ_ROOT)/CMakeLists.txt | \ VERSION_MAJOR := $(shell cat $(PROJ_ROOT)/CMakeLists.txt | \
grep ^set\(VERSION_MAJOR\ | sed 's/)/ /' | cut -f2 -d' ') grep ^set\(VERSION_MAJOR\ | sed 's/)/ /' | cut -f2 -d' ')
VERSION_MINOR := $(shell cat $(PROJ_ROOT)/CMakeLists.txt | \ VERSION_MINOR := $(shell cat $(PROJ_ROOT)/CMakeLists.txt | \
@ -25,39 +25,19 @@ VERSION_PATCH := $(shell cat $(PROJ_ROOT)/CMakeLists.txt | \
################################################################################ ################################################################################
TARGET_HOST = arm-linux TARGET_HOST = arm-linux
TARGET_HOST2 = arm-linux
TARGET_ABI = armeabi-v7a TARGET_ABI = armeabi-v7a
TARGET_LIBDIR = armeabi-v7a TARGET_LIBDIR = armeabi-v7a
TARGET_TOOLCHAIN = arm-linux-androideabi TARGET_TOOLCHAIN = arm-linux-androideabi
TARGET_CFLAGS_ADDON = -mfpu=vfpv3-d16 -march=armv7-a -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden TARGET_CFLAGS_ADDON = -mfpu=vfpv3-d16 -march=armv7-a -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden
TARGET_CXXFLAGS_ADDON = $(TARGET_CFLAGS_ADDON) TARGET_CXXFLAGS_ADDON = $(TARGET_CFLAGS_ADDON)
TARGET_LDFLAGS_ADDON = -Wl,--no-warn-mismatch,--gc-sections TARGET_LDFLAGS_ADDON = -Wl,--no-warn-mismatch,--gc-sections
TARGET_ARCH = armv7
CROSS_PREFIX = arm-linux-androideabi- CROSS_PREFIX = arm-linux-androideabi-
COMPILER_VERSION = 4.9
################################################################################
# toolchain config for ARMv8
################################################################################
# TARGET_HOST = aarch64-linux
# TARGET_HOST2 = arm-linux
# TARGET_ABI = arm64-v8a
# TARGET_LIBDIR = arm64-v8a
# TARGET_TOOLCHAIN = aarch64-linux-android
# TARGET_CFLAGS_ADDON = -march=armv8-a -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves
# TARGET_CXXFLAGS_ADDON = $(TARGET_CFLAGS_ADDON)
# TARGET_LDFLAGS_ADDON = -Wl,--no-warn-mismatch,--gc-sections
# TARGET_ARCH = arm64
# CROSS_PREFIX = aarch64-linux-android-
# COMPILER_VERSION = 4.9
################################################################################ ################################################################################
# toolchain config for x86 # toolchain config for x86
################################################################################ ################################################################################
# TARGET_HOST = x86-linux # TARGET_HOST = x86-linux
# TARGET_HOST2 = x86-linux
# TARGET_ABI = x86 # TARGET_ABI = x86
# TARGET_LIBDIR = x86 # TARGET_LIBDIR = x86
# TARGET_TOOLCHAIN = x86 # TARGET_TOOLCHAIN = x86
@ -66,20 +46,19 @@ COMPILER_VERSION = 4.9
# TARGET_LDFLAGS_ADDON = -Wl,--no-warn-mismatch,--gc-sections # TARGET_LDFLAGS_ADDON = -Wl,--no-warn-mismatch,--gc-sections
# TARGET_ARCH = x86 # TARGET_ARCH = x86
# CROSS_PREFIX = i686-linux-android- # CROSS_PREFIX = i686-linux-android-
# COMPILER_VERSION = 4.9
################################################################################ ################################################################################
ASSETS_TIMESTAMP = deps/assets_timestamp ASSETS_TIMESTAMP = deps/assets_timestamp
OPENAL_URL = https://github.com/MoNTE48/openal-soft/releases/download/$(OPENAL_VER)/$(OPENAL_VER).zip #OPENAL_URL = https://github.com/MoNTE48/openal-soft/releases/download/$(OPENAL_VER)/$(OPENAL_VER).zip
OPENAL_VER = openal-soft-1.17.2-dev #OPENAL_VER = openal-soft-1.17.2-dev
OPENAL_FOLDER = $(ANDR_ROOT)/deps/openal-soft OPENAL_FOLDER = $(ANDR_ROOT)/deps/openal-soft
OPENAL_DIR = $(ANDR_ROOT)/deps/openal-soft/android OPENAL_DIR = $(ANDR_ROOT)/deps/openal-soft/android
OPENAL_LIB = $(OPENAL_DIR)/libs/$(TARGET_ABI)/libopenal.so OPENAL_LIB = $(OPENAL_DIR)/libs/$(TARGET_ABI)/libopenal.so
OPENAL_TIMESTAMP = $(OPENAL_DIR)/timestamp OPENAL_TIMESTAMP = $(OPENAL_DIR)/timestamp
OPENAL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/openal_timestamp OPENAL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/openal_timestamp
#OPENAL_URL_GIT = https://github.com/MoNTE48/openal-soft OPENAL_URL_GIT = https://github.com/MoNTE48/openal-soft
VORBIS_DIR = $(ANDR_ROOT)/deps/libvorbis-android VORBIS_DIR = $(ANDR_ROOT)/deps/libvorbis-android
VORBIS_LIB = $(VORBIS_DIR)/obj/local/$(TARGET_ABI)/libvorbis.a VORBIS_LIB = $(VORBIS_DIR)/obj/local/$(TARGET_ABI)/libvorbis.a
@ -102,19 +81,19 @@ OPENSSL_TIMESTAMP = $(OPENSSL_DIR)/timestamp
OPENSSL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/openssl_timestamp OPENSSL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/openssl_timestamp
OPENSSL_URL = https://www.openssl.org/source/openssl-$(OPENSSL_VERSION).tar.gz OPENSSL_URL = https://www.openssl.org/source/openssl-$(OPENSSL_VERSION).tar.gz
CURL_VERSION = 7.50.2 CURL_VERSION = 7.50.3
CURL_DIR = $(ANDR_ROOT)/deps/curl CURL_DIR = $(ANDR_ROOT)/deps/curl
CURL_LIB = $(CURL_DIR)/lib/.libs/libcurl.a CURL_LIB = $(CURL_DIR)/lib/.libs/libcurl.a
CURL_TIMESTAMP = $(CURL_DIR)/timestamp CURL_TIMESTAMP = $(CURL_DIR)/timestamp
CURL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/curl_timestamp CURL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/curl_timestamp
CURL_URL_HTTP = http://dl.uxnr.de/mirror/curl/curl-${CURL_VERSION}.tar.bz2 CURL_URL_HTTP = http://dl.uxnr.de/mirror/curl/curl-${CURL_VERSION}.tar.bz2
MPIR_VERSION = 2.7.2 # not used now
MPIR_DIR = $(ANDR_ROOT)/deps/mpir MPIR_DIR = $(ANDR_ROOT)/deps/mpir
MPIR_LIB = $(MPIR_DIR)/usr/local/lib/libmpir.a MPIR_LIB = $(MPIR_DIR)/usr/local/lib/libmpir.a
MPIR_TIMESTAMP = $(MPIR_DIR)/timestamp MPIR_TIMESTAMP = $(MPIR_DIR)/timestamp
MPIR_TIMESTAMP_INT = $(ANDR_ROOT)/deps/mpir_timestamp MPIR_TIMESTAMP_INT = $(ANDR_ROOT)/deps/mpir_timestamp
MPIR_URL_HTTP = http://mpir.org/mpir-$(MPIR_VERSION).tar.bz2 MPIR_URL_GIT = https://github.com/wbhart/mpir
FREETYPE_VERSION = 2.7 FREETYPE_VERSION = 2.7
FREETYPE_DIR = $(ANDR_ROOT)/deps/freetype FREETYPE_DIR = $(ANDR_ROOT)/deps/freetype
@ -130,7 +109,7 @@ ICONV_TIMESTAMP = $(ICONV_DIR)/timestamp
ICONV_TIMESTAMP_INT = $(ANDR_ROOT)/deps/iconv_timestamp ICONV_TIMESTAMP_INT = $(ANDR_ROOT)/deps/iconv_timestamp
ICONV_URL_HTTP = https://ftp.gnu.org/pub/gnu/libiconv/libiconv-$(ICONV_VERSION).tar.gz ICONV_URL_HTTP = https://ftp.gnu.org/pub/gnu/libiconv/libiconv-$(ICONV_VERSION).tar.gz
SQLITE3_VERSION = 3140200 SQLITE3_VERSION = 3150000
SQLITE3_DIR = $(ANDR_ROOT)/deps/sqlite SQLITE3_DIR = $(ANDR_ROOT)/deps/sqlite
SQLITE3_URL = https://www.sqlite.org/2016/sqlite-amalgamation-$(SQLITE3_VERSION).zip SQLITE3_URL = https://www.sqlite.org/2016/sqlite-amalgamation-$(SQLITE3_VERSION).zip
@ -141,12 +120,6 @@ LUAJIT_TIMESTAMP = $(LUAJIT_DIR)/timestamp
LUAJIT_TIMESTAMP_INT = $(ANDR_ROOT)/deps/luajit_timestamp LUAJIT_TIMESTAMP_INT = $(ANDR_ROOT)/deps/luajit_timestamp
LUAJIT_URL_GIT = https://github.com/LuaJIT/LuaJIT.git LUAJIT_URL_GIT = https://github.com/LuaJIT/LuaJIT.git
#GNUINTL_DIR = $(ANDR_ROOT)/deps/gnuintl
#GNUINTL_LIB = $(LUAJIT_DIR)src/gnuintl.a
#GNUINTL_TIMESTAMP = $(GNUINTL_DIR)/timestamp
#GNUINTL_TIMESTAMP_INT = $(ANDR_ROOT)/deps/gnuintl_timestamp
#GNUINTL_URL_GIT = https://github.com/LuaJIT/LuaJIT.git
################################################################################ ################################################################################
ANDROID_SDK = $(shell grep '^sdk\.dir' local.properties | sed 's/^.*=[[:space:]]*//') ANDROID_SDK = $(shell grep '^sdk\.dir' local.properties | sed 's/^.*=[[:space:]]*//')
@ -159,17 +132,15 @@ NDK_MODULE_PATH = $(ANDROID_NDK)/toolchains
clean_assets assets sqlite3_download \ clean_assets assets sqlite3_download \
freetype_download clean_freetype freetype \ freetype_download clean_freetype freetype \
luajit_download clean_luajit luajit \ luajit_download clean_luajit luajit \
# gnuintl_download clean_gnuintl gnuintl \
apk clean_apk \ apk clean_apk \
clean_all clean prep_srcdir \ clean_all clean prep_srcdir \
install_debug install_release envpaths all \ install_debug install_release envpaths all \
$(ASSETS_TIMESTAMP) $(LUAJIT_TIMESTAMP) \ $(ASSETS_TIMESTAMP) $(LUAJIT_TIMESTAMP) \
$(OPENAL_TIMESTAMP) $(VORBIS_TIMESTAMP) \ $(OPENAL_TIMESTAMP) $(VORBIS_TIMESTAMP) \
$(IRRLICHT_TIMESTAMP) $(CURL_TIMESTAMP) \ $(IRRLICHT_TIMESTAMP) $(CURL_TIMESTAMP) \
# $(OPENSSL_TIMESTAMP) \
# $(GNUINTL_TIMESTAMP) \
$(ANDR_ROOT)/jni/src/android_version.h \ $(ANDR_ROOT)/jni/src/android_version.h \
$(ANDR_ROOT)/jni/src/android_version_githash.h $(ANDR_ROOT)/jni/src/android_version_githash.h
# $(OPENSSL_TIMESTAMP) \
debug : local.properties debug : local.properties
export NDEBUG=; \ export NDEBUG=; \
@ -190,21 +161,21 @@ delconfig:
$(RM) local.properties $(RM) local.properties
local.properties: local.properties:
@echo "Please specify path of ANDROID NDK"; \ @echo "Please specify path of ANDROID NDK"; \
echo "e.g. $$HOME/Android/ndk-r11c/"; \ echo "e.g. $$HOME/Android/ndk-r11c/"; \
read ANDROID_NDK ; \ read ANDROID_NDK ; \
if [ ! -d $$ANDROID_NDK ] ; then \ if [ ! -d $$ANDROID_NDK ] ; then \
echo "$$ANDROID_NDK is not a valid folder"; \ echo "$$ANDROID_NDK is not a valid folder"; \
exit 1; \ exit 1; \
fi; \ fi; \
echo "ndk.dir = $$ANDROID_NDK" > local.properties; \ echo "ndk.dir = $$ANDROID_NDK" > local.properties; \
echo "Please specify path of ANDROID SDK"; \ echo "Please specify path of ANDROID SDK"; \
echo "e.g. $$HOME/Android/sdk/"; \ echo "e.g. $$HOME/Android/sdk/"; \
read SDKFLDR ; \ read SDKFLDR ; \
if [ ! -d $$SDKFLDR ] ; then \ if [ ! -d $$SDKFLDR ] ; then \
echo "$$SDKFLDR is not a valid folder"; \ echo "$$SDKFLDR is not a valid folder"; \
exit 1; \ exit 1; \
fi; \ fi; \
echo "sdk.dir = $$SDKFLDR" >> local.properties; echo "sdk.dir = $$SDKFLDR" >> local.properties;
@ -219,10 +190,10 @@ openal_download :
echo "openal sources missing, downloading..."; \ echo "openal sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \ mkdir -p ${ANDR_ROOT}/deps; \
cd ${ANDR_ROOT}/deps ; \ cd ${ANDR_ROOT}/deps ; \
# git clone ${OPENAL_URL_GIT} || exit 1; \ git clone ${OPENAL_URL_GIT} || exit 1; \
wget ${OPENAL_URL} || exit 1; \ # wget ${OPENAL_URL} || exit 1; \
unzip ${OPENAL_VER}.zip -d openal-soft || exit 1; \ # unzip ${OPENAL_VER}.zip -d openal-soft || exit 1; \
rm ${OPENAL_VER}.zip || exit 1; \ # rm ${OPENAL_VER}.zip || exit 1; \
fi fi
openal : $(OPENAL_LIB) openal : $(OPENAL_LIB)
@ -241,6 +212,7 @@ $(OPENAL_LIB): $(OPENAL_TIMESTAMP)
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \ ${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \ NDK_MODULE_PATH=${NDK_MODULE_PATH} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \ APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \ TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \ TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \ TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
@ -264,7 +236,7 @@ vorbis_download :
echo "vorbis sources missing, downloading..."; \ echo "vorbis sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \ mkdir -p ${ANDR_ROOT}/deps; \
cd ${ANDR_ROOT}/deps ; \ cd ${ANDR_ROOT}/deps ; \
git clone ${VORBIS_URL_GIT}|| exit 1; \ git clone ${VORBIS_URL_GIT} || exit 1; \
fi fi
vorbis : $(VORBIS_LIB) vorbis : $(VORBIS_LIB)
@ -284,6 +256,7 @@ $(VORBIS_LIB): $(VORBIS_TIMESTAMP)
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \ ${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \ NDK_MODULE_PATH=${NDK_MODULE_PATH} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \ APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \ TARGET_CFLAGS+="${TARGET_CFLAGS_ADDON}" \
TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \ TARGET_LDFLAGS+="${TARGET_LDFLAGS_ADDON}" \
TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \ TARGET_CXXFLAGS+="${TARGET_CXXFLAGS_ADDON}" || exit 1; \
@ -305,11 +278,11 @@ $(OPENSSL_TIMESTAMP) : openssl_download
openssl_download : openssl_download :
@if [ ! -d ${OPENSSL_DIR} ] ; then \ @if [ ! -d ${OPENSSL_DIR} ] ; then \
echo "openssl sources missing, downloading..."; \ echo "openssl sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \ mkdir -p ${ANDR_ROOT}/deps; \
cd ${ANDR_ROOT}/deps; \ cd ${ANDR_ROOT}/deps; \
wget ${OPENSSL_URL} || exit 1; \ wget ${OPENSSL_URL} || exit 1; \
tar -xzf openssl-$(OPENSSL_VERSION).tar.gz; \ tar -xzf openssl-$(OPENSSL_VERSION).tar.gz; \
$(RM) -rf $(ANDR_ROOT)/deps/openssl-$(OPENSSL_VERSION).tar.gz; \ $(RM) -rf $(ANDR_ROOT)/deps/openssl-$(OPENSSL_VERSION).tar.gz; \
mv openssl-$(OPENSSL_VERSION) openssl; \ mv openssl-$(OPENSSL_VERSION) openssl; \
fi fi
@ -393,7 +366,7 @@ $(FREETYPE_LIB) : $(FREETYPE_TIMESTAMP)
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \ export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \ export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \ export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
CC=${CROSS_PREFIX}gcc ./configure --host=${TARGET_HOST} \ CC=${CROSS_PREFIX}gcc ./configure --enable-static --disable-shared --host=${TARGET_HOST} \
--prefix=${TOOLCHAIN} --with-png=no --with-harfbuzz=no || exit 1; \ --prefix=${TOOLCHAIN} --with-png=no --with-harfbuzz=no || exit 1; \
CC=${CROSS_PREFIX}gcc ANDROID_DEV=/tmp/ndk-${TARGET_HOST}-freetype $(MAKE) || exit 1; \ CC=${CROSS_PREFIX}gcc ANDROID_DEV=/tmp/ndk-${TARGET_HOST}-freetype $(MAKE) || exit 1; \
touch ${FREETYPE_TIMESTAMP}; \ touch ${FREETYPE_TIMESTAMP}; \
@ -454,7 +427,7 @@ $(ICONV_LIB) : $(ICONV_TIMESTAMP)
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \ export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \ export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \ export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
./configure --enable-static --disable-shared --host=${TARGET_HOST2} || exit 1; \ ./configure --enable-static --disable-shared --host=${TARGET_HOST} || exit 1; \
sed -i 's/LIBICONV_VERSION_INFO) /LIBICONV_VERSION_INFO) -avoid-version /g' lib/Makefile; \ sed -i 's/LIBICONV_VERSION_INFO) /LIBICONV_VERSION_INFO) -avoid-version /g' lib/Makefile; \
grep "iconv_LDFLAGS" src/Makefile; \ grep "iconv_LDFLAGS" src/Makefile; \
$(MAKE) -s || exit 1; \ $(MAKE) -s || exit 1; \
@ -483,11 +456,11 @@ irrlicht_download :
mv irrlicht-${IRRLICHT_COMMIT} irrlicht; \ mv irrlicht-${IRRLICHT_COMMIT} irrlicht; \
cd irrlicht; \ cd irrlicht; \
mkdir -p lib/Android; \ mkdir -p lib/Android; \
patch -p1 < ${ANDR_ROOT}/patches/irrlicht-touchcount.patch || exit 1; \ patch -p1 < ${ANDR_ROOT}/patches/irrlicht-touchcount.patch || exit 1;\
patch -p1 < ${ANDR_ROOT}/patches/irrlicht-back_button.patch || exit 1; \ patch -p1 < ${ANDR_ROOT}/patches/irrlicht-back_button.patch || exit 1;\
patch -p1 < ${ANDR_ROOT}/patches/irrlicht-texturehack.patch || exit 1; \ patch -p1 < ${ANDR_ROOT}/patches/irrlicht-texturehack.patch || exit 1;\
patch -p1 < ${ANDR_ROOT}/patches/irrlicht-optimization.patch || exit 1;\ patch -p1 < ${ANDR_ROOT}/patches/irrlicht-optimization.patch || exit 1;\
patch -p1 < ${ANDR_ROOT}/patches/irrlicht-CEGL.patch || exit 1; \ patch -p1 < ${ANDR_ROOT}/patches/irrlicht-CEGL.patch || exit 1;\
fi fi
$(IRRLICHT_TIMESTAMP) : irrlicht_download $(IRRLICHT_TIMESTAMP) : irrlicht_download
@ -515,6 +488,7 @@ $(IRRLICHT_LIB): $(IRRLICHT_TIMESTAMP) $(FREETYPE_LIB)
cd deps/irrlicht/source/Irrlicht/Android; \ cd deps/irrlicht/source/Irrlicht/Android; \
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \ ${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \ NDK_MODULE_PATH=${NDK_MODULE_PATH} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} || exit 1; \ APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} || exit 1; \
touch ${IRRLICHT_TIMESTAMP}; \ touch ${IRRLICHT_TIMESTAMP}; \
touch ${IRRLICHT_TIMESTAMP_INT}; \ touch ${IRRLICHT_TIMESTAMP_INT}; \
@ -569,11 +543,11 @@ $(CURL_LIB): $(CURL_TIMESTAMP)
export CC=${CROSS_PREFIX}gcc; \ export CC=${CROSS_PREFIX}gcc; \
export CXX=${CROSS_PREFIX}g++; \ export CXX=${CROSS_PREFIX}g++; \
export TARGET_OS=OS_ANDROID_CROSSCOMPILE; \ export TARGET_OS=OS_ANDROID_CROSSCOMPILE; \
# export CPPFLAGS="$${CPPFLAGS} -I${OPENSSL_DIR}/include \
export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \ export CPPFLAGS="$${CPPFLAGS} ${TARGET_CXXFLAGS_ADDON}"; \
export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \ export CFLAGS="$${CFLAGS} ${TARGET_CFLAGS_ADDON}"; \
# export LDFLAGS="$${LDFLAGS} -L${OPENSSL_DIR} ${TARGET_LDFLAGS_ADDON}"; \
export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \ export LDFLAGS="$${LDFLAGS} ${TARGET_LDFLAGS_ADDON}"; \
# export CPPFLAGS="$${CPPFLAGS} -I${OPENSSL_DIR}/include \
# export LDFLAGS="$${LDFLAGS} -L${OPENSSL_DIR} ${TARGET_LDFLAGS_ADDON}"; \
# ./configure --host=${TARGET_HOST} --enable-static --disable-shared --with-ssl; \ # ./configure --host=${TARGET_HOST} --enable-static --disable-shared --with-ssl; \
./configure --host=${TARGET_HOST} --enable-static --disable-shared; \ ./configure --host=${TARGET_HOST} --enable-static --disable-shared; \
$(MAKE) -s || exit 1; \ $(MAKE) -s || exit 1; \
@ -598,10 +572,7 @@ mpir_download :
echo "mpir sources missing, downloading..."; \ echo "mpir sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \ mkdir -p ${ANDR_ROOT}/deps; \
cd deps; \ cd deps; \
wget ${MPIR_URL_HTTP} || exit 1; \ git clone ${MPIR_URL_GIT} || exit 1; \
tar -xjf mpir-${MPIR_VERSION}.tar.bz2 || exit 1; \
rm mpir-${MPIR_VERSION}.tar.bz2; \
mv mpir-${MPIR_VERSION} mpir; \
fi fi
mpir : $(MPIR_LIB) mpir : $(MPIR_LIB)
@ -621,7 +592,7 @@ $(MPIR_LIB): $(MPIR_TIMESTAMP)
mkdir -p ${MPIR_DIR}; \ mkdir -p ${MPIR_DIR}; \
echo "changed timestamp for mpir detected building..."; \ echo "changed timestamp for mpir detected building..."; \
cd deps/mpir; \ cd deps/mpir; \
export CROSS_PREFIX=${CROSS_PREFIX}; \ export CROSS_PREFIX=${CROSS_PREFIX}; \
export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-mpir; \ export TOOLCHAIN=/tmp/ndk-${TARGET_HOST}-mpir; \
${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \ ${ANDROID_NDK}/build/tools/make-standalone-toolchain.sh \
--toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \ --toolchain=${TARGET_TOOLCHAIN}-${COMPILER_VERSION} \
@ -635,7 +606,7 @@ $(MPIR_LIB): $(MPIR_TIMESTAMP)
touch ${MPIR_TIMESTAMP_INT}; \ touch ${MPIR_TIMESTAMP_INT}; \
$(RM) -rf $${TOOLCHAIN}; \ $(RM) -rf $${TOOLCHAIN}; \
else \ else \
echo "nothing to be done for mpir"; \ echo "nothing to be done for mpir"; \
fi fi
clean_mpir: clean_mpir:
@ -661,22 +632,22 @@ $(ASSETS_TIMESTAMP) : $(IRRLICHT_LIB)
for DIRNAME in {builtin,client,doc,fonts,games,mods,po,textures}; do \ for DIRNAME in {builtin,client,doc,fonts,games,mods,po,textures}; do \
LAST_MODIF=$$(find ${PROJ_ROOT}/${DIRNAME} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \ LAST_MODIF=$$(find ${PROJ_ROOT}/${DIRNAME} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ]; then \ if [ $$(basename $$LAST_MODIF) != "timestamp" ]; then \
touch ${PROJ_ROOT}/${DIRNAME}/timestamp; \ touch ${PROJ_ROOT}/${DIRNAME}/timestamp; \
touch ${ASSETS_TIMESTAMP}; \ touch ${ASSETS_TIMESTAMP}; \
echo ${DIRNAME} changed $$LAST_MODIF; \ echo ${DIRNAME} changed $$LAST_MODIF; \
fi; \ fi; \
done; \ done; \
LAST_MODIF=$$(find ${IRRLICHT_DIR}/media -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \ LAST_MODIF=$$(find ${IRRLICHT_DIR}/media -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \ if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
touch ${IRRLICHT_DIR}/media/timestamp; \ touch ${IRRLICHT_DIR}/media/timestamp; \
touch ${ASSETS_TIMESTAMP}; \ touch ${ASSETS_TIMESTAMP}; \
fi; \ fi; \
if [ ${PROJ_ROOT}/multicraft.conf.example -nt ${ASSETS_TIMESTAMP} ] ; then \ if [ ${PROJ_ROOT}/multicraft.conf.example -nt ${ASSETS_TIMESTAMP} ] ; then \
echo "conf changed"; \ echo "conf changed"; \
touch ${ASSETS_TIMESTAMP}; \ touch ${ASSETS_TIMESTAMP}; \
fi; \ fi; \
if [ ${PROJ_ROOT}/README.txt -nt ${ASSETS_TIMESTAMP} ] ; then \ if [ ${PROJ_ROOT}/README.txt -nt ${ASSETS_TIMESTAMP} ] ; then \
touch ${ASSETS_TIMESTAMP}; \ touch ${ASSETS_TIMESTAMP}; \
fi; \ fi; \
if [ ! -e $(ASSETS_TIMESTAMP) ] ; then \ if [ ! -e $(ASSETS_TIMESTAMP) ] ; then \
touch $(ASSETS_TIMESTAMP); \ touch $(ASSETS_TIMESTAMP); \
@ -685,12 +656,12 @@ $(ASSETS_TIMESTAMP) : $(IRRLICHT_LIB)
$(LUAJIT_TIMESTAMP) : luajit_download $(LUAJIT_TIMESTAMP) : luajit_download
@LAST_MODIF=$$(find ${LUAJIT_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \ @LAST_MODIF=$$(find ${LUAJIT_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \ if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
touch ${LUAJIT_TIMESTAMP}; \ touch ${LUAJIT_TIMESTAMP}; \
fi fi
luajit_download : luajit_download :
@if [ ! -d ${LUAJIT_DIR} ] ; then \ @if [ ! -d ${LUAJIT_DIR} ] ; then \
echo "luajit sources missing, downloading..."; \ echo "luajit sources missing, downloading..."; \
mkdir -p ${ANDR_ROOT}/deps; \ mkdir -p ${ANDR_ROOT}/deps; \
cd ${ANDR_ROOT}/deps; \ cd ${ANDR_ROOT}/deps; \
git clone --branch ${LUAJIT_GIT_BRANCH} ${LUAJIT_URL_GIT} luajit || exit 1; \ git clone --branch ${LUAJIT_GIT_BRANCH} ${LUAJIT_URL_GIT} luajit || exit 1; \
@ -730,54 +701,6 @@ $(LUAJIT_LIB): $(LUAJIT_TIMESTAMP)
clean_luajit: clean_luajit:
$(RM) -R deps/luajit $(RM) -R deps/luajit
$(GNUINTL_TIMESTAMP) : gnuintl_download
@LAST_MODIF=$$(find ${GNUINTL_DIR} -type f -printf '%T@ %p\n' | sort -n | tail -1 | cut -f2- -d" "); \
if [ $$(basename $$LAST_MODIF) != "timestamp" ] ; then \
touch ${GNUINTL_TIMESTAMP}; \
fi
gnuintl_download :
@if [ ! -d "${GNUINTL_DIR}" ] ; then \
echo "gnuintl sources missing, downloading..."; \
# mkdir -p ${ANDR_ROOT}/deps; \
# cd deps; \
# wget ${MPIR_URL_HTTP} || exit 1; \
# tar -xjf gnuintl-${MPIR_VERSION}.tar.bz2 || exit 1; \
# rm gnuintl-${MPIR_VERSION}.tar.bz2; \
# mv gnuintl-${MPIR_VERSION} gnuintl; \
fi
gnuintl : $(GNUINTL_LIB)
$(GNUINTL_LIB): $(GNUINTL_TIMESTAMP)
@REFRESH=0; \
if [ ! -e ${GNUINTL_TIMESTAMP_INT} ] ; then \
REFRESH=1; \
fi; \
if [ ! -e ${GNUINTL_LIB} ] ; then \
REFRESH=1; \
fi; \
if [ ${GNUINTL_TIMESTAMP} -nt ${GNUINTL_TIMESTAMP_INT} ] ; then \
REFRESH=1; \
fi; \
if [ $$REFRESH -ne 0 ] ; then \
mkdir -p ${GNUINTL_DIR}; \
echo "changed timestamp for gnuintl detected building..."; \
cd ${GNUINTL_DIR}; \
${ANDROID_NDK}/ndk-build NDEBUG=${NDEBUG} \
NDK_MODULE_PATH=${NDK_MODULE_PATH} \
APP_ABI=${TARGET_ABI} APP_PLATFORM=${APP_PLATFORM} || exit 1; \
touch ${GNUINTL_TIMESTAMP}; \
touch ${GNUINTL_TIMESTAMP_INT}; \
$(RM) -rf $${TOOLCHAIN}; \
else \
echo "nothing to be done for gnuintl"; \
fi
clean_gnuintl:
$(RM) -R sqlite
assets : $(ASSETS_TIMESTAMP) assets : $(ASSETS_TIMESTAMP)
@REFRESH=0; \ @REFRESH=0; \
if [ ! -e ${ASSETS_TIMESTAMP} ] ; then \ if [ ! -e ${ASSETS_TIMESTAMP} ] ; then \
@ -814,12 +737,14 @@ assets : $(ASSETS_TIMESTAMP)
clean_assets : clean_assets :
@$(RM) -r assets @$(RM) -r assets
apk: local.properties $(ICONV_LIB) $(IRRLICHT_LIB) $(CURL_LIB) $(MPIR_LIB) $(LUAJIT_LIB) \ # $(MPIR_LIB)
apk: local.properties $(ICONV_LIB) $(IRRLICHT_LIB) $(CURL_LIB) $(LUAJIT_LIB) \
$(OPENAL_LIB) $(VORBIS_LIB) prep_srcdir $(ANDR_ROOT)/jni/src/android_version.h \ $(OPENAL_LIB) $(VORBIS_LIB) prep_srcdir $(ANDR_ROOT)/jni/src/android_version.h \
$(ANDR_ROOT)/jni/src/android_version_githash.h sqlite3_download assets $(ANDR_ROOT)/jni/src/android_version_githash.h sqlite3_download assets
+ @${ANDROID_NDK}/ndk-build NDK_MODULE_PATH=${NDK_MODULE_PATH} \ + @${ANDROID_NDK}/ndk-build NDK_MODULE_PATH=${NDK_MODULE_PATH} \
GPROF=${GPROF} APP_ABI=${TARGET_ABI} \ GPROF=${GPROF} APP_ABI=${TARGET_ABI} \
APP_PLATFORM=${APP_PLATFORM} \ APP_PLATFORM=${APP_PLATFORM} \
NDK_TOOLCHAIN_VERSION=${COMPILER_VERSION} \
TARGET_LIBDIR=${TARGET_LIBDIR} && \ TARGET_LIBDIR=${TARGET_LIBDIR} && \
if [ ! -e ${APP_ROOT}/jniLibs ]; then \ if [ ! -e ${APP_ROOT}/jniLibs ]; then \
ln -s ${ANDR_ROOT}/libs ${APP_ROOT}/jniLibs || exit 1; \ ln -s ${ANDR_ROOT}/libs ${APP_ROOT}/jniLibs || exit 1; \
@ -835,10 +760,10 @@ apk: local.properties $(ICONV_LIB) $(IRRLICHT_LIB) $(CURL_LIB) $(MPIR_LIB) $(LUA
# These Intentionally doesn't depend on their respective build steps, # These Intentionally doesn't depend on their respective build steps,
# because it takes a while to verify that everything's up-to-date. # because it takes a while to verify that everything's up-to-date.
install_debug: install_debug:
${ANDROID_SDK}/platform-tools/adb install -r build/outputs/apk/Minetest-debug.apk ${ANDROID_SDK}/platform-tools/adb install -r build/outputs/apk/MultiCraft-debug.apk
install_release: install_release:
${ANDROID_SDK}/platform-tools/adb install -r build/outputs/apk/Minetest-release.apk ${ANDROID_SDK}/platform-tools/adb install -r build/outputs/apk/MultiCraft-release.apk
prep_srcdir : prep_srcdir :
@if [ ! -e ${ANDR_ROOT}/jni/src ]; then \ @if [ ! -e ${ANDR_ROOT}/jni/src ]; then \

View File

@ -32,11 +32,6 @@ LOCAL_MODULE := vorbis
LOCAL_SRC_FILES := deps/libvorbis-android/obj/local/$(APP_ABI)/libvorbis.a LOCAL_SRC_FILES := deps/libvorbis-android/obj/local/$(APP_ABI)/libvorbis.a
include $(PREBUILT_STATIC_LIBRARY) include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS)
LOCAL_MODULE := mpir
LOCAL_SRC_FILES := deps/mpir/usr/local/lib/libmpir.a
include $(PREBUILT_STATIC_LIBRARY)
include $(CLEAR_VARS) include $(CLEAR_VARS)
LOCAL_MODULE := LuaJIT LOCAL_MODULE := LuaJIT
LOCAL_SRC_FILES := deps/luajit/src/libluajit.a LOCAL_SRC_FILES := deps/luajit/src/libluajit.a
@ -84,8 +79,6 @@ LOCAL_CXXFLAGS += -mfpu=vfpv3-d16 -march=armv7-a -Ofast -fdata-sections -ffuncti
LOCAL_LDFLAGS = -Wl,--no-warn-mismatch,--gc-sections LOCAL_LDFLAGS = -Wl,--no-warn-mismatch,--gc-sections
endif endif
TARGET_CFLAGS_ADDON = -mfpu=vfpv3-d16 -D_NDK_MATH_NO_SOFTFP=1 -mhard-float -march=armv7-a -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden
endif endif
ifdef GPROF ifdef GPROF
@ -94,10 +87,9 @@ LOCAL_CFLAGS += -pg
endif endif
ifeq ($(TARGET_ARCH_ABI),x86) ifeq ($(TARGET_ARCH_ABI),x86)
LOCAL_CFLAGS += -mhard-float -Ofast -fno-fast-math -funsafe-math-optimizations -fno-trapping-math -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden -fno-stack-protector LOCAL_CFLAGS += -Ofast -fno-fast-math -funsafe-math-optimizations -fno-trapping-math -ffinite-math-only -fno-rounding-math -fno-signaling-nans -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden -fno-stack-protector
LOCAL_CXXFLAGS += -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden LOCAL_CXXFLAGS += -Ofast -fdata-sections -ffunction-sections -fmodulo-sched -fmodulo-sched-allow-regmoves -fvisibility=hidden
LOCAL_LDFLAGS = -Wl,--no-warn-mismatch,--gc-sections LOCAL_LDFLAGS = -Wl,--no-warn-mismatch,--gc-sections
LOCAL_DISABLE_FATAL_LINKER_WARNINGS := true
endif endif
LOCAL_C_INCLUDES := \ LOCAL_C_INCLUDES := \
@ -105,13 +97,13 @@ LOCAL_C_INCLUDES := \
jni/src/script \ jni/src/script \
jni/src/json \ jni/src/json \
jni/src/cguittfont \ jni/src/cguittfont \
jni/src/gmp \
deps/irrlicht/include \ deps/irrlicht/include \
deps/libiconv/include \ deps/libiconv/include \
deps/freetype/include \ deps/freetype/include \
deps/curl/include \ deps/curl/include \
deps/openal-soft/include \ deps/openal-soft/include \
deps/libvorbis-android/jni/include \ deps/libvorbis-android/jni/include \
deps/mpir \
deps/sqlite/ \ deps/sqlite/ \
deps/luajit/src \ deps/luajit/src \
# deps/gnuintl/jni/include \ # deps/gnuintl/jni/include \
@ -241,7 +233,8 @@ LOCAL_SRC_FILES := \
jni/src/wieldmesh.cpp \ jni/src/wieldmesh.cpp \
jni/src/client/clientlauncher.cpp \ jni/src/client/clientlauncher.cpp \
jni/src/client/tile.cpp \ jni/src/client/tile.cpp \
jni/src/util/sha256.c jni/src/util/sha256.c \
jni/src/gmp/mini-gmp.c
# jni/src/content_cso.cpp # jni/src/content_cso.cpp
# Network # Network
@ -300,7 +293,7 @@ LOCAL_SRC_FILES += jni/src/cguittfont/xCGUITTFont.cpp
LOCAL_SRC_FILES += deps/sqlite/sqlite3.c LOCAL_SRC_FILES += deps/sqlite/sqlite3.c
# Threading # Threading
LOCAL_SRC_FILES += \ LOCAL_SRC_FILES += \
jni/src/threading/event.cpp \ jni/src/threading/event.cpp \
jni/src/threading/mutex.cpp \ jni/src/threading/mutex.cpp \
jni/src/threading/semaphore.cpp \ jni/src/threading/semaphore.cpp \
@ -309,10 +302,10 @@ LOCAL_SRC_FILES += \
# JSONCPP # JSONCPP
LOCAL_SRC_FILES += jni/src/json/jsoncpp.cpp LOCAL_SRC_FILES += jni/src/json/jsoncpp.cpp
LOCAL_STATIC_LIBRARIES := Irrlicht freetype curl iconv LuaJIT openal vorbis mpir android_native_app_glue $(PROFILER_LIBS) LOCAL_STATIC_LIBRARIES := Irrlicht freetype curl iconv LuaJIT openal vorbis android_native_app_glue $(PROFILER_LIBS)
#LOCAL_SHARED_LIBRARIES := GNUIntl #LOCAL_SHARED_LIBRARIES := GNUIntl
LOCAL_LDLIBS := -lEGL -llog -lGLESv1_CM -lGLESv2 -lz -landroid -lOpenSLES LOCAL_LDLIBS := -lEGL -lGLESv1_CM -lGLESv2 -landroid -lOpenSLES
include $(BUILD_SHARED_LIBRARY) include $(BUILD_SHARED_LIBRARY)

View File

@ -2,4 +2,4 @@ APP_MODULES := multicraft
APP_STL := gnustl_shared APP_STL := gnustl_shared
#APP_STL := c++_shared #APP_STL := c++_shared
#LIBCXX_FORCE_REBUILD := true #LIBCXX_FORCE_REBUILD := true
APP_CPPFLAGS += -fexceptions -frtti APP_CPPFLAGS += -fexceptions -frtti -std=c++11

View File

@ -1,5 +1,5 @@
--- irrlicht/source/Irrlicht/CEGLManager.cpp.orig 2015-08-29 15:43:09.000000000 +0300 --- irrlicht/source/Irrlicht/CEGLManager.cpp.orig 2015-08-29 15:43:09.000000000 +0300
+++ irrlicht/source/Irrlicht/CEGLManager.cpp 2016-09-13 17:23:12.000000000 +0300 +++ irrlicht/source/Irrlicht/CEGLManager.cpp 2016-09-20 01:09:05.259201198 +0300
@@ -9,6 +9,10 @@ @@ -9,6 +9,10 @@
#include "irrString.h" #include "irrString.h"
#include "os.h" #include "os.h"

View File

@ -110,7 +110,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("leaves_style", "fancy"); settings->setDefault("leaves_style", "fancy");
settings->setDefault("connected_glass", "false"); settings->setDefault("connected_glass", "false");
settings->setDefault("smooth_lighting", "true"); settings->setDefault("smooth_lighting", "true");
settings->setDefault("display_gamma", "1.5"); settings->setDefault("display_gamma", "1.4");
settings->setDefault("texture_path", ""); settings->setDefault("texture_path", "");
settings->setDefault("shader_path", ""); settings->setDefault("shader_path", "");
settings->setDefault("video_driver", "opengl"); settings->setDefault("video_driver", "opengl");
@ -118,7 +118,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("noclip", "false"); settings->setDefault("noclip", "false");
settings->setDefault("continuous_forward", "false"); settings->setDefault("continuous_forward", "false");
settings->setDefault("cinematic", "false"); settings->setDefault("cinematic", "false");
settings->setDefault("camera_smoothing", "0"); settings->setDefault("camera_smoothing", "0.1");
settings->setDefault("cinematic_camera_smoothing", "0.7"); settings->setDefault("cinematic_camera_smoothing", "0.7");
settings->setDefault("fast_move", "false"); settings->setDefault("fast_move", "false");
settings->setDefault("invert_mouse", "false"); settings->setDefault("invert_mouse", "false");
@ -135,10 +135,10 @@ void set_default_settings(Settings *settings)
settings->setDefault("opaque_water", "false"); settings->setDefault("opaque_water", "false");
settings->setDefault("console_color", "(0,0,0)"); settings->setDefault("console_color", "(0,0,0)");
settings->setDefault("console_alpha", "200"); settings->setDefault("console_alpha", "200");
settings->setDefault("selectionbox_color", "(0,0,0)"); settings->setDefault("selectionbox_color", "(255,255,255)");
settings->setDefault("selectionbox_width", "2"); settings->setDefault("selectionbox_width", "4");
settings->setDefault("inventory_items_animations", "false"); settings->setDefault("inventory_items_animations", "false");
settings->setDefault("node_highlighting", "halo"); settings->setDefault("node_highlighting", "box");
settings->setDefault("crosshair_color", "(255,255,255)"); settings->setDefault("crosshair_color", "(255,255,255)");
settings->setDefault("crosshair_alpha", "255"); settings->setDefault("crosshair_alpha", "255");
settings->setDefault("hud_scaling", "1.0"); settings->setDefault("hud_scaling", "1.0");
@ -343,27 +343,29 @@ void set_default_settings(Settings *settings)
settings->setDefault("enable_shaders", "false"); settings->setDefault("enable_shaders", "false");
settings->setDefault("fullscreen", "true"); settings->setDefault("fullscreen", "true");
settings->setDefault("video_driver", "ogles1"); settings->setDefault("video_driver", "ogles1");
settings->setDefault("touchtarget", "true"); settings->setDefault("touchtarget", "false");
settings->setDefault("touchscreen_threshold","20"); settings->setDefault("touchscreen_threshold", "20");
settings->setDefault("smooth_lighting", "false"); settings->setDefault("smooth_lighting", "false");
settings->setDefault("emergequeue_limit_diskonly", "8"); settings->setDefault("emergequeue_limit_diskonly", "8");
settings->setDefault("emergequeue_limit_generate", "8"); settings->setDefault("emergequeue_limit_generate", "8");
settings->setDefault("max_block_generate_distance", "3"); settings->setDefault("max_block_generate_distance", "3");
settings->setDefault("enable_3d_clouds", "false"); // settings->setDefault("enable_3d_clouds", "false");
settings->setDefault("fps_max", "30"); settings->setDefault("fps_max", "35");
settings->setDefault("pause_fps_max", "5"); settings->setDefault("pause_fps_max", "5");
settings->setDefault("sqlite_synchronous", "0"); settings->setDefault("sqlite_synchronous", "0");
settings->setDefault("gui_scaling", "1.2"); settings->setDefault("gui_scaling", "1.2");
settings->setDefault("doubletap_jump", "true"); settings->setDefault("doubletap_jump", "true");
settings->setDefault("client_mapblock_limit", "500"); settings->setDefault("client_mapblock_limit", "250");
settings->setDefault("active_block_range", "1"); settings->setDefault("active_block_range", "1");
settings->setDefault("chunksize", "3"); settings->setDefault("chunksize", "3");
settings->setDefault("directional_colored_fog", "false");
settings->setDefault("gui_scaling_filter", "false");
settings->setDefault("gui_scaling_filter_txr2img", "false"); settings->setDefault("gui_scaling_filter_txr2img", "false");
settings->setDefault("max_simultaneous_block_sends_per_client", "5"); settings->setDefault("max_simultaneous_block_sends_per_client", "5");
settings->setDefault("abm_interval", "2.0");
settings->setDefault("selectionbox_width", "7");
settings->setDefault("cloud_radius", "6");
settings->setDefault("client_unload_unused_data_timeout", "120");
settings->setDefault("viewing_range", "25"); settings->setDefault("viewing_range", "30");
settings->setDefault("inventory_image_hack", "false"); settings->setDefault("inventory_image_hack", "false");
// check for device with small screen // check for device with small screen
@ -372,6 +374,7 @@ void set_default_settings(Settings *settings)
if (x_inches < 5) { if (x_inches < 5) {
// all phones // all phones
settings->setDefault("hud_scaling", "0.6"); settings->setDefault("hud_scaling", "0.6");
settings->setDefault("mouse_sensitivity", "0.15");
} }
if (x_inches < 3.7) { if (x_inches < 3.7) {
// small 4" phones // small 4" phones
@ -382,15 +385,13 @@ void set_default_settings(Settings *settings)
if (x_inches > 5) { if (x_inches > 5) {
// tablets // tablets
settings->setDefault("hud_scaling", "0.85"); settings->setDefault("hud_scaling", "0.85");
settings->setDefault("mouse_sensitivity", "0.15"); settings->setDefault("mouse_sensitivity", "0.2");
} }
settings->setDefault("mono_font_path", "/system/fonts/DroidSansMono.ttf"); settings->setDefault("mono_font_path", "/system/fonts/DroidSansMono.ttf");
settings->setDefault("fallback_font_path", "/system/fonts/DroidSans.ttf"); settings->setDefault("fallback_font_path", "/system/fonts/DroidSans.ttf");
settings->setDefault("curl_verify_cert","false"); settings->setDefault("curl_verify_cert","false");
#else
settings->setDefault("screen_dpi", "72");
#endif #endif
} }

View File

@ -1162,7 +1162,11 @@ static void show_pause_menu(GUIFormSpecMenu **cur_formspec,
bool singleplayermode) bool singleplayermode)
{ {
#ifndef __ANDROID__
float ypos = singleplayermode ? 0.5 : 0.1; float ypos = singleplayermode ? 0.5 : 0.1;
#else
float ypos =1.0;
#endif
std::ostringstream os; std::ostringstream os;
os << FORMSPEC_VERSION_STRING << SIZE_TAG os << FORMSPEC_VERSION_STRING << SIZE_TAG
@ -1180,7 +1184,7 @@ static void show_pause_menu(GUIFormSpecMenu **cur_formspec,
<< strgettext("Change Keys") << "]"; << strgettext("Change Keys") << "]";
#endif #endif
os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_menu;" os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_menu;"
<< strgettext("Exit to Menu") << "]"; << strgettext("Save and Exit") << "]";
os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_os;" os << "button_exit[4," << (ypos++) << ";3,0.5;btn_exit_os;"
<< strgettext("Close game") << "]" << strgettext("Close game") << "]"
<< "\n;]"; << "\n;]";

View File

@ -103,7 +103,7 @@ Hud::Hud(video::IVideoDriver *driver, scene::ISceneManager* smgr,
if (mode == "box") { if (mode == "box") {
m_use_selection_mesh = false; m_use_selection_mesh = false;
m_selection_material.Thickness = m_selection_material.Thickness =
rangelim(g_settings->getS16("selectionbox_width"), 1, 5); rangelim(g_settings->getS16("selectionbox_width"), 1, 7);
} else if (mode == "halo") { } else if (mode == "halo") {
m_use_selection_mesh = true; m_use_selection_mesh = true;
m_selection_material.setTexture(0, tsrc->getTextureForMesh("halo.png")); m_selection_material.setTexture(0, tsrc->getTextureForMesh("halo.png"));
@ -484,10 +484,17 @@ void Hud::drawCrosshair()
core::rect<s32>(0, 0, size.X, size.Y), core::rect<s32>(0, 0, size.X, size.Y),
0, crosshair_argb, true); 0, crosshair_argb, true);
} else { } else {
#ifdef __ANDROID__
driver->draw2DLine(m_displaycenter - v2s32(40, 0),
m_displaycenter + v2s32(40, 0), crosshair_argb);
driver->draw2DLine(m_displaycenter - v2s32(0, 40),
m_displaycenter + v2s32(0, 40), crosshair_argb);
#else
driver->draw2DLine(m_displaycenter - v2s32(10, 0), driver->draw2DLine(m_displaycenter - v2s32(10, 0),
m_displaycenter + v2s32(10, 0), crosshair_argb); m_displaycenter + v2s32(10, 0), crosshair_argb);
driver->draw2DLine(m_displaycenter - v2s32(0, 10), driver->draw2DLine(m_displaycenter - v2s32(0, 10),
m_displaycenter + v2s32(0, 10), crosshair_argb); m_displaycenter + v2s32(0, 10), crosshair_argb);
#endif
} }
} }
@ -511,12 +518,9 @@ void Hud::drawSelectionMesh()
i->MinEdge + m_selection_pos_with_offset, i->MinEdge + m_selection_pos_with_offset,
i->MaxEdge + m_selection_pos_with_offset); i->MaxEdge + m_selection_pos_with_offset);
u32 r = (selectionbox_argb.getRed() * u32 r = (selectionbox_argb.getRed());
m_selection_mesh_color.getRed() / 255); u32 g = (selectionbox_argb.getGreen());
u32 g = (selectionbox_argb.getGreen() * u32 b = (selectionbox_argb.getBlue());
m_selection_mesh_color.getGreen() / 255);
u32 b = (selectionbox_argb.getBlue() *
m_selection_mesh_color.getBlue() / 255);
driver->draw3DBox(box, video::SColor(255, r, g, b)); driver->draw3DBox(box, video::SColor(255, r, g, b));
} }
driver->setMaterial(oldmaterial); driver->setMaterial(oldmaterial);

View File

@ -512,9 +512,9 @@ void Sky::update(float time_of_day, float time_brightness,
(155./255*1.2,193./255,240./255, 1.0); (155./255*1.2,193./255,240./255, 1.0);
video::SColorf skycolor_bright_normal_f = video::SColorf skycolor_bright_normal_f =
video::SColor(255, 140, 186, 250); video::SColor(255, 2, 138, 255);
video::SColorf skycolor_bright_dawn_f = video::SColorf skycolor_bright_dawn_f =
video::SColor(255, 180, 186, 250); video::SColor(255, 180, 186, 255);
video::SColorf cloudcolor_bright_normal_f = video::SColorf cloudcolor_bright_normal_f =
video::SColor(255, 240,240,255); video::SColor(255, 240,240,255);

View File

@ -62,7 +62,7 @@ typedef enum {
after_last_element_id after_last_element_id
} touch_gui_button_id; } touch_gui_button_id;
#define MIN_DIG_TIME_MS 500 #define MIN_DIG_TIME_MS 300
#define MAX_TOUCH_COUNT 64 #define MAX_TOUCH_COUNT 64
#define BUTTON_REPEAT_DELAY 0.2f #define BUTTON_REPEAT_DELAY 0.2f

View File

@ -44,7 +44,8 @@
#if USE_SYSTEM_GMP #if USE_SYSTEM_GMP
#include <gmp.h> #include <gmp.h>
#elif defined (__ANDROID__) #elif defined (__ANDROID__)
#include <mpir.h> // #include <mpir.h>
#include <gmp/mini-gmp.h>
#else #else
#include <gmp/mini-gmp.h> #include <gmp/mini-gmp.h>
#endif #endif