| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
It makes sense to check the architecture inside of the 'validate'
script in the module; and then we can throw an error only once.
Change-Id: I17821404ad854e38bafc70f1ca6904c33c48147f
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: I13053090dbd6eb5242d32e1dabd8799f25d8f133
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Copy&paste leaded to 2 bugs in separating debug info, thus it makes
sense to avoid code duplication.
Change-Id: I031b9b7da937d35014f2c1c0a804ca13111dad12
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: If67803997308ac02ce75daa2f22f12e3426079c8
|
| |
| |
| |
| |
| |
| |
| |
| | |
Otherwise, compiler fails with "ERROR: cl : Command line warning D9007 :
'/external:I' requires '/external:W'; option ignored"
Change-Id: I45b01175e5d868370368d31dafa19d0d455f267c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We do not need to strip debugging symbols (strip -S) when compiling with
'cpp.separateDebugInformation: false' on Darwin platforms. At least, gcc
does not do that when building non-aggregated products, it only strips
symbols when separate debug info is enabled.
Also, stip symbols from all primary outputs (aka build variants), not
only from the first one (which happens to be "release". This seems to be
correct since we separate debug info from all build variants
Fixes: QBS-1647
Change-Id: I7a0c0883c6b7f74fa4a2c7d4b7bdadc9ee23923a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... to check for the dreaded Windows limit for
maximum command line length.
Amends bf0a3750e0845eeba3814a4f16c20d112181e280.
Task-number: QBS-1633
Change-Id: I3735d4f327d440a261666f5722a5715b9a31b320
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ife56097ac36a406549e480537161d71a825d87ea
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for Cosmic Software compiler for the
bare metal platforms:
* https://www.cosmicsoftware.com/download.php
Note that this compiler only works on Windows host platforms.
Also the COSMIC toolchain has been added to the Github CI.
Fixes: QBS-1648
Change-Id: I39dfeef1c5696e69bed8969890cf4f8fdb3c2741
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for Cosmic Software compiler for the
bare metal platforms:
* https://www.cosmicsoftware.com/download.php
Note that this compiler only works on Windows host platforms.
Also the COSMIC toolchain has been added to the Github CI.
Fixes: QBS-1640
Change-Id: I7ab0c8099437fce962632ff87177e37fd04f82d2
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for Cosmic Software compiler for the
bare metal platforms:
* https://www.cosmicsoftware.com/download.php
Note that this compiler only works on Windows host platforms.
Also the COSMIC toolchain has been added to the Github CI.
Fixes: QBS-1641
Change-Id: I755fcd3b2a89d0d40fda8b7f9da3d72ee1918df5
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for Cosmic Software compiler for the
bare metal platforms:
* https://www.cosmicsoftware.com/download.php
Note that this compiler only works on Windows host platforms.
Also the COSMIC toolchain has been added to the Github CI.
Fixes: QBS-1639
Change-Id: Iffba0bc550c5d168fb453c7a325b2c9be06d4195
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds support for Cosmic Software compiler for the
bare metal platforms:
* https://www.cosmicsoftware.com/download.php
Note that this compiler only works on Windows host platforms.
Right now this patch implements support for ARM architecture for
STM32 microcontrollers. But in the future it is simple to extend
it and for other architectures (e.g. for STM8, HC08 and so on).
Also the COSMIC toolchain has been added to the Github CI.
Change-Id: Iabdfd61cc427155117730db46e067004ceb07102
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
d8 dex compiler was introduced in Build Tools 28.0.2 to replace dx.
It is the default compiler used by gradle since version 4.4
Change-Id: I603c61f6f1a151f3c5be78385bf9648929e7d81b
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It makes sense to minimize the copy-paste errors by moving the
repetitive code into the separate functions to the cpp.js file.
This will simplify the code and improve the maintenance.
Change-Id: Id5a2914ff28619553b855cc6f09810ad370c408c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Latest Qt with Ministro is 5.7. So let's remove it form Qbs.
Change-Id: Iee03c06c4c2e5c806dc99025a5bf2c200894ec60
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previous commit 79b9b02 added these functions to the ModUtils module,
but seems a best place for these functions is cpp.js file.
Change-Id: Id89b88e1865d003c1c7811220ed01f6d6becfba3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It makes sense to put in separate functions the repeating code for
generating a list of tags and artifacts for compilation and linking.
The generic code has been moved into the ModUtils module, which
simplifies maintenance and minimizes copy-paste errors.
Change-Id: I28b8e5467cf6a6764cbe7b1b7b68797b1d6ec1f4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
"product" variable in an Export item will point to the "importingProduct"
in 1.21.
This patch prepares the change by replacing "product" by "importingProduct"
when necessary.
Task-number: QBS-1576
Change-Id: I215d46484754e76771039a750dc4beb33d8a0c9c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We need to generate a list of file tags and artifacts taking
into account the dependent properties from the product.
For example, we should only build tags for generating linker
files if the generateLinkerMapFile property has been set.
Change-Id: I286c566ffe119eebf24b60113dda65403f7af3dd
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Id2691bd6a49ca6c2886cf5f460351e3d1daad9e6
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since Xcode 12.5, common specs for darwin platforms were moved to
"Darwin Package/Product Types.xcspec" in the different folder. However,
the old configs are still present, so we need to merge info from both
variants.
Also, allow to use undefined variables in .xcspec files - since 12.5,
this is a valid use-case.
Also, implement the "default=" variable formatter used as a fallback
when variable is not set.
Fixes: QBS-1644
Change-Id: I9a55c5d511cbb01f30219478ee9f3b85763a08d5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ic6d3df6210c1af174e6caa8ba46e365e42f79273
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... in the module provider.
The mkspecs/modules directory can contain third-party modules, e.g. from
KDE.
Change-Id: I5c0bc789d748299c3542c8f9814bdb1035d43e68
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
Current version is quite old, from Xcode 9.2
Change-Id: I1b8adffec71648a871b1eb03aabe1c580bbdb828
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Ic6087168a1d93c2a2b46de825f5c3b9655634e8e
|
| |
| |
| |
| |
| |
| | |
Change-Id: I320cd1a1f3d8a1eed11d1c70007214f19a109b6e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Because of QTBUG-87288 the Qt5Network_ARCH-android-dependencies.xml is not properly
generated. The bug is only corrected in Qt 5.13. This patch automatically updates
the android manifest for version prior to 5.15.3.
Change-Id: I0e7ea7f316f8af2d6c7b05340d9db3a72ba0110c
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, it was not possible to use older windows SDK version. Fix
that by introducing the new property that is passed to vcvarsall.bat
Task-number: QBS-1498
Change-Id: Ic526eabb8ff82ddd85c93e90fd20421595a121f4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The original approach did not work when using
NMake or MinGW Makefiles (but worked with Ninja)
Change-Id: I1bfdb213b3007b100bb4cdcdbe4deb3935b6e266
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When there's a lot of QML files, we can hit the dreaded Windows limit for
maximum command line length. Detect this condition and call the tool
repeatedly if necessary.
Fixes: QBS-1633
Change-Id: I20d123d6184eab08c5fa280a7c4811a753275f1f
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... with custom extension for SDCC compiler.
The SDCC compiler always generates the listing files in the
format of 'module.c.lst', and there is no way to disable a
generation, or to specify a different name for the listing
file. In addition, we cannot change or delete the generated
listing file until the linking is complete (this is such a
feature of the SDCC compiler).
So, to turn off the listing file generation, or to specify
a custom listing file extension, we need to do the following
extra steps:
1. If the custom cpp.compilerListingSuffix property is set,
then we need to make a copy of the generated listing file
after the compilation completes. And then to delete the all
listing files with the '*.lst' extension after the linking
completes.
2. If the cpp.generateCompilerListingFiles property is disabled,
then we need to remove the all generated listing files with
the '*.lst' extension after the linking completes.
Change-Id: Ia235f7e2ebf88695e4648fb894624c7420968079
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The ARMCC compiler has no options for specifying the name of
the output listing file; it only has an options for specifying
an output directory.
In addition, the generated listing files are in truncated format,
e.g. instead of the 'module.{c|cpp}.lst' file will be generated
the 'module.lst' file.
This behavior complicates the writing of unit tests, and also
complicates the implementation if the user wants to change the
cpp.compilerListingSuffix property.
A workaround is to post-process the compiler listing files after
they are generated. In this case, we only need to rename the
generated compiler listing file to the desired one.
Change-Id: I89c81896711b90b146a94c35d2ec75e296824752
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It makes sense to move an additional post-build linker commands
(that delete or change the linker map files, delete the listing files)
into separate functions.
Change-Id: I636347a9417f76f3f3dcfa000518437721357431
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When building appt2 package on windows aapt expects to see paths with windows separators.
If path isn't converted you get "bad resource path" error.
https://android.googlesource.com/platform/frameworks/base/+/9ba47d8/tools/aapt2/compile/Compile.cpp#59
Change-Id: Iabacb020920310533b034138e47d1839b845573a
Reviewed-by: Raphaël Cotty <raphael.cotty@gmail.com>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Some editors struggle with them
Change-Id: I61672b6ca83facd7a2b2bf2fa763245aee94bce5
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It makes sense to add the cpp.assemblerListingSuffix and
the cpp.compilerListingSuffix properties to the base
CppModule due the following reasons:
1. It is possible that the user wants to change the extension for
the generated listing files, which makes working with Qbs more flexible.
2. It will be easier to write an autotests that check the generation
of the listing files for a bare metal platforms, where listing files can
have various extensions such as ".lst", ".ls", and so forth.
Change-Id: I9989288bff0659dd3e8b7a443d0354bb78475270
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Right now we can use the cpp.linkerMapSuffix property
to find out the currently used linker map suffix.
Also we can set a custom cpp.linkerMapSuffix value to
make sure that this applies to the module.
In addition, the generation of a custom linker map file
for SDCC toolchain has been fixed.
Change-Id: I8798cd6bea0ab6b5ea9728400827b8c98b11ba7b
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Toolchains C51, C251, C166 do not support configuring library
search paths to link. They support linking with libraries
specified with full absolute paths to them.
To work around this we supplement the absolute library paths
using the cpp.libraryPaths property, if the library is specified
without an absolute or relative path.
Change-Id: Ic11fd8b87356b3a07ba5fd5c9763c8df39d0d4ac
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I1f05ae51f30f0158cb3dec6ce189d96f52987c7a
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|/
|
|
|
|
|
|
|
|
| |
aapt2 was introduced in Build Tools since 26.0.2 and replaced aapt in
gradle since version 3.0.0.
Since Android.sdk now requires Build Tool version 24.0.3 it is possible
to default to aapt2.
Change-Id: Ia6ec88267ca58413592d6eadde73422311f34d74
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It makes sense to add the cpp.linkerMapSuffix property to the base
CppModule due the following reasons:
1. It is possible that the user wants to change the extension for
the generated map files, which makes working with Qbs more flexible.
2. It will be easier to write an autotests that check the generation
of the map files for a bare metal platforms, where object files can
have various extensions such as ".map", ".m51", ".m66", and so forth.
Change-Id: I1e5e3b39bf84fddfe8c06f2db9d3936c6a3ff027
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Android.sdk was already signing the apk package but it was using
hardcoded debug key and could only be used to run the application
locally.
The signing part of the android apk/aab package generation is now
in the new codesign module. By default the same debug key is used.
But it is now also possible to configure a different key.
Task-number: QBS-899
Change-Id: I49c54a4d55578c48363805e927392b3a468805f0
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Android ndk 19 introduced a new layout for the platforms and sysroot
directory. They are merged into the toolchain directory. Android ndk 22
removed the deprecated platforms and sysroot.
Since the minimum required version of Android.ndk is 19 this patch
switches Qbs to the new layout.
Fixes: QBS-1637
Change-Id: Ie69d305ba77ac1689205e2fb2fd3414a3bada2bd
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: Ice07b4b6cc918bd27e13b66c3c892a9be482a482
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
We don't need to use the Windows path separators for the
C51, C251 and C166 toolchains. These delimiters only
complicate the code maintenance.
Change-Id: Id87fd11259a1a1456a28e755eefa7e014b7f34d6
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Starting from Qt 6.1, some binaries were moved to libexec/ directory
from bin/ (e.g. moc, rcc, uic).
Fixes: QBS-1636
Change-Id: Iaa329773a3ffcea5f09c0663dd4159d839980525
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
We should only sign the resulting binary during the lipo step.
Change-Id: If4d508bcdf347bf2fc68d345ed8d5913a7457f8d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\ |
|
| |\
| | |
| | |
| | | |
Change-Id: If4dfeed28c475b8d0db13b5a39a0d6752b2a5052
|