| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Task-number: QBS-261
Change-Id: I78623f6d49d192aeaefead38b9ed16c183b66620
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
|
| |
|
|
|
|
|
|
|
| |
Mark error checks in potentially performance-sensitive
contexts with Q_UNLIKELY. Actual benefits unknown,
but it cannot hurt.
Change-Id: If3d2375965e6342b5d7a0b46ad2c8a41fd3567d0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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>
|
| |
|
|
|
|
|
|
|
| |
We want runQbs() to be more flexible while not adding even more function
parameters, so aggregate the possible parameters in a new data
structure.
Change-Id: Ia2f47b7555c8ec5e4ad85ce6b69861e32c764478
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
| |
This function checks if the file name of a given path has the same
case that's stored in the file system. Only implemented for Windows
and Darwin derivatives, no-op on all other systems.
Change-Id: I3f0aa8ab89c57b08fbb7f20b42b0bb873bd8448b
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
There currently is no "--show-progress" option on that OS.
Change-Id: I56150eadb69ac05d342d3a050c87e66bc79bd63f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
| |
Change-Id: I66f8ebade87d1d659f1f0c076e738cc3f9fe425f
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
|
| |
|
|
|
| |
Change-Id: I5e63482c25233dd92b1e8e8dc5442b7a04ba1128
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
All usages of Darwin, OS X and iOS checks in QBS should now be correct.
Change-Id: I81f38bb6e73bc160bce89597e70e89ce76eaccd2
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
| |
Change-Id: Ida935794ab4d07502204b9e4a4f8f2aaedb06712
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We had two project classes, each holding a list of products
that was structurally identical, except that no BuildProduct
object existed for a disabled ResolvedProduct. The same kind
of duplication also happened for product dependencies.
This patch gets rid of these parallel structures. BuildProject
and BuildProduct are largely being demoted to data holders and are
aggregated by ResolvedProject and ResolvedProduct, respectively.
The resulting project structure should be easier to understand
and maintain.
Change-Id: I68beef60b9e0d62258f6a8337c9015864e18bd80
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
| |
Change-Id: I4991179abbeeecc286a5a988edc7213a4f7678bb
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
Its symbols were not exported, and the header was not included by qbs.h.
Change-Id: Id551bb4d80d96b3d67a74f669ed1151ae08d8e15
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
qt.core.staticBuild will be set to true for static builds.
Change-Id: I9e316eccacb43982ac616377642ac73d530596c8
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
|
| |
The install root must be passed to the library as an absolute path. A
QBS_ASSERT makes sure that we notice wrong usage. The command line
frontend converts a relative install root path to an absolute path.
Task-number: QBS-250
Change-Id: I4695dc29fdc5ead3af9a632b420b399f26c40166
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
This is working now.
Change-Id: I88fecd0253281aee3b86866c6f2ba5c352cbfa88
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
| |
Fix the regexp to not match BAR, FOOBAR and BLABAR when asking for BAR.
Fix the return value to what is everywhere expected.
Change-Id: I9d7a0d6843bc003e836250bedefcd1ae3aedd917
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
Make sure that pushedScopesCount is zero after popScopes.
Change-Id: I8434df162566bfd9643c0f05df272f9aae7cc8e6
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Own properties of module instances must not have the instance itself in
the scope.
This fixes the following case:
Product {
name: "foo"
Depends { name: "cpp" }
cpp.defines: [name.toUpperCase()] // expected result: ["FOO"]
}
Task-number: QBS-252
Change-Id: Iac3d7153918132d01aec980a19502e9817f5e31d
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
| |
The scope of an item object must not affect the visibility of
properties.
This fixes TestLanguage::itemScope.
Change-Id: If72b4bfdc6b30870d94aaf05cc704b7eb9beaddc
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: Ia2a284b918573963def4c6183139e5c84488c666
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: I03489abd0fe5558cad814e2ede216851ac295b39
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
| |
Task-number: QBS-252
Change-Id: Ib76f7a17374600a4e4f8145dbc2155c62d9ca485
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: I79c429fdc30a808a7853bb5cfb858512a0728f22
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: Ic67e930d9d5dc531c18ef3a82d80b31e1916ba8d
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
Those are only useful in Qt Creator's source tree.
Change-Id: I17fd0b2d357787b141fb3badeb7283d87a8700df
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
| |
E.g. say "starting to build for configuration gcc-debug". This is
especially useful when building for several configurations
simultaneously.
Change-Id: I441615d87be314ec819c2d2267a03fec770402eb
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
Was broken due to a bug in command line parsing.
Change-Id: Ice6f5ce057a157f3d740a069ac567d75cfd38ba0
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Instead of throwing away the whole build graph, we detect
changed properties in products and invalidate only those.
Also, adding products does not cause a full rebuild anymore.
Task-number: QBS-6
Task-number: QBS-235
Change-Id: I3ab1ca84eaeaf28bb083da4e6926e7b1ebbd7694
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
New in Qt 5.
Change-Id: If1c671a2ba24a6c48bae64027da8331a2a8043fa
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
Change-Id: I809e30fac829f58625084374e03065ab938f05b8
Reviewed-by: Laszlo Papp <lpapp@kde.org>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
This makes it easier for users to find a specific command or option.
Change-Id: I8e08fc927ce5372e6eb3a64ecc7c98ae93617384
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
Fails currently.
Change-Id: Idfed174ec48663b5dee232775229049dc8c5d1dd
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
| |
Change-Id: I9e822988bc53a7cf17d1caff377570a295231b1d
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
| |
Instead of creating a fake command we turn the rule off
if buildDsym is false.
Change-Id: I4e436b88010df7bbc6b1cd0c164223f94db793b8
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
| |
Now it's possible to turn rules on/off dependent on module properties
set by the product.
Change-Id: Ie11b31f416bd95a8a764ce99d7d8ca190eff08b5
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
| |
Task-number: QBS-248
Change-Id: Idcd8e18559dadf8bc3867dc51c59887ee99633d1
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
This makes it a bit easier to find the same artifact in two build graphs.
Change-Id: I758e6e14a9a2d6c26232361cef1b726369f328e3
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
It is now possible to access the dependencies of a product or module.
Entry point for the tree of dependencies is product.dependencies which
returns a list of objects that represent products/modules the product
depends on.
Blackbox test added.
Change-Id: I0c2728da479e8cc45ca3994d7e4a9e7a41802aa1
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
This is a convenience wrapper around Object.defineProperty.
Change-Id: Ifefe59ea8a443bed347115be9e8e87078a853ec4
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: I70af2f43848cb7315eb7dfe64b32447670a62e23
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
| |
Since qdoc works in a rather idiosyncratic way, we have to
introduce special properties for the output file name as well as the
process environment.
Change-Id: I3797b3bf393b14c8a9bc671c56f0185515f8ef3f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
| |
Change-Id: Ife90612c5d27193f72b62caa6aa60de158e4242a
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
| |
This is needed for applications that are configured via environment
variables rather than command-line arguments.
Change-Id: I114f2bcd65d8551175b35ffbd4912bd37699dc89
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
| |
Change-Id: I2fea6a7eddd599c70336f351b6814bfe335edd79
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
| |
The module properties look-up can take some time, so we only do it once.
On my Linux machine, this results in a ~30% speed-up of the build graph
creation.
Change-Id: I41e885915976cc89b321ea1863ecff967b42bf9c
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Since we have no sensible heuristic before at least some parsing has
been done, we delay setting the actual total effort until we can make an
educated guess. While this leads to the progress bar staying at 0% for a
little too long, at least the user gets the information about what is
happening right away. Note that this improvment is independent of
whether or not progress information was actually requested.
Change-Id: I0d4b454e99eb02c66c3c7a1fddddc6650be0ece4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
|
|
|
| |
When collecting list values from modules we must not remove all
duplicates. E.g.
cpp.cxxFlags: ["-framework", "A", "-framework", "B"]
must not result in the list ["-framework", "A", "B"].
Change-Id: I2f961fe1b026b4fbcb52d0245a46a5d15ba96b82
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
| |
Task-number: QBS-234
Change-Id: I3768cf7578426092895e992b6179fbf9fa119325
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
| |
Change-Id: Id7415769d512131c2487b3d7c21259c308c9a56a
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|