summaryrefslogtreecommitdiffstats
path: root/configure.json
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-241-3/+5
|\ | | | | | | | | | | | | Conflicts: mkspecs/features/moc.prf Change-Id: Ia71c8e3b3185f7c999bf226d0675051b10b8740b
| * Output "qml-debug" as privateFeatureStephan Binner2017-02-231-1/+4
| | | | | | | | | | Change-Id: Iecf59b5e4cd387e59b28a252d6cd8cdf411b3d41 Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
| * configure: generalize command line overrides of library parametersOswald Buddenhagen2017-02-221-2/+1
| | | | | | | | | | | | | | | | | | the outdated ones remain for backwards compatibility; some remain unchanged. Task-number: QTBUG-30083 Change-Id: Ia596b854d26b00fcb4f48df0da7ad893650ac1c8 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Only define "accessibility" feature oncePaul Olav Tvete2017-02-201-11/+0
| | | | | | | | | | | | | | | | The "accessibility" feature was defined globally for qtbase, but also in src/gui. The definitions could end up with different values. Change-Id: I1a932c3c04a5fc26b9f67eb4f5ff02e524f380e7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Use native support for fp16 where availableAllan Sandfeld Jensen2017-02-161-1/+15
| | | | | | | | | | | | | | | | | | | | Use F16C or ARM FP16 if available at compile time. Configure check added because older clang compilers have F16C defines and flags but not all the intrinsics. Change-Id: I71f358b8fd003e70ab8fcf35097414591e485112 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-081-12/+9
|\ \ | |/ | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * Remove outdated check for Apple Clang 2.x and 3.xThiago Macieira2017-02-081-5/+1
| | | | | | | | | | | | | | The minimum version of Xcode that we support is 5.1 (based on Clang 3.4) Change-Id: I536c32a88bff44dab37afffd14a11f709fb25169 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * adjust configure to native build optimizationsOswald Buddenhagen2017-02-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | don't fail to set up cross_compile early enough. otherwise, we'd populate the cache for target builds with data for the host. amends 6b8666c7 and 5060740f. conversely, pass on extra flags to configure tests when not cross building. amends d8be8110 (and 2c5eb3e6). Task-number: QTBUG-58556 Change-Id: I531d71e06204a0b17ae6dabf017a52e0f2efd9a7 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Fix MIPS DSP configurationAllan Sandfeld Jensen2017-01-271-6/+7
| | | | | | | | | | | | | | | | | | The patch fixes a number of bugs in code, and removes dead logic clarifying that MIPS DSP, like ARM NEON, has no runtime detecton. Change-Id: If2f4eea68da5b2eaa80b8e9c8258206d8c1b7173 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Add a configure check for alloca()Kimmo Ollila2017-01-311-0/+10
| | | | | | | | | | | | | | | | | | | | Alloca() is not supported on all platforms, like INTEGRITY on ARM, so adding a configure check for it. This can be used when building QtQml and 3rd party code, in particular PCRE2 and SQLite. Change-Id: I9785e16c21f67d1a68fef567e18c3356170f027e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-301-7/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | Conflicts: examples/network/network-chat/peermanager.cpp src/widgets/util/qsystemtrayicon.cpp src/widgets/util/qsystemtrayicon_qpa.cpp src/widgets/util/qsystemtrayicon_win.cpp src/widgets/util/qsystemtrayicon_x11.cpp Change-Id: I1c026df83818c0ccaf956980370e7522960627db
| * Remove the -no-rtti option from configureThiago Macieira2017-01-261-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | It only applied to Windows (not MSVC, like the help said) and the build was broken with this option. So remove it, as we clearly never test this. [ChangeLog][Windows] The -no-rtti configure option was removed, as Qt 5.8 fails to build under that condition. To disable RTTI on user code, add to your .pro file: CONFIG += rtti_off. Change-Id: I2bc52f3c7a574209b213fffd149aae1b8d0cf9df Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Optimize debug builds when -Og is availableAllan Sandfeld Jensen2017-01-261-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | Enables optimizing with -Og if GCC has the option available, this should produce faster debug binaries without compromising debugability. Is a privateConfig to limit it to the default Qt build. Includes two fixes for false positives of maybe_uninitialized triggered by -Og on gcc 4.9. Change-Id: I466d7a4070295714189024369312e6cbd36cfacf Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-13/+23
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * revert to building qmake with qconfig.cppOswald Buddenhagen2017-01-061-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | turns out that just appending builtin-qt.conf isn't a good idea: executable-editing tools (objcopy, prelink, etc.) will happily drop the "attachment". a safe method would be adding a proper section to the executable, but there doesn't appear to be an objcopy equivalent in msvc, and using entirely different methods of embedding the file with different toolchains seems like a rather bad idea. so instead go back to the old method of building qmake with a generated qconfig.cpp. of course, as said file is now created by qmake itself, we have to compile qlibraryinfo.cpp a second time, and link a second qmake executable. Task-number: QTBUG-57803 Change-Id: I9e232693550aa870cec154e49cc06add13017cc2 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Add a feature for Qt XmlUlf Hermann2017-01-061-1/+6
| | | | | | | | | | | | | | | | ... so that we can turn it off if we don't want to build it. Change-Id: Ia330dfa1477bcd2dc8e24eb55400e100fca156b5 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Add a feature for Qt TestlibUlf Hermann2017-01-061-0/+5
| | | | | | | | | | | | | | | | ... so that we can turn it off if we don't want to build it. Change-Id: Ib27386da4754d843d4e4cbb05f9542852efefb88 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Add a feature for Qt SqlUlf Hermann2017-01-061-0/+5
| | | | | | | | | | | | | | | | This way we can disable it by passing -no-feature-sql to configure. Change-Id: Ia47d72101de0788478997fa1854cedcd1742f6fd Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Add a feature for Qt NetworkUlf Hermann2017-01-061-0/+5
| | | | | | | | | | | | | | | | | | | | This way you can disable support for QtNetwork by specifying -no-feature-network on the configure line. Change-Id: I46217ccc525a9e2c85394ed4eb6db0e2b60b6d86 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * determine compiler version at build time, not in configureOswald Buddenhagen2016-12-231-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | this makes it consistent with the determination of the default include/library paths. this makes sense, as it's possible to switch the sdk/toolchain after building qt (within reason). a side effect of this change is that for compilers which emulate other compilers, both the real and the emulated version are now made available. Change-Id: Icfcc672c0d2e3d1b5e622993c366063d70ad327c Started-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: properly serialize machine tuple detectionOswald Buddenhagen2016-12-221-0/+1
| | | | | | | | | | | | | | detecting the machine tuple must happen before committing qdevice.pri. Change-Id: Ic37eda42fff805d6e1edb5dd92898abd59d6bdc9 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
| * configure: reload spec after configuring pathsOswald Buddenhagen2016-12-221-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | this fixes the x-build for raspberry pi, as that spec refers to the sysroot. the path setup doesn't require the device options to be in effect yet, so it was sufficient to move the existing spec reload to a later point in time. Change-Id: Idc521aa13ff441931e954c7c9004472cf7061ee1 Reviewed-by: Andy Nichols <andy.nichols@qt.io>
* | make cross_compile a public featureOswald Buddenhagen2017-01-101-1/+1
| | | | | | | | | | | | | | | | ... so other modules (qtwebengine) can query it in a modular build. Change-Id: I849947339e91db44be9280ead75fb423c62957e3 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Michal Klocek <michal.klocek@qt.io>
* | Add support for building for INTEGRITY using GHS toolchainKimmo Ollila2017-01-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | Initial support for INTEGRITY to build QtBase Change-Id: I18f36b4dea9107f01e1c281e4b62880590c777a1 Reviewed-by: Tuukka Turunen <tuukka.turunen@theqtcompany.com> Reviewed-by: Nikola Velinov <nvelinov@ghs.com> Reviewed-by: Risto Avila <risto.avila@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-161-6/+29
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure configure.pri examples/widgets/painting/fontsampler/mainwindow.cpp examples/widgets/painting/fontsampler/mainwindow.h mkspecs/features/moc.prf src/corelib/global/qglobal.h src/gui/text/qtextdocument.cpp Change-Id: Ica65512e00871695190a14ccea5c275b0165f787
| * move all target spec handling to qmake-based configure systemOswald Buddenhagen2016-12-131-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | we pull this feat off by booting configure with a dummy spec. the proper spec gets loaded subsequently. note that it was necessary to move the cache loading after processing the early checks (from which the spec handling is triggered). this is just fine, as the cache is needed only by tests, which are forbidden at this stage by definition. Change-Id: I5120e25a8bf05fb8cc5485fd93cf6387301089aa Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * move qdevice.pri creation to qmake-based configure systemOswald Buddenhagen2016-12-131-4/+15
| | | | | | | | | | | | | | Change-Id: I06540c3b6d98303bd9a218feedfb529993477ed6 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * move generation of qconfig.cpp (and qt.conf) to qmake-based configureOswald Buddenhagen2016-12-131-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this moves us another step towards the "outer" configure doing just minimal bootstrapping of qmake. a challenge here was that so far, qmake itself needed qconfig.cpp. this was replaced by usage of a qt.conf file instead of compiled-in values. however, to make the executable still self-contained, that qt.conf is embedded into it (by simple appending of a fixed signature and the text file). the qmake with the embedded qt.conf is not used for the qt build itself, which instead relies on the qt.conf in bin/ as before. however, due to the missing built-in values, this file now needs to contain more information than before. but except for a minimal version that is needed to start up qmake/configure at all, that file is now also generated with qmake. as some of the newly set up properties are subsequently used by configure itself, qmake gains a (deliberately undocumented) function to reload the qt.conf after it's fully populated. unlike the old implementations, this one doesn't emit redundant qt.conf entries which match the hard-coded fallbacks. omitting them leads to leaner files which are more comprehensible. Started-by: Paolo Angelelli <paolo.angelelli@qt.io> Change-Id: I4526ef64b3c89d9851e10f83965fe479ed7f39f6 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * nuke configure -host-optionOswald Buddenhagen2016-12-131-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in its current form, it was introduced only in 5.7, mostly as a side effect of -external-hostbindir (which is now handled differently). it only ever worked for the macOS and MinGW specs, as a side effect of them supporting -sdk and -device-option (for good reasons), and was supported only by the unix configure. it's not believed to be really useful and complicates matters somewhat, so get rid of it again. should it ever become actually relevant, it can be re-introduced properly, probably along with a -host-sdk option for macOS. Change-Id: Ib078469ea39deb821c7b6a8c67fda9e1a95fedf5 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * move definition of configure -continue switch to builtinsOswald Buddenhagen2016-12-131-1/+0
| | | | | | | | | | | | | | | | ... where it actually belongs, as it should work in each repo in a modular build. Change-Id: I5463f0bcacb239900bed0b0f7be9cf32a3eab04e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Introduce the app store compliance configure optionJake Petroules2016-12-151-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | QtWebEngine requires this in order to disable code that is not allowed on the Mac App Store. The option is too generic to go directly into QtWebEngine however, as it can be used to toggle additional features in qtbase as well as on platforms other than macOS. Change-Id: I556298f4b654a8904c33002ef097a75e2e38938e Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-131-1/+13
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure qmake/Makefile.unix.macos qmake/Makefile.unix.win32 qmake/generators/win32/msvc_vcproj.cpp src/3rdparty/pcre/qt_attribution.json src/corelib/io/qsettings.cpp src/corelib/kernel/qdeadlinetimer.cpp src/platformsupport/kmsconvenience/qkmsdevice.cpp src/platformsupport/kmsconvenience/qkmsdevice_p.h src/plugins/platforms/eglfs/deviceintegration/eglfs_kms/qeglfskmsgbmscreen.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevicescreen.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsdevice.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_support/qeglfskmsscreen.h tests/manual/qstorageinfo/printvolumes.cpp tools/configure/configureapp.cpp Change-Id: Ibaabcc8e965c44926f9fb018466e8b132b8df49e
| * move license check to qmake-based configure systemOswald Buddenhagen2016-12-081-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | this also removes the need for passing pre-processed options via configure.cfg, so get rid of that. a somewhat unfortunate side effect is that the android-style-assets feature had to move back to the top level, as the licensing options depend on it. Started-by: Lars Knoll <lars.knoll@qt.io> Change-Id: Id4d1e0ba18b3e3104400293b8f0c7f2f65e68dea Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * fix handling of -optimized-tools, take 2Oswald Buddenhagen2016-11-231-1/+1
| | | | | | | | | | | | | | | | amends dfbfc4915. Change-Id: I5516f322fceee0d71c2e09b4314f38207b4ac630 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-11-171-89/+8
|\ \ | |/ | | | | | | | | | | | | Conflicts: mkspecs/features/mac/default_post.prf mkspecs/features/uikit/default_post.prf Change-Id: I2a6f783451f2ac9eb4c1a050f605435d2dacf218
| * configure: fix parsing of -hostprefix without argumentOswald Buddenhagen2016-11-151-1/+1
| | | | | | | | | | Change-Id: I94c0bc40e4f995d2c50bea828adcf8ed8bb96a90 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Remove all Multimedia related configuration options from qtbaseLars Knoll2016-11-151-82/+0
| | | | | | | | | | | | | | They live in qtmultimedia now. Change-Id: I1a2ee8be3efb7c4ee9a29d2a8e3fc1f3eea704fc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * fix handling of -optimized-toolsOswald Buddenhagen2016-11-071-1/+2
| | | | | | | | | | | | | | | | | | this option makes sense only when the default build is debug (regardless of whether the release build is also enabled), as it overrides the default. Change-Id: I29f87430242a7d8239f13f0b33f6eebe098d9cf7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * invert the logic of the c++98 default testOswald Buddenhagen2016-11-071-5/+5
| | | | | | | | | | | | | | | | | | this is much more intuitive, and actually produces a sensible result with configure -recheck after a compiler upgrade. Change-Id: Icfa0b85377d9fc014e66490c8ebf6c9236df978e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | iOS: Make default build static again (take 2)Jake Petroules2016-11-101-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | amends aa3d08ee868c281e38ad1a476f6f3becb4c9aa34, which attempted to revert the default change to -shared in 4c26b4863361 but failed to take into account an explicitly passed -shared argument, resulting in: ERROR: Feature 'shared' was enabled, but the pre-condition '!config.uikit && !config.integrity' failed. Change-Id: Ide381624245e7c132a07e98c9107be7126dd488a Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | iOS: Make default build static againTor Arne Vestbø2016-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | This is a revert of the default change to -shared in 4c26b4863361, which was landed without dependent changes like https://codereview.qt-project.org/#/c/160747/ being landed first, breaking the build for people building with the default configure arguments. Change-Id: I66eba76ca681ccf9b2ee54fa16b3e08888ae2fb4 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* | Allow Qt for UIKit to be built as shared libraries and default to itJake Petroules2016-10-071-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Instead of forcing a static build, configure now respects the -shared flag and defaults to that. [ChangeLog][Important Behavior Changes] Qt for iOS now respects the -shared configure flag, and now defaults to this configuration as with all other platforms. Task-number: QTBUG-42937 Change-Id: I9e7b2de8f7f8ba031c2610ff5ac0858e357424bd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-09-151-1840/+152
|\ \ | |/ | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/macx-tvos-clang/qmake.conf mkspecs/macx-watchos-clang/qmake.conf Change-Id: Iaf32339ace59dff9ed344972472744c55d75025c
| * Convert the old feature systemLars Knoll2016-09-151-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | ... to the new qmake based configuration system. This removes the old qfeatures.txt (distributed over configure.json files) and qfeatures.h (distributed over qconfig-<module>.h files). qfeatures.prf is gone without replacement, as attempts to use it would lead to followup errors anyway. Change-Id: I1598de19db937082283a905b9592d3849d2199d0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * rename description => label in configure.jsonOswald Buddenhagen2016-09-151-136/+136
| | | | | | | | | | | | | | | | | | | | "description" suggests something slightly longer. this may seem like a gratuitous change, but the upcoming replacement of the old feature system clarifies makes it seem much less so. Change-Id: Ibe702e01cb146b59127bf1f990b4acaef1c61d55 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Modularize configure.json/.priLars Knoll2016-09-151-1693/+12
| | | | | | | | | | | | | | | | | | | | | | | | Move the different parts of configure.json/.pri into the libraries where they belong. Gui is not yet fully modularized, and contains many things related to the different QPA plugins. Done-with: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Change-Id: I6659bb29354ed1f36b95b8c69e7fce58f642053f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * Modularize the new configure system (infrastructure part)Lars Knoll2016-09-101-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change implements the required infrastructure to modularize the new configuration system. This requires a hierarchy of configuration files, both for handling multiple repositories and for individual modules inside the same repository. When configuring, they all need to get loaded first, as command line processing needs to know about all possible command line options. When the command line has been processed, the individual configuration files need to get processed one after the other and independently from each other. Configure is now automatically invoked when building the a project tree's "root" project; this works with both modular and top-level builds of Qt (the latter with an according change in the super repo). As an immediate consequence, the -skip option moves to the super repo with a different implementation, as configuration is now done after the repo list is determined. The option belongs there anyway. This commit also adds an optional testDir entry to the json file. Like this, we can still have all configure tests in qtbase/config.tests and the configuration file in, e.g., corelib can reference those. The files section can now be left out as long as a 'module' entry is present, specifying the module name. The names of the files to generate can then be deduced from that name. We still need to be able to specify names directly for the global configuration files. qtConfig() now also queries features which are module-specific. As it is sometimes necessary to query the configuration of modules which should not be actually linked (and cannot in the case of subdirs projects), the new variable QT_FOR_CONFIG which allows specifying configuration-only dependencies is introduced. Done-with: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Change-Id: Id1b518a3aa34044748b87fb8fac14d79653f6b18 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Turn the available sql drivers into public featuresLars Knoll2016-09-101-40/+41
| | | | | | | | | | | | | | | | This is required to do the modularization of those features properly. Change-Id: I384aff20274e795aa70483980f0ef25309328800 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
| * Enable precompiled headers on iOS, tvOS, watchOSJake Petroules2016-09-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The actual blocker for precompiled headers is not the iOS/tvOS/watchOS platforms, but the way qmake handled multiple-architecture builds on Apple platforms. This patch allows multi-arch builds to be performed while using precompiled headers. Since df91ef3d6c55692a0236f67b6c6b134a3bf84098 (April 2009), Clang has had support for PCH files in the driver, which allows to use the -include flag to automatically translate to -include-pch. We can then take advantage of the fact that the -include option is allowed to not be separate from its argument, which lets us take advantage of -Xarch to specify a per-architecture precompiled header file. This is done through some magic in the qmake Makefile generator which "multiplexes" the PCH creation rule across multiple architectures and replaces a series of tokens with the proper precompiled header paths and architecture flags at usage point. Change-Id: I76c8dc9cda7e218869c2919f023d9b04f311c6fd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-08-311-8/+3
|\ \ | |/ | | | | Change-Id: I843994939f126ced22f7fe978ec4403f599fc7c9