| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
This prop was broken during refactoring.
This amends d99256dd79460628aafb5fa34a8dde7761ff7b1c.
Change-Id: I7932fc22e97c7af18bb269ddc2344c8745a82002
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the probe by returning only paths to qmake
which are later passed to real Qmake probe which
checks if it should be run (e,g. for Qt modules).
This amends d99256dd79460628aafb5fa34a8dde7761ff7b1c.
Fixes: QBS-1779
Change-Id: Ie901befcc74713a41258ba18c436435fe50cfb4d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I1ebd7fd0266bc058d3bef725abb664662d749600
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
The algorithm did not properly handle names with more than two
components.
Fixes: QBS-1772
Change-Id: Ia680c69907c449e46977f2c5615707805a3b785f
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We used to do that anyway and then suppress the resulting exception, but
that can lead to an unexpected state later. The sequence that triggered
the linked bug was as follows:
- load module via non-required dependency in other module
- exchange placeholder item in the product item and try to attach
non-existing property on the module instance
- suppress the resulting exception (because the dependency
was not required) and continue
- load module again (required this time) on product level
- exchange placeholder item again -> assertion, because we have a
module instance instead of the expected placeholder
Another way to fix this would have been to revert exchanging the
placeholder item after encountering an error, but that would be more
complex, and there is no reason to attach properties to non-existing
modules anyway.
Fixes: QBS-1776
Change-Id: I581a076d1d872616b186e4015873baeea211b647
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Our tests did not cover the case when there is obviously
no Qt that come from this provider.
Add this case and check that we only get the error about
missing module but no error come from the provider.
Fixes: QBS-1777
Change-Id: Id3e80fd54e1519c91be37346276fd781d9f81b0a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It only fails with "Can't find cpp protobuf runtime. Make sure .pc files
are present" which is not helpful, since they are present.
Additionally remove the grpcpp to grpc++ mapping in both pkg-config
probes.
This kind of amends 1772df50a3bacd91ba8125ececf774aa0e6311f9, I readded
the tests.
Task-number: QBS-1663
Change-Id: I73b7b76a66cc2b8eea5dddd57e5221715b6e6014
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On windows/msys, it is crucial to use autodetection for package
paths - otherwise, Qbs is not able to detect e.g. protobuf
package.
The pkg-config has the --define-prefix switch that overrides
the ${prefix} variables on the package with one based on
the .pc file locaiton. Implement similar option and set it
to true on Windows.
Also fix setting sysroot to avoid duplication of sysroot
in paths when prefix is autodetected.
Change-Id: I2754e48a96cb2e5f01ecace616188782cb5b0d7a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Filename should be the last argument.
Fixes: QBS-1774
Change-Id: I6a45df6deacdba44bbb28d54ec8a90c2ade4525d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I1527740715b362fa4ff0be176e1b813baebad557
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I6205f1ad4955966e8dbc5a93bc94d84490c6d011
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
The pkgconf in MSYS reports relative paths which we treat
as relative to the binary.
Also, on windows, ';' is used as a separator between paths.
Change-Id: I3425ce896e42f87da0cab3f8f06892e28d4e5727
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I52622831cf9d0641ce1c24f53697baf24c891528
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
According to the ld man, this mode is deprecated; with clang
15.0.0, it is no longer possible to pass this option
via compiler frontend (it treats -lazy_library flag as
-l flag and tries to link to "azy_library").
Change-Id: I74a877c359ae3550d372486e055a9b4c3e9be997
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
For some reason, Apple clang complains about missing
_main; adding single ret instruction fixes this.
Change-Id: I286f774e462e747dcff9e0c9e44b1e6a68fa432f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
We have to turn them into JS values at the API border.
Task-number: QBS-1770
Change-Id: Ia3178c9cc7611b9609cb8d006c742434d299873c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: Ifb7b2f6de53db9f709952439749d89ff1234d1f9
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Microsoft's baseline is a couple of hundred years before Unix's.
Fixes: QBS-1768
Change-Id: I1845036b59665cbc1640887840a7d03edbc0cb54
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: I4d2116c29012604971024cd960499dc0464e1673
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: Id776483cffb79f7a0de56f50136ae14684ca2737
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
After updating Qt version, old Xcode we use to build
packages were no longer able to target the minimum required
macOS veriosn. Fix that by using newer Xcode version.
Change-Id: Idf5171bc20a1f8e2053e45d4920917e769025955
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
With Qt 6.5, qhelpgenerator crashes when building the documentation,
which prevents us from building release packages.
Change-Id: I51b30ef6a6bf18d9032aa27ac6afae5edf558c18
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
... when retrieving the built-in defines.
Fixes: QBS-1743
Change-Id: I7c2f49cdf90eb10c24ea8e54b2510c672c3d6749
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This fixes some licensing issues, for instance, inability
to add a combobox to select a license language.
Also, restore tests deleted in
8da87e0f8d5aa27bb012b78bd18bd3379e2d618e.
Change-Id: If62c76a8b75ec21230d91cb137382d50ec536ea6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Change-Id: I0e2b7a4d7e0595d6be90399f140d28154fe14a4e
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
(cherry picked from commit 17ec1be9c4d965f432de34f22fb2a4a2dfc04548)
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ia9a874f09d87020c6f6999e6267596a03b64e721
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
This is quite heavy operation and there is no need to do
this on every call to provider.
Change-Id: I1aa7f16d9f84fb9632cfb143d58ea8448b99e582
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
This amends e89f504db24796e934cdbf9a7ecc0bbd89347191.
Change-Id: I35017113e9619a461ae97d8f955782fc2404e85c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
"/imsvc" flag must be used for adding directory to system include
paths. It affects on suppressing warnings in headers such directories.
This flag can be found in [clang 4.0 user manual](https://releases.llvm.org/4.0.0/tools/clang/docs/UsersManual.html)
at leasst so it is ok to expect that this flag exists in any
user-supplied clang-cl compiler.
Change-Id: Ie08cac2ac02acfeceba4ff4c50043c925ce75168
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
To avoid doing unnesessary work we make all providers non-eager,
meaning they instantiate modules only when requested.
Also, now all providers behave in the same way, allowing
to drop eager providers and simplify code.
Qt provider was split into a Probe, Provider responsible
for setting up a single module and a bunch of util
functions.
Resolving Qbs, 3 runs per configuraion, best of each:
=== before ===
Starting activity 'Resolving project for configuration default'.
Setting up Qt at '/Applications/Qt/5.15.2/clang_64/bin/qmake'...
Qt was set up successfully.
Activity 'Resolving project for configuration default' took 16s, 948ms.
Project file loading and parsing took 484ms.
Preparing products took 1ms.
Setting up Groups took 77ms.
Setting up product dependencies took 3s, 296ms.
Running module providers took 1s, 50ms.
Instantiating modules took 0ms.
Merging module property values took 2ms.
Running Probes took 6s, 619ms.
598 probes encountered, 26 configure scripts executed, 569 re-used from current run, 0 re-used from earlier run.
Property checking took 60ms.
Property evaluation took 1s, 293ms.
Resolving groups (without module property evaluation) took 1s, 801ms.
Starting activity 'Setting up build graph for configuration default'.
Activity 'Setting up build graph for configuration default' took 111ms.
Starting activity 'Storing build graph'.
Activity 'Storing build graph' took 203ms.
Setting up imports took 130ms.
=== after ===
Activity 'Resolving project for configuration default' took 16s, 400ms.
Project file loading and parsing took 413ms.
Preparing products took 0ms.
Setting up Groups took 74ms.
Setting up product dependencies took 3s, 14ms.
Running module providers took 815ms.
Instantiating modules took 0ms.
Merging module property values took 2ms.
Running Probes took 7s, 4ms.
611 probes encountered, 27 configure scripts executed, 581 re-used from current run, 0 re-used from earlier run.
Property checking took 62ms.
Property evaluation took 1s, 276ms.
Resolving groups (without module property evaluation) took 1s, 728ms.
Starting activity 'Setting up build graph for configuration default'.
Activity 'Setting up build graph for configuration default' took 94ms.
Starting activity 'Storing build graph'.
Activity 'Storing build graph' took 202ms.
Setting up imports took 97ms.
The overall time is about the same.
As for the pkgconfig provider, resolving GRPC example is about 2 times
slower (479ms -> 927ms), but there's room for optimizations:
=== before ===
Activity 'Resolving project for configuration default' took 2s, 257ms.
Project file loading and parsing took 288ms.
Preparing products took 1ms.
Setting up Groups took 23ms.
Resolving products took 2s, 232ms.
Property evaluation took 55ms.
Resolving groups (without module property evaluation) took 8ms.
Setting up product dependencies took 1s, 339ms.
Running module providers took 479ms.
Instantiating modules took 13ms.
Merging module property values took 20ms.
There were 0 product deferrals with a total of 2 products.
Running Probes took 715ms.
32 probes encountered, 15 configure scripts executed, 15 re-used from current run, 0 re-used from earlier run.
Property checking took 4ms.
=== after ===
Activity 'Resolving project for configuration default' took 2s, 673ms.
Project file loading and parsing took 600ms.
Preparing products took 0ms.
Setting up Groups took 17ms.
Resolving products took 2s, 660ms.
Property evaluation took 53ms.
Resolving groups (without module property evaluation) took 7ms.
Setting up product dependencies took 1s, 864ms.
Running module providers took 927ms.
Instantiating modules took 14ms.
Merging module property values took 21ms.
There were 0 product deferrals with a total of 2 products.
Running Probes took 746ms.
188 probes encountered, 16 configure scripts executed, 170 re-used from current run, 0 re-used from earlier run.
Property checking took 3ms.
Change-Id: Ic1727d937185a8aed4514e56d46e69f53ed0fbc6
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
... in Project items.
This can only happen for the pseudo-qbs module that we load for Project
items.
Fixes: QBS-1752
Change-Id: I34fae59e14bcd2d3c06aedcf43d5c93583a3a5de
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
... after updating the top-level profile. Otherwise we will continue with
properties from the wrong profile.
Fixes: QBS-1765
Change-Id: I9723dd38739fac350453417e76b7f2da5e4495c2
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
... on the final module properties merge.
Fixes: QBS-1763
Change-Id: Ie57f0e493ffb90a36cd0c6cd9c1bd48ccac0e42f
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
... rather than the paths of the dynamic linker.
Amends 8d75be48c2bbe314390ff292e3a26c5403a5896a, which was based on a
false analogy with rpaths.
Fixes: QBS-1436
Change-Id: I5c8c64f22d65b07a43d7a9ca097ff450a16b738a
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- It was strange that Export items could declare Parameters items,
but Module items could not, so allow this for symmetry.
- Implement priorities for parameter bindings in Depends items, so
that higher-level modules can overwrite parameters set in lower-level
modules.
Fixes: QBS-1300
Change-Id: I05edd816c6a30f59aa934ac37378f9b12ad48a7c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
... to the respective Qt version.
We used to set such values to "original", which is not necessarily a no-
op, so let's avoid that.
Change-Id: Id6cdbbb7f1d1e6b4be33bd5596b6512d2b920cde
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
It is not reliable these days and it is hard to maintain it.
Only leave provider-based lookup or built-in runtime (via
private _linkLibraries property).
Task-number: QBS-1663
Change-Id: I1cc3e3a7b18f721fe252d9b5489ed7495a9a6366
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Fixes: QBS-1760
Change-Id: Ia58ce88c7981ec35a132e783a4faa2a4cdda3328
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: I1cf09f8dfffdb67b311418433fe039f8d66bd5ce
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
For concrete reasons, we continue with dependency resolving even in the
presence of errors, but there is no need to run Probes and validate
modules after that.
Fixes: QBS-1761
Change-Id: Ie280dc3738c835b18ecd5a04ac354eea98260a71
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
The implementation was strangely convoluted and unnecessarily limiting
regarding what users can do with Depends items.
Fixes: QBS-1762
Change-Id: Id633a3b790fde5fb478ef1145e97535682f39703
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
| |
Fixes: QBS-785
Change-Id: I5aeb24419e2ff2831105ae2a07d2d325dc0583f1
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
| |
Amends 8b6426a5af4a7b397d8ed3bb799902d281ea6984.
Change-Id: Id9ad05d056535de22008d861a5a81594237e334d
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
We are asking for trouble if we let e.g. -I/usr/include appear in the
compiler arguments.
Change-Id: Iccbf9648299e02d408f69e5069cc7443b5be672c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
| |
Fixes: QBS-1207
Change-Id: I92cbca8d2842e843670f27a358b19dfe6006afbc
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added the ability to create Visual Studio project
filters according to groups in the qbs configuration
file. Information about standard filters has been
moved to static constants to reduce the number of
memory allocations when processing a large number
of qbs products.
Change-Id: I9b230f28ae0f7ea0ccd5aab9994ba370b4ba3b4a
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|\
| |
| |
| | |
Change-Id: I90fe01f29faa7b3a53ff8a38137af08ea32b85bd
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6d9b26057f1e45458d42f18779d499953cae7e41
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| | |
Fixes: QBS-1035
Change-Id: Idce0d39423b64c7cf04e1c84dd1a90de7bc4aeda
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I2368ab3a2ed0dd179bb47c7c6cb755ba13ffd432
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|