diff --git a/.gitignore b/.gitignore index 9e679227..082b81f9 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ jni/src/MobileTouchControls/MobileTouchControls local.properties +res/values/git-rev.xml diff --git a/.travis.yml b/.travis.yml index b5138d1d..f77f01ce 100644 --- a/.travis.yml +++ b/.travis.yml @@ -24,7 +24,21 @@ before_install: - git clone -q --depth=1 https://github.com/mittorn/SDL-mirror jni/src/SDL2/SDL-mirror - sed -i -- s/android-8/android-15/g project.properties script: - - ndk-build NDK_TOOLCHAIN_VERSION=4.8 XASH_SDL=1 SUPPORT_WEBP=false -j2 APP_CFLAGS="-w" + - sh gen-version.sh travis build + - ndk-build NDK_TOOLCHAIN_VERSION=4.8 XASH_SDL=1 SUPPORT_WEBP=false -j2 APP_CFLAGS="-w" APP_ABI="armeabi-v7a-hard" - ant debug + - cp bin/xashdroid-debug.apk xashdroid-armv7.apk + - ndk-build NDK_TOOLCHAIN_VERSION=4.8 XASH_SDL=1 SUPPORT_WEBP=false -j2 APP_CFLAGS="-w" APP_ABI="armeabi" + - ant debug + - cp bin/xashdroid-debug.apk xashdroid-armv6.apk + - ndk-build NDK_TOOLCHAIN_VERSION=4.8 XASH_SDL=1 SUPPORT_WEBP=false -j2 APP_CFLAGS="-w" APP_ABI="x86" + - ant debug + - cp bin/xashdroid-debug.apk xashdroid-x86.apk after_script: - - curl -T bin/xashdroid-debug.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-`date +%d-%m-%y`-`git rev-parse --short HEAD`.apk + - curl --upload-file xashdroid-armv7.apk https://transfer.sh/xash3d-armv7-`date -u +%y-%m-%d_%H-%M`.apk + - curl --upload-file xashdroid-armv6.apk https://transfer.sh/xash3d-armv6-`date -u +%y-%m-%d_%H-%M`.apk + - curl --upload-file xashdroid-x86.apk https://transfer.sh/xash3d-x86-`date -u +%y-%m-%d_%H-%M`.apk + - curl -T xashdroid-armv7.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv7-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk + - curl -T xashdroid-armv6.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-armv6-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk + - curl -T xashdroid-x86.apk -u $YADISK_USERNAME:$YADISK_PASSWORD https://webdav.yandex.ru/XashTestVersions/xashdroid-x86-`date -u +%y-%m-%d_%H-%M`-`git rev-parse --short HEAD`.apk + diff --git a/build-test.sh b/build-test.sh index ba14de6d..92c35655 100644 --- a/build-test.sh +++ b/build-test.sh @@ -4,6 +4,7 @@ DX=./../dx APKBUILDER=./../apkbuilder mkdir gen mkdir bin +sh gen-version.sh test build $AAPT package -m -J gen/ --rename-manifest-package in.celest.xash3d.hl -M AndroidManifest.xml -S test/res -I $ANDROID_JAR $JAVA_HOME/bin/javac -d bin/classes -s bin/classes -cp $ANDROID_JAR:libs/com.bda.controller.jar src/org/libsdl/app/SDLActivity.java src/com/beloko/games/hl/NativeLib.java src/com/beloko/touchcontrols/* gen/in/celest/xash3d/hl/R.java src/in/celest/xash3d/* $DX --dex --output=bin/classes.dex bin/classes/ libs/com.bda.controller.jar diff --git a/build.sh b/build.sh index 70eb6c3f..8e2c4795 100755 --- a/build.sh +++ b/build.sh @@ -1,6 +1,7 @@ #!/bin/sh ndk-build NDK_TOOLCHAIN_VERSION=4.8 NDK_DEBUG=0 SUPPORT_WEBP=false V=1 +sh gen-version.sh default-release ant release #jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ../myks.keystore bin/xashdroid-release-unsigned.apk xashdroid #adb install -r -f bin/xashdroid-debug.apk diff --git a/debug.sh b/debug.sh index 4a895508..d8929ca3 100755 --- a/debug.sh +++ b/debug.sh @@ -1,6 +1,7 @@ #!/bin/sh ndk-build NDK_TOOLCHAIN_VERSION=4.8 NDK_DEBUG=1 SUPPORT_WEBP=false V=1 -j3 APP_CFLAGS="-gdwarf-3" +sh gen-version.sh default-debug ant debug #jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore ../myks.keystore bin/xashdroid-release-unsigned.apk xashdroid -storepass 529459 adb install -r -f bin/xashdroid-debug.apk diff --git a/gen-version.sh b/gen-version.sh new file mode 100755 index 00000000..72d5ea8e --- /dev/null +++ b/gen-version.sh @@ -0,0 +1,17 @@ +git update-index --assume-unchanged res/values/git-rev.xml +echo '' > res/values/git-rev.xml +echo '' >> res/values/git-rev.xml +echo -n '' >> res/values/git-rev.xml +echo -n 'Version information: ' $*_endl| sed -e s/_endl/'\\n'/ >> res/values/git-rev.xml +echo -n 'android:' $(git log --abbrev-commit --pretty=oneline -1) _endl\ +'engine:' $(cd jni/src/Xash3D/*/;git log --abbrev-commit --pretty=oneline -1) _endl\ +'client:' $(cd jni/src/XashXT/*/;git log --abbrev-commit --pretty=oneline -1) _endl\ +'halflife:' $(cd jni/src/HLSDK/*/;git log --abbrev-commit --pretty=oneline -1) _endl\ +'SDL2:' $(cd jni/src/SDL2/*/;git log --abbrev-commit --pretty=oneline -1) _endl\ +'TouchControls:' $(cd jni/src/MobileTouchControls/*/;git log --abbrev-commit --pretty=oneline -1) _endl\ +'nanogl:' $(cd jni/src/NanoGL/*/;git log --abbrev-commit --pretty=oneline -1)_endl\ + | sed -e s/\'//g -e s/_endl/'\\n'/g >> res/values/git-rev.xml +echo -n $USER@$(hostname) $(date +%H:%M:%S-%d-%m-%y) >> res/values/git-rev.xml +echo '' >> res/values/git-rev.xml +echo '' >> res/values/git-rev.xml +cat res/values/git-rev.xml diff --git a/jni/Android.mk b/jni/Android.mk index 5053e7d6..6cc12757 100644 --- a/jni/Android.mk +++ b/jni/Android.mk @@ -1 +1,37 @@ +# override some setup.mk defines + +override TARGET_arm_release_CFLAGS := +override TARGET_thumb_release_CFLAGS := +override TARGET_arm_debug_CFLAGS := +override TARGET_thumb_debug_CFLAGS := + +ifeq ($(TARGET_ARCH_ABI),armeabi-v7a-hard) +override TARGET_CFLAGS := $(CFLAGS_OPT) $(CFLAGS_OPT_ARM) $(CFLAGS_HARDFP) +endif + +ifeq ($(TARGET_ARCH_ABI),armeabi-v7a) +override TARGET_CFLAGS := $(CFLAGS_OPT) $(CFLAGS_OPT_ARM) +endif + +ifeq ($(TARGET_ARCH_ABI),armeabi) +override TARGET_CFLAGS := $(CFLAGS_OPT) $(CFLAGS_OPT_ARMv5) +endif + +ifeq ($(TARGET_ARCH_ABI),x86) +override TARGET_CFLAGS := $(CFLAGS_OPT) $(CFLAGS_OPT_X86) +endif + +# Compatibility trick, don't need all projects to be updated + +CFLAGS_OPT := + +CFLAGS_OPT_ARM := + +CFLAGS_OPT_ARMv5 := + +CFLAGS_OPT_X86 := + +CFLAGS_HARDFP := + + include $(call all-subdir-makefiles) diff --git a/jni/Application.mk b/jni/Application.mk index 0ddc4f1c..53532d3c 100644 --- a/jni/Application.mk +++ b/jni/Application.mk @@ -14,9 +14,9 @@ endif CFLAGS_OPT := -O3 -fomit-frame-pointer -ggdb -funsafe-math-optimizations -ftree-vectorize -fgraphite-identity -floop-interchange -funsafe-loop-optimizations -finline-limit=1024 CFLAGS_OPT_ARM := -mthumb -mfpu=neon -mcpu=cortex-a9 -pipe -mvectorize-with-neon-quad -DVECTORIZE_SINCOS -CFLAGS_OPT_ARMv5 := -msoft-float -marm -pipe +CFLAGS_OPT_ARMv5 :=-mcpu=arm1136j-s -mfpu=vfp -marm -pipe CFLAGS_OPT_X86 := -mtune=atom -march=atom -mssse3 -mfpmath=sse -funroll-loops -pipe -DVECTORIZE_SINCOS - +CFLAGS_HARDFP := -D_NDK_MATH_NO_SOFTFP=1 -mhard-float -mfloat-abi=hard -DLOAD_HARDFP -DSOFTFP_LINK APPLICATIONMK_PATH = $(call my-dir) ifeq ($(EMILE),1) diff --git a/res/layout/about.xml b/res/layout/about.xml index d935c01a..af1d5142 100644 --- a/res/layout/about.xml +++ b/res/layout/about.xml @@ -34,17 +34,31 @@ + diff --git a/res/values/git-rev.xml b/res/values/git-rev.xml new file mode 100644 index 00000000..c87cabff --- /dev/null +++ b/res/values/git-rev.xml @@ -0,0 +1,4 @@ + + +No git version information +