diff options
author | Michal Klocek <michal.klocek@qt.io> | 2021-12-14 16:42:50 +0100 |
---|---|---|
committer | Michal Klocek <michal.klocek@qt.io> | 2022-03-09 12:31:16 +0100 |
commit | 99d77b9f1eed817cb3eae68d9e7224a01d55d656 (patch) | |
tree | edfe0bb696ccad9fc9d5a84358675e1aaa455f6d /src/pdf | |
parent | e6e705a3dab368842fbfe15a9b545e0e8727b6b2 (diff) |
Add static builds for qtpdf
Add 3rdparty installed headers so static builds can
use bundled qt libs.
Fix static gn and archiver/librarian setup.
Updates 3rdparty:
* 5d88de975 Fix static build with qt3rdparty libs
Task-number: QTBUG-87154
Task-number: QTBUG-88614
Pick-to: 6.3 6.2
Change-Id: Iad7682da92b558b500140f415acc0bc9c9a1c22e
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/pdf')
-rw-r--r-- | src/pdf/CMakeLists.txt | 25 | ||||
-rw-r--r-- | src/pdf/configure.cmake | 1 | ||||
-rw-r--r-- | src/pdf/configure/BUILD.root.gn.in | 22 |
3 files changed, 45 insertions, 3 deletions
diff --git a/src/pdf/CMakeLists.txt b/src/pdf/CMakeLists.txt index 14474caf2..2df58b3ac 100644 --- a/src/pdf/CMakeLists.txt +++ b/src/pdf/CMakeLists.txt @@ -67,7 +67,6 @@ addSyncTargets(pdf) get_configs(configs) get_architectures(archs) - foreach(arch ${archs}) foreach(config ${configs}) @@ -77,7 +76,9 @@ foreach(arch ${archs}) set(buildGn pdf_${config}_${arch}) add_gn_target(${buildGn} ${config} ${arch} - SOURCES DEFINES CXX_COMPILE_OPTIONS C_COMPILE_OPTIONS INCLUDES MOC_PATH + SOURCES DEFINES CXX_COMPILE_OPTIONS C_COMPILE_OPTIONS + INCLUDES MOC_PATH PNG_INCLUDES JPEG_INCLUDES HARFBUZZ_INCLUDES + FREETYPE_INCLUDES ZLIB_INCLUDES ) resolve_target_includes(gnIncludes Pdf) get_forward_declaration_macro(forwardDeclarationMacro) @@ -100,6 +101,10 @@ foreach(arch ${archs}) list(APPEND gnArgArg qtwebengine_target="${buildDir}/${config}/${arch}:QtPdf" + qt_libpng_config="${buildDir}/${config}/${arch}:qt_libpng_config" + qt_libjpeg_config="${buildDir}/${config}/${arch}:qt_libjpeg_config" + qt_harfbuzz_config="${buildDir}/${config}/${arch}:qt_harfbuzz_config" + qt_freetype_config="${buildDir}/${config}/${arch}:qt_freetype_config" enable_ipc_fuzzer=false enable_remoting=false enable_resource_allowlist_generation=false @@ -149,6 +154,22 @@ foreach(arch ${archs}) ARGS pdf_enable_xfa_tiff CONDITION QT_FEATURE_pdf_xfa_tiff ) + extend_gn_list(gnArgArg + ARGS pdfium_use_qt_libpng + CONDITION QT_FEATURE_webengine_qt_libpng + ) + extend_gn_list(gnArgArg + ARGS use_qt_libjpeg + CONDITION QT_FEATURE_webengine_qt_libjpeg + ) + extend_gn_list(gnArgArg + ARGS use_qt_harfbuzz + CONDITION QT_FEATURE_webengine_qt_harfbuzz + ) + extend_gn_list(gnArgArg + ARGS use_qt_freetype + CONDITION QT_FEATURE_webengine_qt_freetype + ) add_gn_command( CMAKE_TARGET Pdf diff --git a/src/pdf/configure.cmake b/src/pdf/configure.cmake index ce1203205..223d860f3 100644 --- a/src/pdf/configure.cmake +++ b/src/pdf/configure.cmake @@ -1,7 +1,6 @@ qt_feature("pdf-v8" PRIVATE LABEL "Support V8" PURPOSE "Enables javascript support." - AUTODETECT false CONDITION NOT IOS ) qt_feature("pdf-xfa" PRIVATE diff --git a/src/pdf/configure/BUILD.root.gn.in b/src/pdf/configure/BUILD.root.gn.in index a3cd32a23..68089f8cf 100644 --- a/src/pdf/configure/BUILD.root.gn.in +++ b/src/pdf/configure/BUILD.root.gn.in @@ -1,5 +1,27 @@ import("//build/config/features.gni") +config("qt_libpng_config") { + include_dirs = [ @GN_PNG_INCLUDES@ ] + defines = [ "USE_SYSTEM_LIBPNG" ] +} +config ("qt_libjpeg_config") { + include_dirs = [ @GN_JPEG_INCLUDES@ ] +} +config("qt_harfbuzz_config") { + visibility = [ + "//third_party:freetype_harfbuzz", + "//third_party/freetype:freetype_source", + ] + include_dirs = [ @GN_HARFBUZZ_INCLUDES@ ] +} +config("qt_freetype_config") { + visibility = [ + "//third_party:freetype_harfbuzz", + "//third_party/harfbuzz-ng:harfbuzz_source", + ] + include_dirs = [ @GN_FREETYPE_INCLUDES@ ] +} + config("QtPdf_config") { cflags = [ @GN_CFLAGS_C@, |