WIP prepare for v14.0

This commit is contained in:
2024-04-06 01:30:11 +01:00
parent 07e2a663ba
commit 86aa68b95a
9 changed files with 25 additions and 12 deletions

2
.gitmodules vendored
View File

@@ -6,7 +6,7 @@
[submodule "project/jni/application/openttd/src"] [submodule "project/jni/application/openttd/src"]
path = project/jni/application/openttd/src path = project/jni/application/openttd/src
url = https://github.com/n-ice-community/openttd-android.git url = https://github.com/n-ice-community/openttd-android.git
branch = 13 branch = 14
[submodule "project/jni/sdl2"] [submodule "project/jni/sdl2"]
path = project/jni/sdl2 path = project/jni/sdl2
url = https://github.com/libsdl-org/SDL.git url = https://github.com/libsdl-org/SDL.git

View File

@@ -2,6 +2,7 @@
# Handle any error or die # Handle any error or die
set -e set -e
set -x
THIS_BUILD_DIR=$(dirname "$0") THIS_BUILD_DIR=$(dirname "$0")
install_apk=false install_apk=false
@@ -133,7 +134,7 @@ if [ -x project/jni/application/src/AndroidPreBuild.sh ]; then
fi fi
if grep -q 'CustomBuildScript=y' ./AndroidAppSettings.cfg; then if grep -q 'CustomBuildScript=y' ./AndroidAppSettings.cfg; then
${ANDROID_NDK_HOME}/ndk-build -C project -j$NCPU V=1 CUSTOM_BUILD_SCRIPT_FIRST_PASS=1 NDK_APP_STRIP_MODE=none NDK_LOG=1 ${ANDROID_NDK_HOME}/ndk-build -C project -j$NCPU V=1 CUSTOM_BUILD_SCRIPT_FIRST_PASS=1 NDK_APP_STRIP_MODE=none
make -C project/jni/application -f CustomBuildScript.mk make -C project/jni/application -f CustomBuildScript.mk
fi fi

View File

@@ -1,6 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e set -e
set -x
AUTO=a AUTO=a
CHANGED= CHANGED=
JAVA_SRC_PATH=project/java JAVA_SRC_PATH=project/java
@@ -904,7 +905,7 @@ if [ -z "$ANDROID_NDK_HOME" ]; then
echo "Set ANDROID_NDK_HOME env variable, or put ndk-build into your PATH" echo "Set ANDROID_NDK_HOME env variable, or put ndk-build into your PATH"
exit 1 exit 1
fi fi
NDK_VER=$(echo ${ANDROID_NDK_HOME} | grep -Eo '[^/]+$') NDK_VER=$(grep -Po "(?<=Pkg.Revision = )[0-9.]+" ${ANDROID_NDK_HOME}/source.properties)
cat project/app/build-template.gradle | \ cat project/app/build-template.gradle | \
sed 's/applicationId .*/applicationId "'"${AppFullName}"'"/' | \ sed 's/applicationId .*/applicationId "'"${AppFullName}"'"/' | \

View File

@@ -4,13 +4,13 @@
AppName="OpenTTD" AppName="OpenTTD"
# Specify reversed site name of application (e.x. com.mysite.myapp) # Specify reversed site name of application (e.x. com.mysite.myapp)
AppFullName=org.openttd.sdl AppFullName=org.openttd.fdroid
# Application version code (integer) # Application version code (integer)
AppVersionCode=1340120 AppVersionCode=1400125
# Application user-visible version name (string) # Application user-visible version name (string)
AppVersionName="13.4.rev120" AppVersionName="14.0.rev125"
# Specify path to download application data in zip archive in the form "Description|URL|MirrorURL^Description2|URL2|MirrorURL2^...' # Specify path to download application data in zip archive in the form "Description|URL|MirrorURL^Description2|URL2|MirrorURL2^...'
# If you'll start Description with '!' symbol it will be enabled by default, '!!' will also hide the entry from the menu, so it cannot be disabled # If you'll start Description with '!' symbol it will be enabled by default, '!!' will also hide the entry from the menu, so it cannot be disabled
@@ -22,7 +22,7 @@ AppVersionName="13.4.rev120"
# The mount directory will be returned by calling getenv("ANDROID_OBB_MOUNT_DIR") # The mount directory will be returned by calling getenv("ANDROID_OBB_MOUNT_DIR")
# You can use .zip.xz archives for better compression, but you need to add 'lzma' to CompiledLibraries # You can use .zip.xz archives for better compression, but you need to add 'lzma' to CompiledLibraries
# Generate .zip.xz files like this: zip -0 -r data.zip your-data/* ; xz -8 data.zip # Generate .zip.xz files like this: zip -0 -r data.zip your-data/* ; xz -8 data.zip
AppDataDownloadUrl="!!Data files|openttd-data-13.4-0.zip.xz^!!Config file|:.openttd/openttd.cfg:openttd-1.4.0.30.cfg^!!!!MIDI music support|timidity.zip.xz^!!Internationalization files|icudt62l.zip.xz^!!Fonts|openttd-fonts.zip.xz" AppDataDownloadUrl="!!Data files|openttd-data-14.0-0.zip.xz^!!Config file|:.openttd/openttd.cfg:openttd-1.4.0.30.cfg^!!!!MIDI music support|timidity.zip.xz^!!Internationalization files|icudt62l.zip.xz^!!Fonts|openttd-fonts.zip.xz"
# Reset SDL config when updating application to the new version (y) / (n) # Reset SDL config when updating application to the new version (y) / (n)
ResetSdlConfigForThisVersion=y ResetSdlConfigForThisVersion=y
@@ -255,6 +255,7 @@ StartupMenuButtonTimeout=1500
# Menu items to hide from startup menu, available menu items (SDL 1.2 only): # Menu items to hide from startup menu, available menu items (SDL 1.2 only):
# SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.StorageAccessConfig SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced # SettingsMenu.OkButton SettingsMenu.DummyMenu SettingsMenu.MainMenu SettingsMenuMisc.DownloadConfig SettingsMenuMisc.OptionalDownloadConfig SettingsMenuMisc.AudioConfig SettingsMenuMisc.VideoSettingsConfig SettingsMenuMisc.ShowReadme SettingsMenuMisc.GyroscopeCalibration SettingsMenuMisc.StorageAccessConfig SettingsMenuMisc.CommandlineConfig SettingsMenuMisc.ResetToDefaultsConfig SettingsMenuMouse.MouseConfigMainMenu SettingsMenuMouse.DisplaySizeConfig SettingsMenuMouse.LeftClickConfig SettingsMenuMouse.RightClickConfig SettingsMenuMouse.AdditionalMouseConfig SettingsMenuMouse.JoystickMouseConfig SettingsMenuMouse.TouchPressureMeasurementTool SettingsMenuMouse.CalibrateTouchscreenMenu SettingsMenuKeyboard.KeyboardConfigMainMenu SettingsMenuKeyboard.ScreenKeyboardSizeConfig SettingsMenuKeyboard.ScreenKeyboardDrawSizeConfig SettingsMenuKeyboard.ScreenKeyboardThemeConfig SettingsMenuKeyboard.ScreenKeyboardTransparencyConfig SettingsMenuKeyboard.RemapHwKeysConfig SettingsMenuKeyboard.RemapScreenKbConfig SettingsMenuKeyboard.ScreenGesturesConfig SettingsMenuKeyboard.CustomizeScreenKbLayout SettingsMenuKeyboard.ScreenKeyboardAdvanced
HiddenMenuOptions='SettingsMenuMouse.DisplaySizeConfig' HiddenMenuOptions='SettingsMenuMouse.DisplaySizeConfig'
# Menu items to show at startup - this is Java code snippet, leave empty for default # Menu items to show at startup - this is Java code snippet, leave empty for default
@@ -277,13 +278,13 @@ APP_PLATFORM=19
# Specify architectures to compile, 'all' or 'y' to compile for all architectures. # Specify architectures to compile, 'all' or 'y' to compile for all architectures.
# Available architectures: armeabi-v7a arm64-v8a x86 x86_64 # Available architectures: armeabi-v7a arm64-v8a x86 x86_64
MultiABI='armeabi-v7a arm64-v8a x86 x86_64' MultiABI='arm64-v8a armeabi-v7a x86 x86_64'
# Optional shared libraries to compile - removing some of them will save space # Optional shared libraries to compile - removing some of them will save space
# MP3 patents are expired, but libmad license is GPL, not LGPL # MP3 patents are expired, but libmad license is GPL, not LGPL
# Available libraries: mad (GPL-ed!) sdl_mixer sdl_image sdl_ttf sdl_net sdl_blitpool sdl_gfx sdl_sound intl xml2 lua jpeg png ogg flac tremor vorbis freetype xerces curl theora fluidsynth lzma lzo2 mikmod openal timidity zzip bzip2 yaml-cpp python boost_date_time boost_filesystem boost_iostreams boost_program_options boost_regex boost_signals boost_system boost_thread glu avcodec avdevice avfilter avformat avresample avutil swscale swresample bzip2 # Available libraries: mad (GPL-ed!) sdl_mixer sdl_image sdl_ttf sdl_net sdl_blitpool sdl_gfx sdl_sound intl xml2 lua jpeg png ogg flac tremor vorbis freetype xerces curl theora fluidsynth lzma lzo2 mikmod openal timidity zzip bzip2 yaml-cpp python boost_date_time boost_filesystem boost_iostreams boost_program_options boost_regex boost_signals boost_system boost_thread glu avcodec avdevice avfilter avformat avresample avutil swscale swresample bzip2
# rep 'Available' project/jni/SettingsTemplate.mk # rep 'Available' project/jni/SettingsTemplate.mk
CompiledLibraries="c++_shared timidity expat fontconfig lzma lzo2 icui18n iculx icu-le-hb harfbuzz icudata icuuc" CompiledLibraries="c++_shared timidity expat fontconfig lzma lzo2 icui18n iculx icu-le-hb harfbuzz icudata icuuc crypto ssl curl"
# Application uses custom build script AndroidBuild.sh instead of Android.mk (y) or (n) # Application uses custom build script AndroidBuild.sh instead of Android.mk (y) or (n)
CustomBuildScript=y CustomBuildScript=y

View File

@@ -56,6 +56,13 @@ export ARCH=$1
fontconfig) fontconfig)
TARGET=Fontconfig TARGET=Fontconfig
;; ;;
harfbuzz)
TARGET=Harfbuzz
;;
curl)
# Different .so file name to avoid linking to system libexpat.so
LIB_FILE=curl-sdl
;;
icui18n|iculx|icuuc|icudata|icule|icuio) icui18n|iculx|icuuc|icudata|icule|icuio)
TARGET="ICU_`echo $LIB | sed 's/icu//'`" TARGET="ICU_`echo $LIB | sed 's/icu//'`"
echo "set(PC_${TARGET}_INCLUDE_DIRS $LOCAL_PATH/../../$LIB/include)" >> $CMAKE_SDL echo "set(PC_${TARGET}_INCLUDE_DIRS $LOCAL_PATH/../../$LIB/include)" >> $CMAKE_SDL

View File

@@ -2,7 +2,7 @@
set -e set -e
VER=13.4-0 VER=14.0-0
ARCH=$1 ARCH=$1
ANDROID_DATA_FULLPATH=$(realpath ./AndroidData/) ANDROID_DATA_FULLPATH=$(realpath ./AndroidData/)

View File

@@ -69,7 +69,9 @@ CURL_HEADERS := \
typecheck-gcc.h typecheck-gcc.h
# Hide libcurl from the project if openssl is not compiled # Hide libcurl from the project if openssl is not compiled
ifneq ($(filter ssl, $(APP_MODULES)),) ifeq ($(filter ssl, $(APP_MODULES)),)
$(info Curl requires a SSL library, but none included.)
else
LOCAL_SRC_FILES := $(addprefix lib/,$(CSOURCES)) LOCAL_SRC_FILES := $(addprefix lib/,$(CSOURCES))
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ $(LOCAL_PATH)/lib $(LOCAL_PATH)/../openssl/include LOCAL_C_INCLUDES := $(LOCAL_PATH)/include/ $(LOCAL_PATH)/lib $(LOCAL_PATH)/../openssl/include

1
project/jni/jpeg/include Symbolic link
View File

@@ -0,0 +1 @@
../sdl2_image/external/jpeg