summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qt_common.prf
Commit message (Collapse)AuthorAgeFilesLines
* Enable stack-protector-strong for QNX 7.0.0James McDonnell2017-06-131-0/+1
| | | | | | | | | | | | | | | | | | | This was originally enabled in the mkspecs for 64-bit QNX 7.0.0 but that broke when the qtConfig change was made. It looks like qtConfig shouldn't be used in the platform mkspecs. I suspect the stack-protector changes were left out of the 32-bit mkspecs so that 6.6.0 builds wouldn't be affected. Ignore the stack-protector/stack-protector-all possibility since it isn't possible to access it without a command line option. Specifying both options doesn't even make sense since stack-protector-all encompasses stack-protector. For now, leave out command line control of this feature. Task-number: QTBUG-59644 Change-Id: I99323216be5b592dd2c3bef6d22da195764a6e65 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-271-1/+1
|\ | | | | | | Change-Id: Icdd71e9713725bda9c305e338f5c8b41a92ed8e8
| * Disable -Werror for QNX's compilerThiago Macieira2017-03-251-1/+1
| | | | | | | | | | | | | | | | | | | | The compiler is mostly GCC in disguise, but the libraries are not. Since the toolchain is not open, it's difficult to fix issues in it. Task-number: QTBUG-59671 Task-number: QTBUG-59672 Change-Id: Id92f4a61915b49ddaee6fffd14aea2639153f073 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-02-081-2/+2
|\| | | | | | | | | | | | | | | Conflicts: configure.json mkspecs/win32-icc/qmake.conf Change-Id: Ibf40546b024d644c7d9ed490bee15b82597f4d3f
| * Mark Clang 4.0 as warning-freeThiago Macieira2017-01-311-2/+2
| | | | | | | | | | Change-Id: If337c17c98844a98b196fffd146e63c38ce1ee7b Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-1/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * utilize configure results better in native buildsOswald Buddenhagen2017-01-201-1/+1
| | | | | | | | | | | | | | | | | | don't ignore detected features for host tools when we're not actually cross-building. Change-Id: Id62a3c1c6b7ae422b14efb4fbea0892b05a047cc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: René J.V. Bertin <rjvbertin@gmail.com>
| * Fix GCC 7 developer buildAllan Sandfeld Jensen2016-12-261-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Disables escalating the implicit fallthough warning to an error, since Qt is not yet free of unmarked implicit fallthroughs. With this we can clean the code in the dev branch instead of in 5.6 and 5.8, and only backport bug fixes. Change-Id: Id30ee21b77de6defcb7d5bb1e05e86c0db098481 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Enable QT_NO_NARROWING_CONVERSIONS_IN_CONNECT in Qt's own buildGiuseppe D'Angelo2016-10-211-0/+2
|/ | | | | | Change-Id: I3a8c1cfa20fd4f946ee2e16a027a8c6439102020 Reviewed-by: Marc Mutz <marc.mutz@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-09-051-3/+3
|\ | | | | | | | | | | | | | | Conflicts: mkspecs/features/qt_common.prf src/plugins/platforms/windows/qwindowsdialoghelpers.cpp Change-Id: I03b92b6b89ecc5a8db7c95f04ebb92ed198098a8
| * Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-09-051-3/+3
| |\ | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/testlib/selftests/generate_expected_output.py Change-Id: If856162abf9a24ae2c9946d336a7d1da03520fa7
| | * Mark Apple Clang 7.x as warning-free on macOS and (also Clang 3.9) iOSJake Petroules2016-08-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | iOS was excluded in 09aeda21b902763919c2e0b2b06d09275d136e8c, probably unnecessarily. The build has been found to be warning-free. Change-Id: I81de2fff40938b6ab9f7a6a5b9f08f8a8baadb16 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-08-291-4/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cf53aa21bf0f8fbd13c0ce2d33ddf7bc63d0d76a and 3aaa5d6b32130d3eeac872a59a5a44bfb20dfd4a were reverted because of reconstruction in 5.7. defineTest(qtConfTest_checkCompiler) in configure.pri is smart enough to cover the case in a9474d1260a8c8cc9eae14f2984098919d9684e5. DirectWrite: Fix advances being scaled to 0 Since 131eee5cd, the stretch of a font can be 0, meaning "whatever the font provides". In combination with ec7fee96, this would cause advances in the DirectWrite engine to be scaled to 0, causing the QRawFont test to fail. Conflicts: configure mkspecs/features/uikit/device_destinations.sh mkspecs/features/uikit/xcodebuild.mk src/corelib/global/qglobal.cpp src/corelib/global/qnamespace.qdoc src/plugins/platforms/cocoa/qcocoamenuitem.h src/plugins/platforms/windows/qwindowsservices.cpp src/plugins/platformthemes/gtk3/qgtk3dialoghelpers.cpp src/plugins/platforms/windows/qwindowsfontenginedirectwrite.cpp src/widgets/kernel/qapplication.cpp tests/auto/widgets/dialogs/qfiledialog/tst_qfiledialog.cpp tests/auto/widgets/dialogs/qfiledialog2/tst_qfiledialog2.cpp Change-Id: I4656d8133da7ee9fcc84ad3f1c7950f924432d1e
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-291-2/+2
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/plugins/platforms/winrt/qwinrtclipboard.cpp Change-Id: Ic6d58be3d1ed2bb507f2ba06c82361afd9f9ddb9
| | * Mark Clang 3.9 as warning-freeThiago Macieira2016-08-271-2/+2
| | | | | | | | | | | | | | | Change-Id: Id75834dab9ed466e94c7ffff1444b71f29f49afd Reviewed-by: Jake Petroules <jake.petroules@qt.io>
| * | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-251-2/+2
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/mimetypes/qmimeprovider.cpp src/corelib/mimetypes/qmimetype.cpp Change-Id: Ib483ddb6bfc380e7c8f195feca535703814c3872
| | * fix conditions relating to host_build in non-cross buildsOswald Buddenhagen2016-08-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when it comes to compiler flags (be it warnings or include paths), it doesn't matter whether we building/using bootstrap libraries, but whether we are actually cross-building. amends c55bdc271f and d8be8110a. Change-Id: Idf988107e9cccc486672c0ee70dc9bdf8eab9d8c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Use qtConfig throughout in qtbaseLars Knoll2016-08-191-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | | Remove dead code relating to largefileLars Knoll2016-08-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | We set CONFIG+=largefile directly from configure, and there is never a largefile feature in QT_CONFIG. Change-Id: I3518c749d674529b272685b6ed6c738e48ee5cd7 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* | | Merge remote-tracking branch 'origin/5.7' into devEdward Welbourne2016-07-191-3/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: qmake/library/qmakebuiltins.cpp qmake/library/qmakeevaluator.cpp qmake/library/qmakeevaluator.h qmake/project.h QMakeEvaluator: * evaluateConditional(): one side changed return type, the other changed a parameter type. * split_value_list(): one side changed a parameter adjacent to where ... * expandVariableReferences(): ... the other killed one overload and changed the survivor src/corelib/io/qlockfile_unix.cpp One side changed a #if condition, the other moved NETBSD's part of what it controlled. src/corelib/tools/qdatetime.cpp One side fixed a reachable Q_UNREACHABLE in toMSecsSinceEpoch(), the other moved it from the private class to the public one, in the midst of the "short date-time" optimization, which confused diff entirely. One side changed a QStringLiteral to QLatin1String, the other rewrote adjoining code. src/network/kernel/qauthenticator.cpp Both rewrote a line, equivalently; kept the dev version. src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm src/platformsupport/fontdatabases/mac/qfontengine_coretext_p.h One side changed #if-ery that the other removed. tools/configure/configureapp.cpp One side added a check to -target parsing; the other killed -target. tests/auto/testlib/selftests/expected_cmptest.lightxml tests/auto/testlib/selftests/expected_cmptest.teamcity tests/auto/testlib/selftests/expected_cmptest.txt tests/auto/testlib/selftests/expected_cmptest.xml tests/auto/testlib/selftests/expected_cmptest.xunitxml Regenerated using generate_expected_output.py I note that quite a few other expected_* come out changed, now. There was no git-conflict in src/widgets/kernel/qformlayout.cpp but it didn't compile; one side removed some unused methods; the other found uses for one of them. Put FixedColumnMatrix<>::removeRow(int) back for its new user. Change-Id: I8cc2a71add48c0a848e13cfc47b5a7754e8ca584
| * | Enable -WX (warnings are errors) for MSVC 2015Thiago Macieira2016-07-151-3/+3
| | | | | | | | | | | | | | | Change-Id: Ib57b52598e2f452985e9fffd1458b565f9bda0f8 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | Add some more interesting warnings new in GCC 6Thiago Macieira2016-05-291-0/+2
| | | | | | | | | | | | | | | Change-Id: Id69569111e7d4e619e22ffff144c7eee63734794 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* | | Add support for Apple tvOSMike Krus2016-05-171-1/+1
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pass -xplatform macx-tvos-clang to configure to build. Builds device and simulator by default. Added ‘uikit’ platform with the common setup. Also added QT_PLATFORM_UIKIT define (undocumented). qmake config defines tvos (but not ios). tvOS is 64bits only (QT_ARCH is arm64) and requires bitcode to be embedded in the binary. A new ‘bitcode’ configuration was added. For ReleaseDevice builds (which get archived and push to the store), bitcode is actually embedded (-fembed-bitcode passed to clang). For all other configurations, only using bitcode markers to keep file size down (-fembed-bitcode-marker). Build disables Widgets in qtbase, and qtscript (unsupported, would require fixes to JavaScriptCore source code). Qpa same as on iOS but disables device orientation, status bar, clipboard, menus, dialogs which are not supported on tvOS. Change-Id: I645804fd933be0befddeeb43095a74d2c178b2ba Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
* | Add support for -Werror with ICC 17 on LinuxThiago Macieira2016-05-101-2/+2
| | | | | | | | | | | | Change-Id: Id75834dab9ed466e94c7ffff14447a58fe16617f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-291-0/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: mkspecs/features/qml_module.prf mkspecs/features/qt_common.prf src/gui/text/qzip.cpp src/plugins/platforms/cocoa/qnsview.mm src/plugins/platforms/windows/array.h src/testlib/qtestcase.cpp src/widgets/dialogs/qfilesystemmodel.h Change-Id: Ie41c5868415b81f7693c80e045497035504bb210
| * don't apply warning options to host buildsOswald Buddenhagen2016-04-291-0/+4
| | | | | | | | | | | | | | | | | | | | the host compiler's version is not determined, so we cannot make any assumptions about its capabilities. Task-number: QTBUG-53017 Change-Id: I939fd7402b5daac73f2195b9d8763b9008bc7ea4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Rolf Eike Beer <eb@emlix.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-04-251-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: config.tests/unix/compile.test configure src/android/jar/src/org/qtproject/qt5/android/QtMessageDialogHelper.java src/corelib/global/qglobal.cpp src/widgets/kernel/qapplication.cpp src/widgets/styles/qwindowsvistastyle.cpp tests/auto/corelib/kernel/qobject/tst_qobject.cpp Change-Id: I067083f34e5290aa5f7565e40c30a069cc37b83a
| * Clang 3.8 is clean of warningsThiago Macieira2016-04-131-2/+2
| | | | | | | | | | Change-Id: Ibc83b9f7e3bc4962ae35ffff1425c8e686579e15 Reviewed-by: Jake Petroules <jake.petroules@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-03-111-2/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change partially reverts 1bfc7f68 about QT_HAS_BUILTIN define and undef in src/corelib/tools/qsimd_p.h. This change is also squashed with "Fall back to c++11 standard compiler flag for host builds" which is done by Peter Seiderer. Conflicts: mkspecs/features/default_post.prf src/3rdparty/sqlite/0001-Fixing-the-SQLite3-build-for-WEC2013-again.patch src/3rdparty/sqlite/sqlite3.c src/corelib/tools/qsimd_p.h src/gui/kernel/qevent.cpp src/gui/kernel/qwindowsysteminterface.cpp src/gui/kernel/qwindowsysteminterface_p.h src/plugins/bearer/blackberry/blackberry.pro src/plugins/platforms/cocoa/qcocoasystemsettings.mm src/plugins/platformthemes/gtk2/gtk2.pro src/plugins/styles/bb10style/bb10style.pro src/sql/drivers/sqlite2/qsql_sqlite2.cpp tools/configure/configureapp.cpp Task-number: QTBUG-51644 Done-with: Peter Seiderer <ps.report@gmx.net> Change-Id: I6100d6ace31b2e8d41a95f0b5d5ebf8f1fd88b44
| * qt_common.prf: when looking for GCC >= 4.6, match GCC 6+, tooMarc Mutz2016-03-051-2/+2
| | | | | | | | | | Change-Id: Ia04690f62faa214fb91dffc758e253b5a64e5648 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | Add some interesting warning options to the compilationThiago Macieira2015-12-051-0/+15
|/ | | | | | | | | This should help improve the cleanliness of our source code, including compliance with the C++ standards. They apply to all of our code except examples (they don't load qt_common.prf). Change-Id: Ia0aac2f09e9245339951ffff13c94663c1901766 Reviewed-by: David Faure <david.faure@kdab.com>
* Update the list of compilers we are free of warnings withThiago Macieira2015-09-221-6/+6
| | | | | | | | | I've tested with Clang 3.7 and ICC 16 on Linux, XCode 6.4 on OS X for OS X (not iOS). Change-Id: Ib306f8f647014b399b87ffff13f1f4291d801a20 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add detection of C++14 and C++1z compiler featuresThiago Macieira2015-09-051-0/+2
| | | | | | | | | | | | | | | [ChangeLog][General Improvements] Qt's buildsystem now detects whether the compiler supports C++14 and experimental support for C++1z. If the compiler supports it, then Qt is automatically compiled using that support. \ This does not apply to user applications built using qmake: those are still built with C++11 support only. To enable support for C++14 in your application, add to your .pro file: CONFIG += c++14 (similarly for C++1z). Change-Id: Ib056b47dde3341ef9a52ffff13ef1f5d01c42596 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Make CONFIG += c++11 by default not disable GNU extensionsThiago Macieira2015-07-171-1/+1
| | | | | | | | | | | | | | | | | | | Prefer -std=gnu++11 unless strict_c++11 is defined. You can enable strict C++11/C++14 mode by using CONFIG += strict_c++ That is enabled for Qt's own code, so we we don't accidentally use GNU extensions in portable code. There's no support for strict C++98 mode (that is, the -ansi option). [ChangeLog][qmake] By default, GNU extensions are now enabled with Clang, GCC and ICC even in C++11 and C++14 modes. To disable the GNU extensions, add to your .pro file: CONFIG += strict_c++. Change-Id: Ib056b47dde3341ef9a52ffff13ef14de2169bef5 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Update the list of compilers we are free of warnings withThiago Macieira2015-07-171-4/+4
| | | | | | | | | I've tested with GCC 5, Clang 3.5 and 3.6 on Linux. Change-Id: Ia0aac2f09e9245339951ffff13c87198f2e8aa35 Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Let MSVC treat warnings as errorsKai Koehne2015-05-181-0/+3
| | | | | | | | | | Treat warnings printed by MSVC 2012, 2013 as errors in the modules that declare themselves warning_clean (for developer builds). Change-Id: I55fb3bde460e13cfdbd6f59634e3b5335b2dd715 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* make the installed meta files play nicely with sysrootsOswald Buddenhagen2015-02-051-4/+7
| | | | | | | | | | | | | | | pkg-config .pc files use the raw target paths (and pkg-config patches up -I and -L flags on the fly), so these files were actually already fine. libtool .la files use the magic prefix = to denote the sysroot. this works only with libtool 2.4+ (sept 2010). qmake .prl files have no built-in sysrootification magic, but as they are read by qmake, it's possible to put property references into them. this makes them relocatable, both inside and outside sysroots. Change-Id: I97236ac81e7aba4e4771d14a44cbf59144cc2d3e Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Use the GCC and Clang __builtin_bswap intrinsics in qbswapThiago Macieira2014-12-201-3/+0
| | | | | | | | | | | | | | | | Glibc will use the intrinsics for 32- and 64-bit, but didn't for 16-bit (probably because GCC didn't document it until version 4.8), so this commit will make us access the intrinsics directly the intrisincs for all type sizes. Additionally, this will get us access to the compiler intrisics even without Glibc, such as when building against uclibc or Bionic. Another benefit is that both Clang and ICC will use the MOVBE instruction on Atom and Haswell architectures. Change-Id: I39d1891f479887d719d69ebe4ac92ac9bfeda8af Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Enable the latest versions of GCC, Clang and ICC with -WerrorThiago Macieira2014-10-311-6/+6
| | | | | | | | | | | | Tested with GCC 4.9, Clang from XCode 5.1 and ICC 15 beta. Clang 3.5 (pre-release) cannot compile qtdeclarative yet with -Werror due to invalid C++ code there that calls member functions on null pointers. Change-Id: Ic2845371a1899716985bc0813dfb820fa418e207 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix linking warnings on OS X with qmlimportscannerSimon Hausmann2014-05-231-1/+1
| | | | | | | | | | | | | The linker complains that some symbols were compiled with different visibility settings when linking host_build tools such as the import scanner. As it turns out, we do CONFIG += hide_symbols for static libraries (such as bootstrap or qmldevtools) but naturally not for the final program source code. It appears symbol visibility is not of importance for static libraries in host builds (as opposed to static libraries later linked into shared libraries), therefore this patch removes that. Change-Id: I237a2d8669374eb059dc91b5378f6e3ec93d67a6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* snuff -L/-I with system paths when installing meta filesOswald Buddenhagen2014-04-151-3/+9
| | | | | | | Task-number: QTBUG-37963 Change-Id: I8e268387f9dc33d7fab76395301b1396ca0445ff Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Davide Pesavento <davidepesa@gmail.com>
* de-duplicate setup of libdir replacement in prl filesOswald Buddenhagen2014-04-151-0/+12
| | | | | | Change-Id: Ia93fa02d9e63597d3347fee3aaf2aca65e7cc83a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Davide Pesavento <davidepesa@gmail.com>
* purge -separate-debug-info=nocopyOswald Buddenhagen2014-03-201-1/+0
| | | | | | | | clearly, this was a poor man's implementation of -force-debug-info. Change-Id: Ib5c7e390bd0e3a6912af8c4027074a114ed33f8a Reviewed-by: Allan Sandfeld Jensen <allan.jensen@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Let Apple Clang 5.0 also have -Werror supportThiago Macieira2014-01-141-2/+2
| | | | | | Change-Id: I3abc83617c8f3426e4f5920052281fe13e4e3edc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Use the QMAKE_CXXFLAGS_WARN_ON variable for setting -WerrorThiago Macieira2014-01-131-6/+6
| | | | | | | | | | | | | | | | | | This would mean we don't pass -Werror when under CONFIG += warn_off. However, that's not the main goal. The main goal of this change is to have -Werror appear *after* -Wall -Wextra. With some compilers, like Clang, this is necessary to have the -Wno-error=foo options work properly. For example, if the -Wfoo warning gets enabled by -Wall, Clang will treat it as an error if the arguments appear in the following order: -Werror -Wno-error=foo -Wall But not if they appear in this order: -Wall -Werror -Wno-error=foo Change-Id: I38c820bffc8277d909391e9bf557db5347836b9c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Add -Werror support for the regular Clang, not Apple'sThiago Macieira2014-01-101-3/+7
| | | | | | | Base modules already work and produce no warnings. Change-Id: I932d7aaecbe3404f180e185bf1e9fff4d488a05d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Rewrite qmake's exclusive-build featureTor Arne Vestbø2013-10-251-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We used to compute the default exclusive build directory, eg 'debug', at configure time, and then set OBJECTS_DIR, MOC_DIR, etc to include this hard-coded default exclusive build directory. We then had to run a post- process step where we replaced the 'debug' part with the current actual exclusive build pass, eg 'release', resulting in long-standing bugs such as QTBUG-491 where we end up replacing parts of the build output dirs that were not part of the original exclusive build directory. We now set the OBJECTS_DIR, MOC_DIR, etc defaults in configure like before, but they do not include any exclusive-build information. The exclusive build directory is handled as a separate step in default_post where we adjust all entries in QMAKE_DIR_REPLACE to be exclusive directories. For backwards compatibility the new exclusive build behavior is only enabled for variables named by QMAKE_DIR_REPLACE_SANE, which for Qt itself applies globally to everything but DESTDIR, and for libs and tools also applies to DESTDIR. The reason for leaving out DESTDIR in the general case is because many tests and examples assume the old behavior for DESTDIR. A side effect of including all the other variables for Qt libs and tools is that the PCH output dir will be uniformly set, which has been an issue on Windows in the past. The addExclusiveBuilds function now takes two or more arguments, each argument being the key for an exclusive build, which can be customized eg. using $$key.{name,target,dir_affix}. Passing more than two arguments results in three/four/etc-way exclusive builds, eg debug/release/profile. Exclusive builds can also be combined, eg static/shared + debug/release by making two calls to the function. We also handle individual targets of combined exclusive builds, eg static/shared + debug/release, meaning it is possible to run 'make debug' to build both static-debug and shared-debug. Task-number: QTBUG-491 Change-Id: I02841dbbd065ac07d413dfb45cfcfe4c013674ac Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Android: Never error out on literal-suffix warningEskil Abrahamsen Blomfeldt2013-09-201-0/+4
| | | | | | | | | When warnings are treated as errors, no Android code will compile, since one of the platform headers in the NDK triggers the literal-suffix warning. So we need to mark this as no-error. Change-Id: Icabf1c2f2d32f76ee157d04e62a28f83abeed8f1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix -Wno-error=deprecated for GCC and ClangThiago Macieira2013-09-041-2/+2
| | | | | | | | | Commit a7ba0ad93e22d095f86c5faebd0b6ddf374656c8 introduced the -Wno- language. The warning about deprecated functions, variables or types is -Wdeprecated-declarations. Change-Id: I6d269851afefc6a3fc3bf6599c3c702eb164245e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Make sure deprecation warnings don't cause errors with -WerrorThiago Macieira2013-08-271-3/+4
| | | | | | | | | | | It sounds like a good thing to have this warning, but for future-proofing we can't have it. The system libraries might change and add deprecation marks (OS X does that often). If they do that, we don't want poor developers to have to fix all warnings before they can build Qt again. Change-Id: I4ff317da0de596c470bb1efe6e59bcf70aeec8fc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>