summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32/winmakefile.cpp
Commit message (Collapse)AuthorAgeFilesLines
* make sure that installed meta files are always postprocessedOswald Buddenhagen2013-10-111-0/+2
| | | | | | | | | | the problem is that there is no sed command on windows ... so build it into qmake and invoke that from the generated makefiles. cmake does the same, after all. ^^ Task-number: QTBUG-33794 Change-Id: Ib7077e18acbc5edd79f714c5779a5ed31ea6c093 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake: Centralize TARGET sanitization in default_post.prfTor Arne Vestbø2013-10-111-14/+0
| | | | | | | | | | | | | | | Shared between UNIX and Win generators, and allows prfs after default_post to rely on sane TARGET and DESTDIR values. This allows us to clean up the DESTDIR logic in testcase.prf, which was completely busted. Doing the two in separate commits is unfortunately not possible as the old testcase.prf logic was so broken it would barf if only looked at. Change-Id: Ibf21216195c760ee46ae679c162b207b77a9d813 Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* escape paths coming from prl filesOswald Buddenhagen2013-07-221-2/+8
| | | | | | | | | | | qmake has the rather bizarre logic that QMAKE_LIBS* is escaped rather early (instead of right before being written out the the Makefile). consequently, we need to explicitly escape the paths from the prl files as well. Task-number: QTBUG-32326 Change-Id: Ieaf81113d3ca3cf5d8a1ef87c83c5721d6b473ee Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* fix c-quoting of strings which contain quotesOswald Buddenhagen2013-07-221-1/+1
| | | | | | | | escape backslashes before the quotes, as otherwise we'd escape the backslashes we just used to escape the quotes. Change-Id: I88e12c0c2cfc53e0ab8dce9807b06dfce6aa6e78 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* merge string literalsOswald Buddenhagen2013-07-041-49/+49
| | | | | | | | makes for less visual noise and a tiny bit more efficient code. Change-Id: I587707fa4e2dc9bead9435bf5caf3a98ab680725 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* qmake/Win: disable "find highest lib version" feature by defaultJoerg Bornemann2013-03-261-1/+1
| | | | | | | | | | | | | The undocumented feature of linking the library with the highest version number is more confusing than helpful. We're changing the default from on to off now. Users who still need this feature can turn it on with: CONFIG += link_highest_lib_version Task-number: QTBUG-15596 Change-Id: Ic998c1685003caa6f57e27dccf83c8b4a2a09553 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: fix library path on windows.David Schulz2013-03-131-1/+1
| | | | | | | | Convert '/' to '\' in library pathes. Change-Id: I0cf8a522a901199fddd59c863c932f214e1ab968 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* adjust paths in installed prl files for mingwMark Brand2013-01-301-1/+1
| | | | | | | | | Curiously, qmake could fix .prl and .pc files for unix, but only .pc files for MinGW. qt_module.prf seems to have known this. Task-number: QTBUG-28902 Change-Id: Ice9983a69813690c0d4b96ca11589440182569a0 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* consolidate generation of metafile install targetsMark Brand2013-01-251-16/+1
| | | | | | | | | Metafiles such as .prl and .pc files contain paths that have to be adjusted during installation. The same code is used for unix and windows so move it into the base class. Change-Id: I82db89ec83820a4fa0214ba15e7cd63438f6dc91 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* qmake: Don't let an empty $$VERSION cause a garbled version in .rc filesDebao Zhang2013-01-251-1/+1
| | | | | Change-Id: I7f0560979e645da216674cc70c73c5ea9c053aa6 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* qmake: Add application icon support for windowsDebao Zhang2013-01-101-1/+20
| | | | | | | | | | | A new qmake's variable RC_ICONS is introduced to specify the icons. The first one will be used as the application's icon. Change-Id: I4218db795837d470087dff8526eb0e4cb81ce5ed Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@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>
* support include paths for the Windows resource compilerJoerg Bornemann2012-12-101-1/+13
| | | | | | | | | | | 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: 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-061-1/+1
| | | | | | | | | | | 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>
* 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>
* 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>
* 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>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | 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>
* Use QStringList::join(QChar) overload where applicable [qmake]Marc Mutz2012-09-211-6/+6
| | | | | | | | | | This is an automated change performing the following replacements: join\("(.)"\) -> join('\1') join\(QLatin1String\("(.)"\)\) -> join(QLatin1Char('\1')) join\(QStringLiteral\("(.)"\)\) -> join(QLatin1Char('\1')) Change-Id: I9c9964703dedfdab6e7bfac80be22bd5570e2e49 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* introduce qmake variable abstractionsOswald Buddenhagen2012-09-071-73/+71
| | | | | | | | this is preparation for adapting to a new evaluator. Change-Id: I6fc59f5525735754a00afa6629fbfe257e84db97 Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make QMakeMetaInfo a little less inefficient with libtool .la filesOswald Buddenhagen2012-09-051-1/+1
| | | | | | | | | don't read the spec from scratch for every library just to get QMAKE_LFLAGS_RPATH. we can perfectly use our current project for that purpose. Change-Id: I4e408b3fd5de81652181df032aa53cd8f2f8f806 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove handling of QMAKE_FILETAGSOswald Buddenhagen2012-09-031-18/+0
| | | | | | | | it was unused for a decade. and broken, of course. Change-Id: I9713d595d95c5b074ef96dfe9b1c314b9198bd7e Reviewed-by: Daniel Teske <daniel.teske@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* micro-optimize: use POD-initializable lists of variable namesOswald Buddenhagen2012-08-281-4/+4
| | | | | Change-Id: I3732fef509b358949ef90002dbfc1960360afef8 Reviewed-by: Daniel Teske <daniel.teske@nokia.com>
* run processPrlFiles() over QMAKE_LIBS_PRIVATE as wellOswald Buddenhagen2012-07-311-1/+1
| | | | | | | | | | | | there is no reason why private libs should not have prls resolved. the two variables are resolved independently, so it's possible that (even more) libraries will appear duplicated on the linker command line, but that seems easiest for the time being. Change-Id: I9070ba53808a0661fa72949db8111106b7aca487 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* make the windows prl processing more like the unix variantOswald Buddenhagen2012-07-311-21/+12
| | | | | | | | it's more elegant, and more similar code is better. Change-Id: I2b8b036cb70a932fd171e23cf7d3389188401924 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove apparently useless codeOswald Buddenhagen2012-07-311-6/+1
| | | | | | | | | it wouldn't actually *do* anything, as l is not a reference. i cannot figure out the original intention, so let's just drop it. Change-Id: Ic0a3457a1872cde827259ee5530959120456e934 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* merge QMAKE_LIBDIR into QMAKE_LIBS earlyOswald Buddenhagen2012-07-271-34/+17
| | | | | | | | | | | | dealing with the directories separately doesn't buy us anything. it's easier to mix them into the libs, as that contains some paths, too, both in projects and in prl files. this brings the windows generators in line with the unix ones. Change-Id: I1f58f7edd8e21d28bfabf04384bac2e315aaf446 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* unifiy initialization of QMAKE_LIBS{,_PRIVATE} among windows generatorsOswald Buddenhagen2012-07-271-0/+3
| | | | | | Change-Id: Ib24ec6e290bfb277232c2483768c1b863f961462 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* $$QMAKE_LIBDIR contents belong into $(LIBS), not $(LFLAGS)Oswald Buddenhagen2012-07-241-3/+3
| | | | | | | | unlike for the unix linker, this does not matter for the windows linker, but keeping it consistent has advantages. Change-Id: Ib9b9efa18c31d87c026d3cac5a8737f4612ad1c0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* dispose of MSVCPROJ_LIBSOswald Buddenhagen2012-07-241-6/+6
| | | | | | | | | | | | | | | this way QMAKE_LIBS{,_PRIVATE} can be treated the same as in all other generators, which allows us to: - make the windows generators' findLibraries() be more like the unix version - dispose of QMAKE_INTERNAL_PRL_LIBS handling while reading prl files (because the output always goes to QMAKE_LIBS) - as a side effect, QMAKE_LIBS_PRIVATE are not subjected to prl file resolution any more, which is again consistent with unix - the correctness of that needs to be assessed separately. Change-Id: Ie9bc04d117eff6a7cde846677f98acf3c64aa6ee Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* remove QTDLL_POSTFIX stuffOswald Buddenhagen2012-07-181-3/+2
| | | | | | | | | the libinfix provides a way cleaner solution to that. i don't expect it to be still actually used anyway. Change-Id: I051522ec3abb3d92c529b5462b8514a706aa2ba1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
* automatically fix separators in QMAKE_{DIST,}CLEANOswald Buddenhagen2012-07-161-2/+3
| | | | | | | it's a tad insane to expect the user to do that Change-Id: I75c68f2a28656c9ba2e3fabcc79718b899b29ce7 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* const correctness for values() callsOswald Buddenhagen2012-06-271-6/+6
| | | | | Change-Id: I1476ae8d3fb7364686398c5650729dee94a8e933 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* qmake/Win: fix incomplete generated version resourceJoerg Bornemann2012-04-171-1/+11
| | | | | | | | | | | | | | Since Windows Vista the resource language must be included to make the version information visible in Windows Explorer. Two new variables have been introduced: RC_LANG (default: 1033) - resource language RC_CODEPAGE (default: 1200) - resource codepage Task-number: QTBUG-23218 Change-Id: I29e102d19501e3b7a43d5096fc4806bc38a4d846 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Implement missing replacements when installing .pc files for win32Hib Eris2012-02-291-1/+17
| | | | | | | | | | | | | | | | | | This implements replacements for win32 makefile generators similar to the replacement functionality in unix makefile generators. To enable Makefile code generation for replacements in win32 makefile generators, you must set QMAKE_STREAM_EDITOR to e.g. sed. When building for win32, sed is normally only available in the mingw/msys build environment and when cross compiling on unix. In these cases QMAKE_STREAM_EDITOR is set to sed in qmake.conf. For other win32 build environments QMAKE_STREAM_EDITOR is not set in qmake.conf and the replacements Makefile code is not generated. Change-Id: Ie5de5d517eafaeaa2544f1e972aec3fe11d0a6f1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Create target pkgconfig dir in qmake generated Windows MakefilesHib Eris2012-02-241-0/+6
| | | | | Change-Id: Icea70987ee3c6040ca3ba278a578849cb74156f4 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-231-1/+1
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-051-1/+1
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* qmake: remove symbian supportJoerg Bornemann2011-11-071-2/+1
| | | | | Change-Id: I1db834500921681676a6f46e7750bdd81bf0093d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Update licenseheader text in source files for qtbase Qt moduleJyri Tahtela2011-05-241-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+895
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12