aboutsummaryrefslogtreecommitdiffstats
path: root/share/qbs/modules/qbs/common.qbs
Commit message (Collapse)AuthorAgeFilesLines
* Allow qbs.endianness to be undefined.Jake Petroules2014-07-221-0/+2
| | | | | | | If the property IS defined, it still must be in [big, little, mixed]. Change-Id: I77d64580d1dcce8ad027500ee8e394bf05d3d961 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Add a PropertyValidator class to centralize Module.validate operations.Jake Petroules2014-04-241-27/+32
| | | | | | | | | Utilize the new class where warranted. This provides consistent error messages for users and makes module validation significantly simpler for developers. Change-Id: I3233392a80882ba08cc073ec613534b929abb1e9 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Define hostOSBuildVersion on Windows as well.Jake Petroules2014-03-031-4/+6
| | | | | | | This mirrors CoreFoundation's behavior (and makes sense given the name). Change-Id: I4519978cff507f585378469cf535c2b815172fd4 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Check ServerVersion first when retrieving Darwin product version.Jake Petroules2014-03-031-4/+4
| | | | | | | This is the order the operating system checks in. Change-Id: I5577c09867eb8c034bf1d47daba9d69b907ba62d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Use getNativeSetting instead of sw_vers for increased performance.Jake Petroules2014-02-271-0/+13
| | | | | Change-Id: I9dd122b592870eecd8bb011c52fc88e6374a4fce Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Update references to the toolchain setup tool.Christian Kandeler2014-02-131-1/+1
| | | | | | | s/detect/setup Change-Id: If9d84c94c89c887fb833540a0e2c9d0da4919ba9 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* fix hostOSVersion for other platforms than Windows or OS XJoerg Bornemann2013-11-041-8/+10
| | | | | Change-Id: I84ee85506d24ebeb9e801f684495f9200cb759f6 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Centralize architecture canonicalization data.Jake Petroules2013-11-041-11/+4
| | | | | | Task-number: QBS-403 Change-Id: I814cdc93adafdcdbc66ec6b72fc9e98c6a7b866d Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Add a hostOSVersion property, defined for Windows and OS X.Jake Petroules2013-11-041-0/+26
| | | | | | Change-Id: I04da329f17c54f010fd467841f305d6ab7e922f0 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* yield error on missing qbs.architecture propertyJoerg Bornemann2013-10-311-3/+2
| | | | | | | By now, everybody should've update their profiles. Change-Id: I1e56d2e1c0685e0d867418aac2e1e146cd810451 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* create a profile per MSVC installation and per architectureJoerg Bornemann2013-10-161-2/+5
| | | | | | | | | | detect-toolchains will now create one profile per supported architecture per found MSVC installation. Task-number: QBS-404 Change-Id: I6ca569c312c31c39c49cfbfe5ffa638698fb90b2 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* temporarily weaken the architecture check in common.qbsJoerg Bornemann2013-10-151-0/+3
| | | | | | | | ATM, no MSVC profile has qbs.architecture set. That's why the test machines run amok now. Change-Id: I1d0fa049d500d47d7deb58237c372ef13f47faf2 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Enforce canonical architecture names in qbs.architecture.Jake Petroules2013-10-111-0/+15
| | | | | Change-Id: Ia9ec94d1d634f45db1c229b65b8856eff98a67c9 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Change property types from "string" to "path" where applicable.Christian Kandeler2013-09-301-1/+1
| | | | | Change-Id: I09cb3d854d8bd0e95760eae8c0e9a06d760498b4 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Do not use an "as" specifier for URI imports.Christian Kandeler2013-07-051-1/+1
| | | | | | | | Also rename "fileinfo" to "FileInfo" and "probes" to "Probes", to make the default name more conventional. Change-Id: I86ed29e299b8a9c2f40244c098d57a3ec8b68397 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Re-introduce property qbs.installPrefix.Christian Kandeler2013-06-281-0/+1
| | | | | | | | | This property used to exist and was erroneously removed when the "install root" parameter was introduced. The author has now learned that "install prefix" and "install root" are actually orthogonal concepts. Change-Id: I8f704c92d09817063b82a175693899af9adc9bac Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* make hostOS the default of targetOS againJoerg Bornemann2013-06-181-1/+1
| | | | | | | | Otherwise we break profiles that do not set targetOS. This is the usual case for host toolchains on Linux. Change-Id: I8fdba89806ba560a3ab70f23a73b61247f6b508c Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Change targetOS and hostOS to lists, and remove targetPlatform.Jake Petroules2013-06-181-14/+4
| | | | | Change-Id: I33317c857a319e0fa25c9e0d0cc69abc4ad3fabb Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Make the toolchain property a list.Jake Petroules2013-06-181-1/+1
| | | | | | | | | | | This allows us to differentiate between clang and gcc toolchains, and also allows us to easily apply conditions to multiple related toolchains (gcc, clang, mingw are all considered part of the gcc toolchain family). The probes now also correctly set the toolchain. Change-Id: Ic5d01fe7fe25dd5e5937cbff7d9253f180571533 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Be less ambiguous about the naming and referencing of OS X.Jake Petroules2013-06-031-1/+1
| | | | | Change-Id: I7a389cb744c451cee435196fd65a8987199d3ed5 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* change values of qbs.endiannessJoerg Bornemann2013-03-221-0/+7
| | | | | | | | | | The valid values for the endianness are now "big", "little" and "mixed". Task-number: QBS-236 Change-Id: I710f2e1b7d1e5c71471d51519dff3e15aeb4b829 Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Improve iOS toolchain detectionFawzi Mohamed2013-03-211-1/+1
| | | | | | Change-Id: I4f82e4aa39d34834a4d90f2301fb865345f2ce8b Reviewed-by: Jake Petroules <jake.petroules@petroules.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* use the simplified base import statementJoerg Bornemann2013-03-081-1/+1
| | | | | Change-Id: I3c9e5d5512cad7028026d6166a0783fd507e7826 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* remove superfluous version numbers from import statementsJoerg Bornemann2013-03-081-1/+1
| | | | | Change-Id: I977081507fcdd60a94a8cfc8fde884984fb6cf13 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Make the qbs.platforms property a bit more generic.Christian Kandeler2013-02-081-7/+5
| | | | | | | | The target OS can now have an arbitrary value and automatically introduces a platform of the same name. Change-Id: I36db932f9d46460a2badaa0b04dce6b73d8407fd Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Better support for non-Linux, non-Mac Unixoid systems.Christian Kandeler2013-02-061-2/+1
| | | | | | | Let's not exclude them for no good reason. Change-Id: I09ba989d5573383be8f7c5d88eaf44317b268695 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Introduce the "install" command.Christian Kandeler2013-01-221-77/+2
| | | | | | | | | | | This decouples building and installing, e.g. allowing the latter to be executed by a privileged user to a system-wide directory. In addition, the ability to install build artifacts (typically executables or libraries) has been added. Change-Id: I28e725e4c1168eebe88e12c75e3d3e9f5fe28ca5 Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* Remove the "platform" concept.Christian Kandeler2013-01-181-1/+0
| | | | | | | | | | Ever since profiles were introduced, platforms have had no real purpose anymore, so it's about time we get rid of them. ("Property sharing" can instead be implemented via base profiles.) Change-Id: I1d629c9b698c7006f733a3c1382b0474f030915e Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* support android.Arvid Picciani2012-11-021-0/+2
| | | | | | | kthxbye Change-Id: I99024b8fa8c35d02ef16fd4e261879f36ff94c2a Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* define NDEBUG in release modeJoerg Bornemann2012-10-231-0/+1
| | | | | | | | | | | Add property qbs.enableDebugCode which is true in build variant debug. If qbs.enableDebugCode is set then NDEBUG is added to the platform defines. Task-number: QBS-150 Change-Id: I9a101e51bd3f185ff581a2e133b746b0b241d4bb Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* remove the "combine profiles on command line" featureJoerg Bornemann2012-10-121-1/+1
| | | | | | | | | | | | It turned out to be no that useful. Rather provide comfortable profile specification facilities. Also, the internal config variable that holds the profile name is now used for what has been the extra variable "buildProfileName". This saves us from handling profile as a special property on the command line. Change-Id: I00dea301a962796685ac2eb5bc918f73413572cb Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
* Added targetPlatform property to qbsRuslan Nigmatullin2012-09-181-0/+10
| | | | | | Change-Id: I9ae627296a24fac1936c84fdf18114fa083e5099 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* remove unnecessary indirection for qbs.getenvJoerg Bornemann2012-09-121-2/+0
| | | | | Change-Id: I1dd9730efe5b38d33851bf26bd537a83af509af4 Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
* Added qbs.getenv methodRuslan Nigmatullin2012-08-201-0/+2
| | | | | Change-Id: Ic562725ec6b1153299a11e23de21dbf85cec9f81 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Fixed typo in qbs moduleRuslan Nigmatullin2012-08-161-2/+2
| | | | | Change-Id: If9b9e3939469a52b75a7c443b0f31fe4ff77518b Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Added pathListSeparator and pathSeparator properties to qbs moduleRuslan Nigmatullin2012-08-161-0/+2
| | | | | | Change-Id: I873e943981c04da39be714dc954fcbd14e443006 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* qbs.targetName renamed to qbs.buildProfileNameJoerg Bornemann2012-04-031-1/+1
| | | | | | | This is used by Qt Creator's qbsprojectmanager. Change-Id: I23ce91418d89f468d58d7f14128521b8a16e9dcc Reviewed-by: Marco Bubke <marco.bubke@nokia.com>
* base module: initialize properties with undefined, not nullJoerg Bornemann2012-04-031-6/+6
| | | | | | | This is more JS style. Change-Id: I5347525ea9257ffeec6cf9c60e5125511e5d9f73 Reviewed-by: Marco Bubke <marco.bubke@nokia.com>
* removed unused property qbs.referencesJoerg Bornemann2012-04-031-1/+0
| | | | | Change-Id: I07b8dca4e681e77420b919830e483551b56f71d2 Reviewed-by: Marco Bubke <marco.bubke@nokia.com>
* Add support for deployment.Christian Kandeler2012-03-221-1/+49
| | | | | | | | | | | | | | | | | | | | There are two modes. The first one, which can be thought of as "pre-packaging", copies all files with a "deploy" tag to a directory specified by the property qbs.deployRoot. The second mode is active if the property qbs.deployInfoFile is set. It simply gathers all files to be deployed and writes their source and target paths into that file. Note that deployment of build products (applications, libraries) is currently not supported, because the necessary concepts do not exist yet in qbs. An in-depth discussion of the overall concept can be found at http://lists.qt-project.org/pipermail/qbs/2012-February/000025.html. Change-Id: I1ad5319cbb25cc0e5ca0baa130514e59245fd33a Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Fix wrong path generation for installMarco Bubke2012-03-201-1/+1
| | | | | | | | | | | | | If input.modules.qbs.installPrefix is empty it would generate always a absolute path, e.g. file.blah -> /file.blah FileInfo.joinPaths() would also fixing it but because of a regular expression test it is more expensive too. Change-Id: I4a9225cf4a173b1e40815cced2ea559bd1f65610 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Fix install prefix logic.Christian Kandeler2012-03-151-2/+2
| | | | | | | | | A relative path should mean "prepend prefix", so that using an absolute path overrides the global setting. This seems to make more sense than the current implementation. Change-Id: Ia408cccdd28582a0334c1df755905ff203cd7c64 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Add new global property "installPrefix".Christian Kandeler2012-03-131-0/+3
| | | | | | | | | This is useful when all deployables should go into a common base directory according to some policy that should not be encoded in the project files. Change-Id: Ic558eecbee091eeb3f95440d99d451c55395193f Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* throw error on failing install -> installed_content transformationJoerg Bornemann2012-02-271-4/+4
| | | | | | | | Task-number: QBS-66 Change-Id: Icf746869dbd205c4ba6f8d42c991c58525247a7b Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com>
* fix build variant descriptionJoerg Bornemann2012-02-271-1/+1
| | | | | | | Change-Id: I1a01b4f8e8d1f741bb6b3cf9a288ca326847ac3c Reviewed-by: Christian Kandeler <christian.kandeler@nokia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Support installing to sysroot.Christian Kandeler2012-02-271-1/+6
| | | | | | | | If the platform defines a sysroot, then any installDir that is an absolute path is interpreted as relative to that sysroot. Change-Id: Ia94f2b1ca1d97127f3ec104d602feb2c6199882e Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Make sysroot a base property.Christian Kandeler2012-02-241-0/+1
| | | | | | | It's not only relevant for the toolchain. Change-Id: I8d9b6fb02c7efb1e1e8d4941fc5210d4af084487 Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Long live qbs!Joerg Bornemann2012-02-151-0/+50
Change-Id: I412793e868919a9ac99611616f292e7047f1ebcf