| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This variable appears to be used these days (observed e.g. in Qt 6.2 for
iOS).
Change-Id: I5ec17a0b80e59d9a27a15722ea01c24d6d569207
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Otherwise, this value will not result in the /std:c++latest flag.
Task-number: QBS-1656
Change-Id: I26c077e8200c2a3aff865327cb6c0569f7fdbaab
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
... because we don't need in this inclusion at all.
But for some cases it is impossible to remove that inclusions
(and even to move on next lines) because then the some tests
are failed by unknown reason. For those tests were added the
following comments on the inclusion lines:
`// FIXME: Don't remove this import because then the test fails!`
Change-Id: I9153fd0e38b94af08168e499ee46a23889ee4d73
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
It is mandatory to pass /Zc:__cplusplus when building
with Qt 6.2 and MSVC.
Fixes: QBS-1655
Change-Id: I27d928a568d0ac2075ce3f77f4142e20342be358
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Fixes: QBS-1653
Change-Id: Ide8e3b75b86ef5bf2018d1cf962e7429796e59e4
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Commit e7f204c4b82475f39c3f5a3870a7393857b1a29a removed assignation of
staticLibraries with staticStlFilePath which made impossible to link
with static stl.
Fixes: QBS-1654
Change-Id: I83a176918d423a371741a97b4c48c0f6eda03138
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|\
| |
| |
| | |
Change-Id: I2c7c200d4b0057bf7115306d000c13e60d2e8bd2
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previous commit 9e5ef99 introduces regression where the non Windows path
separators does not work in some cases, that lead to the compilation
errors (although CI tests are succeed). This strange behavior seems
related to the old engine of these toolchains. Thus, we need to use the
Windows path separators again, besides everywhere in the KEIL
documentation are used only the Windows separators.
Change-Id: I2aa0f28651b914414bcd6b67bf451b0af1b73c18
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: I4133d6716ee6f226cdd56637f86c2b1f3e1cda65
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We need this property on Windows when we use the
codesign.signingTimestamp property. This property should be set with
the "sha256" value in case when the app is to be distributed over the
App Store; otherwise the the codesign.signingTimestamp property is
quite useless.
Fixes: QBS-1651
Change-Id: Iacc5f80b8acf81ea1a34f55416e6966c41b0e727
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is not correct to check for the frameworkVersion to determine if
product is a Framework - e.g. Xcode always sets this variable. Instead,
product.type or product.bundle.packageType should be checked instead.
This fixes the problem when codesign incorrectly determines bundle as a
framework if product.version is set.
Fixes: QBS-1649
Change-Id: I067e852df82a43897000d45e27908dd5e22eac70
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch adds an experimental support for the Digital Mars
C/C++ compiler for Windows:
* https://www.digitalmars.com/
This compiler is only distributed for Windows host platform,
but allows to create the binaries for Win32, Win16, DOS32 and
DOS targets.
This patch implements only the Win32 targets and has the
following limitations:
* Support for precompiled headers is not implemented yet
(but which is supported by the compiler).
* There is no support for the CI autotests due to the fact
that the compiler has the following restrictions:
- it needs a separate masm386 assembler.
- it needs a special format of DLL library sources (required
the DLL main function).
- it needs the `kernel32.lib` to be always explicitly linked.
- and, maybe other unexpected stuff.
The following features are currently supported:
* Compiling a source files in the C or the C++ mode.
* Compiling the source resource (RC) files.
* Creation of an applications (both console and GUI).
* Creation of an dynamic (DLL) libraries with its import files.
* Creation of a static libraries.
Task-number: QBS-1598
Change-Id: I5a6ac05a7e7513a1c6d2403db037c309b0f12b90
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
We need to separate the functionality of these functions, since their
content will differ in the future (for example, the 'intermediate_obj'
tag will be added for the compiler).
Change-Id: Ife65aed95966b92a3646d73512a0a0add4cd1aac
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
* We need to pass the 'asm' tag for this function.
* We need to use this function also in MSVC toolchain.
Change-Id: I3dfc7b79ec17b855da76dab35428d875c39548a1
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This amends b69b569ff43299dec625d573b08fec642039afea.
Task-number: QBS-1636
Change-Id: I9d113d735ad0f9d4e517a675d9af9d3f0a25b802
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
It makes sense to share the cpp.compilerExtension property,
because this property is used in almost all CPP modules.
Change-Id: I0bf44a83c722772b93d7f2febbef7b4e38d11103
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| | |
.. to reduce the number of if/else conditions and to simplify the code.
Change-Id: Id4e6574b719986d3fc7f8b27106a60b00cbd67ea
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| | |
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>
|