Browse Source

Fix building Android release versions

With out -03 -flto=full android builds will fail with a message that
it's not possible wiht out O1 - O3
pull/2192/head
Anders Jenbo 5 years ago
parent
commit
4e6870a92f
  1. 11
      CMakeLists.txt
  2. 17
      android-project/CMake/android_defs.cmake
  3. 2
      android-project/app/build.gradle

11
CMakeLists.txt

@ -189,16 +189,7 @@ endif()
if(ANDROID)
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/android-project/CMake")
set(ASAN OFF)
set(UBSAN OFF)
set(DEVILUTIONX_SYSTEM_LIBSODIUM OFF)
set(DISABLE_ZERO_TIER ON)
set(TTF_FONT_DIR \"\")
file(
COPY "${DevilutionX_SOURCE_DIR}/Packaging/resources/CharisSILB.ttf"
DESTINATION "${DevilutionX_SOURCE_DIR}/android-project/app/src/main/assets")
include(android_defs)
endif()
if(PIE)

17
android-project/CMake/android_defs.cmake

@ -0,0 +1,17 @@
#General compilation options
set(ASAN OFF)
set(UBSAN OFF)
set(DEVILUTIONX_SYSTEM_LIBSODIUM OFF)
set(DISABLE_ZERO_TIER ON)
if(BINARY_RELEASE OR CMAKE_BUILD_TYPE STREQUAL "Release")
# Workaroudn linker bug in CLang: https://github.com/android/ndk/issues/721
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3 -flto=full")
endif()
#additional compilation definitions
set(TTF_FONT_DIR \"\")
file(
COPY "${DevilutionX_SOURCE_DIR}/Packaging/resources/CharisSILB.ttf"
DESTINATION "${DevilutionX_SOURCE_DIR}/android-project/app/src/main/assets")

2
android-project/app/build.gradle

@ -22,7 +22,7 @@ android {
versionName "1.2.1"
externalNativeBuild {
cmake {
arguments "-DANDROID_APP_PLATFORM=android-21", "-DANDROID_STL=c++_static"
arguments "-DANDROID_STL=c++_static"
abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64'
}
}

Loading…
Cancel
Save