| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
As of 3f80c821e9, we no longer link plugins into static libraries.
Change-Id: I35816d0d84b8758fb9792387bf450d53d7ea6e5a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
This fixes this clang-tidy warning:
warning: avoid repeating the return type from the declaration; use a braced initializer list instead [modernize-return-braced-init-list]
Change-Id: I421e1e47462fe0e97788672684d47943af7df850
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I7419cc3fbc1e8776de3943852dcedab4c95d1c32
Reviewed-by: Anton Kudryavtsev <antkudr@mail.ru>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
One exception is that the 'typedef' for function pointers
were skipped due to an additional work is required.
Change-Id: I2112fded3abeaee1d1f49f56adfd2914d5db0324
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I592d433e7c473ae9f27ca08e701516efe53650ba
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
This is helpful for declaring a QObject-derived class via a macro, in
which case the moc scanner will not help.
Fixes: QBS-1410
Change-Id: I19ee30eac670228686b5528888159220cf39abd3
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
Fixes: QBS-1421
Change-Id: I1f6d749eba38c9a4caa60341f19ee5e89e89d28a
Reviewed-by: hjk <hjk@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
Pulling in a platform plugin has no effect anymore if Qt.gui is not also
loaded.
Change-Id: I6e3e73c903192906722884dd7f566b228d938a8e
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
|
|
|
|
|
|
|
|
|
| |
Our test machine does not have the image plugins we hardcoded, so be
more flexible. This also tightens the test a bit.
Change-Id: I0cc49b3066909ac3e4ec387515e689a00042f4d5
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
... and properly set the default values.
Fixes: QBS-1409
Change-Id: Ib8f3573fcb48d395d9212ac4b01e5caf910c575f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem was that the moc_xxx.cpp artifact gets created from the
xxx.h input, but its file tags depend on whether it gets included by
some cpp file or not. Because changes to such cpp files do not affect
the xxx.h file in any way, the rule was not re-applied in the case such
includes got added or removed.
We fix this by making cpp files an auxiliary input to the moc rule, so
it gets re-applied on changes to those files.
Change-Id: I29b04fac3870f5a370cb7d894bc6ea56a63f6b0e
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
| |
We've observed test failures on Windows due to path names getting too
long.
Change-Id: Ia5b5e377999112f5ff9cf0a0ce01709ce7863e99
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The old code had a number of problems:
- It partially overlapped with the calculation of compatible inputs.
- It was wrong in that it failed to consider inputs from dependencies.
- It was wrong in that it assumed that after rule application, input
artifacts always have parent artifacts to later compare timestamps with.
This is not the case for e.g. a generated cpp file without a Q_OBJECT
macro on which moc is run: No transformer is created in such a case,
because the outputArtifacts array is empty.
The last problem was glossed over by the fact that we held a global list
of "changed source artifacts" in the executor, so such changes were
spotted when they happened in source artifacts. However, that code was
also rather dubious in itself because the criterion for "changed" was
that the timestamp was newer than it was on the last run of the
executor, so I don't think it was completely safe when doing partial
builds.
We solve these problems by remembering when we last applied the rule. An
input artifact is considered "changed" if it has been modified after
that.
Change-Id: Ib1bafd9e1078122776626155c4f2cc11ad622191
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: I056a96c062881c2a07ec15b1803efa9c9aa1a02a
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Resetting the timestamps of file dependencies happens per artifact
before the rescue procedure, so any dependencies added there must get
their timestamp reset explicitly.
Task-number: QBS-1359
Change-Id: Iec22b105a4132ada65b52391d4212c3b9ba52a2a
Reviewed-by: Ola Røer Thorsen <ola@silentwings.no>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Keep the base import in blackbox/testdata/deprecated-property to ensure
we don't accidentally break it.
Change-Id: I790da21a7490ec9c1b0335f45e8707e7e04daa7c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I72bbda4537a65bc525afc38a3d280f3c23940c12
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The input artifact scanner was missing a check, so empty paths could end
up in the list of file dependencies. As a result, the respective
artifact would get rebuilt every time.
Change-Id: I34e48776856224dc885f03d34d40cae88d7d5e4b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0c914674c0728a7f7bc70fd9608914b95ef55a30
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The qmlcache module was broken in an impressive number of ways:
- We forgot to adapt the Probe to a5cc49f2c6.
- The return value of the validate property is never evaluated;
you have to throw an error for it to have an effect.
- From 5.11 on, qmlcachegen does not support the
--target-architecture option anymore.
Task-number: QBS-1353
Change-Id: I770ddc18ad2519c1d5db83bee9634717b1768d67
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add "install" and "installDir" convenience properties to our
Application, DynamicLibrary and StaticLibrary items, so users are no
longer required to write groups with file tag filters for the normal
installation case. The installDir property has a suitable default value
for the respective target platform, as does qbs.installPrefix.
[ChangeLog] The Application, DynamicLibrary and StaticLibrary items now
have properties for more convenient installation of target binaries.
Task-number: QBS-229
Change-Id: I9cfa4c02a7c555b0af637257da63967cd62cc119
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
| |
It is occasionally useful to have a rule whose purpose lies solely in
its "side effects", that is, it does not produce any actual files.
This patch removes the necessity to declare a dummy artifact in that
case.
[ChangeLog] Added support for rules without output artifacts
Change-Id: I38e76a5ddc78ffa768e8ae1f270ae2f7461c5ee7
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
In C++ amalgamation mode, the source files need to be moc'ed before
merging, because otherwise including .moc files will not work.
Task-number: QBS-1252
Change-Id: I6e4bef4b46ec7bc3cf7ce7a950b380d469cc0afd
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ie416a83940654e21b8872a8c7dc9f56b677ebabd
|
| |
| |
| |
| |
| |
| |
| | |
The functionality of qtquickcompiler is now in qmlcachegen.
Change-Id: I70c45f9db72895e2146cbf4bb7902b8db294626c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I29c7a8b8b4a566ccb6f06a258ea1f98f96e118b9
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Also add an undocumented property to add arbitrary options. This one
acts as an emergency fallback in case we miss a new option in the
future.
Task-number: QBS-1295
Change-Id: I0ba81325d6975d8bb25cbd397c9daaaa12f685c2
Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Andreas Bacher <andreas.bacher@meon-medical.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Was broken by 901bf1f774.
Change-Id: Ic1d76e09e00a04b24962c675ff4284b77e752554
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
| |
Change-Id: I25ec97e64522d7fa486fcf408d8134cbbd8b24ea
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
| |
... by using "qbs run" instead of manually executing the applications.
Change-Id: I548f7721acff3aac6644944ad7436ad8bcfa1867
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iab942ed25d06038cf8c172eb70dcd8e9a720e1c8
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The input to the look-up function is a relative file path, not
necessarily just a file name as the code assumed.
Task-number: QBS-1261
Change-Id: Iaad4629ea92f327edc3dca7f012d82a00669994f
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Was broken by 06250a36a4.
Change-Id: I8a8c96ac226b422652930a8ca3ab8dd712af3bed
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog] Added property cpp.rpathOrigin which evaluates to
@loader_path on Darwin and $ORIGIN on other Unix-like platforms.
Change-Id: If5770a83ae32f29ee520fd00b07ed8f0caf6bd48
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fallout of 7494bf59c2.
Change-Id: Ia72f2b211252a74d9b53092ed82633fd4d5ad964
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I59d743f585410cb5c00d36a7b6f9a3e9d696d19e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
This is a simple find and replace with manual sanity check.
Change-Id: Ia733befe7885dc3c643d5c84e151312bfd86a3c6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
The sources require C++11.
Change-Id: I36faac119e504e3106818235022b51336a443559
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I6ba4a31acfd63724ef92b1fe1c0bf5ded353bbe8
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
Let the moc rule check its inputs for the "unmocable" file tag and
ignore such artifacts. The already existing excludeAuxiliaryInputs
assignment only prevents connections to rules that produce unmocable
artifacts.
Change-Id: I2f51c3d86e9127a62c592e28182c16f456340ab8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
Most of these are easily automatable, and are more useful being run
automatically in every integration rather than manually, and probably
never. Adapt tests as necessary.
Change-Id: Ie158481ad8c45ad8d808feacd98c71972dc18900
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: I6da76b0a53bf87105c4e7b48724d9760cb68e831
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is a mistake that the NativeBinary item currently pulls in the bundle
module unconditionally (and also that the module is enabled everywhere).
We want to change that. Prepare for the change by removing all
unconditional accesses to the module's properties.
Change-Id: If57b8222c1a0e2b09c33520882446fa71401f1f1
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
If we have a moc'able header file whose moc output is included by the
cpp file, then it is an error not to list that header in the project
file, because moc will not run on it and the included moc_cpp file won't
be present, causing a compiler error. However, if the header was
originally listed in the project file and removed from it after
building, then the next attempt to build would still succeed, because
the generated artifact would only be removed from disk at the end of the
build process.
Fix this by amending the code that checks for removed child artifacts to
remove them from disk immediately, making sure a rebuild will not
accidentally succeed.
Change-Id: I4f69560cc899dbc61938acc1c697aa93407dc03c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ie07c560125a52e0f0fb9e2db79c2bac89cd0c58f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There was a problem with multi-component module names: It was not
possible to use constructs like 'input["Qt.core"].x', which made it
practically impossible to pass module names in variables and use these
to access properties.
Change-Id: Ic200ba2dcfd4abba51a5ed84cf67a3e090c11d7c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Interference from the "product type" patch again.
Change-Id: I15ae8e156d4a84e9ea8242a6aa4577b8a5729b0c
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
[ChangeLog] Support for qmlcachegen has been added.
To enable it in a QML project, set Qt.qml.generateCacheFiles to true.
Task-number: QBS-1132
Change-Id: I061eb1afd8994306958376e1cd7f5a98a8f4b03e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
| |
Change-Id: I2fcb2113a24c8807467aa03aa3e7590d53761706
|
|
This new test suite collects all the tests which actually rely on
Qt and test qbs' support for Qt in some way.
Change-Id: Id13d0bee6639314c26bfd87d2abee8fd31dcf770
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|