summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32
Commit message (Collapse)AuthorAgeFilesLines
...
* qmake: un-copy-and-pastify vcxproj generator a bitJoerg Bornemann2012-08-072-60/+70
| | | | | | | Reusing already built strings improves readability and performance. Change-Id: I8555fb860561ff214ae123efeda78fc770b6459f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Add the filters for extra compilers for vcxproj filesAndy Shaw2012-08-071-0/+8
| | | | | | | | | | | The files were grouped into the relevant filters but the filters themselves were not added. This now ensures the filters are added to the vcxproj files so they appear grouped correctly. Task-number: QTBUG-26755 Change-Id: I7d2c6fa96dcbb0496fd9d1bb1d01e7dd660052f4 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Remove references to Borland and bmakeAndy Shaw2012-08-015-255/+4
| | | | | | | | | Remove references to an old compiler that has not been supported for a long time. Also remove Borland specific configuration flags which have no meaning elsewhere. Change-Id: I3634a52b78f737ea972073e14c2b6669dcd0ae63 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@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-277-74/+25
| | | | | | | | | | | | 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-274-9/+3
| | | | | | Change-Id: Ib24ec6e290bfb277232c2483768c1b863f961462 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* clean up fixTargetExt()Oswald Buddenhagen2012-07-273-10/+4
| | | | | | | | | there doesn't appear to be a point in having the function virtual; the part in the mingw generator can be inlined somewhere else just fine. Change-Id: I50d66d505095b43fce601928c6240a684389a4b7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* de-virtualize some more functionsOswald Buddenhagen2012-07-271-3/+3
| | | | | | | | they are not re-implemented anywhere Change-Id: I444a967bb39ec6b5994747c9fa3f605b4c53ce4f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove support for rvct_linker config from MinGW generator againOswald Buddenhagen2012-07-241-11/+3
| | | | | | | | | yet another symbian remnant (building windows arm executables for the simulator). This reverts commit 5c88141ed0b25d8ab9318bf4cb5dda54b90b2ce1. Change-Id: I6eb147c0e2710eba09a4339fa4a08a5b08f8dab3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@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-246-31/+13
| | | | | | | | | | | | | | | 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 apparently pointless call to findLibraries()Oswald Buddenhagen2012-07-241-1/+0
| | | | | | | | | | | the function was already called long before. if it really needs to be called again, it's a) probably affecting the other windows generators as well and b) the actual problem should be fixed instead. This reverts commit d50c3c6624b2343e42d0df4b72212d9ced8f3682. Change-Id: Iaa2007640fbc9acdc50ba3b0681efeb0d184f224 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
* use QT_INSTALL_LIBS directly instead of messing with QMAKE_LIBDIROswald Buddenhagen2012-07-181-1/+4
| | | | | | | this is what this code assumes anyway Change-Id: I667412b101c18325321a568cc22d25ef07418ffb Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* remove QTDLL_POSTFIX stuffOswald Buddenhagen2012-07-182-11/+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>
* fixed ce makefileenvironmentBjoern Breitmeyer2012-07-061-3/+1
| | | | | | | | XQMakeSpec is not available after configure but the QMakeSpec contains the correct value Change-Id: I6cd4da8b0d6c95565f31842c17611ffd361bc010 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* don't use a different de-duplication algo for the library list in mingw prl ↵Oswald Buddenhagen2012-07-052-17/+0
| | | | | | | | | | | | | | files i have no idea why that was done (the commit message says "not sure why it works elsewhere"), but it makes no sense whatsoever, specifically doing it only on mingw. probably some workaround, as usual. the de-duplication is broken by design anyway. This reverts commit 7a6302c2baf6861fdaf65992b71a7676859860c2. Change-Id: I6edecaa062570e59eccd24d50919ba132e65a403 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
* qmake: remove support for X.sources in DEPLOYMENT variablesJoerg Bornemann2012-07-031-3/+2
| | | | | | | | | | This has been deprecated in Qt 4.8.0. Use X.files instead. Task-number: QTBUG-3216 Task-number: QTBUG-25106 Change-Id: I581321591291118a13403e92da5997497e12c3fd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* dispose of Option::shellPathOswald Buddenhagen2012-06-271-1/+1
| | | | | | | use isWindowsShell() in the one remaining case. Change-Id: I25eab398ef50df5a7f4ec808279b83ca900e3c58 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* assume windows shell iff dir separator is backslashOswald Buddenhagen2012-06-272-10/+0
| | | | | Change-Id: I411a4d6691e18b818ee7d1ced7f126f97af0902f Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* purge "dumping all variables" debug loopsOswald Buddenhagen2012-06-271-10/+0
| | | | | | | | | the as-we-go dump is sufficient (and usually necessary to actually find the problem). if only the summary is interesting, the -E option can be used now. Change-Id: I9e34c6db9dcb99b38013c4d0cb80b8cb88ca36b5 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* const correctness for variables()Oswald Buddenhagen2012-06-271-2/+2
| | | | | Change-Id: Id11453ccbae3ffa32580badadada945d342d727a Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* don't overuse variables()Oswald Buddenhagen2012-06-272-21/+21
| | | | | Change-Id: Ib2da88e5e29c0bfecc39a9c06e82a34a4bd0b1e6 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* const correctness for values() callsOswald Buddenhagen2012-06-276-20/+20
| | | | | Change-Id: I1476ae8d3fb7364686398c5650729dee94a8e933 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
* Fixed Wince Makefile environmentBjoern Breitmeyer2012-06-193-0/+246
| | | | | | | | | Integrated the checksdk tool into qmake and made the makefiles selfcontained, so configure make, is now enough to build qt for wince Change-Id: I29076702eca2ec23d4d06bb3d5c5cef9d4f95161 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* purge unused VcprojGenerator::findTemplate()Oswald Buddenhagen2012-06-192-17/+0
| | | | | | it looked fishy for years. now i know why. ;) Change-Id: I822cadecaf8d914f383f9f907b92507852e434b4
* introduce ability to build projects for the host systemOswald Buddenhagen2012-06-191-10/+14
| | | | | | | | | | | | | | | | | when qmake runs into the new option(host_build) command, it will restart the project evaluation with a host spec. the new default host spec is called default-host (gasp!). it is overridden with the pre-exising -spec / -platform option, while the new -xspec / -xplatform option overrides the pre-existing default spec. specifying -spec but not -xspec will set the xspec, too, so the behavior is backwards-compatible. same for the XQMAKESPEC override read from .qmake.cache and the environment variable. the cleaner solution would be adding -hostspec, to be symmetrical with the override semantics, but that would deviate from configure in turn. Change-Id: I4297c873780af16ab7928421b434ce0f1d3820da Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* qmake vc(x)proj generator: don't create bogus directoriesJoerg Bornemann2012-04-171-0/+3
| | | | | | | | | When creating the temporary project object, Option::output_dir must be adjusted temporarily. Task-number: QTBUG-22788 Change-Id: Ibf8897a46b63f48b9e33d7e2168b09e559cecec7 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* 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>
* qmake vcxproj generator: fix handling of /MANIFEST:NO linker optionJoerg Bornemann2012-04-171-0/+7
| | | | | | | | Task-number: QTBUG-23513 Change-Id: I5dd6fb6fd7910e43acd28057133a3ad6613cfc1a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* qmake vcproj generator: unused variable removedJoerg Bornemann2012-04-171-1/+0
| | | | | Change-Id: Iaf8bb1772846001297e1a421c3860f5e4d090a35 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* qmake vc(x)project generator: fix VC++ Express detectionJoerg Bornemann2012-04-121-1/+3
| | | | | | | | | | | | If VC++ 2010 Express and VC# 2010 Express are installed, then the installation path is written in two places into the registry. We're now filtering detected installations with the same installation path. Task-number: QTBUG-24956 Change-Id: I401430e7aa81d96c523d8172d2a2e9d40ebdb3ce Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Fix build all failed for 'TEMPLATE = aux'Yuchen Deng2012-04-023-0/+3
| | | | | | | | NMAKE : fatal error U1073: don't know how to make 'all' Stop. Change-Id: I387a417d37e38811706a1ff460df8ee581c6a33f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* remove support for QMAKE_PLATFORM_DIROswald Buddenhagen2012-03-081-1/+0
| | | | | | | | | | this was a somewhat magic support for sysroots, automatically rewriting a number of path-holding variables. this was (as usual) completely undocumented, extremely fragile, and we are coming up with something better now anyway. Change-Id: I045910f532cb3efc839ea81c7a48f8db695e4092 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* escape *_script_file usages in MingwMakefileGenerator::writeObjectsPartMax Desyatov2012-03-061-4/+4
| | | | | | Task-number: QTBUG-24595 Change-Id: I1e78a6015247b9e41ae2b05b50fdedf0613f00f1 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Merge remote-tracking branch 'origin/api_changes'Lars Knoll2012-03-043-7/+7
|\ | | | | | | | | | | | | | | | | | | Conflicts: dist/changes-5.0.0 mkspecs/features/qt_module_config.prf qmake/project.cpp qmake/property.cpp Change-Id: I6e4af40743a9aeff8ed18533a48036e332acc296
| * revamp -sysroot and -hostprefix handlingOswald Buddenhagen2012-03-011-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of being a variable added to the makespec (via qconfig.pri), QT_SYSROOT is now a property. the QT_INSTALL_... properties are now automatically prefixed with the sysroot; the raw values are available as QT_RAW_INSTALL_... - this is expected to cause the least migration effort for existing projects. -hostprefix and the new -hostbindir & -hostdatadir now feed the new QT_HOST_... properties. adapted the qmake feature files and the qtbase build system accordingly. Change-Id: Iaa9b65bc10d9fe9c4988d620c70a8ce72177f8d4 Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
| * Merge master -> api_changesRohan McGovern2012-02-291-0/+6
| |\ | | | | | | | | | | | | | | | Includes fixes for tst_qfiledialog2, tst_qtextedit autotests on mac. Change-Id: I49cac26894d31291a8339ccc1eb80b6a940f0827
| * | QByteArray: deprecate QT_NO_CAST_FROM_BYTEARRAY-protected operatorsMarc Mutz2012-02-262-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QByteArray::operator const {char,void}*() implicit conversions are a source of subtle bugs, so they right- fully can be disabled with QT_NO_CAST_FROM_BYTEARRAY. const char *d = qstring.toLatin1(); // implicit conversion while ( d ) // oops: d points to freed memory // ... But almost no-one ever enabled this macros in the wild and many were bitten by these implicit conversions, so this patch deprecates them. I would have liked to remove them completely, but there are just too many occurrences even in Qt itself to hope to find all conditionally-compiled code that uses these. Also fixes all code that needs to compile under QT_NO_DEPRECATED (in qmake/, src/tools/). I984706452db7d0841620a0f64e179906123f3849 separately deals with the bulk of changes in src/ and examples/. Depends on I5ea1ad3c96d9e64167be53c0c418c7b7dba51f68. Change-Id: I8d47e6c293c80f61c6288c9f8d42fda41afe2267 Reviewed-by: David Faure <faure@kde.org> Reviewed-by: Lars Knoll <lars.knoll@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>
* Escape Dependencies of precompiled header right.Andreas Holzammer2012-02-101-1/+1
| | | | | Change-Id: I847c85250b78a934bd29e09250d209d9ef412f7f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* qmake: Work around MSVC compiler bug.Friedemann Kleint2012-02-051-0/+14
| | | | | | | | Disable optimization for getProjectUUID() as it triggers ASSERT: "&other != this" at qstring.h:720 with -O2. Change-Id: I51b31d4318ba9be187c186623099171d8f48235b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-3016-16/+16
| | | | | | | | | | 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-2316-16/+16
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* QMap => QHashOswald Buddenhagen2012-01-103-6/+7
| | | | | | | | | | | | this should make the evaluator quite a lot faster. the total win for qtbase/src is only 6%, though. i made some effort to avoid that output files get randomized. however, i didn't bother to keep debug output sorted. Change-Id: Id9cef4674c0153c11ebbb65cb63bf8c229eb56e3 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* qmake: fix default value for C++ optimization in vcxproj filesJoerg Bornemann2012-01-082-2/+8
| | | | | | | | | For the debug configuration the optimization should be turned off. Task-number: QTBUG-23421 Change-Id: Ib63e0c51f9ab31180ff8ee01a1f6c57ab77e390e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* qmake: fix /MP option for VS 2010Joerg Bornemann2012-01-081-3/+3
| | | | | | | | | Setting QMAKE_CFLAGS+=/MP in a project file did not work for VS 2010. Task-number: QTBUG-23490 Change-Id: I39c349bf8dc2a4add2f32a430a245a20cc54147e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>