summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_configure.prf
Commit message (Collapse)AuthorAgeFilesLines
* fix library retrieval in pkg-config source, take 2Oswald Buddenhagen2017-05-311-1/+2
| | | | | | | | | | | the entry's libs field is supposed to be a single pre-quoted string. that implies that the libs and libpaths need to be joined first. amends 7e298e2f. Task-number: QTBUG-60925 Change-Id: Id85b2784e3c081b3ff8eb9ee2216976691f8580d Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* make configure -list-features print the section fieldOswald Buddenhagen2017-05-081-1/+3
| | | | | | | | | | prefix it to the purpose field. this makes the presentation more consistent with the graphical tool, and avoids the need to be redundant in the description. Change-Id: Iea58885637e0518aa1ec2f69ff05090b7e1e77a9 Reviewed-by: Stephan Binner <stephan.binner@basyskom.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* don't call pkg-config with --libs-only-L and --libs-only-l at onceOswald Buddenhagen2017-04-281-1/+4
| | | | | | | | the options are mutually exclusive, with the last one winning. Task-number: QTBUG-60382 Change-Id: Ie6d888ac8be6b22b204fcad93c184477baa38965 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* always clear config.log after allOswald Buddenhagen2017-04-281-12/+9
| | | | | | | | | | | | | | delaying the logging setup until the cache use is determined (which depends on xspec determination) causes too much trouble. as already explained in 7ac15ab0f, there is a bit of a gray area when exactly the log should be cleared anyway. a more complete solution would cache the tests' output along with the results and re-log it (with an appropriate marker) upon re-use. Task-number: QTBUG-59565 Change-Id: I17d457598d885bceafd6505cad5ff074c4ace502 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-131-15/+14
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: examples/network/network.pro mkspecs/features/mac/default_post.prf src/corelib/io/qfilesystemengine_win.cpp src/corelib/io/qprocess.cpp src/corelib/io/qprocess.h src/corelib/io/qprocess_p.h src/corelib/io/qprocess_unix.cpp src/corelib/io/qprocess_win.cpp src/corelib/thread/qmutex.cpp src/platformsupport/fontdatabases/windows/windows.pri src/plugins/platforms/eglfs/eglfsdeviceintegration.pro tests/auto/corelib/io/io.pro Change-Id: I8a27e0e141454818bba9c433200a4e84a88d147e
| * don't assume that configure --foo options' value is 'yes'Oswald Buddenhagen2017-02-241-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | otherwise, the invalid "--qpa xcb" would complain about "xcb" being unknown, rather than "--qpa" missing an argument. actual booleans are handled by the type-specific callback, just like -foo would be. Task-number: QTBUG-59062 Change-Id: I96632dacfb721cfcbf223b76f6c5c38c810e8d0e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * de-duplicate and simplify condition checking in qtConfProcessOneOutput()Oswald Buddenhagen2017-02-241-9/+2
| | | | | | | | | | | | | | amends 90eee08b3. Change-Id: If1fa2b14d758cc252d9a2ec3f9deedd1dd200c5e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-241-48/+234
|\| | | | | | | | | | | | | Conflicts: mkspecs/features/moc.prf Change-Id: Ia71c8e3b3185f7c999bf226d0675051b10b8740b
| * configure: fix 'use' for detecting static librariesOswald Buddenhagen2017-02-221-1/+1
| | | | | | | | | | | | | | | | | | these statements are assumed to provide dependencies for the currently detected library. this implies that their resolved content must be passed to the linker after the to be detected static library. Change-Id: Ifaaee2ac71bf176e8a0033765fb979fe119deaba Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: make it possible to make 'use' conditionalOswald Buddenhagen2017-02-221-1/+14
| | | | | | | | | | Change-Id: I8390634c5b23bf34692b4f532ab00a7aba690037 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: support using libraries by their exported nameOswald Buddenhagen2017-02-221-5/+45
| | | | | | | | | | Change-Id: Ibe43c587e83e679baa5f0fc91f452ee06c1e293f Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: fix cross-module library usesOswald Buddenhagen2017-02-221-7/+21
| | | | | | | | | | | | | | | | | | | | | | this went unnoticed, because the only cross-module 'use' so far is that of egl, for which the code path provided for modular builds happens to (mostly) work due to the specs already providing the library definition. amends cc842ca4. Change-Id: I58c638d896eabd26f27d5cd90e3a7f8eeece9bc0 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * clash-check configure sub-config namesOswald Buddenhagen2017-02-221-0/+3
| | | | | | | | | | | | | | | | we derive the keys from the last fragment of the parent directory, which is potentially not globally unique. Change-Id: I57cf13394984e6e3d902c0f1bb495bd3920bfc75 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: propagate errors from libraries' transitive dependenciesOswald Buddenhagen2017-02-221-1/+5
| | | | | | | | | | | | | | | | | | | | if a library uses another library which happens to be absent, then the former must also fail. amends cc842ca4. Change-Id: I91f157a6d1ed40b66e196340a282ebe493fcf40e Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: error out on activating conflicting librariesOswald Buddenhagen2017-02-221-0/+14
| | | | | | | | | | Change-Id: I5d7dbeb3b3a653f7151279c7eba9387c107f9c42 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: generalize command line overrides of library parametersOswald Buddenhagen2017-02-221-2/+36
| | | | | | | | | | | | | | | | | | 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>
| * add configure -list-librariesOswald Buddenhagen2017-02-221-0/+36
| | | | | | | | | | | | | | currently mostly for debugging purposes (especially with -verbose). Change-Id: I8af32c61df0b19861aa79bc4bbdd3f6095dbe9b7 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * add configure -list-featuresOswald Buddenhagen2017-02-221-6/+24
| | | | | | | | | | | | | | | | | | also actually deletes qfeatures.txt, which was already claimed by a668c6a6, but not actually done. Task-number: QTBUG-58411 Change-Id: I686760632fee7c10b01bd2e83f2481b01bc2b774 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * fix usage of "empty" librariesOswald Buddenhagen2017-02-221-6/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | a header-only library in a default location would produce no variables at all, making it appear undefined. fix this by forcing the writeout of the QMAKE_LIBS_* variable, and use its definedness (rather than non-emptiness) as a signifier. this works for both QMAKE_USE and configure tests'/libraries' 'use' entries. Change-Id: Id7a1e23725caba1a91ea4db448b4aeb7fe632393 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * prefer library's export name when looking up input variablesOswald Buddenhagen2017-02-221-5/+14
| | | | | | | | | | | | | | | | | | | | if multiple library entries provide the same export (as openssl is going to), it makes sense to make them recognize the same input variables, as it would be rather counterproductive to require different configure arguments for each. Change-Id: Ia32842e95294296d50220297f85689bc92de2d05 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: refactor qtConfExportLibrary()'s interfaceOswald Buddenhagen2017-02-221-14/+18
| | | | | | | | | | | | | | | | pass the library name instead of a library source object. improves overall legibility at a marginal runtime cost. Change-Id: I248ee9622af2b2c37daa2dbc0cc0bca5701d7925 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-141-2/+3
|\| | | | | | | Change-Id: I2bd2e61bae1eab4fc74fa6accd741ed9ae1f0669
| * don't litter configure test build dirs with .qmake.cache filesOswald Buddenhagen2017-02-081-2/+3
| | | | | | | | | | | | | | | | there should be only one, at the level of the isolating .qmake.conf. Change-Id: I25f05864d6f5c1bb5caf2fb4138adb4bb9cc2f22 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-081-1/+7
|\| | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * adjust configure to native build optimizationsOswald Buddenhagen2017-02-061-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-301-0/+1
|\| | | | | | | | | | | | | | | | | | | | | 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
| * Inform user that a non-prefix build can't be used on other machinesAlexandru Croitor2017-01-241-0/+1
| | | | | | | | | | | | | | | | | | This implies that using tools like windeployqt and macdeployqt will not generate a working standalone application. Change-Id: I002cf6e527e479ccbee2f18df8766648196d6232 Reviewed-by: Andy Shaw <andy.shaw@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-58/+83
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * put some empty lines between configure runs into config.logOswald Buddenhagen2017-01-191-0/+2
| | | | | | | | | | Change-Id: I6c3e3b139752bb9d1b60c590bb1ea72ae2e4fbdf Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * log configure command line to config.logOswald Buddenhagen2017-01-191-4/+12
| | | | | | | | | | | | | | | | | | that makes the log file mostly self-contained. for code re-use, the qtSystemQuote() function was factored out. Change-Id: Ie3469518ba384131b69f5f15c577240e2674d507 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * inline "committing" of configure command line built-insOswald Buddenhagen2017-01-191-13/+6
| | | | | | | | | | | | | | | | | | the options may need to take effect before the regular test processing commences (which is actually going to be the case in the next commit). the indirection via the callback only obfuscated the code anyway. Change-Id: I5307b0be15cf4cc2c2db391ce5b5a93f81076b5c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * fix configure --opt=val syntaxOswald Buddenhagen2017-01-061-2/+2
| | | | | | | | | | | | | | | | | | | | | | the second dash would end up in the option name, which made it obviously unrecognizable. but the second dash isn't optional in the first place (as evidenced one line up), so remove the question marks. Task-number: QTBUG-57908 Change-Id: I6622fef7d11d7b3c485f16698349d1912037a41e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * complain about various invalid configuration attemptsOswald Buddenhagen2017-01-061-1/+12
| | | | | | | | | | | | | | Task-number: QTBUG-56049 Change-Id: Id5eeb014c2b88195d2d14566a62dcb9185206b37 Reviewed-by: Jake Petroules <jake.petroules@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * name top-level configure scope after the project fileOswald Buddenhagen2017-01-061-3/+2
| | | | | | | | | | | | | | | | ... instead of the directory it resides in, to make it independent of the user's fs layout. this makes logs more comparable, and little else. Change-Id: I0ab3e968dad74ef86577f388c8ca1557e3c17ce4 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * make skipping of configure in sub-repos less arcaneOswald Buddenhagen2017-01-061-10/+12
| | | | | | | | | | | | | | this was introduced in 60e5a1c8 for no apparent reason. Change-Id: Idcbc6df3df4e4846c76b3e4215d753a1c97e2eec Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * move emission of final messages to qmake-based configureOswald Buddenhagen2017-01-061-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | now qmake is the last command called by the unix configure script. as it happens, this was already the case in the windows script, but only because it didn't print these messages at all, which it implicitly does now. another effect of this is that repositories outside qtbase will now also get the installation note in modular builds, which makes sense. Change-Id: I567146936b216185a8e0f61e445222215608bf13 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * re-introduce config.summaryOswald Buddenhagen2016-12-301-24/+12
| | | | | | | | | | | | Task-number: QTBUG-56225 Change-Id: I954cc1055ab0168c06b6618d02b06f63b4122add Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * fail early after command line parsing errorOswald Buddenhagen2016-12-301-0/+1
| | | | | | | | | | | | | | | | | | we don't want to do the (possibly interactive) license check when the command line is not valid. Task-number: QTBUG-18459 Change-Id: I68c3b7ed4646e49865922ab5612f971930698356 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * configure: make library sources fail more verboselyOswald Buddenhagen2016-12-301-4/+9
| | | | | | | | | | | | | | | | log a message in all unsuccessful exit paths. Task-number: QTBUG-57217 Change-Id: I8b0f2685d327da583c3e42c8149327e05b2a66cc Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-161-41/+50
|\| | | | | | | | | | | | | | | | | | | | | | | | | 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-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | 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-1/+2
| | | | | | | | | | | | | | 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/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * move configure -redo handling (mostly) to qmake-based systemOswald Buddenhagen2016-12-131-3/+20
| | | | | | | | | | | | | | | | | | the qmake bootstrap uses some of the options, so the configures still read config.opt for their own purposes, but the general handling is entirely in the new system now. Change-Id: I2c6c657d4da01c8d520ac74795454747bb224bdd Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * make handling of built-in configure options data-drivenOswald Buddenhagen2016-12-131-28/+18
| | | | | | | | | | Change-Id: I08b226b6c9255b60393734e8ffcb745ccb63c597 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * move preparation of configure test build dir to qmake-based systemOswald Buddenhagen2016-12-131-0/+1
| | | | | | | | | | Change-Id: I650fb92cfa858bf6d7ff5756aa0efe182f036a55 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2016-12-131-4/+12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * don't mention config.log in error messages before it even existsOswald Buddenhagen2016-11-231-1/+1
| | | | | | | | | | | | Change-Id: I0d56aff4988e92f2e4ce63a6a7939fbb4ceab590 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-33/+90
|\| | | | | | | | | | | | | | | Conflicts: mkspecs/features/mac/default_post.prf mkspecs/features/uikit/default_post.prf Change-Id: I2a6f783451f2ac9eb4c1a050f605435d2dacf218