summaryrefslogtreecommitdiffstats
path: root/mkspecs
Commit message (Collapse)AuthorAgeFilesLines
* mkspecs: Replace LGPL21 with LGPL license headerKai Koehne2017-03-0314-190/+274
| | | | | | | Also use canonical contact url. Change-Id: I04c403f81bb8a8d6d6222573030d1e6d09ec4c3d Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-248-68/+252
|\ | | | | | | | | | | | | Conflicts: mkspecs/features/moc.prf Change-Id: Ia71c8e3b3185f7c999bf226d0675051b10b8740b
| * Add CONFIG += no_moc_predefs to allow one to escape problemsThiago Macieira2017-02-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes, users need to add compiler flags to QMAKE_CXXFLAGS that aren't supposed to be passed to the predefs dump. That's especially true for -include options, as that would change completely what's defined. Not to mention that -include is a preprocessor option and shouldn't be in CXXFLAGS in the first place (Automake has CPPFLAGS, but qmake only has INCLUDEPATH and DEFINES). [ChangeLog][qmake] Added the ability to suppress the collection of the compiler predefined macros for moc's use. To disable the collection, use CONFIG += no_moc_predefs. Task-number: QTBUG-58857 Change-Id: I4139d5f93dcb4b429ae9fffd14a34d49825d9b85 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * 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-222-1/+38
| | | | | | | | | | | | | | 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-222-7/+27
| | | | | | | | | | | | | | | | | | 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-224-21/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * Disable optimizations for macx-icc debugThiago Macieira2017-02-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | icc defaults to -O2, so this was causing debug code to be built like that, making debugging very hard. This change also hardcodes -O2 for release builds, just in case. Change-Id: Ibc5c715fda334a75bd2efffd14a478ce539a3a3f Reviewed-by: Robert Pancoast <RobertPancoast77@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Remove alias options from linux-icc/qmake.confThiago Macieira2017-02-211-1/+1
| | | | | | | | | | | | | | | | | | They are the default with icc. Change-Id: Ibc5c715fda334a75bd2efffd14a478c20b527d7c Reviewed-by: Robert Pancoast <RobertPancoast77@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Use native support for fp16 where availableAllan Sandfeld Jensen2017-02-162-0/+2
| | | | | | | | | | | | | | | | | | | | 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-145-142/+58
|\| | | | | | | Change-Id: I2bd2e61bae1eab4fc74fa6accd741ed9ae1f0669
| * Replace gstrip by strip due to ELF corruptionJulien Gueytat2017-02-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This is an old error of the gstrip binutils. The bug has been corrected and re-introduced. The command *elfdump -d xxx* on the ELF does bring lines like those : .SUNW_syminfo: invalid sh_info: 0 Task-number: QTBUG-58814 Change-Id: I330c4031dcf4ba64297df4b333b41cf0a003914f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * moc: remember to quote the path to moc_predefs.hThiago Macieira2017-02-121-1/+1
| | | | | | | | | | | | Task-number: QTBUG-58764 Change-Id: I4baef2edf7624ad69d96fffd14a22209a2bb90be Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * Remove out of date comments related to Xorg and GCCJulien Gueytat2017-02-082-12/+0
| | | | | | | | | | | | Task-number: QTBUG-56293 Change-Id: I8d2245755d08b528e2041a16aabb390f3796e545 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Remove _XOPEN_SOURCE=500 -D__EXTENSIONS__Julien Gueytat2017-02-081-18/+1
| | | | | | | | | | | | | | | | | | | | | | The value _XOPEN_SOURCE=600 should be used for C99 as we compile at least with C++11. By doing so the compilation reaches another error in a third library. Simply removing the option makes the compilation working normally. Task-number: QTBUG-56293 Change-Id: Ie040325936591958d05cc0a2d43643fa5d0c43b5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Complete solaris.conf following linux.conf templateJulien Gueytat2017-02-081-0/+7
| | | | | | | | | | | | Task-number: QTBUG-56293 Change-Id: I9e0240b3d4766f5c740a044d6eff44d21b340dc0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Update Solaris include path and library pathJulien Gueytat2017-02-083-9/+6
| | | | | | | | | | | | | | | | The path match OpenIndiana distribution based on Illumos. Task-number: QTBUG-56293 Change-Id: I44e7defa63809dc4f413b46329481b53e5e74c30 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Move configuration into includesJulien Gueytat2017-02-083-105/+45
| | | | | | | | | | | | | | | | | | Use of gcc-base.conf, g++-base.conf files and creation of solaris.conf. The content of solaris.conf should follow the content of linux.conf. Task-number: QTBUG-56293 Change-Id: I59cf9efa82ab0a2b22ea1a58f6339280460e5f92 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * 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-0811-57/+38
|\| | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * Update the mkspec for win32-icc to use the MSVC config filesThiago Macieira2017-02-081-50/+6
| | | | | | | | | | Change-Id: Ib57b52598e2f452985e9fffd1458a6b534111c23 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * 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>
| * 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>
| * Turn on -utf-8 compiler option for msvc2015 update 2 and upJian Liang2017-02-013-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Building qt with msvc would fail with the -developer-build configure option turned on under simplified chinese locale. This is because msvc will emit warnings for source files with utf-8 characters which are not representable in CP936, and -developer-build implies treating warnings as errors. This patch turn on -utf-8 compiler option for msvc2015 update 2 and up only for building qt. Task-number: QTBUG-58161 Change-Id: If38ea11eb1f39f8e08efa1cccb92e0eea50daf92 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Fix Android deployment for 64-bit targetsLaszlo Agocs2017-02-011-0/+3
| | | | | | | | | | | | | | Match the logic that is used for building. Change-Id: I9ce6db2357b9b3e19a1e932fae57d376aae406f7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * win32/default_pre.prf: remove unused incremental_off CONFIGThiago Macieira2017-01-311-1/+1
| | | | | | | | | | | | | | | | Nothing uses this and there's no incremental_off.prf since the MSVC6 purge in 99f390f9 (dec 2009). Change-Id: I2bc52f3c7a574209b213fffd149b4bf378805969 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| * Mark Clang 4.0 as warning-freeThiago Macieira2017-01-311-2/+2
| | | | | | | | | | Change-Id: If337c17c98844a98b196fffd146e63c38ce1ee7b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * linux-icc: Remove -falign-functions=16Thiago Macieira2017-01-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | There's no reason to have that. Let the compiler decide whether it wants to align or not. Current versions seem not to want to align beyond multiple of 2. Change-Id: Iab7c358838e1487387a2fffd149d73e0a218d3c2 Reviewed-by: Dominik Haumann <dhaumann@kde.org> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * Fix MIPS DSP configurationAllan Sandfeld Jensen2017-01-271-0/+2
| | | | | | | | | | | | | | | | | | 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>
* | stop exporting QT.*.{libexecs,plugins,imports,qml} in module prisOswald Buddenhagen2017-02-062-21/+1
| | | | | | | | | | | | | | | | | | | | | | these are not referenced anywhere, and neither should they, as they are not relevant to _using_ these modules in any way. notably, QT.*.bins remains exported - this is because dlls reside there, so it is necessary for setting up a launch environment. Change-Id: I7a33c72be6e4789ea29a2fbbcac9588213900b6e Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | stop exporting QT.*.{MAJOR,MINOR,PATCH}_VERSION in module prisOswald Buddenhagen2017-02-065-13/+8
| | | | | | | | | | | | | | | | | | | | | | | | 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-0148-582/+555
|\ \
| * | Remove -uvfd flag on INTEGRITYKimmo Ollila2017-01-311-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The uvfd flag is implicitly defined when -Olink is used. This causes the compiler to generate a warning for every file being compiled in release mode. Change-Id: I75759151864da7cf2f6d9c812e466a52c1208444 Reviewed-by: Nikola Velinov <nvelinov@ghs.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Fix iOS buildJake Petroules2017-01-301-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes a regression introduced in the merge 318b5856. Due to the removal of actual simulator_and_device in 5.8 (397f345a6), conditions using it have become meaningless. Task-number: QTBUG-58440 Change-Id: I9f874f9f85efa590c40602dbcd07793ff17d35f5 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Liang Qi <liang.qi@qt.io>
| * | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-304-2/+15
| |\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| | * Apple: fix QMAKE_DEFAULT_INCDIRS so compiler invocations use the sysrootJake Petroules2017-01-261-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The compiler command line used to populate QMAKE_DEFAULT_INCDIRS must include the sysroot in order to generate the correct paths list. This fixes a regression introduced in afd8263 which in turn attempted to fix an earlier regression making it impossible to override the deployment target in user project files. Task-number: QTBUG-58325 Change-Id: I93e6b7ef90b2744dd2f03c77da31c692cb194976 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
| | * Remove the -no-rtti option from configureThiago Macieira2017-01-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * linux-icc: always compile applications as position-independent execsThiago Macieira2017-01-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem isn't the compiler, but the linker, so we ought to turn this flag on for all ELF-based systems where we compile Qt with -Bsymbolic, but so far only the Intel compiler has been affected. We can turn it on as needed for other systems. The cause of the problem is the way that ICC materializes the pointer- to-member-function: it stores the full 2*sizeof(void*) data in an anonymous variable, so that it can load it in one go, such as one 16- byte SSE aligned load on 64-bit systems. That relocation in a data variable gets turned into a fixed-position copy relocation by the linker, which breaks the signal-identification mechanism. GCC and Clang are likely to be affected if anyone did: static const auto destroyed = &QObject::destroyed; QObject::connect(obj, destroyed, [](){}); Task-number: QTBUG-52439 Change-Id: I0d69eaf61af149db9574fffd149d0cfb08459c33 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| | * 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>
| * | Optimize debug builds when -Og is availableAllan Sandfeld Jensen2017-01-262-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 "Merge remote-tracking branch 'origin/5.8' into dev" into refs/staging/devLiang Qi2017-01-2645-578/+532
| |\ \