summaryrefslogtreecommitdiffstats
path: root/mkspecs/features
Commit message (Collapse)AuthorAgeFilesLines
* automatically add the version header to HEADERSOswald Buddenhagen2012-06-191-0/+9
| | | | | Change-Id: I7c2e1d852ebdbc5cca7a3a31ab2b4c9ab9faffd9 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* factor out qt_module_headers.prfOswald Buddenhagen2012-06-192-3/+5
| | | | | | | this doesn't make too much sense as such, but the file will grow. Change-Id: Iceaecdc24f83b3dafb40c8d2f1b6cddafa2d70a1 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make headers.pri locality determination less convolutedOswald Buddenhagen2012-06-191-5/+1
| | | | | | | | | | the location is determined by syncqt rather precisely. no need to reverse-engineer config files. $$HEADERS_PRI doesn't seem used anywhere, so don't set it as a side effect. Change-Id: I54a63356c350c0ddae4c880bf374fcd127282429 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* generate fwd-pris in qt_module_config, not in syncqtOswald Buddenhagen2012-06-192-1/+68
| | | | | | | | the forwarding pri is loaded even if it was still created by syncqt, so a top-level qmake -r will still catch it even in the future. Change-Id: I2e4b556cd06eb88be9ee378662a2e6e1bff67ad7 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* bring statements into a somewhat logical orderOswald Buddenhagen2012-06-191-4/+4
| | | | | Change-Id: I7bfbcd414bd2c8ff82e210c075b88f1ca00d3b73 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove qt from CONFIG for non-artifact templatesOswald Buddenhagen2012-06-191-0/+2
| | | | | | | | | there is no point in adding Qt modules to SUBDIRS projects. as QT contains core and gui by default, the operations are relatively expensive, so skip them when they are unneeded. Change-Id: Ibe6447ff452e403cb040fabe245d248edbda0eaa Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* define have_target CONFIG flagOswald Buddenhagen2012-06-195-6/+8
| | | | | | | | | the check whether we are building a lib or an app (and thus have a target) is done by quite some feature files (and generally wrongly, as they do not account for the new aux target), so centralize it in default_post.prf. Change-Id: I868edbc4185be8a6c23ecd4a2c126024d73cdeb4 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* add possibility to install a module with no libraryOswald Buddenhagen2012-06-191-6/+8
| | | | | | | the declarative module is a fake, so there is no library to install. Change-Id: I0dcd39f3304e38adce9ea34e2268905525abd3d5 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make version fallback code saneOswald Buddenhagen2012-06-192-10/+2
| | | | | | | | the qt version is always set. otoh, we need to allow the module to override the own version. Change-Id: Ic3eb7dae59a5fb011cede09151553b652a0a1d78 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove explicit RCC_DIR addition to INCLUDEPATHOswald Buddenhagen2012-06-191-1/+0
| | | | | | | | | | qrc_ files are generally not meant to be included, so there is not much point in doing this. qprintsupport was a notable exception - which broke on mac and thus needed a hack. just remove the qrc_ inclusion. Change-Id: If5115665f331a280869e800673bf7b81d3ab559a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qmake module path configurable separatelyOswald Buddenhagen2012-06-191-1/+4
| | | | | | | this is needed by webkit's creative directory layout. Change-Id: I2317162c11696d2820423d63563b10d3024a6cb6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* write forwarding pris to $outpath/mkspecs/modulesOswald Buddenhagen2012-06-192-11/+3
| | | | | | | | | | this makes qmake find them automatically now. consequently, also do not write QMAKE_EXTRA_MODULE_FORWARDS to .qmake.cache. still write the cache file, though, as otherwise a top-level cache would mess up the module root detection. Change-Id: I998b94fcc73ca3f8bf1af09a394ff8d40cf1fb76 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove useless variable assignmentOswald Buddenhagen2012-06-191-3/+0
| | | | | Change-Id: I3552305473cd0150d83c1e2a3c9fb0c4097244cc Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* rename QMAKE_SYNCQT_OUTDIR => MODULE_BASE_OUTDIROswald Buddenhagen2012-06-191-2/+2
| | | | | | | | | | | a variable name should not reflect the tool which uses it, but its purpose - especially, as the scope will be extended soon. this variable is used by webkit, which has a somewhat creative directory layout. Change-Id: Id3d3fad6ed9395cb967aeabc79e47a0ba17f5423 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qt_module_config.prf install the module pri fileOswald Buddenhagen2012-06-193-7/+12
| | | | | | | | | absorb module.prf into qt_installs.prf, as that's where it belongs. add qt_install_module option and automatically set it in qt_module_config. make qt_installs use that option. Change-Id: I860616f3a29a456f7b88ddaffa09375400c8911e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make qtAddLibrary() a noisy compat wrapper for qtAddModule()Oswald Buddenhagen2012-06-191-46/+10
| | | | | | | | it's used by people (in particular, qt creator), so it would be not nice to just delete it entirely. Change-Id: I6bd849d00ebfe3b9b126e01a6d1c6e7c6584d8ac Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* purge QMAKE_INCDIR_QT and QMAKE_LIBDIR_QTOswald Buddenhagen2012-06-192-7/+4
| | | | | | | they are equivalent to QT_INSTALL_(HEADERS|LIBS)/get. Change-Id: Ic4b47f3ca7db55785b96f19020a2fa020a8d25bd Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* simplify code which determines how/where to create forwarding prisOswald Buddenhagen2012-06-191-29/+6
| | | | | | | | the qtbase install dir being a build dir is a necessary and sufficient condition for detecting a developer build. Change-Id: I3d98c789ac6fbe570980459edabb9a941bf1e5d6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* move $QTDIR handling out of syncqtOswald Buddenhagen2012-06-191-2/+2
| | | | | | | | | instead, always pass -qtdir (which, btw, is a slight misnomer - it should be -qtdatadir) with the correct path. this centralizes the relevant logic in default_pre.prf. Change-Id: Icc788d3f3e5f7b68b444e63e181efdea3b4ef160 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* make use of $$[FOO/get] propertiesOswald Buddenhagen2012-06-195-50/+8
| | | | | | | | this cleans up a lot of hacks supporting the build of qt, including the last bits of $QTDIR. Change-Id: Id119886ed8097967dad6cf86ebd4e71d90c42841 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* move moc, rcc and uic CONFIG additions to the respective qt modulesOswald Buddenhagen2012-06-194-5/+2
| | | | | | | they don't belong into the global scope Change-Id: I27a3de5f706392b3c4a84035521bc3b4e4055740 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove some DEPENDPATH nonsenseOswald Buddenhagen2012-06-191-9/+0
| | | | | | | qt is built with depend_includepath anyway Change-Id: I3967ad0bb52f5a3d88fceaf102c79f6711aaa83a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* dispose of library-bound feature filesOswald Buddenhagen2012-06-197-28/+22
| | | | | | | | | | specifically, qtestlib.prf, qdbus.prf, help.prf, designer.prf and quitools.prf - they have been obsoleted by modularization. add noisy backwards compat hack to qt.prf. Change-Id: I26f84fdd51798265471e20dd1f40efec59b1087e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Revert "make default_pro.prf advertize dynamically created .qmake.cache"Oswald Buddenhagen2012-06-191-3/+0
| | | | | | | | ... and followup fixes. this is not needed any more due to the breaking patch being reverted. Change-Id: Ia3416fcc16ddece680efbd0322286a601879fa0a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Do not add debug/release to QMAKE_CONFIG. Let module system enable themSean Harmer2012-06-142-6/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This solved QTBUG-26111 in which qtjsbackend gets built with an incomplete framework on Mac OSX. This was traced back to commit 6a6fd56e662b2c1a581727f7ec44d5bd60913ad4 which moved QMAKE_CONFIG values from .qmake.cache to mkspecs/qmodule.pri. Since qtjsbackend contains config tests it creates its own .qmake.cache which was previously masking this issue. QMAKE_CONFIG incorrectly contained debug for debug_and_release builds even though debug and release are already present in the CONFIG variable in mkspecs/qconfig.pri. The changes to configure prevent CONFIG in qmodule.pri from containing debug and release variables and ensure that QT_CONFIG contains build_all and debug_and_release if appropriate. Configure.app is also adjusted to match this behaviour. The other part of the change is to qt_module_config.prf and qt_plugin.prf. These changes take care of populating CONFIG with the appropriate debug_and_release and build_all variables depending upon what is present in QT_CONFIG. This ensures that the Qt modules and plugins get built with the same configuration as qtbase. The special handling for the qcocoa QPA plugin ensures that it is built in release mode only to preserve the behaviour introduced by commit 5603f94eaa538dbe28fc426065d65a27799adedc. Task-number: QTBUG-26111 Change-Id: I6f65aba50709e1b2431b8b4411ff30a06f7d8aed Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* configure: Auto-detect and enable C++11 support if availableBradley T. Hughes2012-06-053-0/+5
| | | | | | | | | | | | | | | | | Enabling support for C++11 adds CONFIG+=c++11 to the Qt build. Projects using Qt can check for C++11 support using contains(QT_CONFIG, c++11) in their .pr[iof] files. The QMAKE_CXXFLAGS_CXX11 and QMAKE_LFLAGS_CXX11 qmake varibles contain any arguments the compiler needs to enable C++11. CONFIG+=c++11 adds these arguments to the build. Support for clang, g++, and the Intel C++ Compiler for Linux are included in this commit. Change-Id: Id77f86d7ad4d5c740b890446a40b105879a0d327 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Remove all references to X11 session managementDonald Carr2012-06-011-1/+0
| | | | | | | | | There is no session management currently implemented for the xcb QPA backend. Update the build system to reflect this. Change-Id: I3486de5741f1fb7e09330ca142b8235a84d3b91d Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Move the sub-architecture feature to better places in qmakeThiago Macieira2012-05-312-13/+13
| | | | | | | | | | | | | | | | | | | Instead of saving the ability of the compiler to produce SSE2, AVX, Neon, etc. code in .qmake.cache (Unix) or qconfig.pri (Windows), move everything to qmodule.pri. Accordingly, move the DEFINES += settings to qt_module.prf instead of qt.prf. This allows us to re-use these settings in other Qt modules (other than qtbase), if necessary. Though currently the extra compiler definitions are found only in src/gui/gui.pro. They can be moved elsewhere when it becomes necessary. As a side-effect of this change, some other flags are moved from .qmake.cache to qmodule.pri (on Unix). The flags that are getting moved should probably be moved anyway. Change-Id: Ibc3ab0111e148d81870772f9357273660aa93417 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Overhaul the qsimd_p.h: rename macros and update conditionalsThiago Macieira2012-05-311-8/+11
| | | | | | | | | | | | | | | The QT_HAVE_xxx macros are replaced with QT_COMPILER_SUPPORTS_xxx. They indicate that the compiler supports those intrinsics, but not necessarily that they can be used right now. ICC and MSVC allow one to use the intrinsics anywhere, but for Qt all uses of the intrinsics are either in specially-built files, protected by runtime checks, or they are unconditional (qstring.cpp). So we only use the intrinsics when the compiler was instructed to generate code for that instruction set anyway. Change-Id: Ie58eebbc0518ad1d5420a85174fd84153bb9abaa Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Windows: Add ANGLE support.Friedemann Kleint2012-05-311-2/+15
| | | | | | | | | | | | | | | | | | - Add QWindowsEGLContext usable for ANGLE and Windows CE. - Add QWindowsEGLStaticContext containing the display for resource cleanup. - Add EGLSurface to QWindowsWindow. - Add a -angle option specifying the path to the external ANGLE installation to configure, add libraries to the mkspecs. Initial-patch-by: Jabot Corentin <corentinjabot@gmail.com> Task-number: QTBUG-24207 Change-Id: I5f80b1efb6996da7c5d70aa3720f7801c9e4c6af Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* devices: Allow to pick up the compiler from the pathHolger Hans Peter Freyther2012-05-231-2/+7
| | | | | | | | | | | Re-enable checking if the compiler is in the path. The previous commit dealt with a user/spec author not setting CROSS_COMPILE and then picking up the host g++. Re-add the 'which' check, but put it after the sanity check for the CROSS_COMPILE variable. This check assumes that QMAKE_CXX is of the form "${CROSS_COMPILE}g++". Change-Id: I54f7e058a75d26d73eca5a860946a6854ce91d67 Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
* device: Check CROSS_COMPILE in deviceSanityCheckCompilerGirish Ramakrishnan2012-05-231-4/+6
| | | | | | | | | | | | QMAKE_CXX is initialized by default to gcc. As a result, 'which $QMAKE_CXX' always succeeds. This change removes the 'which' check and makes it explicit that CROSS_COMPILE is a mandatory option to -device mkspecs. Change-Id: Icefa9d14fc24086a60c9108ff7d9d16fd9990995 Done-with: Johannes Zellner Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* win32/default_pre.prf: Remove exceptions_off, thread_off, stl_off.Friedemann Kleint2012-05-211-1/+1
| | | | | | | | | | | | - thread_off, stl_off are obsolete. - exceptions_off causes exceptions to be globally disabled for applications using MinGW after 2b21dd69d6a4e47f0ec3d3958ab1def0983ce76c. Change-Id: Ia109c5806f2a0172efed5680a55ca53a2846d778 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* turn off exceptions by default where they aren't requiredLars Knoll2012-05-174-2/+6
| | | | | | | | | | | | | This significantly reduces the size of the generated code in places where we don't need exceptions. The -(no-)exceptions configure flag has been removed in the process, as there is now a fine grained way to control this on a per module level, and Qt is being compiled without exceptions in most places. Change-Id: I99a15c5d03339db1fbffd4987935d0d671cdbc32 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Set QMAKE_DOCS_INSTALLDIR to $$[QT_INSTALL_DOCS] to allow overriding in .proMarius Storm-Olsen2012-05-152-1/+6
| | | | | | | | | | | | Normally you want to pass -installdir $$[QT_INSTALL_DOCS] to qdoc by default. However, if you want to force the generation of URL links to the documentation, the option cannot be specified. By setting the QMAKE_DOCS_INSTALLDIR variable in default_pre.prf a project may override it at will, as for example Qt Creator would do. Change-Id: Ib31f03acf4e8050cf2dd3aa33f3a10ed027f1df7 Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* configure: Remove the -dwarf2 argument for Mac OS X buildsBradley T. Hughes2012-05-112-7/+0
| | | | | | | | | | Modern versions of Xcode properly support dwarf2, and as such dwarf2 is always enabled. This change removes the ability to turn it off, making dwarf2 non-optional. Change-Id: I149daeae6048ee8a1ed116363572173ad219102e Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Remove declarative from qmltestcase.prf.Friedemann Kleint2012-05-111-1/+1
| | | | | | Change-Id: Ia4bf45132a74ec7bbbb2a918088c176f87a26e76 Reviewed-by: Kent Hansen <kent.hansen@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Merge branch 'docs-refactoring' into masterMarius Storm-Olsen2012-05-101-0/+27
|\ | | | | | | Change-Id: Iebd1966abace3cdf7f9428dcfc1ded5b124ab113
| * Properly implement a 'make docs' target for subdirs and apps/libsMarius Storm-Olsen2012-05-091-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Only call qdoc for projects which sets the QMAKE_DOCS variable to point to a qdocconf file. Exclude examples/ and tests/ from the qdoc run, by adding no_docs_target to CONFIG for those projects. Change-Id: Ic856c8f19db59309302d0602b3e99735609e525a Reviewed-by: Lars Knoll <lars.knoll@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Casper van Donderen <casper.vandonderen@nokia.com>
* | Fix qpa files installationGirish Ramakrishnan2012-05-081-0/+4
|/ | | | | | | qpa header files were not installed under qpa/. Change-Id: I243c3a7e83a342f7485791a1a29b65c9a8f25d6b Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Remove all usages of "arch" CFLAGS on Mac.Morten Johan Sorvig2012-05-044-28/+0
| | | | | | | | | | | | | Remove all [PPC|PPC64|X86|x86_64] CFLAGS, CXXFLAGS and OBJECTIVE_CFLAGS. Delete the arch prf files. 32/64 bit arch selection will be made using a different mechanism in Qt 5. Universal builds are not supported. Change-Id: I4664f2c31801cec7fb4d240f41c2c5204a109020 Reviewed-by: James Turner <james.turner@kdab.com> Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Revert "Don't use the pri depends line for link dependencies."Stephen Kelly2012-05-031-0/+4
| | | | | | | | | | | | | This reverts commit df43b9a06a73759ba74f23d9c3e91bd0347d1026. Using the same depends information as QMake provides adds a lot of convenience for users, and is mostly 'correct' from a CMake point of view anyway. Change-Id: I8f2a2f74a687c25a0dedcc491ef72ddb5b136090 Reviewed-by: Alexander Neundorf <neundorf@kde.org> Reviewed-by: Clinton Stimpson <clinton@elemtech.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Enable QML debugging of qtquick1 with CONFIG+=quick1Kai Koehne2012-05-022-1/+2
| | | | | | | | Make the option name align with the name of the module. Change-Id: I29a822b55b3cb52a51592aa2bd0746a53bfe44b9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Aurindam Jana <aurindam.jana@nokia.com>
* Warn if we use deprecated methods from Qt modulesThiago Macieira2012-04-251-0/+1
| | | | | | | | | | | This change will cause any use of methods and classes declared with Q_DECL_DEPRECATED to produce a warning in the compilation output. Those warnings need to be silenced before the Qt 5.0 release, preferably before the beta. Change-Id: I28ce133867cc5918e177c57f6e5f7ab9421989ad Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Fix creation of config files in debug mode.Stephen Kelly2012-04-241-2/+16
| | | | | | | f88212c22f7e4bec261130a6f82294adfc75abca was not complete. Change-Id: Ie5b1bb4832176ec8a72ace473f7dbc6c4de10ff2 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Revert "Add workaround for projects using 'QT += declarative'"Friedemann Kleint2012-04-231-27/+0
| | | | | | | | | | | | | The workaround should no longer be necessary. It causes compile errors for MinGW since the command lines are too long. This reverts commit 6225e3ba01ef918724a15dd1311ab5d8205be534. Change-Id: I0288f4621f072b91dc94f25092ef124fa4c1b09e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Matthew Vogt <matthew.vogt@nokia.com> Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
* Don't tell CMake we're making debug libraries if we're not.Stephen Kelly2012-04-231-2/+2
| | | | | | | | | | | | The config option debug_and_release is set on Windows and on mac (unless xcode is used independently of whether Qt is configured with -release or not.) We need to check CONFIG(release,debug|release) to see if -release was set. Change-Id: Ibf952958874f6b102981526b3397e848c207a3f2 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* Merge remote-tracking branch 'origin/api_changes'Lars Knoll2012-04-172-4/+2
|\ | | | | | | Change-Id: I964b0a6f5c38351fdfafb8a2a128a349ff8c89d1
| * Make plugin linking fail if some references aren't presentThiago Macieira2012-04-101-1/+1
| | | | | | | | | | | | | | | | | | | | It's better to fail at linking time than to try and figure out later why QPluginLoader refuses to load the plugin. Change-Id: I439bad9dcdbfff9f76efe40381fd7ccfffe738bc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Donald Carr <donald.carr@nokia.com> Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
| * Merge remote-tracking branch 'origin/master' into api_changesOswald Buddenhagen2012-04-105-9/+18
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure src/widgets/styles/qwindowsxpstyle.cpp tests/auto/gui/kernel/qwindow/qwindow.pro tests/auto/gui/kernel/qwindow/tst_qwindow.cpp Change-Id: I624b6d26abce9874c610c04954c1c45bc074bef3