summaryrefslogtreecommitdiffstats
path: root/qmake
Commit message (Collapse)AuthorAgeFilesLines
* MinGW: Statically link runtime libraries into qmakeKai Koehne2013-01-121-1/+1
| | | | | | | | | | Avoid runtime dependencies to e.g. libpwinthread-1.dll, libstc++-6.dll. This prevents Qt Creator from spitting out error dialogs on each startup for registered MinGW versions that aren't in the default PATH. Change-Id: Id55518db8c8e0521b6a41add1eaf38f75a892c8b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
* don't overquote deps on .pc and .la filesOswald Buddenhagen2013-01-081-6/+2
| | | | | | Change-Id: I00c268b1c0316b6deb0c4e1b2a0c7428e312c682 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* do not fixify + create QMAKE_{PKGCONFIG,LIBTOOL}_DESTDIROswald Buddenhagen2013-01-081-2/+2
| | | | | | | | | these variables are somewhat magic: they are relative to DESTDIR, and they also specify the installation location relative to target.path. the actual output directories are created by other code. Change-Id: Iead3006057516f5a49b6fd4bd8996a062c984fce Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake:Add a case sensitivity flag to ProString::{starts,ends}With()Debao Zhang2012-12-211-8/+8
| | | | | Change-Id: I457cd8288ae8a0138f7b28321fe87be3308b5215 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Fix handling of precompiled header files in XCode projectsAndy Shaw2012-12-191-4/+4
| | | | | | Task-number: QTBUG-24589 Change-Id: If81e15aa038f418abea25d96a7b7ec773a87d2db Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Respect the OBJECTS_DIR setting for XCode projectsAndy Shaw2012-12-191-2/+2
| | | | | | | | Task-number: QTBUG-28104 Change-Id: I0361cb979c40ce14ac163453d8229efc69527b6c Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* fix DLL manifest resource ids for debug buildsJoerg Bornemann2012-12-181-2/+3
| | | | | | | | | | The resource id must be 2 for DLLs. This was broken for the "debug with incremental linking" case. Task-number: QTBUG-28682 Task-number: QTBUG-28683 Change-Id: Id8c48a1dec30e341de949213c63c1c9b73956dac Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* do not add DEPENDPATH assignments to projectsOswald Buddenhagen2012-12-171-1/+0
| | | | | | | | qmake now add CONFIG+=depend_includepath by default, making manual DEPENDPATH setup unnecessary. Change-Id: I93988ec4fa08ed3c65dc217da1ba59850274e167 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove some unnecessary CONFIG additionsOswald Buddenhagen2012-12-171-2/+0
| | | | | | | | qt is already added by spec_pre.prf, warn_on and depend_includepath by default_pre.prf. Change-Id: Ic00e0ba496d698ed9659c476f2ca99fc0f86a093 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* accept hex/octal values for RC_LANG and RC_CODEPAGEJoerg Bornemann2012-12-171-1/+7
| | | | | | | Task-number: QTBUG-28624 Change-Id: I6188045b05ebb8b9d285d1b30f8082a2fe46ff8b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* add base parameter to ProString::toInt and ProString::toShortJoerg Bornemann2012-12-171-2/+2
| | | | | Change-Id: I0c8b48e6491486ca829ce24ca2e284294ba0138a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* fix duplicate TRANSLATION entry in generated RC fileJoerg Bornemann2012-12-171-4/+0
| | | | | | | Task-number: QTBUG-28625 Change-Id: I9bd6098c7557ca008211acef172f5c51a6766998 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: fix manifest embedding for DLLsJoerg Bornemann2012-12-111-1/+3
| | | | | | | | | | | | Manifests must be embedded into DLLs with the resource id 2, not 1. This fixes a regression introduced in commit c9406bcf. Task-number: QTBUG-28524 Change-Id: I93b1dfe4614d0535f47fd881b8688a23e83e845f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Ismo Haataja <ismo.haataja@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* support include paths for the Windows resource compilerJoerg Bornemann2012-12-103-5/+37
| | | | | | | | | | | In RC_INCLUDEPATH one can add include paths for the Windows resource compiler. Task-number: QTBUG-13776 Change-Id: If1d9ed44097adb7789df03e4ccd4e3b7df9e8d08 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: fix extra compilers in vcxprojs for single config modeJoerg Bornemann2012-12-101-0/+10
| | | | | | | | | | | | In single config mode extra compilers were not written to Visual Studio project files, because they were not added to the fake project object we're using to write a single config project. Task-number: QTBUG-27505 Change-Id: Ie57b648861573496252f1383dc77e0729e244947 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: add ProductVersion to automatically generated resourceJoerg Bornemann2012-12-061-0/+1
| | | | | | | | | | ProductVersion is set to the same value as FileVersion. Task-number: QTBUG-27428 Change-Id: Ia01e14112d3a0e74b9fbe5fc8d9c4f9ae690db34 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* MSVC: don't use the variable name LINK in generated makefilesJoerg Bornemann2012-12-064-7/+7
| | | | | | | | | | | Rename LINK to LINKER. The MSVC linker uses the environment variable LINK to pass additional command line arguments. We must not hide this variable. Task-number: QTBUG-28332 Change-Id: Id78476d1cf4a73175b9f47292c67f38a43ae5ba4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* centralize MAKEFILE writeout betterOswald Buddenhagen2012-12-051-9/+4
| | | | | | | | | nmake depends on a variable being assigned before it is referenced, so just write it out to every Makefile as the very first thing. this is nicer than the previous hack anyway. Change-Id: I50f409919352f560f7ef6c848a2f7c51d1878148 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* introduce QMAKE_RPATHLINKDIR (and QMAKE_LFLAGS_RPATHLINK)Oswald Buddenhagen2012-12-031-0/+7
| | | | | | | | | complementary to QMAKE_RPATHDIR. this avoids that we need to sprinkle linux/gcc specific code all over the place. Task-number: QTBUG-27427 Change-Id: Iebafd1749d1a0d803704902473df8c743f074ddc Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Stop using the name "Trolltech" in QSettingsSergio Ahumada2012-12-031-1/+1
| | | | | | | | | Also change Trolltech for QtProject in other places Task-number: QTBUG-23269 Change-Id: Ie4e344f23cab77c575562d18b481b3369ce30491 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Remove duplicate libraries added via prl files in WindowsMiikka Heikkinen2012-11-301-0/+17
| | | | | | | | | | | The LIBS statement generated into Makefiles contained duplicate libraries when application was linking static libraries. Fixed by adapting the logic from unixmake.cpp's version of processPrlFiles() to remove duplicates. Change-Id: I12e152900233d0376b7d7ac6cd18a92850a6d640 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* fix bootstrapped buildOswald Buddenhagen2012-11-291-2/+2
| | | | | | Change-Id: I8c987e8eed555c9c976732e216553d8002ee2b87 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> (cherry picked from qttools/d9dc9d34ec092ddc536a907b4f5009fb8bf01da4)
* fix non-qmake build of the evaluatorOswald Buddenhagen2012-11-281-1/+1
| | | | | | Change-Id: Ibbd00b415318bda928b5e6f9831b214e2657e291 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> (cherry picked from qttools/769fa282ac8a4b98698dada6969452363e0eb415)
* Add a -libexecdir option to the configuresThiago Macieira2012-11-281-0/+1
| | | | | | | | | | | | | | | | | | User applications are those that users run directly, whether it be for development or not. The executable binaries that the user does not usually run but is still required for proper functioning are called "program executables" in Autoconf and they are placed in libexec. This commit adds support for "program executables" in Qt by adding the -libexecdir option to the configures, the qmake variable QT_INSTALL_LIBEXECS (note the plural, to match all other properties), and QLibraryInfo::LibraryExecutables. At the time of this commit, the only expected "program executable" is the QtWebProcess, the WebKit2 helper process from QtWebKit. Change-Id: I66c3a3e0cf7f9d93b5f88f55f18e957faff608fc Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* assign MAKEFILE even in non-subdirs MakefilesOswald Buddenhagen2012-11-271-0/+5
| | | | | | | | | | | | this is necessary for having a clean way to recurse even from leaf makefiles. the location where the variable is written in the makefile is somewhat bizarre, but the code is so convoluted that finding a better place would mean either a lot of duplication or a lot of prior refactoring. Change-Id: I68e4cf7e3814f6c60b2e3421d69775c993dafb23 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: Change copyright information from Nokia to DigiaSergio Ahumada2012-11-263-3/+3
| | | | | | | Task-number: QTBUG-28156 Change-Id: If54615a465504b4124891fb393185eb324372874 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Robert Loehning <robert.loehning@digia.com>
* Ensure QMAKE_PRL_LIBS is a unique list.Friedemann Kleint2012-11-261-1/+5
| | | | | | | | | Windows static builds currently fail due to overlong command link lines containing multiple occurrences of base libraries. Task-number: QTBUG-28131 Change-Id: Ibf7f551fc98c879111b32b27a16f4e96260743c7 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: do not exclusively lock files for reading on Windows/MSVCJoerg Bornemann2012-11-231-1/+1
| | | | | | | | | | | | When sifting through a file to find Q_OBJECT and friends, qmake was locking it for reading and writing (_SH_DENYRW). This breaks parallel builds where multiple qmake instances might want to scan the same file. Changed the sharing constant to _SH_DENYNO, which doesn't lock the file at all. This is consistent with the _sopen_s call in findDeps. Change-Id: I9c0a06db7f580f411e79d9d96dd36a6d705679aa Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Add a new location for QML 2.x importsThiago Macieira2012-11-191-0/+1
| | | | | | | | | | | | | | | | | | | This commits adds a -qmldir configuration option for the configures to allow the user to change the default location (it defaults to $archdatadir/qml). It adds a QLibraryInfo::Qml2ImportsPath value for QLibraryInfo::location, a qmake property of QT_INSTALL_QML and a qt.conf configure location entry "Qml2Imports". At the same time, it makes the qmake .prf files dealing with QML plugins be the QML 2 version. Those files are new in Qt 5, so we have the option to choose which version we want to use. Discussed-on: http://lists.qt-project.org/pipermail/development/2012-October/007136.html Change-Id: I8c1c53e8685a5934ed0a9a42ba5663297b81a677 Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* MinGW: Don't add version number '0' to the library nameKai Koehne2012-11-191-1/+1
| | | | | | | | | | This fixes linking on MinGW after the library renaming, and is also in line with the logic in the nmake generator. Change-Id: Ie25ce6c1d2b8f292c4e454db1cad9bcbbee7a05d Suggested-by: Erik van Pienbroek Task-number: QTBUG-27137 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* complain about empty $$TARGETOswald Buddenhagen2012-11-131-0/+3
| | | | | | | this should be fatal, but so should be a lot of other conditions. Change-Id: I0c2c0bb9590ea1e4d0eae76e29eda34915914217 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add -archdatadir and change some of the default install dirs in Qt 5.Thiago Macieira2012-11-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Architecture-depedent Qt data defaults now to something under -archdatadir. Architecture-dependent data is everything that contains machine code (e.g., plugins) as well as anything that hardcodes build-specific data, like qconfig.pri and qmodule.pri. That is: QML imports: $archdatadir/imports (includes plugins) Qt plugins: $archdatadir/plugins (machine code) Mkspecs: $archdatadir/mkspecs (build-specific) Architecture-independent Qt data defaults now to something under -datadir. This option existed in Qt 4, but did not differentiate between arch-dependent and independent. Following Autoconf's lead, --datadir is the *independent* data root. translations: $datadir/translations (.qm files are arch-independent) docs: $datadir/doc By default, both new options are equal to the Qt install prefix. (Strictly speaking, for complete Autoconf compatibility, we'd need a --datarootdir=$prefix/share, --datadir=$datarootdir/qt5 and --docdir=$datarootdir/doc/qt5, but that's just nitpicking and unnecessary) Change-Id: I39c886a6a2d2d2c0b11923c50974179e21f2af76 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Make it possible to suppress the automatic version number in DLLsThiago Macieira2012-11-061-1/+2
| | | | | | | | | | | | qmake automatically appends the library's major version number to the DLL file name on Windows, as DLL naming doesn't include the version number on a suffix like on Unix systems. This flag makes it so qmake skips adding. This will allow us to insert Qt's major version number at a different position. Change-Id: I25d471038841fb0c5a34ef6b3bd6266aa33cebd1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* do not add DEPENDPATH to VPATHOswald Buddenhagen2012-11-021-1/+1
| | | | | | | | | | | | | | DEPENDPATH merely says where to look for impliciit dependencies, not where to find explicit ones. fwiw, the other way round may be considered correct, but DEPENDPATH exists for the sole purpose of limiting which paths should cause recompilations, so it would be counterproductive to extend with with VPATH. Task-number: QTBUG-11912 Change-Id: I86450b5fd5aeb1f1b015b53f0adcd167ff4ce04d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* rewrite default spec handlingOswald Buddenhagen2012-11-012-3/+13
| | | | | | | | | | instead of symlinking (on unix) or creating a forwarding spec (on windows), just put the default specs into (the bootstrapped) QLibraryInfo. Change-Id: I595500ef7399f77cb8ec117c4303bc0a2ffe505f Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix qmake's pro file cache to interact correctly with write_fileSimon Hausmann2012-10-253-0/+9
| | | | | | | | | When writing a file with write_file() we have to inform the pro file parser cache to discard the file if it's existant in the cache, to ensure that calling include() after write_file() always works. Change-Id: I7d09269a57de55ca30b0e11dd40770de9f919f64 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake ExtraCompilerTargets: deal with file name which contains spaceDebao Zhang2012-10-191-1/+1
| | | | | | Task-number: QTBUG-27629 Change-Id: I6d6c3345cc1bb0a866524df3a1534ed50fc00f3e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Remove addition of dependencies for static libraries.Stephen Kelly2012-10-161-7/+0
| | | | | | | | | | | | | | | | | | | | | The content in the prl file is not compatible with what CMake expects in the value of the IMPORTED_LINK_INTERFACE_LIBRARIES property. That property expects a list of IMPORTED targets or full paths to libraries. The prl file gives us a whitespace separated string of content suitable for passing to ld, that is, it contains -L and -l content. As this would take a lot of error prone parsing in cmake code in order to resolve the content to a list of full paths to libraries (which can be processed by any cmake generator), it's better to remove the code until qmake is able to generate a list of full paths. Change-Id: I72fe8e862b7f3bd25a7f9a03db94d2e9b815d08a Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Clinton Stimpson <clinton@elemtech.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* qmake: fix reversed defines in vcxproj filesJoerg Bornemann2012-10-131-1/+1
| | | | | Change-Id: I9fbb4b563428bb23974d59050f4c71e8d1983ff3 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: fix .pc install target dir separators on windowsJ-P Nurmi2012-10-101-1/+1
| | | | | | | Task-number: QTBUG-26455 Change-Id: I578345b1676d0d2e812e0ab2e48468b4a8013ee9 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Generate ';' separated libraries in prl files for CMake.Stephen Kelly2012-10-091-0/+7
| | | | | | | | | | | | | | | | | | The generated CMake files need to pass ';' separated libraries to the IMPORTED_LINK_INTERFACE_LIBRARIES property, otherwise we get errors such as this: http://testresults.qt-project.org/ci/QtTools_master_Integration/build_00386/win32-msvc2010_Windows_7/log.txt.gz (grep for QtCore5.lib.lib) Rather than a naive and error prone replacement of whitespace, generate the appropriate ';' separated content directly in the qmake prl file. Change-Id: I8eb5e233a0318b57ec74b86d910583ff99c29415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com> Reviewed-by: Brad King <brad.king@kitware.com> Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
* Tools: add QLibraryInfo to the bootstrapped library.Pierre Rossi2012-10-081-1/+1
| | | | | | | For future use by qdoc. Change-Id: Id9079a6fa581ff16810df9a8f2bb94314ee11ca9 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
* Make sure the path is quoted in case it has spaces in itAndy Shaw2012-09-281-3/+5
| | | | | | | | | | This fixes a problem when the preprocessing scripts were called from a path with spaces in it. Task-number: QTBUG-15317 Change-Id: I92ea85e12e2f9abfc262a8dcaa4f414e471e468c Reviewed-by: João Abecasis <joao@abecasis.name> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fail when Windows CE SDK not foundAndreas Holzammer2012-09-271-0/+11
| | | | | | | | Add failing when crosscompile for Windows CE and no matching SDK is found. Change-Id: I359e792fe46bab46729788666679a16cb94f340e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Fix XCode generator for qmake in Qt 5 after recent changesAndy Shaw2012-09-272-30/+31
| | | | | | | | Due to all the changes recently it broke in some places, this now gets it working again. Change-Id: I879ca5684435289a61d8db248f2c3f64f6866a60 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Bring subproject dependencies in line with Makefile generatorsAndy Shaw2012-09-272-171/+204
| | | | | | | | | | When generating the solution file it should extract the dependencies from the pro file as this will bring it in line with the Makefile generators. Task-number: QTBUG-22561 Change-Id: I8d5b6607712f2c77c87ef093480e64b9633817d8 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: fix overescaped defines in vcxproj filesJoerg Bornemann2012-09-261-3/+19
| | | | | | | | Task-number: QTBUG-27345 Change-Id: I00848d611163afb549191f41adff628622a899e0 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: Fix gcc warning about anonymous type linkageKai Koehne2012-09-261-1/+1
| | | | | | | | Fix "warning: anonymous type with no linkage used to declare variable '<anonymous struct> dotNetCombo []' with linkage". Change-Id: Iaff0d460df53fd6d0732d39bf633688805f5c653 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: support for Visual Studio 2012 project files addedJoerg Bornemann2012-09-254-1/+34
| | | | | | | | | | The differences to VS 2010 project files are the version number (surprise!) and the PlatformToolSet tag which sets the version of the toolchain. Change-Id: If26f08fad1a69d7e6cd28cc5e860ff964f19b264 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-2257-1366/+1366
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>