summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_module.prf
Commit message (Collapse)AuthorAgeFilesLines
* rework syncqt interaction regarding cross-tree pathsOswald Buddenhagen2018-04-121-4/+3
| | | | | | | | | | | | | | instead of relying on more or less accidental qmake behaviors regarding the base dir for relative paths (esp. if a file does not exist yet), make everything explicit. to that effect, clearly define the base tree (source or build) for every syncqt-generated variable, and write only in-tree relative paths to the variables. on the receiving end, resolve the paths as soon as headers.pri was read. Task-number: QTBUG-67111 Change-Id: I32ae5760fb62ebc650fdb69e46aac786a8141564 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add -DQT_{module}_LIB in pkg-config cflags for each Qt moduleAlexis Jeandet2018-01-241-1/+1
| | | | | | | | | | | Build systems such as Meson heavily rely on pkg-config to get build flags. -DQT_{module}_LIB isn't exported in .pc files which makes Meson unable to build some codes out of the box. Change-Id: I806998f19f815e05a47b60129977e52587b38d47 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix macOS shadow prefix builds using pre-synced source packagesAlexandru Croitor2017-11-221-10/+4
| | | | | | | | | | | | | | For source packages that don't have a .git subdirectory, syncqt is executed before configure, with outdir set to srcdir, and this caused path misalignments for injected headers in qt_module.prf when generating makefile rules. The fix is to change syncqt to always output injected header paths relative to the source dir. Task-number: QTBUG-64539 Change-Id: Ia2296e44494093dbf124729062f430ad6fca7262 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Fix shadow prefix framework buildsAlexandru Croitor2017-11-021-1/+9
| | | | | | | | | | Bundle data source files which don't exist at qmake time need to be handled specially. This also required splitting the generated list of public headers, as was already done for private ones. Task-number: QTBUG-60413 Change-Id: I97acfa88622da6b73839b8f976f73ace3cb10223 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Compare versions in qmake files with versionAtLeastAlexander Volkov2017-08-021-1/+1
| | | | | Change-Id: Iba5686131d9f3e22e9a4d6da473a61a845b0418e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-271-2/+6
|\ | | | | | | Change-Id: Icdd71e9713725bda9c305e338f5c8b41a92ed8e8
| * fix bootstrapped modules in framework builds, take 2Oswald Buddenhagen2017-03-221-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-081-3/+3
|\| | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * fix installation of header-only frameworksOswald Buddenhagen2017-02-021-3/+3
| | | | | | | | | | | | | | | | | | | | | | in a framework build, the headers are inside the "library", so it's obviously not very wise to suppress its installation on the basis of it not being there. Task-number: QTBUG-57656 Change-Id: I026a3e486a2aad6ee0b8e0d264af4385af945e42 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Harald Fernengel <harryf@gmx.com>
* | stop exporting QT.*.{MAJOR,MINOR,PATCH}_VERSION in module prisOswald Buddenhagen2017-02-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | the only users of module versions in the first place are found within qt's own prfs; even qbs' qt module importer ignores them. but arguably, the information makes sense. however, exporting the same barely useful information redundantly is plain over the top, so remove the pre-split representation. Change-Id: Iaee69c86d8b7c8b8ef4f3580b8da333aeb8ade2c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'gerrit/dev' into HEADOswald Buddenhagen2017-02-011-2/+5
|\ \
| * | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-2/+5
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf mkspecs/common/msvc-desktop.conf mkspecs/common/msvc-version.conf mkspecs/common/winrt_winphone/qmake.conf mkspecs/features/mac/default_post.prf mkspecs/features/mac/sdk.prf mkspecs/features/qt.prf mkspecs/features/uikit/default_post.prf mkspecs/features/winrt/default_pre.prf mkspecs/winphone-arm-msvc2013/qmake.conf mkspecs/winphone-x86-msvc2013/qmake.conf mkspecs/winrt-arm-msvc2013/qmake.conf mkspecs/winrt-x64-msvc2013/qmake.conf mkspecs/winrt-x86-msvc2013/qmake.conf qmake/generators/win32/msvc_vcproj.cpp src/gui/kernel/qwindowsysteminterface.cpp src/network/kernel/qhostaddress.cpp src/plugins/platforms/mirclient/qmirclientplugin.cpp src/plugins/platforms/mirclient/qmirclientplugin.h src/widgets/util/qsystemtrayicon.cpp tests/auto/widgets/itemviews/qlistview/tst_qlistview.cpp tools/configure/Makefile.mingw tools/configure/Makefile.win32 Done-with: Jake Petroules <jake.petroules@qt.io> Done-with: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Change-Id: I4be3262d3994e11929d3b1ded2c3379783797dbe
| | * Mark QPA symbols as privateLisandro Damián Nicanor Pérez Meyer2016-12-211-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QPA headers are shipped as private symbols, so they should be marked as such. This helps distros to check which applications/libraries need recompiling on each Qt patch update. Task-number: QTBUG-57060 Change-Id: Ie09d4d10e1edb5127d45a05a3dfa3f4c9dd012f2 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | | Build Qt libraries with -fapplication-extensionJake Petroules2017-01-271-0/+3
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This ensures at compile-time that Qt libraries do not use any APIs that are not safe for use in application extensions, and fixes warning messages that appear when linking to Qt libraries that are not built with this flag, when used in an application extension. This is especially important on watchOS where *all* "applications" are actually application extensions, and on other Apple platforms if application extensions are developed using Qt. Task-number: QTBUG-40101 Change-Id: I022046f2584e0222253d33052b0abc221d7c93d6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* / Fix --exceptions flag usage on INTEGRITYKimmo Ollila2017-01-181-0/+5
|/ | | | | | | | | When an executable is being linked and uses a library that has been built with exceptions enabled, the executable will need the exceptions flag in order to link in the exceptions handling code. Change-Id: I3acdb571afbbcaf860fb0ef0482f704f605a9bbe Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Allow checking for the existence of modules in configure.jsonLars Knoll2016-11-141-0/+4
| | | | | | | | | You can now use 'module.gui' to check whether the Qt Gui module exists in the current build of Qt. Task-number: QTBUG-56656 Change-Id: Ic73f162ed0578e07c70e3ec3706f285b6d09a41d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* don't attempt to install the target of header-only modulesOswald Buddenhagen2016-11-071-1/+3
| | | | | | | | they have none. Change-Id: I1e5ffa9960c4fac3c708be4820fb40e7909569c8 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* fix over-exposure of private dependenciesOswald Buddenhagen2016-10-261-1/+1
| | | | | | | | | | | | QT_FOR_PRIVATE should end up in QT_PRIVATE instead of QT after being recorded in the private module pri. otherwise it's added to LIBS and becomes part of the library's (and thus also the public module's) link interface. after the fix, only the (semantically redundant) resolution of qt module dependencies will add the private deps, and only when the private module is explicitly requested. Change-Id: I3378457013cad5fa611a22ccbe184e6aa675a2ef Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Get rid of simulator_and_device CONFIG option (mostly)Oswald Buddenhagen2016-10-161-1/+0
| | | | | | | | | | | | | | | | A separate flag is no longer needed now that simulator and device builds are not exclusive any more (*) - both 'simulator' and 'device' being set at the same time is a sufficient indication (uikit/default_pre.prf sets this up according to the simulator_and_device feature and the QMAKE_MAC_SDK variable). (*) xcodebuild mode actually still uses exclusive builds, but this is activated locally in uikit/default_post.prf, and uikit/xcodebuild.prf implements the actual build passes manually anyway, so this change does not affect it. Change-Id: Idf173a7bfeb984498d3a49ed6b8d1a16da6c2089 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* make users of qt modules inherit the modules' public QMAKE_USEOswald Buddenhagen2016-10-151-0/+2
| | | | | | | | | | | | | | | when a module makes an external dependency part of its api, the users of that module need to know the include paths (and possibly defines) of that dependency, and also need to link to it explicitly if they want to access symbols from it directly. this patch implements this via the usual qt module pri mechanism. limitation: the external library definitions are in the private pris, so technically a public module is not allowed to make its external dependencies public. we don't have (and don't anticipate) such a case. Change-Id: I2dbbdcfcfc1b200acae151a969976cd668e24f89 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* fix shadow builds with pre-synced headers, part 3Oswald Buddenhagen2016-10-141-0/+5
| | | | | | | | | | with the new configure system, all modules which have a configure.json also produce a private config header. the forwarding module pri needs to reflect that. Change-Id: If79e10a2643d55ad9aa9815f20297d36d9b9feec Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* don't include injected headers into linker version scriptOswald Buddenhagen2016-10-141-1/+1
| | | | | | | | | | | it makes no sense to version them, as they contain only #defines anyway. it also removes the need to special-case their location in shadow builds with pre-synced headers, which we actually failed to do anyway. Task-number: QTBUG-56286 Change-Id: I4ea717f7be56494cfea0572389bea173d7470b6e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* remove redundant load(qt_build_config)Oswald Buddenhagen2016-10-041-2/+0
| | | | | | | every repo's .qmake.conf is expected to do it already. Change-Id: I87ed75d80493d8f1c4548c5b9dadfdaf07b86d7e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* remove obsolete module warningOswald Buddenhagen2016-10-041-8/+0
| | | | | | | this is a relic from the early times of the modularization. Change-Id: I9ca46fa6457bf9ca207b6be1f0637f0349569ddf Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* use bindir instead of libdir when launching tools on windows, take 2Oswald Buddenhagen2016-09-281-1/+1
| | | | | | | | | | | | | | | this makes build dirs consistent with install dirs, which fixes launching tests, examples, and build tools in some configs. unfortunately, this makes prefix builds slower and their build dirs bigger due to the DLLDESTDIR implementation being stupid (QTBUG-11435), but i'm not inclined to fix that now. it isn't actually worse than for non-prefix builds, so whatever. Task-number: QTBUG-54438 Change-Id: Idbd034620e95cb23f7699d243678c4e9fa6353ac Reviewed-by: Ulf Hermann <ulf.hermann@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* Remove simulator_and_device handling for the Makefile generatorJake Petroules2016-09-031-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch moves towards a more sensible layout for UIKit platforms, where both the device and simulator architectures for binaries are combined into a single Mach-O file instead of separating out the simulator architecutures into separate _simulator.a files. This approach is both more common in the iOS ecosystem at large and significantly simplifies the implementation details for Qt, especially with the upcoming support for shared libraries on UIKit platforms. This patch takes advantage of the -Xarch compiler option to pass the appropriate -isysroot, -syslibroot, and -m*-version-min compiler and linker flags to the clang frontend, operating in exactly the same way as a normal multi-arch build for device or simulator did previously. Exclusive builds are still enabled for the xcodebuild wrapper Makefile, which builds all four configurations of a UIKit Xcode project as before, as expected. A particularly advantageous benefit of this change is that it flows very well with existing Xcode workflows, namely that: - Slicing out unused architectures is handled completely automatically for static builds, as an executable linking to a library with more architectures than it itself is linked as, the unused architectures will be ignored silently, resulting in the same behavior for users (and the App Store won't let you submit Intel architectures either). - Removing architectures from a fat binary using lipo does NOT invalidate the code signature of that file or its container if it is a bundle. This allows shared library and framework builds of Qt to work mostly automatically as well, since an Xcode shell script build phase can remove unused architectures from the embedded frameworks when that is implemented, and if Qt ever starts signing its SDK releases, it won't interfere with that either (though binaries are just resigned). Change-Id: I6c3578c78f75845a2fcc85f3a5b728ec997dbe90 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Use qtConfig throughout in qtbaseLars Knoll2016-08-191-8/+8
| | | | | | | | | | | Use the new qtConfig macro in all pro/pri files. This required adding some feature entries, and adding {private,public}Feature to every referenced already existing entry. Change-Id: I164214dad1154df6ad84e86d99ed14994ef97cf4 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* make use of silent error() emissionOswald Buddenhagen2016-08-081-1/+1
| | | | | | | | get rid of the entirely superfluous stock "Aborting." messages - the event triggering the exit has already reported the problem. Change-Id: Ib9dfb9e4212f60eceb2ea432cdf56c5a8afe9d65 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-211-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/qglobal.cpp src/corelib/global/qsysinfo.h src/corelib/kernel/qcoreapplication_win.cpp src/gui/text/qdistancefield.cpp src/gui/text/qdistancefield_p.h src/plugins/platforms/windows/qwindowsglcontext.cpp src/plugins/platforms/windows/qwindowsglcontext.h Change-Id: Ib3500acc2b28553bde06758cd9a2e19eb7fe2978
| * fix logical mismerge from 5.6Oswald Buddenhagen2016-06-171-1/+1
| | | | | | | | | | | | | | | | iphonesimulator_and_iphoneos was renamed to simulator_and_device in 5.7. Task-number: QTBUG-54163 Change-Id: If4a76f45450edc0f6e8fb3615355613212314300 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-06-131-1/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config_help.txt configure mkspecs/features/uikit/sdk.prf src/corelib/global/qhooks.cpp src/corelib/io/qfilesystemwatcher.cpp src/corelib/io/qlockfile_unix.cpp src/corelib/tools/qalgorithms.h src/gui/kernel/qwindowsysteminterface.h src/gui/text/qtextdocument_p.cpp src/network/access/access.pri src/network/access/qnetworkaccessmanager.cpp src/network/access/qnetworkreplynsurlconnectionimpl.mm src/src.pro src/testlib/qtestcase.cpp src/widgets/kernel/qwidgetbackingstore_p.h src/widgets/styles/qwindowscestyle.cpp src/widgets/styles/qwindowsmobilestyle.cpp tests/auto/corelib/io/qdiriterator/qdiriterator.pro tests/auto/corelib/io/qfileinfo/qfileinfo.pro tests/auto/gui/kernel/qwindow/BLACKLIST tests/auto/widgets/dialogs/qfilesystemmodel/tst_qfilesystemmodel.cpp tools/configure/configureapp.cpp Change-Id: Ibf7fb9c8cf263a810ade82f821345d0725c57c67
| * fix ios device&simulator builds againOswald Buddenhagen2016-06-101-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | the assumption stated in b67a0836d is actually invalid - configure sets build_all without debug_and_release there. debug_and_release does actually imply build_all, though. to make things less confusing, don't let configure inject iphonesimulator_and_iphoneos into all projects, but handle it like debug_and_release instead. Change-Id: Ib7acdc63308a538862fc603428f81aba60bca08e Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-05-231-3/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/wince80colibri-armv7-msvc2012/qmake.conf qmake/generators/win32/msvc_vcproj.cpp src/corelib/global/qnamespace.h src/corelib/global/qnamespace.qdoc src/corelib/io/qfsfileengine_win.cpp src/corelib/tools/tools.pri src/network/ssl/qsslconfiguration_p.h src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp src/plugins/platforms/windows/windows.pri src/src.pro src/tools/bootstrap/bootstrap.pro src/tools/uic/cpp/cppwriteinitialization.cpp src/widgets/dialogs/qfilesystemmodel.cpp tests/auto/testlib/selftests/expected_cmptest.teamcity tests/auto/testlib/selftests/expected_cmptest.txt Change-Id: I4d2ac78f0dcc97f008186bbbc769c6fe588ab0e5
| * QT_CONFIG simplification re debug_and_release and build_allOswald Buddenhagen2016-05-171-3/+2
| | | | | | | | | | | | | | | | don't pretend that these two flags can be set separately - the configures set them in tandem. Change-Id: Ib0beae0152de09026d4627fd3ae0feabd9ce1b81 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | qmake: Remove Windows CE support.Joerg Bornemann2016-03-101-1/+1
| | | | | | | | | | | | | | The platform has been removed in Qt 5.7. Change-Id: Ie768b5ffbe60270c27b4a670dcf580ea361cb361 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.7' into devLiang Qi2016-02-251-9/+12
|\| | | | | | | | | | | | | | | Conflicts: mkspecs/features/qt_module.prf src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm Change-Id: I7912c23b02b186831f0e465dbe5d1f9936205439
| * unhack qt_install_headers vs. lib_bundleOswald Buddenhagen2016-02-191-1/+0
| | | | | | | | | | | | | | instead of unsetting the flag later on, don't set it in the first place. Change-Id: Id448500b02b5c3e1dc7c332cc178a84c7fd2cfdc Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
| * Use extra compilers for the linker version scriptSamuli Piippo2016-02-021-8/+12
| | | | | | | | | | | | | | This ensures correct separator handling and quoting. Change-Id: I0f9cc7024cac579ea4c81f0c28754b1424ae2bd4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | qmake: Fix name of header-only modules when doing simulator builds.Jake Petroules2016-02-251-0/+1
| | | | | | | | | | | | | | | | | | | | This solves an issue where header only modules in a simulator build with frameworks on Apple platforms would result in a module like "QtZlib_iphonesimulator.framework" being created. This patch removes the "_iphonesimulator" infix from the name. Change-Id: I60e818042d776cc6ac430413ccea1be1a1a1e48b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | qmake: Fix unwanted concurrency in simulator_and_device builds.Jake Petroules2016-02-251-1/+3
|/ | | | | Change-Id: Ia73fe903e5157fb1262878ede1fb1cc1af1c80f4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.5' into 5.6Liang Qi2016-01-191-0/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/common/atomic64/atomic64.cpp configure src/3rdparty/forkfd/forkfd.c src/corelib/io/forkfd_qt.cpp src/widgets/kernel/qwidgetwindow.cpp tests/auto/corelib/statemachine/qstatemachine/tst_qstatemachine.cpp tests/auto/network/socket/qtcpsocket/tst_qtcpsocket.cpp tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp tools/configure/configureapp.cpp Change-Id: Ic6168d82e51a0ef1862c3a63bee6722e8f138414
| * Make -no-rpath build more useful on Apple platformsMartin Afanasjew2015-11-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Platform Specific Changes][OS X] Configure with -no-rpath will now yield Qt dynamic libraries and frameworks with an absolute install name (based in -libdir). OS X package managers like Homebrew install Qt in a fixed location. This change simplifies deployment for such package managers and is consistent with the default expectation on Apple platforms for libraries with a fixed location to also have absolute install names. While a relocatable installation (the default) also works in this scenario, it requires all software that depends on Qt to be aware of this and to embed a suitable RPATH into application binaries (which is not automatic for non-qmake builds). This might not be true for some select fallback search locations, but as package managers on OS X tend not to use those, embedding an RPATH becomes practically mandatory. In a default Homebrew installation, Qt is configured such that the frameworks end up in /usr/local/Cellar/qt5/<version>/lib and that will be later symlinked to /usr/local/opt/qt5/lib, both of which are not searched by the dynamic linker by default. Task-number: QTBUG-48958 Change-Id: I4395df98771e06a2ce8a293d11dc755bdc50757f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | rework include path construction in the module systemOswald Buddenhagen2016-01-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the main objective was to fix the bootstrap modules in framework builds. bootstrapped modules which "borrow" headers from "proper" modules can specify this in a clean way now. a side effect of this is that the bootstrap-dbus module now has its own syncqt call. most includepath-related setup from qt_module_pris.prf was moved to qt_module_headers.prf. Change-Id: Ie0d8192cfac1a8cdae0ddd0bc0cd8c3092b1e85b Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Change the ELF linker version script creator to take no parametersThiago Macieira2016-01-111-5/+7
| | | | | | | | | | | | | | | | It only needs stdin now, instead of stdin plus a separate file containing a list of file names. Change-Id: I9f3db030001e47e4a4e5ffff1425b76884cc7ca0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | un-nest enabling .la creation from enabling .pc creation (again)Oswald Buddenhagen2016-01-081-13/+12
| | | | | | | | | | | | | | | | | | | | | | now that we don't create .pc files for private modules any more, the conditionals cannot be nested. amends 6c5d227da, partially reverting aa20e7f9d. Task-number: QTBUG-49763 Change-Id: I2578c83e0c767b6533abdb26bf4e8bcc8c416ef1 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | don't build with explicitlib on unixOswald Buddenhagen2016-01-081-2/+1
| | | | | | | | | | | | | | | | | | judging by the history, this was only ever a workaround for poor rpath handling. we're supposed to be over that. Change-Id: I85601493a05a76ead999e707a2d2e9a430610981 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Fix version script generation when cross-compiling from Windows to QNXMatt Hoosier2015-12-211-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Recent versions of Qt have apparently added sufficient numbers of headers that the command lines used to spawn a custom header- parsing tool, started overflowing Windows' maximum command-line length. This change restructures the mechanism to use a GCC-style command- line arguments file rather than passing filenames all directly in the argv[] vector. Although QNX is the usual ELF target whose cross-build is supported on Windows, the mechanics introduced in this patch happen to affect all other ELF Unix systems' builds too. Change-Id: I5a7383cf9f2ebf9dffde8dbfdcdeca888265e085 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | enforce no-undefined on all platforms that support itOswald Buddenhagen2015-12-021-1/+1
| | | | | | | | | | | | | | | | | | no idea why it was limited to linux. the variable is already empty on platforms which don't support it anyway. also, for plugins, it's consistently enforced as well. Change-Id: I117f4988a2e301ca98cdc088188d6f8c44ea0ba5 Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* | remove redundant "mac" checksOswald Buddenhagen2015-11-191-1/+1
| | | | | | | | | | | | | | | | qt_framework and {app,lib}_bundle imply darwin, so there is no point in testing for it. Change-Id: I9fe48c26c8e271a5575b17e92df8674d3c3a3204 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | fix the determination whether to build a module as a frameworkOswald Buddenhagen2015-11-191-5/+3
| | | | | | | | | | | | | | | | | | | | | | | | CONFIG+=qt_framework is actually put into qconfig.pri, so it's always set in framework builds. things (sometimes) worked only by virtue of the qt_framework checks being in "else" branches of "static" checks. use lib_bundle instead, which triggers the actual framework build anyway. amends b72d1db44. Change-Id: Ib725c43476d9fb38bad940ce09905d29ff3edfa3 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>