summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2022-01-31 08:22:40 +0100
committerMichal Klocek <michal.klocek@qt.io>2023-02-23 13:14:44 +0100
commit4717812788df2927818e671056642b58363d4b89 (patch)
tree5cd86934ca335fd25825d9765d890344b75c2d31
parent404edc4e655701b21bb52835536a0fadf8269ce7 (diff)
downloadqtwebengine-4717812788df2927818e671056642b58363d4b89.tar.gz
Add QtPdf android support
Task-number: QTBUG-83459 Change-Id: I39915206859f031dd78798eeb7b2b49f4f148452 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
-rw-r--r--cmake/Functions.cmake13
-rw-r--r--configure.cmake7
-rw-r--r--src/pdf/CMakeLists.txt6
3 files changed, 20 insertions, 6 deletions
diff --git a/cmake/Functions.cmake b/cmake/Functions.cmake
index 04f32d2c6..03d19992f 100644
--- a/cmake/Functions.cmake
+++ b/cmake/Functions.cmake
@@ -440,7 +440,7 @@ function(add_linker_options target buildDir completeStatic)
set(archives_rsp "${buildDir}/${ninjaTarget}_archives.rsp")
set(libs_rsp "${buildDir}/${ninjaTarget}_libs.rsp")
set_target_properties(${cmakeTarget} PROPERTIES STATIC_LIBRARY_OPTIONS "@${objects_rsp}")
- if(LINUX)
+ if(LINUX OR ANDROID)
get_gn_arch(cpu ${TEST_architecture_arch})
if(CMAKE_CROSSCOMPILING AND cpu STREQUAL "arm" AND ${config} STREQUAL "Debug")
target_link_options(${cmakeTarget} PRIVATE "LINKER:--long-plt")
@@ -924,6 +924,14 @@ macro(append_compiler_linker_sdk_setup)
CONDITION QT_FEATURE_stdlib_libcpp
)
endif()
+ if(ANDROID)
+ list(APPEND gnArgArg
+ android_ndk_root="${CMAKE_ANDROID_NDK}"
+ android_ndk_version="${CMAKE_ANDROID_NDK_VERSION}"
+ clang_use_default_sample_profile=false
+ #android_ndk_major_version=22
+ )
+ endif()
else()
if(QT_FEATURE_use_lld_linker)
get_filename_component(clangBasePath ${CMAKE_LINKER} DIRECTORY)
@@ -1037,6 +1045,9 @@ macro(append_toolchain_setup)
list(APPEND gnArgArg target_sysroot="${sysroot}" target_os="ios")
endif()
endif()
+ if(ANDROID)
+ list(APPEND gnArgArg target_os="android")
+ endif()
endmacro()
diff --git a/configure.cmake b/configure.cmake
index 7fcbbc044..3620969e4 100644
--- a/configure.cmake
+++ b/configure.cmake
@@ -473,8 +473,8 @@ add_check_for_support(
)
add_check_for_support(
MODULES QtPdf
- CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS
- MESSAGE "Build can be done only on Linux, Windows, macOS or iOS."
+ CONDITION LINUX OR (WIN32 AND NOT WIN_ARM_64) OR MACOS OR IOS OR ANDROID
+ MESSAGE "Build can be done only on Linux, Windows, macO, iOS and Android."
)
if(LINUX AND CMAKE_CROSSCOMPILING)
get_gn_arch(testArch ${TEST_architecture_arch})
@@ -583,7 +583,8 @@ add_check_for_support(
(WIN32 AND CMAKE_CXX_COMPILER_ID STREQUAL Clang AND
CMAKE_CXX_SIMULATE_ID STREQUAL MSVC) OR
(MACOS AND CMAKE_CXX_COMPILER_ID STREQUAL AppleClang) OR
- (APPLE AND CMAKE_CXX_COMPILER_ID STREQUAL AppleClang)
+ (APPLE AND CMAKE_CXX_COMPILER_ID STREQUAL AppleClang) OR
+ (ANDROID AND CMAKE_CXX_COMPILER_ID STREQUAL Clang)
MESSAGE "${CMAKE_CXX_COMPILER_ID} compiler is not supported."
)
diff --git a/src/pdf/CMakeLists.txt b/src/pdf/CMakeLists.txt
index 1d42ee727..7ca252e29 100644
--- a/src/pdf/CMakeLists.txt
+++ b/src/pdf/CMakeLists.txt
@@ -114,11 +114,13 @@ foreach(arch ${archs})
strip_absolute_paths_from_debug_symbols=false
)
- if(LINUX)
+ if(LINUX OR ANDROID)
list(APPEND gnArgArg
is_cfi=false
ozone_auto_platforms=false
- use_gnome_keyring=false)
+ use_gnome_keyring=false
+ enable_vr=false
+ )
extend_gn_list(gnArgArg
ARGS use_system_icu
CONDITION QT_FEATURE_webengine_system_icu