diff options
author | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2016-12-23 19:35:45 +0100 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@qt.io> | 2017-03-22 14:27:45 +0000 |
commit | 97be8253fbe9d9e4954b6d345e8fe64bd566a395 (patch) | |
tree | a671832f6c067ffc8866af691fa59dbd64653937 /mkspecs | |
parent | 1b75a04336452bd4b5fc3764f26157d14c4e53a3 (diff) |
fix bootstrapped modules in framework builds, take 2
the borrowing of headers always happens from "proper" modules which are
actually built as frameworks if so requested. that means that even
though the borrowing module itself never is a framework, it needs a
framework path and include paths that point into frameworks.
amends 20c7ab44.
Change-Id: Ic582060dd179cc592e9be7792ff02cebdfabd772
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r-- | mkspecs/features/qt_module.prf | 8 | ||||
-rw-r--r-- | mkspecs/features/qt_module_headers.prf | 6 | ||||
-rw-r--r-- | mkspecs/features/qt_module_pris.prf | 4 |
3 files changed, 12 insertions, 6 deletions
diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf index ec31e457db..d5286ff340 100644 --- a/mkspecs/features/qt_module.prf +++ b/mkspecs/features/qt_module.prf @@ -41,8 +41,12 @@ host_build { } } -CONFIG(shared, static|shared):qtConfig(framework): \ - CONFIG += lib_bundle +qtConfig(framework) { + minimal_syncqt: \ + CONFIG += module_frameworks + else: CONFIG(shared, static|shared): \ + CONFIG += module_frameworks lib_bundle +} CONFIG += relative_qt_rpath # Qt libraries should be relocatable diff --git a/mkspecs/features/qt_module_headers.prf b/mkspecs/features/qt_module_headers.prf index 0e04b46448..190ce753ef 100644 --- a/mkspecs/features/qt_module_headers.prf +++ b/mkspecs/features/qt_module_headers.prf @@ -59,7 +59,9 @@ load(qt_build_paths) # even beyond the module's own build. The implication of this is that # qmake might never use a framework's headers in a non-prefix build, # as there is no separate set of .pri files for users outside Qt. -prefix_build:lib_bundle: \ +# Borrowing is assumed to happen from modules which, in a framework build, +# actually are frameworks. +prefix_build:module_frameworks: \ fwd = _FWD # When using a split include path during the build, the installed module's # include path is also structurally different from that in the build dir. @@ -82,7 +84,7 @@ for(mod, MODULE_INCNAME) { generated_privates: \ MODULE$${sfwd}$${prv}_INCLUDES += $$mbibase/$$VERSION $$mbibase/$$VERSION/$$mod } - prefix_build:lib_bundle { + prefix_build:module_frameworks { mfbase = \$\$QT_MODULE_LIB_BASE/$${mod}.framework/Headers MODULE_INCLUDES += $$mfbase MODULE$${prv}_INCLUDES += $$mfbase/$$VERSION $$mfbase/$$VERSION/$$mod diff --git a/mkspecs/features/qt_module_pris.prf b/mkspecs/features/qt_module_pris.prf index bcaac230ec..ffcd31db3b 100644 --- a/mkspecs/features/qt_module_pris.prf +++ b/mkspecs/features/qt_module_pris.prf @@ -83,10 +83,10 @@ defineReplace(qtExportLibsForModule) { module_build_type = v2 static: \ module_build_type += staticlib - lib_bundle { + lib_bundle: \ module_build_type += lib_bundle + module_frameworks: \ MODULE_FRAMEWORKS = " \$\$QT_MODULE_LIB_BASE" - } internal_module: \ module_build_type += internal_module ltcg: \ |