aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/cpp/msvc.js
Commit message (Collapse)AuthorAgeFilesLines
* add missing loadFile call from msvc.jsJoerg Bornemann2014-04-231-0/+2
| | | | | Change-Id: I9eba26d3b66056b21ca78ccb6eb9406cc43a7288 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* use filePath instead of fileName where applicableJoerg Bornemann2014-02-251-17/+17
| | | | | | | | This fixes the recently introduced deprecation warnings. Task-number: QBS-258 Change-Id: I10660270895ec89a1444d596922c22e9658ca3ab Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Make it possible to link with unresolved symbols.Christian Kandeler2014-01-151-0/+2
| | | | | | | Task-number: QBS-476 Change-Id: I697cc562b4212a5aa89ba973081571f99c08ba37 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Merge remote-tracking branch 'origin/1.1'Joerg Bornemann2013-11-281-2/+3
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: qbs_version.pri src/app/detect-toolchains/msvcprobe.cpp src/app/detect-toolchains/probe.cpp src/lib/language/language.cpp version.js Change-Id: I21c1e9a8bf0175d392cd2ff9fa5254a073ed0af8
| * ensure the same working dir for all MSVC compiler callsJoerg Bornemann2013-11-271-1/+1
| | | | | | | | | | | | | | | | | | | | Per product, the working dir for MSVC compiler calls must remain the same, because the calls share the file vc110.pdb (the exact file name depends on the VS version). Task-number: QBS-398 Change-Id: Idb865eb11f648e8103d91ae8a9fd43ecb9dc8a46 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
| * fix stdoutFilterFunction for MSVC PCHsJoerg Bornemann2013-11-271-1/+2
| | | | | | | | | | | | | | | | | | For some weird reason the MSVC compiler outputs the header file to be precompiled twice. We filter now all occurrences of the input file name from stdout. Change-Id: I4d0e60af02cc00e836eea278dbfdaf11f48c3432 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* | Make MSVC manifest embedding preparation command silent.Christian Kandeler2013-11-201-0/+1
|/ | | | | | | It does not warrant an output. Change-Id: I9b01775c8a1a11cf81f0b857c8070d24b18ef5ed Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* introduce cpp.linkerName and cpp.linkerPathJoerg Bornemann2013-11-131-1/+1
| | | | | | | Like the compilerName/Path, the linker must be configurable. Change-Id: I50f9511dedbff29dbf55b41b96e213f238be187f Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Add support for C, Objective-C and Objective-C++ precompiled headers.Jake Petroules2013-09-191-33/+38
| | | | | | | Task-number: QBS-278 Change-Id: I2999a64168f70aff21007e55d52314433425e84e Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* introduce cpp.compilerWrapperJoerg Bornemann2013-07-021-1/+8
| | | | | | | Task-number: QBS-312 Change-Id: I516443a16d2d485f31bcfc1d646e9b38044a47b6 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* MSVC: respect cpp.compilerPath and cpp.compilerNameJoerg Bornemann2013-06-281-1/+1
| | | | | | Change-Id: Ia87a6c502e8ebd1a3493e8c4409b7e9d081d204a Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Implement support for prefix headers (Xcode) / forced includes (MSVC).Jake Petroules2013-06-241-0/+4
| | | | | | | Task-number: QBS-313 Change-Id: Idc66a671a9c634ef142887fb374d99da3ba96bb1 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Make use of contains() where appropriate.Jake Petroules2013-06-181-1/+1
| | | | | Change-Id: I93279572f422ea3b14d7c8467caae746f71e1fac Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* MSVC: do not invoke shell to copy filesJoerg Bornemann2013-06-041-2/+6
| | | | | | | | | | Otherwise we'd have to quote files with special characters that are interpreted by the shell. Task-number: QBS-298 Change-Id: If0e0bb0224ab696730842aabac4e36e335f14e3c Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* MSVC: pass cpp.linkerFlags to linker command lineJoerg Bornemann2013-06-031-0/+1
| | | | | | | Task-number: QBS-297 Change-Id: I6230992765cd8b6197cdd40257c5d182752f4d23 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* remove property cpp.responseFileThresholdJoerg Bornemann2013-05-221-2/+0
| | | | | | | | | | This is host-system dependent and does not belong here. We're relying on a sane default value. It can still be overridden if needed. Change-Id: If8137dd1f781a56053d2b9992ba80d561bd1e1ef Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* fix cpp.precompiledHeader property for non-C++ filesJoerg Bornemann2013-04-251-22/+21
| | | | | | | | | | For now, this property is ignored for other languages than C++. Task-number: QBS-187 Change-Id: I3c0af7e60939bd3b934b7464919c3da52733b5fb Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Fix handling of minimum Windows version and subsystem linker flags.Jake Petroules2013-04-121-4/+11
| | | | | | | | | | | | | | | | | | | | | | Both MSVC and MinGW now only pass their respective subsystem flags if product.consoleApplication is not undefined - the linkers use console by default. MSVC: as an exception to the above, a subsystem flag must be passed regardless of the value of product.consoleApplication if a minimum system version was specified - in this case subsystem will be set to console. MinGW now correctly handles setting the minimum subsystem/OS version; it was previously using totally nonexistent flags due to poor assumptions about its MSVC compatibility. The test case which tests this functionality was also broken, and is now fixed as well. Task-number: QBS-244 Change-Id: Ibca29ce673a81f1231d364d5b6e6875a462b379c Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add support for setting the minimum operating system target version.Jake Petroules2013-03-201-5/+25
| | | | | | | Task-number: QBS-226 Change-Id: I85c6e24ecfe6b90d33df17589f151e4082b53d58 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* fix linking of staticlibrary products with MSVCJoerg Bornemann2013-03-111-1/+1
| | | | | | | Task-number: QBS-193 Change-Id: Ifcae8e2d47dff88c30d7f214bf9aef16ee02b1f1 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Rename ModUtils::findFirst() and ModUtils::appendAll().Christian Kandeler2013-02-281-10/+10
| | | | | | | | | The new names are "moduleProperty" and "moduleProperties", respectively. These express much better what the functions do and also match their C++ counterparts. Change-Id: I7f97f4b861f3ae58813377da593bc3b82be78bd3 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove unused variables from msvc.jsJoerg Bornemann2013-02-211-6/+0
| | | | | Change-Id: Idc7cf03881f2c424a0c13dbadef6a5cdba068262 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* MSVC: fix manifest resource id for DLLsJoerg Bornemann2013-02-211-1/+1
| | | | | Change-Id: I18baddd6813376a655136ed82ba76fce05da1c41 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* MSVC: fix incremental linkingJoerg Bornemann2013-02-211-7/+15
| | | | | | | Task-number: QBS-214 Change-Id: I250b4169733a91df7dac3a8e8cfc95cf42793b3d Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Move property look-up into the C++ backend.Christian Kandeler2013-02-201-15/+17
| | | | | | | | | | | Instead of exporting the complete property VariantMap of products and artifacts to JavaScript and finding the property values there, we introduce functions that do this in C++ and just export their functionality. This functionality will also be made available in the API. Change-Id: I6b8631e78b74db563403caa47ae10021ca152fa0 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Respect "warnings as errors" setting with MSVC compiler.Christian Kandeler2012-12-051-0/+2
| | | | | Change-Id: Ie073900e9072f812f0e7c11ce28d71d6d432d4d9 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Move Qt-specific MSVC flags into qtcore.qbs.Christian Kandeler2012-12-051-1/+1
| | | | | Change-Id: I479b5eef8982bed86f27f1842893fae3a5507597 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add a systemIncludePaths property to the cpp module.William Gallafent2012-11-071-1/+3
| | | | | | | | | | The systemIncludePaths property is used (where compiler support exists) to indicate an include path which should be treated in the same way as system include paths (as opposed to user include paths) are, e.g. using the -isystem flag for GCC and Clang. Change-Id: I746d078119fddf5117bb53e7eaffca5e7b050dcf Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* filter MSVC linker outputJoerg Bornemann2012-11-061-0/+5
| | | | | | | | | link.exe prints "Creating library foo.dll" which disturbs the output of qbs. Unfortunately there's no linker switch to turn off this annoyance. Change-Id: Ic6e5c30f475c9d1e6afb8122130a62193ac645aa Reviewed-by: Orgad Shaneh <orgads@gmail.com>
* Add property "path" and use for Cpp.precompiledHeader.Christian Kandeler2012-10-231-1/+1
| | | | | | | | Also rename "paths" to "pathList". Task-number: QBS-144 Change-Id: Ib11788990a0da34a284684576343aa74d07a21aa Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* property Application.consoleApplication addedJoerg Bornemann2012-04-181-0/+7
| | | | | | | | | | | | | | | This is how you can create a console application: Application { name: "myConsoleApp" consoleApplication: true files: ... } Task-number: QBS-103 Change-Id: I0155b5632951d82c98157bc5e8d02ca01f983ae4 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* MSVC: fix dynamic libraries w/out .lib suffixJoerg Bornemann2012-03-221-1/+0
| | | | | Change-Id: I67b73d9b8d7499938b08c7a53c630c88276c7b53 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* MSVC: use build environment for finding executablesJoerg Bornemann2012-03-131-17/+3
| | | | | | | | We're already setting up PATH in the build environment. No need to specify the paths to compiler and linker here. Change-Id: I3d0d1b0fff8929f4ca1222f2ab28ff941dfff913 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* cpp module: separate platform defines and user definesJoerg Bornemann2012-03-071-1/+3
| | | | | | | | | | | | The cpp module got a new property platformDefines. That's e.g. used on Windows to define UNICODE. The standard way to set user defines is now cpp.defines: ['NARF', 'ZORT'] again. Change-Id: Ifc4d0a63095dea1b18ec94d63c92e1cf0869b3a3 Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
* properties for overring C/C++ compiler and linker argsJoerg Bornemann2012-02-281-4/+10
| | | | | | | | | In the cpp module we introduce the properties: cppflags, cflags, cxxflags and linkerFlags. The property compilerFlags was removed Change-Id: Ia883633936b9b638f397d121077714c3f811e6ec Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
* remove duplicate declarations from msvc.jsJoerg Bornemann2012-02-281-8/+10
| | | | | | Change-Id: I62ecfbf800e3c484ae72c98176e702bd3fd00873 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* fix adding compilerflags for MSVCMarcel Krems2012-02-241-1/+1
| | | | | Change-Id: I9edba60e5b78f827c766fad3cb221732d39d2911 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Long live qbs!Joerg Bornemann2012-02-151-0/+173
Change-Id: I412793e868919a9ac99611616f292e7047f1ebcf