| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To support different types of nodes in the build graph, we introduce
the base class BuildGraphNode. Artifact now derives from BuildGraphNode.
A - yet unused - RuleNode class is introduced that represents a rule in
the build graph.
Change-Id: Ie1ad5e7a9e65bfd5f99d3e824737516053de0f94
***new artifacts hash in ProductBuildData
Change-Id: I50521ec64f734bfb3662759076fa5e7912ac084e
***automoc fixup
Change-Id: Ie2bb228ae38d63deccc600d67d283bc3beda9fec
slightly nicer rule debug output
Change-Id: I60ddef73cd7f0a67055f2d56e6dbe7fa45ddd450
create RuleNode objects and add them to roots
Change-Id: I51a0f89b98cda524d34888ab758d7bd397d82f00
***execute rule nodes on build
Change-Id: I291c32868cd982e37393d6bc8d696f2b63fbff50
***ArtifactSet::fromNodeSet
Change-Id: I7586bcfbe43406c22b1ee1a1fd826beaa247164f
***update after rebase
Change-Id: I5f73afc80b746b11eeb83aeadf29c2358accbab8
***phonytarget
Change-Id: I587b7e072e54b866e8d5ea37c874e6a8baa550e0
update after rebase
Change-Id: I6017c0cbe9244fea04d513f53e3a2a85092bf962
skip nodes early
We must skip Building and Built nodes.
m_leaves can contain duplicates now.
Change-Id: If275106a47c403a455103f4deeb20049548007f5
debug message
Change-Id: I90e238eef72a8a02fb0a9f2c77715f5f15c1442d
disable phony thingy
Change-Id: I7bb60b850b96b65ab738c11e96c3a84cbe58d2f7
connect each output of a rule to the rule itself
Change-Id: I159d76c4b63094058cc9a07ccc2d0b67c7ce06e6
TagScanner
Change-Id: I4741e48cd674c0ca830ee1b4d05b59a8c542694f
TagScanner deps
Change-Id: If3e43a7ac25616cd151229684a085ac8ee787645
update after rebase
Change-Id: I58d49a5ed1049a17733fc2154588f12c1cda53e6
only root tag scanners in product
Change-Id: Ia94732a5632156a5ec3c5518c9596cd4cefac105
run TagScanners
Change-Id: I869a183f2da23a43957a6df45dc5a1b30b10af92
TagScannerRunner
Change-Id: Id3c5fac73e6fb84e56d6ab1d48a959f3677f7a67
crash fix
Change-Id: Ie3c26dbed41ab4615915a08913c495868c3a8910
more TagScanRunner
Change-Id: I80b79f101c0f4d802fb4f6515c0848e369fed066
handle removal of filetags
Change-Id: Icdd8d05c2e26953f7b12d968aa5dfcc23928b9ba
Qt4 build fix
Change-Id: Ie5fcb64e36ddc5004003183bea7243536bc8ab15
do not waste space with type information
Change-Id: I7b9354e6fceead228ba335723b9addeb701bef56
update nodes that must get new transformers
Change-Id: I06cd7ffe606ae643393350c5959ef6475343929f
update after rebase
Change-Id: If080e664972f2950c12fd800a3e4b521e65dca3a
only run tag scanners on changed sources
And do not call RulesApplicator in bgloader.
Change-Id: I5140c91c79a842dab933ad7b328100bdec13cb10
Conflicts:
src/lib/buildgraph/buildgraphloader.cpp
sketch of moc tagscanners impl
Change-Id: I7736c2da1b1742bc3556ef660c163e6c32cbd4c9
Conflicts:
share/qbs/modules/Qt/core/core.qbs
MocTagScanner
Change-Id: I87199e8f355b8b20cf2387f4d4190a20bddae0db
fix lib.qbs
Change-Id: Ibcb5bc290d3839b04828f8c9b155577634bcc9e4
moctagscanner split
Change-Id: Iace5d48483c02b5d33d9ccd54ac07162bfc09d27
|
| |
|
|
|
|
|
|
|
| |
Also supports changing the default build directory ('.') using the
'preferences.defaultBuildDirectory' property.
Task-number: QBS-462
Change-Id: Id3d05d2f5b14197bd3af2e7f9d55bdd263809716
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
All jobs except setting up the project are mutually exclusive, and it is
also forbidden to change the project internally while they are going on.
Currently, ignoring this requirement leads to undefined behavior. Since
we can detect such a condition and react in a defined way, we should do
it.
Note: This is about the API and the in-memory build graph, not about
competing accesses to the stored build graph from different processes.
That's a different (and more difficult) problem.
Change-Id: I2d8a715334b2b73b4f4d32781d0b4f83b1612d40
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
| |
Change-Id: Ic0d7a9f4976e87ab1894bb3a34372c0a27b087fe
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |
|
|
|
|
|
| |
Task-number: QBS-20
Change-Id: Ia8b8c4745e8e68ec219e16876fb630d02453425b
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |\
| |
| |
| | |
Change-Id: Iad2ee611da1bc063a3345f0df0c5cdcba8078fd6
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Accessing module properties in Group.condition didn't work anymore. We
must first propagate the modules to the group, then evaluate the
condition.
Change-Id: Id3eb799faf91f449740c8213671e32af47683c3f
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: I4f1ad74617d3326001d49e67e1de7e308ab12eff
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
This name is more accurate and more consistent with e.g. MsvcProbe.
Change-Id: I7694da8070dba80178db733c434eb4bd777cc469
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| |\ \
| |/
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/lib/language/moduleloader.cpp
src/lib/language/tst_language.cpp
src/lib/language/tst_language.h
Change-Id: Iaaf4e015a234cdd9f51630ad218daec1b83b2a84
|
| | |
| |
| |
| |
| | |
Change-Id: Idd2a49381f013710d72e05d9b1781b47ce70750f
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
These are currently ignored, because we only look for properties that
were requested in prepare scripts. This does not typically happen for
installation parameters, but since they end up in the output artifacts,
changes to them still require re-setting up the respective build data.
Task-number: QBS-359
Change-Id: I571cb4c1a02ea790ddde2f244136c6a0fd6fb627
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
The current code does not work for list values.
Change-Id: I21ae1dcdc1185c48bbccc1ed94b31259f41fb5a4
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
This makes sure that builtin functions like qbs.getenv can be called in
qbsSearchPaths.
Task-number: QBS-463
Change-Id: I74d50f25fd7e62663a5680741b22bc27db8ea80f
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
The hardcoded default value might not be the right one in all cases
(e.g. mingw). This solution is better than setting the linker name
in detect-toolchains, because it will also work with existing profiles.
Change-Id: Ib658090218b3191a6f554ea397c689a94c804c61
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a regression introduced in
7f83ff024e1fe56c71d193a95cc9af988c12660d.
It's now valid again to do something like
Group {
condition: qbs.targetOS.contains("haiku")
cpp.specialHaikuOption: "yes, please"
}
Task-number: QBS-409
Change-Id: I693df9202603c9af7fd7482fa537ed1fb16591a7
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qt 5 no longer guarantees that "shared" or "static" appear in the CONFIG
variable. So assume "shared" whenever "static" is not set.
Change-Id: I9f9f71d4aeacd4c083842a01458fdd25a9980523
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
This case is not problematic.
Change-Id: I388df6180b231364a8e185eb85aee5adff417965
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: I03153c3ace25c28fbd8490a4e054772b3112a867
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: I6e3a10682625765a2b64c44adbb2c1c8cf988314
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
This is a necessary feature for proper IDE support.
Change-Id: I296beb5beae514f70babf3da1b5544726e9df82e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
It does not warrant an output.
Change-Id: I9b01775c8a1a11cf81f0b857c8070d24b18ef5ed
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
e32f9bf66f023669a748046fae9c6d030deef9a0 was incomplete.
Change-Id: Ie7c26658c1b44b8a66bd199e4ef3d88f3ea598f2
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: Ia99ed4de2a07fa8959301a50e41cdb0367de46ea
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
This is needed for adding files at run time.
Change-Id: I71b8a28b9dd63fab2162bbc6df6b91b953576e04
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: Ic8db2f80e1b6ebdad61032b3bcd8c8c986b62614
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| | |
Change-Id: I5aec3b2e3d7f844c923acb7950300ac0884cc829
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To prevent disk cache misses, esp. when using precompiled headers, we're
prioritizing the artifacts we're building by product.
Task-number: QBS-460
Change-Id: Iff2373147c2fe6f86ac79c9785c8c89260aba5b4
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: I458175a3462907a1b9b0d3bb83533207557c6517
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
- Add support for building installers outside of Windows.
- Add missing qbs. qualifiers
- Fix compressor handling
Task-number: QBS-414
Change-Id: I1df290d5dd79cb2fea9ab27feefdde21a46c69d7
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| | |
Change-Id: I358a423e5a4e97f96b127fa94fbccaf664c77de6
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| | |
Change-Id: Ia14593d9a49169685a3e25565264342aa457778e
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| |\ \
| |/
| |
| | |
Change-Id: I7475c4a71c15c83c59400c44ef96d73d15caea58
|
| | |
| |
| |
| |
| | |
Change-Id: I29ace9cb84da2ba2e8eb3be7df55f5a1794d5854
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
fileTagsForFileName must be called with a file *name*, not the full
file path.
Task-number: QBS-459
Change-Id: I68c2910c78c4a7cc1ac53100e1fec57faaa46272
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The property declaration check shadowed this error.
An erroneous file like
Appliaction { // mis-spelled Application
name: "foo"
}
Yielded the error "undeclared property 'name'", when it
should say "I know nothing about Appliaction".
Change-Id: I20d03b13a3fa02b6539950a50d7bae1c5acbfbac
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| | |
Change-Id: I05dcf2d3a4e4f1e20081469382faf1912f676f8d
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-446
Change-Id: I4a1b88d1657e7ec71dc6e41e690f00dc606d3931
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-446
Change-Id: I1c67c780dad5b5cc0444ede950809ae3cf71c67a
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
|
| | |
| |
| |
| |
| | |
Change-Id: If3bda04c2bb5fe77bcc0160354387ef538d40537
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Like the compilerName/Path, the linker must be configurable.
Change-Id: I50f9511dedbff29dbf55b41b96e213f238be187f
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-452
Change-Id: Ibd83e1866aee0e2922bfa6f2541151b58fb24ea5
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We tried to get information about an artifact's children from the
artifact itself. However, that artifact could have gotten disconnected
along the way and not know anything about its children anymore.
We must therefore save such information in an extra data structure.
Change-Id: Id2043f97e857bf8779184e88b1425fdcf85e3f2e
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Task-number: QBS-452
Change-Id: I199c77236196f60cad485999f7b909976a6dd90d
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
qbs.toolchain is a string list.
The old check only worked if toolchain consisted exactly of
the element "gcc".
Change-Id: Ic439261952035e7b465729b6b0710ac9198c98b8
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
This will cause rebuilding if, for example, a rule in a module that
the product uses gets its source code changed (and the rule is actually
being used).
Change-Id: I009685c85fcc8fa0ae3ecc7c32194685a1558104
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
Use FileTagger.patterns instead of FileTagger.pattern.
Change-Id: Ib02d9ef029588dc20337459f0aa514b5dfc6dd90
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| | |
This comes from Qt Creator and is needed for API functionality such
as adding files to a project.
Change-Id: Ia5ecef1d5a5d937cf3fbf27448abbce051e977de
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|
| | |
| |
| |
| |
| |
| |
| | |
... instead of throwing a copy
Change-Id: Ic4a5701d72158d3ef67106493b22d528c890654a
Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This ensures that the name is always written in the
same way and makes it easy to change, as only the value
of the macro needs to be changed.
Removed the product name from most titles as macros cannot
be used in titles. It would break linking to titles.
Please always use the macro in the future.
Change-Id: I116abffc316edbb861034f5e431ca8e27b5a5d03
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
|