diff --git a/mkspecs/features/qt_helper_lib.prf b/mkspecs/features/qt_helper_lib.prf index bc20251bd97..964e256ee0e 100644 --- a/mkspecs/features/qt_helper_lib.prf +++ b/mkspecs/features/qt_helper_lib.prf @@ -89,4 +89,32 @@ TARGET = $$THE_TARGET # In static builds of Qt, convenience libraries must be installed, # as in this case they are not linked to the final library/plugin. -installed|if(!not_installed:qtConfig(static)): load(qt_installs) +installed|if(!not_installed:qtConfig(static)) { + !isEmpty(MODULE_EXT_HEADERS) { + headers.files = $${MODULE_EXT_HEADERS} + headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET + INSTALLS += headers + } else { + !isEmpty(MODULE_EXT_HEADERS_DIR) { + headers.files = $$MODULE_EXT_HEADERS_DIR/* + headers.path = $$[QT_INSTALL_HEADERS]/$$TARGET + INSTALLS += headers + } + } + + CONFIG += qt_install_module + rpl_header_base = $$MODULE_INCLUDEPATH + rpl_lib_base = $${MODULE_LIBS} + qqt_dir = \$\$\$\$[QT_INSTALL_HEADERS] + pri_header_replace.match = $$rpl_header_base + pri_header_replace.replace = $$qqt_dir/$$TARGET + pri_header_replace.CONFIG = path + pri_header_replace.filename = qt_ext_$${MODULE}.pri + qqt_dir = \$\$\$\$[QT_INSTALL_LIBS] + pri_lib_replace.match = $$rpl_lib_base + pri_lib_replace.replace = $$qqt_dir/$$prefix$${THE_TARGET}.$$suffix + pri_lib_replace.CONFIG = path + pri_lib_replace.filename = qt_ext_$${MODULE}.pri + QMAKE_INSTALL_REPLACE += pri_header_replace pri_lib_replace + load(qt_installs) +} diff --git a/src/3rdparty/freetype/freetype.pro b/src/3rdparty/freetype/freetype.pro index 0665de521bf..7dce10a902a 100644 --- a/src/3rdparty/freetype/freetype.pro +++ b/src/3rdparty/freetype/freetype.pro @@ -7,6 +7,7 @@ CONFIG += \ installed MODULE_INCLUDEPATH += $$PWD/include +MODULE_EXT_HEADERS_DIR = $$PWD/include load(qt_helper_lib) diff --git a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro index 752d349ebcf..8b53f3e990e 100644 --- a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro +++ b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro @@ -7,7 +7,6 @@ CONFIG += \ MODULE_INCLUDEPATH += $$PWD/include/harfbuzz -load(qt_helper_lib) # built-in shapers list configuration: SHAPERS += opentype # HB's main shaper; enabling it should be enough most of the time @@ -176,9 +175,13 @@ contains(SHAPERS, opentype) { $$PWD/src/hb-ot-var.h } +MODULE_EXT_HEADERS = $$HEADERS + contains(SHAPERS, fallback)|isEmpty(SHAPERS) { DEFINES += HAVE_FALLBACK SOURCES += \ $$PWD/src/hb-fallback-shape.cc } + +load(qt_helper_lib) diff --git a/src/3rdparty/libpng/libpng.pro b/src/3rdparty/libpng/libpng.pro index a2f56669b47..b71dfefd200 100644 --- a/src/3rdparty/libpng/libpng.pro +++ b/src/3rdparty/libpng/libpng.pro @@ -7,6 +7,7 @@ CONFIG += \ installed MODULE_INCLUDEPATH = $$PWD +MODULE_EXT_HEADERS = png.h pngconf.h load(qt_helper_lib)