| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
... for Keil C51 and C251 toolchains.
For this case we create and compile the special common input file which
causes generation of an expected console output with the following pattern:
<some text> (""|"key"|"value"|"")
From which we parse the required 'key' and 'value' entries.
Change-Id: Ib3f49c6cbd3c38f5454eb7270cfb4612a29194a0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
... for the Keil module.
Change-Id: I930522f3963542912157cb9b71d8f1d9c8e6e6c3
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
... to simplify code of Keil module.
Change-Id: I350587f408d18d2628d9549dae5453dea567eb53
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the KEIL toolchain for
the MCS-251 (aka Intel 80251) processors family:
* http://www.keil.com/c251/
Change-Id: I5c3af7ca946ea92eda5989291db1c1d96ce3ecda
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
| |
Change-Id: I6a1eac610eb7af8c0ee3e09f5ce2a48a2cf58ba2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, we did not take into account the specific architecture of
the target processor and always returned the abstract "arm" name.
Right now we handle the '__TARGET_ARCH_ARM' and '__TARGET_ARCH_THUMB'
pre-defined macroses to extend the ARM architecture name, using the
table 9-22:
* http://www.keil.com/support/man/docs/armcc/armcc_chr1359125007083.htm
Change-Id: Iad972d5f0ee330295b84ff7841ac25f40551dfb8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas 78K processors family:
* https://www.renesas.com/cn/en/products/microcontrollers-microprocessors/78k.html
Change-Id: Ie1c9cbaaf7d1c883115129ebb54c1efb74e6c5ee
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas V850 processors family:
* https://www.renesas.com/cn/en/products/microcontrollers-microprocessors/v850.html
Change-Id: I289b2c9718ea917b04a1f14a3d2c70f4f26359d8
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas RH850 processors family:
* https://www.renesas.com/eu/en/products/microcontrollers-microprocessors/rh850.html
Change-Id: Iefa12ededbae78db2e376eca536534b8539f4c1d
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
An endianness supported only for ARM and Renesas RX architectures.
Change-Id: Ia2a60c9ef99bf20ec1ce29ba6e6c345ebc88277d
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
... related to wrong compilers base names for the Renesas RL78 and RX
architectures.
Change-Id: I7600a2a36559082c2b32d280796a86d7a5cae1fa
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas RX processors family:
* https://www.renesas.com/us/en/products/microcontrollers-microprocessors/rx.html
Change-Id: I68d43eed4d89a5921eb55b56fdd3380b59c56054
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
This property can be useful when some parts of the project (e.g. helper
tools) should be compiled for the host platform/architecture
disregarding what targetPlatform/architecture the rest of the project is
being built for
Change-Id: I8c76ef65470130df59826603157083fd20809592
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This implements the Qt 5.15 type registration approach via
the qmltyperegistrar tool.
Fixes: QBS-1531
Change-Id: Id77572a521513dc1759b02a7f7299377c2bcaabb
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Beginning with Qt 5.14 [0] the d suffix for MinGW builds is only added
to debug builds when configured with debug_and_release. Pure debug
builds now have the same library names as release builds.
[0] QTBUG-80792
Change-Id: I260ffb262a807569985413496897ce4c63135ea7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
Also known as "release-with-debug-info"
Change-Id: Ieed358810ea423ea7a9a1a52a36fa35cf165dfac
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
From Qt 5.15 on, moc can generate metatype information in JSON format.
Task-number: QBS-1531
Change-Id: Ie6969f70bac51cc80f11057841ba8d4b7947c646
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
| |
Otherwise, we potentially access undefined objects.
Fixes: QBS-1385
Change-Id: I98aa99b51c80e5f60ebb335917552529b340a8e8
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
When building in the root directory (e.g. Q:/) make-release-archives.bat
failed to create archive with the error "share\qbs\xamples: no such file
or directory". This happened because artifactInstalledFilePath expected
no trailing / in installSourceBase. Luckily, FileInfo.joinPaths handles
leading / correctly: FileInfo.joinPaths("Q:/foo/", "/bar") results in
"Q:/foo/bar"
Change-Id: I895288e6bf4c56c2b2972931c3fa1d98e8419aa0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This allows to build projects without calling "qbs setup-toolchains"
first by simply calling "qbs build qbs.toolchainType:clang-cl"
Change-Id: I86d135ddf2cb588f322709e4e7a265cb6fd7772f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Conan is a popular C/C++ package manager. Conan packages including their
configuration and dependencies are usually described as conanfile.txt/.py.
ConanfileProbe runs 'conan install -g json' and parses the resulting
conanbuildinfo.json. The resulting JS object tree contains relevant information
about the dependencies and can be used to set module properties in Product,
Profile or even Module items.
Change-Id: Ied6b917f061dac67fb2260eab099bcce4037750d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This allows to build projects without calling "qbs setup-toolchains"
first by simply calling "qbs build".
Change-Id: Iba4af8bf77d0ee5d209564ea371328d3c6cf2aa2
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Previously, clang.exe was used to dump macro as clang-cl does not
support the MSVC way. Also, architecture was not detected correctly
because of the wrong assumption that clang-cl respects arch variables
set by the vcvarsall.bat
Change-Id: Ic6464c2bd90f1a2fceb2f8aa884721872179ff49
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
xcode.qbs:
- Change the contents of xcode._actualSigningIdentity as expected by the actualSigningIdentity and
actualSigningIdentityDisplayName properties
- Use Utilities.signingIdentities() to get rid of warning ’Suspicious use of Process during property evaluation...’
- Throw error if specified identity was not found
BundleModule.qbs:
- Add ‘_CodeSignature/CodeResources’ to outputArtifacts with the tag ‘bundle.code-signature’ and ‘bundle.content’
- Remove local var ‘bundles’ which was always undefined
- Fix ‘ModUtils.moduleProperty("qbs", "pathSeparator")’ resulting in ‘TypeError: Result of expression 'obj.moduleProperty' [undefined] is not a function.’
Change-Id: I1a529efb6164906d21203ff3f3be6e570137e8ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
This code is copy&paste but different variable names make it easy to
make a mistake doing changes
Change-Id: Iab5b923ac010e1aa1fb158ee1d66986f41a0fa2a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\ |
|
| |\
| | |
| | |
| | | |
Change-Id: I7e348db380b836221db79c73ea3b5f1d891f114b
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since Qt 5.14, prl files were moved into 'Resources' folder within a
framework
Change-Id: Ia067789032e3ac9d3bde1ad5929f2436f9341a71
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Latest debian java 8 adds some extra characters at the end of the version
("javac 1.8.0_242-ea"), which confuses the existing regex.
Change-Id: I96acb978d95bdb22c71da4593fe5fae4d417e5f3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Appears when passing /LTCG in cpp.linkerFlags.
Change-Id: I4282ae51355a178a85985642a86bc01433bb15db
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Allow the resourcesDir, sourcesDir and assetsDir to be specified as
relative paths. Also, change their type to `path`, as that better
fits their role.
Change-Id: I76df92fe763154f80ca3759e15de3ad70173632b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Despite the fact those probes do not use selectors property, it makes
sense to assign the result into the allResults property
Change-Id: Ieaf084b721a20e83c02bfdcdb706d8d98c7c16ed
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before qt 5.14.
The profile property "moduleProviders.Qt.qmakeFilePaths" is set with one or more
paths to the different android architectures. Each qmake path belongs to a
different android architecture installation.
So each qmake is used to generated the Qt module corresponding to the architecture.
Although qbs can generate multi-arch apks using multiplex mode, this is not
possible when the project depends on qt libraries. This is because of the
restriction of the qt tool androiddeployqt used by qbs.
Now with qt 5.14.
All android architectures are installed in the same directory.
So the profile property "moduleProviders.Qt.qmakeFilePaths" is set with one
qmake path.
This directly impacts the qbs-setup-android tool and the generation of
the Qt modules.
Because qt libraries are installed in the the same directory, they have the
abi in their name (libQt5Core_armeabi-v7a.so).
So the rules that generate the apks are also impacted.
The new androiddeployqt have a new interface (json config file format and requires
to have the input libraries installed in the deployment directory) which allows
the generation of multi-arch apks.
So Qt.android_support modules needs to be updated as well.
Fixes: QBS-1497
Change-Id: Ibd546f356c38a05f42dfcac0a4ec92bd82d6f700
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add checks for the candidatePaths and the single file API.
Also, this includes a behavior change - if multiple selectors are
present, the filePath/fileName/path probe properties are not set up -
this is because it is not clear how they should be set up in case when
the first file in selectors is found, but the second is not (and thus
probe.found is false). In case of multiple selectors, user should use
probe.allResults but not the single file API.
Change-Id: Ib56faf0de93d3ec9fc49f5dbc9d51d4b36831a2d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
To be able to use cpp.driverFlags and cpp.driverLinkerFlags with clang-
cl. This patchset makes possible to use clang-cl with "-
fsanitize=address" flag without passing the sanitizer libraries manually
to the linker
There's also a behavior change in which linker is used - clang-cl uses
native linker by default. Old behavior can be restored by setting
cpp.linkerVariant to "lld"
Fixes: QBS-1522
Change-Id: I9528ce40aa5fdfab987672b15fffd830fa2d6376
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4bc1ff7cacb606e4baa9f2bfe59b8dca1b88e434
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When adding a `src/main/res` folder, the `aapt` command starts failing
with a bunch of errors like this:
<project-path>/default/lingualonga.38c8076f/deployqt_out/res/values-in/strings.xml:3: error: Resource at ministro_not_found_msg appears in overlay but not in the base package; use <add-resource> to add.
According to some online source ([1]), this is due to the presence of
multiple `-S` options to specify resource paths, and can be fixed by
adding the `--auto-add-overlay` option.
[1]: https://stackoverflow.com/questions/11569393/how-can-i-use-multiple-s-values-with-aapt-without-using-add-resource
Change-Id: Ib1c5741e0194ac1866eb081e0461ac37c80f315c
Reviewed-by: BogDan Vatra <bogdan@kdab.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This module helps UNIX application developers to prepare applications
following the freedesktop.org guidelines.
Change-Id: I9ae4dfbdb1e672a9d152242ad2eb50651f86461f
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
There is no apparent reason for such a dependency.
Change-Id: If876265de040c15e4c244a587fe176160fea978a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: I0338983e1cf35e4639473db4b920f2e11cdc92b0
Reviewed-by: Denis Shienkov <denis.shienkov@gmail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I893a0c195de293fead09db63b7fcdf48bbfab61c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... when collecting link-time dependencies.
This is a hack for the case where an application depends on a static
library, and both depend on a statically built Qt. A Qt plugin does not
declare a library artifact when pulled in by a static library, because
we don't want to link against plugins in that case. As a result, when
the dependency collection runs for the application and finds a Qt
plugin via traversing the static library, it won't see any libraries
there. Before this patch, we'd skip such plugins when encountering
them again as direct dependencies of the application, so they were
missing on the linker command line.
Fixes: QBS-1518
Change-Id: Ia0e5b39e4a2fb80b9fd1384610942ac627978571
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Fixes: QBS-1509
Change-Id: I8ff042bf2006fb989c05490b6a7a3f61aa896920
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
|
|\|
| |
| |
| | |
Change-Id: I1755128478ccaa23952a482ed3ea546898807f62
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Minimum OS version is controlled by -target flag now. For example,
"-target x86_64-apple-macosx10.14" tells clang to set minimum macOS
version to 10.14
Change-Id: Iaee002e80d6a02e3a2790757f640dc4a25af8e9b
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This was accidentally broken in
18a3b64ab07ade6bfc9bb068956beed2032d9b58.
Change-Id: I87a106adda094500395049030f6ece652abc9dc9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Long command lines are especially a problem when building statically in
MXE. This commit tries to replicate the logic employed by qmake, where
before adding a new object to the command line, all of its previous
appearences get removed.
Fixes: QBS-1273
Change-Id: I51c843c4a7cfc170ed4fab30deae6c4229690dd0
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit adds a basic support of the IAR Embedded Workbench
toolchain for the Renesas RL78 processors family.
To use it with Qt Creator, it is enough to add there a desired Kit
with a custom IAR C/C++ compiler, and then set the following in the
Kit's Qbs profile settings:
* Key: qbs.toolchainType
* Value: iar
Tested with EW for RL78 v4.10.1 on Windows using the simple
projects samples which come with the default IAR installer.
Change-Id: I1f68f27feaac26a5cf606f326b97f8bccc5c2847
Reviewed-by: Richard Weickelt <richard@weickelt.de>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/
|
|
|
|
|
|
|
|
| |
This patch adds a new RL78 architecture, provided by Renesas:
* https://en.wikipedia.org/wiki/RL78
Change-Id: I7679808d9b4c84ceade8dd3f76ad172f7b09140d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
| |
Right now it is possible to generate a linker
map file using the cpp.generateLinkerMapFile
property.
Change-Id: Iffed6867e9829f5f2ca51b1932d6641963e66abe
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|