summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2021-12-14 09:54:33 +0100
committerMichal Klocek <michal.klocek@qt.io>2022-02-19 01:52:32 +0100
commitbe2745e4788cecb0d3122081e3328e4b66923609 (patch)
treebf15fa44c91f82dd9fb1ade44620de3d175deab5
parent6944b4df7bac464eaee8e03ea724db25303fdbc1 (diff)
downloadqtbase-be2745e4788cecb0d3122081e3328e4b66923609.tar.gz
Install 3rdparty headers for static builds
For static builds we need 3rdparty headers to be installed. Leaf modules like qtwebengine needs 3rdparty libs and header for zlib, freetype, harfbuzz, png, jpeg. Without those the Chromium bundled versions are used, however it might end up badly if qt has already bundled one. Introduce new header only modules with additional arguments for qt_internal_add_module: * EXTERNAL_HEADERS to pick exactly which headers are public * EXTERNAL_HEADERS_DIR to include whole directory preserving the files directory structure Fix qtsync so it keep directory structure for all non-qt modules when syncing headers and do not generate warnings for headers files. Task-number: QTBUG-87154 Task-number: QTBUG-88614 Change-Id: If1c27bf8608791cd4e0a21839d6316a445a96e9f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
-rw-r--r--cmake/FindWrapJpeg.cmake11
-rw-r--r--cmake/FindWrapSystemJpeg.cmake32
-rw-r--r--cmake/Qt3rdPartyLibraryHelpers.cmake24
-rw-r--r--cmake/QtModuleHelpers.cmake27
-rwxr-xr-xlibexec/syncqt.pl12
-rw-r--r--src/3rdparty/CMakeLists.txt5
-rw-r--r--src/3rdparty/freetype/CMakeLists.txt13
-rw-r--r--src/3rdparty/harfbuzz-ng/CMakeLists.txt4
-rw-r--r--src/3rdparty/libjpeg/CMakeLists.txt80
-rw-r--r--src/3rdparty/libpng/CMakeLists.txt14
-rw-r--r--src/corelib/CMakeLists.txt14
-rw-r--r--src/gui/configure.cmake2
-rw-r--r--src/plugins/imageformats/jpeg/CMakeLists.txt86
-rw-r--r--sync.profile12
14 files changed, 221 insertions, 115 deletions
diff --git a/cmake/FindWrapJpeg.cmake b/cmake/FindWrapJpeg.cmake
new file mode 100644
index 0000000000..194296e3a6
--- /dev/null
+++ b/cmake/FindWrapJpeg.cmake
@@ -0,0 +1,11 @@
+include(QtFindWrapHelper NO_POLICY_SCOPE)
+
+qt_find_package_system_or_bundled(wrap_jpeg
+ FRIENDLY_PACKAGE_NAME "Jpeg"
+ WRAP_PACKAGE_TARGET "WrapJpeg::WrapJpeg"
+ WRAP_PACKAGE_FOUND_VAR_NAME "WrapJpeg_FOUND"
+ BUNDLED_PACKAGE_NAME "BundledLibjpeg"
+ BUNDLED_PACKAGE_TARGET "BundledLibjpeg"
+ SYSTEM_PACKAGE_NAME "WrapSystemJpeg"
+ SYSTEM_PACKAGE_TARGET "WrapSystemJpeg::WrapSystemJpeg"
+)
diff --git a/cmake/FindWrapSystemJpeg.cmake b/cmake/FindWrapSystemJpeg.cmake
new file mode 100644
index 0000000000..2853654ea1
--- /dev/null
+++ b/cmake/FindWrapSystemJpeg.cmake
@@ -0,0 +1,32 @@
+if(TARGET WrapSystemJpeg::WrapSystemJpeg)
+ set(WrapSystemJpeg_FOUND TRUE)
+ return()
+endif()
+set(WrapSystemJpeg_REQUIRED_VARS __jpeg_found)
+
+find_package(JPEG ${${CMAKE_FIND_PACKAGE_NAME}_FIND_VERSION} QUIET)
+
+set(__jpeg_target_name "JPEG::JPEG")
+if(JPEG_FOUND AND TARGET "${__jpeg_target_name}")
+ set(__jpeg_found TRUE)
+endif()
+
+if(JPEG_LIBRARIES)
+ list(PREPEND WrapSystemJpeg_REQUIRED_VARS JPEG_LIBRARIES)
+endif()
+if(JPEG_VERSION)
+ set(WrapSystemJpeg_VERSION "${JPEG_VERSION}")
+endif()
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(WrapSystemJpeg
+ REQUIRED_VARS ${WrapSystemJpeg_REQUIRED_VARS}
+ VERSION_VAR WrapSystemJpeg_VERSION)
+
+if(WrapSystemJpeg_FOUND)
+ add_library(WrapSystemJpeg::WrapSystemJpeg INTERFACE IMPORTED)
+ target_link_libraries(WrapSystemJpeg::WrapSystemJpeg
+ INTERFACE "${__jpeg_target_name}")
+endif()
+unset(__jpeg_target_name)
+unset(__jpeg_found)
diff --git a/cmake/Qt3rdPartyLibraryHelpers.cmake b/cmake/Qt3rdPartyLibraryHelpers.cmake
index 1cc5ebea44..904f81fb76 100644
--- a/cmake/Qt3rdPartyLibraryHelpers.cmake
+++ b/cmake/Qt3rdPartyLibraryHelpers.cmake
@@ -312,3 +312,27 @@ function(qt_install_3rdparty_library_wrap_config_extra_file target)
COMPONENT Devel
)
endfunction()
+
+# This function implements qmake's qt_helper_lib MODULE_EXT_HEADERS and MODULE_EXT_HEADERS_DIR features.
+# It creates a header-only module exposing a subset or all headers of a 3rd-party library.
+function(qt_internal_add_3rdparty_header_module target)
+ set(single_args
+ EXTERNAL_HEADERS_DIR
+ )
+ set(multi_args
+ EXTERNAL_HEADERS
+ )
+ qt_parse_all_arguments(arg "qt_internal_add_header_module"
+ "${option_args}"
+ "${single_args}"
+ "${multi_args}"
+ ${ARGN}
+ )
+ qt_internal_add_module(${target}
+ INTERNAL_MODULE
+ HEADER_MODULE
+ NO_CONFIG_HEADER_FILE
+ EXTERNAL_HEADERS ${arg_EXTERNAL_HEADERS}
+ EXTERNAL_HEADERS_DIR ${arg_EXTERNAL_HEADERS_DIR}
+ )
+endfunction()
diff --git a/cmake/QtModuleHelpers.cmake b/cmake/QtModuleHelpers.cmake
index 98edb19f8c..98d8b80d36 100644
--- a/cmake/QtModuleHelpers.cmake
+++ b/cmake/QtModuleHelpers.cmake
@@ -23,6 +23,7 @@ macro(qt_internal_get_internal_add_module_keywords option_args single_args multi
PRECOMPILED_HEADER
CONFIGURE_FILE_PATH
CPP_EXPORT_HEADER_BASE_NAME
+ EXTERNAL_HEADERS_DIR
${__default_target_info_args}
)
set(${multi_args}
@@ -30,6 +31,7 @@ macro(qt_internal_get_internal_add_module_keywords option_args single_args multi
EXTRA_CMAKE_FILES
EXTRA_CMAKE_INCLUDES
NO_PCH_SOURCES
+ EXTERNAL_HEADERS
${__default_private_args}
${__default_public_args}
${__default_private_module_args}
@@ -69,6 +71,16 @@ endmacro()
# Creates a static library instead of following the Qt configuration default. Mutually
# exclusive with HEADER_MODULE.
#
+# EXTERNAL_HEADERS
+# A explicit list of non qt headers (like 3rdparty) to be installed.
+# Note this option overrides install headers used as PUBLIC_HEADER by cmake install(TARGET)
+# otherwise set by syncqt.
+#
+# EXTERNAL_HEADERS_DIR
+# A module directory with non qt headers (like 3rdparty) to be installed.
+# Note this option overrides install headers used as PUBLIC_HEADER by cmake install(TARGET)
+# otherwise set by syncqt.
+
function(qt_internal_add_module target)
qt_internal_get_internal_add_module_keywords(
module_option_args
@@ -317,6 +329,10 @@ function(qt_internal_add_module target)
### FIXME: Can we replace headers.pri?
qt_read_headers_pri("${module_build_interface_include_dir}" "module_headers")
+ if(arg_EXTERNAL_HEADERS)
+ set(module_headers_public ${arg_EXTERNAL_HEADERS})
+ endif()
+
set_property(TARGET ${target} APPEND PROPERTY
_qt_module_timestamp_dependencies "${module_headers_public}")
@@ -680,14 +696,23 @@ set(QT_LIBINFIX \"${QT_LIBINFIX}\")")
list(APPEND exported_targets ${target_private})
endif()
set(export_name "${INSTALL_CMAKE_NAMESPACE}${target}Targets")
+ if(arg_EXTERNAL_HEADERS_DIR)
+ qt_install(DIRECTORY "${arg_EXTERNAL_HEADERS_DIR}/"
+ DESTINATION "${module_install_interface_include_dir}"
+ )
+ unset(public_header_destination)
+ else()
+ set(public_header_destination PUBLIC_HEADER DESTINATION "${module_install_interface_include_dir}")
+ endif()
+
qt_install(TARGETS ${exported_targets}
EXPORT ${export_name}
RUNTIME DESTINATION ${INSTALL_BINDIR}
LIBRARY DESTINATION ${INSTALL_LIBDIR}
ARCHIVE DESTINATION ${INSTALL_LIBDIR}
FRAMEWORK DESTINATION ${INSTALL_LIBDIR}
- PUBLIC_HEADER DESTINATION "${module_install_interface_include_dir}"
PRIVATE_HEADER DESTINATION "${module_install_interface_private_include_dir}"
+ ${public_header_destination}
)
if(BUILD_SHARED_LIBS)
diff --git a/libexec/syncqt.pl b/libexec/syncqt.pl
index 593401bfe8..21945e0db8 100755
--- a/libexec/syncqt.pl
+++ b/libexec/syncqt.pl
@@ -1095,7 +1095,9 @@ foreach my $lib (@modules_to_sync) {
# We need both $public_header and $private_header because QPA headers count as neither
my $private_header = !$public_header && !$qpa_header
&& $header =~ /_p\.h$/ && $subdir !~ /3rdparty/;
- check_header($lib, $header, $iheader, $public_header, $private_header);
+ if ($is_qt) { # skip check since this header is not qt header
+ check_header($lib, $header, $iheader, $public_header, $private_header);
+ }
}
my @classes = ();
push @classes, classNames($iheader, \$clean_header, \$requires)
@@ -1112,7 +1114,13 @@ foreach my $lib (@modules_to_sync) {
#find out all the places it goes..
my $oheader;
if ($public_header) {
- $oheader = "$out_basedir/include/$lib/$header";
+ if ($is_qt || $headers_dir eq $subdir) { # this is qt header or header is not in subdirectory
+ $oheader = "$out_basedir/include/$lib/$header";
+ } else {
+ my $subdirname = $subdir;
+ $subdirname =~ s/^$headers_dir//;
+ $oheader = "$out_basedir/include/$lib/$subdirname/$header"; # keep subdirectory name
+ }
foreach my $full_class (@classes) {
my $header_base = basename($header);
# Strip namespaces:
diff --git a/src/3rdparty/CMakeLists.txt b/src/3rdparty/CMakeLists.txt
index 56b81bb7af..68113d8bac 100644
--- a/src/3rdparty/CMakeLists.txt
+++ b/src/3rdparty/CMakeLists.txt
@@ -6,6 +6,11 @@ if(QT_FEATURE_gui AND QT_FEATURE_png AND NOT QT_FEATURE_system_png)
endif()
qt_install_3rdparty_library_wrap_config_extra_file(BundledLibpng)
+if(QT_FEATURE_gui AND QT_FEATURE_jpeg AND NOT QT_FEATURE_system_jpeg)
+ add_subdirectory(libjpeg)
+endif()
+qt_install_3rdparty_library_wrap_config_extra_file(BundledLibjpeg)
+
if(QT_FEATURE_gui AND QT_FEATURE_freetype AND NOT QT_FEATURE_system_freetype)
add_subdirectory(freetype)
endif()
diff --git a/src/3rdparty/freetype/CMakeLists.txt b/src/3rdparty/freetype/CMakeLists.txt
index 6a9de38984..73a4d0afec 100644
--- a/src/3rdparty/freetype/CMakeLists.txt
+++ b/src/3rdparty/freetype/CMakeLists.txt
@@ -46,16 +46,13 @@ qt_internal_add_3rdparty_library(BundledFreetype
PUBLIC_INCLUDE_DIRECTORIES
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
)
-qt_disable_warnings(BundledFreetype)
-qt_set_symbol_visibility_hidden(BundledFreetype)
-#### Keys ignored in scope 1:.:.:freetype.pro:<TRUE>:
-# MODULE_EXT_HEADERS_DIR = "$$PWD/include"
-# OTHER_FILES = "$$PWD/src/autofit/afangles.c" "$$PWD/src/autofit/afglobal.c" "$$PWD/src/autofit/afloader.c" "$$PWD/src/autofit/afmodule.c"
-# QT_FOR_CONFIG = "gui-private"
+qt_internal_add_3rdparty_header_module(FreetypePrivate
+ EXTERNAL_HEADERS_DIR include
+)
-## Scopes:
-#####################################################################
+qt_disable_warnings(BundledFreetype)
+qt_set_symbol_visibility_hidden(BundledFreetype)
qt_internal_extend_target(BundledFreetype CONDITION WIN32
SOURCES
diff --git a/src/3rdparty/harfbuzz-ng/CMakeLists.txt b/src/3rdparty/harfbuzz-ng/CMakeLists.txt
index 45eeb89f6b..0f7632dbba 100644
--- a/src/3rdparty/harfbuzz-ng/CMakeLists.txt
+++ b/src/3rdparty/harfbuzz-ng/CMakeLists.txt
@@ -170,3 +170,7 @@ qt_internal_extend_target(BundledHarfbuzz CONDITION SHAPERS_ISEMPTY OR SHAPERS__
DEFINES
HAVE_FALLBACK
)
+
+qt_internal_add_3rdparty_header_module(HarfbuzzPrivate
+ EXTERNAL_HEADERS_DIR include
+)
diff --git a/src/3rdparty/libjpeg/CMakeLists.txt b/src/3rdparty/libjpeg/CMakeLists.txt
new file mode 100644
index 0000000000..98da2d9668
--- /dev/null
+++ b/src/3rdparty/libjpeg/CMakeLists.txt
@@ -0,0 +1,80 @@
+qt_internal_add_3rdparty_library(BundledLibjpeg
+ QMAKE_LIB_NAME libjpeg
+ STATIC
+ INSTALL
+ SOURCES
+ src/jaricom.c
+ src/jcapimin.c
+ src/jcapistd.c
+ src/jcarith.c
+ src/jccoefct.c
+ src/jccolor.c
+ src/jcdctmgr.c
+ src/jchuff.c
+ src/jcinit.c
+ src/jcmainct.c
+ src/jcmarker.c
+ src/jcmaster.c
+ src/jcomapi.c
+ src/jcparam.c
+ src/jcphuff.c
+ src/jcprepct.c
+ src/jcsample.c
+ src/jctrans.c
+ src/jdapimin.c
+ src/jdapistd.c
+ src/jdarith.c
+ src/jdatadst.c
+ src/jdatasrc.c
+ src/jdcoefct.c
+ src/jdcolor.c
+ src/jddctmgr.c
+ src/jdhuff.c
+ src/jdinput.c
+ src/jdmainct.c
+ src/jdmarker.c
+ src/jdmaster.c
+ src/jdmerge.c
+ src/jdphuff.c
+ src/jdpostct.c
+ src/jdsample.c
+ src/jdtrans.c
+ src/jerror.c
+ src/jfdctflt.c
+ src/jfdctfst.c
+ src/jfdctint.c
+ src/jidctflt.c
+ src/jidctfst.c
+ src/jidctint.c
+ src/jidctred.c
+ src/jmemmgr.c
+ src/jmemnobs.c
+ src/jquant1.c
+ src/jquant2.c
+ src/jsimd_none.c
+ src/jutils.c
+ INCLUDE_DIRECTORIES
+ src
+ PUBLIC_INCLUDE_DIRECTORIES
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
+)
+
+qt_internal_add_3rdparty_header_module(JpegPrivate
+ EXTERNAL_HEADERS
+ src/jpeglib.h
+ src/jerror.h
+)
+
+qt_disable_warnings(BundledLibjpeg)
+qt_set_symbol_visibility_hidden(BundledLibjpeg)
+
+qt_internal_extend_target(BundledLibjpeg CONDITION MSVC
+ DEFINES
+ _CRT_SECURE_NO_WARNINGS
+)
+if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU"
+ OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang"
+ OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
+ target_compile_options(BundledLibjpeg PRIVATE "-Wno-unused-parameter")
+endif()
+
diff --git a/src/3rdparty/libpng/CMakeLists.txt b/src/3rdparty/libpng/CMakeLists.txt
index 637ebcf548..0d98842757 100644
--- a/src/3rdparty/libpng/CMakeLists.txt
+++ b/src/3rdparty/libpng/CMakeLists.txt
@@ -30,15 +30,15 @@ qt_internal_add_3rdparty_library(BundledLibpng
PUBLIC_INCLUDE_DIRECTORIES
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
)
-qt_disable_warnings(BundledLibpng)
-qt_set_symbol_visibility_hidden(BundledLibpng)
-#### Keys ignored in scope 1:.:.:libpng.pro:<TRUE>:
-# MODULE_EXT_HEADERS = "png.h" "pngconf.h"
-# TR_EXCLUDE = "$$PWD/*"
+qt_internal_add_3rdparty_header_module(PngPrivate
+ EXTERNAL_HEADERS
+ png.h
+ pngconf.h
+)
-## Scopes:
-#####################################################################
+qt_disable_warnings(BundledLibpng)
+qt_set_symbol_visibility_hidden(BundledLibpng)
qt_internal_extend_target(BundledLibpng CONDITION QT_FEATURE_system_zlib
LIBRARIES
diff --git a/src/corelib/CMakeLists.txt b/src/corelib/CMakeLists.txt
index 41ccffe7a4..80c52f39e7 100644
--- a/src/corelib/CMakeLists.txt
+++ b/src/corelib/CMakeLists.txt
@@ -1326,16 +1326,10 @@ qt_internal_add_docs(Core
doc/qtcore.qdocconf
)
-# special case begin
-# Handle qtzlib.pro to create headers for the
-# QtZlibPrivate target, equivalent to Qt += zlib-private
-if(NOT QT_FEATURE_system_zlib)
- qt_internal_add_module(ZlibPrivate
- INTERNAL_MODULE
- HEADER_MODULE
- NO_CONFIG_HEADER_FILE
- )
-endif()
+qt_internal_add_3rdparty_header_module(ZlibPrivate
+ EXTERNAL_HEADERS
+ ../3rdparty/zlib/src/zlib.h
+)
qt_internal_add_optimize_full_flags()
diff --git a/src/gui/configure.cmake b/src/gui/configure.cmake
index 501f49ddce..a782bedb66 100644
--- a/src/gui/configure.cmake
+++ b/src/gui/configure.cmake
@@ -40,7 +40,7 @@ qt_add_qmake_lib_dependency(fontconfig freetype)
qt_find_package(gbm PROVIDED_TARGETS gbm::gbm MODULE_NAME gui QMAKE_LIB gbm)
qt_find_package(WrapSystemHarfbuzz 2.6.0 PROVIDED_TARGETS WrapSystemHarfbuzz::WrapSystemHarfbuzz MODULE_NAME gui QMAKE_LIB harfbuzz)
qt_find_package(Libinput PROVIDED_TARGETS Libinput::Libinput MODULE_NAME gui QMAKE_LIB libinput)
-qt_find_package(JPEG PROVIDED_TARGETS JPEG::JPEG MODULE_NAME gui QMAKE_LIB libjpeg)
+qt_find_package(WrapSystemJpeg PROVIDED_TARGETS WrapSystemJpeg::WrapSystemJpeg MODULE_NAME gui QMAKE_LIB libjpeg)
qt_find_package(WrapSystemMd4c PROVIDED_TARGETS WrapSystemMd4c::WrapSystemMd4c MODULE_NAME gui QMAKE_LIB libmd4c)
qt_find_package(WrapSystemPNG PROVIDED_TARGETS WrapSystemPNG::WrapSystemPNG MODULE_NAME gui QMAKE_LIB libpng)
if(QT_FEATURE_system_zlib)
diff --git a/src/plugins/imageformats/jpeg/CMakeLists.txt b/src/plugins/imageformats/jpeg/CMakeLists.txt
index 54c6441a14..3dfd8982c3 100644
--- a/src/plugins/imageformats/jpeg/CMakeLists.txt
+++ b/src/plugins/imageformats/jpeg/CMakeLists.txt
@@ -1,6 +1,6 @@
# Generated from jpeg.pro.
-qt_find_package(JPEG) # special case
+qt_find_package(WrapJpeg PROVIDED_TARGETS WrapJpeg::WrapJpeg)
#####################################################################
## QJpegPlugin Plugin:
@@ -17,6 +17,7 @@ qt_internal_add_plugin(QJpegPlugin
Qt::CorePrivate
Qt::Gui
Qt::GuiPrivate
+ WrapJpeg::WrapJpeg
)
# Fails to build on Windows with a static Qt, PCH enabled and
@@ -25,86 +26,3 @@ qt_internal_add_plugin(QJpegPlugin
if(WIN32 AND NOT BUILD_SHARED_LIBS)
qt_update_ignore_pch_source(QJpegPlugin "qjpeghandler.cpp")
endif()
-
-#### Keys ignored in scope 1:.:.:jpeg.pro:<TRUE>:
-# OTHER_FILES = "jpeg.json"
-
-## Scopes:
-#####################################################################
-
-qt_internal_extend_target(QJpegPlugin CONDITION QT_FEATURE_system_jpeg
- LIBRARIES
- JPEG::JPEG
-)
-
-qt_internal_extend_target(QJpegPlugin CONDITION NOT QT_FEATURE_system_jpeg
- SOURCES
- ../../../3rdparty/libjpeg/src/jaricom.c
- ../../../3rdparty/libjpeg/src/jcapimin.c
- ../../../3rdparty/libjpeg/src/jcapistd.c
- ../../../3rdparty/libjpeg/src/jcarith.c
- ../../../3rdparty/libjpeg/src/jccoefct.c
- ../../../3rdparty/libjpeg/src/jccolor.c
- ../../../3rdparty/libjpeg/src/jcdctmgr.c
- ../../../3rdparty/libjpeg/src/jchuff.c
- ../../../3rdparty/libjpeg/src/jcinit.c
- ../../../3rdparty/libjpeg/src/jcmainct.c
- ../../../3rdparty/libjpeg/src/jcmarker.c
- ../../../3rdparty/libjpeg/src/jcmaster.c
- ../../../3rdparty/libjpeg/src/jcomapi.c
- ../../../3rdparty/libjpeg/src/jcparam.c
- ../../../3rdparty/libjpeg/src/jcphuff.c
- ../../../3rdparty/libjpeg/src/jcprepct.c
- ../../../3rdparty/libjpeg/src/jcsample.c
- ../../../3rdparty/libjpeg/src/jctrans.c
- ../../../3rdparty/libjpeg/src/jdapimin.c
- ../../../3rdparty/libjpeg/src/jdapistd.c
- ../../../3rdparty/libjpeg/src/jdarith.c
- ../../../3rdparty/libjpeg/src/jdatadst.c
- ../../../3rdparty/libjpeg/src/jdatasrc.c
- ../../../3rdparty/libjpeg/src/jdcoefct.c
- ../../../3rdparty/libjpeg/src/jdcolor.c
- ../../../3rdparty/libjpeg/src/jddctmgr.c
- ../../../3rdparty/libjpeg/src/jdhuff.c
- ../../../3rdparty/libjpeg/src/jdinput.c
- ../../../3rdparty/libjpeg/src/jdmainct.c
- ../../../3rdparty/libjpeg/src/jdmarker.c
- ../../../3rdparty/libjpeg/src/jdmaster.c
- ../../../3rdparty/libjpeg/src/jdmerge.c
- ../../../3rdparty/libjpeg/src/jdphuff.c
- ../../../3rdparty/libjpeg/src/jdpostct.c
- ../../../3rdparty/libjpeg/src/jdsample.c
- ../../../3rdparty/libjpeg/src/jdtrans.c
- ../../../3rdparty/libjpeg/src/jerror.c
- ../../../3rdparty/libjpeg/src/jfdctflt.c
- ../../../3rdparty/libjpeg/src/jfdctfst.c
- ../../../3rdparty/libjpeg/src/jfdctint.c
- ../../../3rdparty/libjpeg/src/jidctflt.c
- ../../../3rdparty/libjpeg/src/jidctfst.c
- ../../../3rdparty/libjpeg/src/jidctint.c
- ../../../3rdparty/libjpeg/src/jidctred.c
- ../../../3rdparty/libjpeg/src/jmemmgr.c
- ../../../3rdparty/libjpeg/src/jmemnobs.c
- ../../../3rdparty/libjpeg/src/jquant1.c
- ../../../3rdparty/libjpeg/src/jquant2.c
- ../../../3rdparty/libjpeg/src/jsimd_none.c
- ../../../3rdparty/libjpeg/src/jutils.c
- INCLUDE_DIRECTORIES
- ../../../3rdparty/libjpeg/src
-)
-
-# special case begin
-if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU"
- OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang"
- OR "${CMAKE_CXX_COMPILER_ID}" STREQUAL "AppleClang")
- target_compile_options(QJpegPlugin PRIVATE "-Wno-unused-parameter")
-endif()
-# special case end
-
-#### Keys ignored in scope 5:.:../../../3rdparty:../../../3rdparty/libjpeg.pri:GCC:
-# QMAKE_CFLAGS_WARN_ON = "-Wno-unused-parameter" "-Wno-main"
-
-qt_internal_extend_target(QJpegPlugin CONDITION MSVC AND NOT QT_FEATURE_system_jpeg
- DEFINES
- _CRT_SECURE_NO_WARNINGS
-)
diff --git a/sync.profile b/sync.profile
index 3433b069a3..dc5ce6cd60 100644
--- a/sync.profile
+++ b/sync.profile
@@ -1,4 +1,8 @@
-%modules = ( # path to module name map
+%modules = (
+ # path to module name map
+ # "module_name" => "path to look for headers"
+ # ! - for non qt module
+ # > - points to directory where module was defined in cmake file
"QtGui" => "$basedir/src/gui",
"QtWidgets" => "$basedir/src/widgets",
"QtPrintSupport" => "$basedir/src/printsupport",
@@ -15,7 +19,11 @@
"QtInputSupport" => "$basedir/src/platformsupport/input",
"QtFbSupport" => "$basedir/src/platformsupport/fbconvenience",
"QtKmsSupport" => "$basedir/src/platformsupport/kmsconvenience",
- "QtZlib" => "!>$basedir/src/corelib;$basedir/src/3rdparty/zlib",
+ "QtZlib" => "!>$basedir/src/corelib;$basedir/src/3rdparty/zlib/src",
+ "QtPng" => "!>$basedir/src/3rdparty/libpng;$basedir/src/3rdparty/libpng",
+ "QtJpeg" => "!>$basedir/src/3rdparty/libjpeg;$basedir/src/3rdparty/libjpeg/src",
+ "QtHarfbuzz" => "!>$basedir/src/3rdparty/harfbuzz-ng;$basedir/src/3rdparty/harfbuzz-ng/include",
+ "QtFreetype" => "!>$basedir/src/3rdparty/freetype;$basedir/src/3rdparty/freetype/include",
"QtEglFSDeviceIntegration" => "$basedir/src/plugins/platforms/eglfs",
"QtEglFsKmsSupport" => "$basedir/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support",
"QtEglFsKmsGbmSupport" => "$basedir/src/plugins/platforms/eglfs/deviceintegration/eglfs_kms",