| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: Id34e57a59ad21961ee32da1bf93f6a55596d95aa
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: Iaeb8ff81f37e152667aace86156de2c96397d9e3
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: If43314a34cbae3b66d6221cb21e6ba32e4aaae38
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
... because we can't detect the target 'none' platform in case
of a bare-metal GCC (this feature is not implemented yet).
In other words, the barametal platforms do not support the shared
libraries.
Change-Id: I8ea62e649474e57ecc363b556e5f901a35c3fa85
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Right now we don't have tests that could check the correctness of the
properties returned by toolchain probes.
For example, such as `architecture`, `targetPlatform`, `endianness`
and so forth. The number of returned parameters depends on the type
of toolchain.
This patch adds a test for the probe for the `watcom` toolchain and
can be used as a template for adding the tests for other probes in the
future.
Change-Id: I5ebda0deb7538f746406f5b0925bdd60fdb4c3fb
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As we use the baremetal tests for non-baremetal compilers
(for example, for `watcom` and `dmc`), then we need a test for
linking the application and the shared library.
We cannot use the existing tests for `watcom` and `dmc` toolchains,
because these toolchains have specific behavior and also do not
fully support the STL. Therefore, the simplest dependency linking
test is used here.
Also fixed the shared library creation for these toolchains.
Change-Id: I0e5d5ede39fa0c9b4bf7db54adc3f161e0aea91c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The idea is to check that the compiled application works correctly
by running it and reading its output. This will only work if the host
platform and target platform are the same, otherwise the launch is
simply skipped.
Since we use baremetal tests also to test other platforms (for example,
using the OpenWatcom or DigitalMars toolchains), the base application
`BareMetalApplication.qbs` is created as a console application.
The reason is that for baremetal it is always a console, but for
non-baremetal it can also be a GUI which requires a different main
function.
Change-Id: I520ba411582223950521b4b06c2e01bce49fe089
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
| |
Probes can now be used in the ModuleProvider item.
Change-Id: If1bf07269aa7d9c3c9dd8a41ac4bd3d259393a49
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add docker image focal-android-630 and corresponding github action.
Update ANDROID_PLATFORM to "android-30" because Qt AndroidManifest
uses property allowNativeHeapPointerTagging (QTBUG-97009) since
6.2.1 which was added in API30.
Also update android test because bug QTBUG-97834 was solved in Qt 6.3.
Change-Id: Id45701433a779d2c6cb8dfdbfb0676e2daad6f88
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
We are not going away from Qt and converting QString
to std::strgin and vice versa does not make any sense.
Change-Id: I99c0067a4738566728c503fe39f0d0a945d4e977
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds basic support for the Open Watcom toolchain.
This patch uses the `owcc` compiler (supplied with the toolchain),
which is a wrapper that supports the POSIX standard.
Reason is that the native OW compiler and linker has a limitations
in the command line arguments (e.g. they have wrong quotes handling
and so on).
This patch supports both the latest official version v1.9 and also
its fork v2.0.
Also added the CI autotests for the version v2.0 for the Windows
host. These autotests only perform a limited number of tests (only
the bare-metal tests) due to the following toolchain limitations:
* The toolchain does not have STL support (there seems to be some
kind of the partial support in the form of separate legacy STL ports).
* The toolchain support something compatible with the C++98 standard.
* The toolchain does not support the shared libraries on Linux hosts.
These limitations make it impossible or unjustified to reuse most
of the available tests (it requires a lot of work).
There was also an attempt to set up CI for tests on Linux host, but
for some reason the toolchain installer crashes on CI (although it
works fine on a local PC with Ubuntu).
Change-Id: Iecf76f51f0b09d31a89683f786b9cd7a825f235e
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
| |
Change-Id: I3fd73b5053562b139324d3a473184e9c520c2587
Reviewed-by: Raphaƫl Cotty <raphael.cotty@gmail.com>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In order to use PathProbe and BinaryProbe in module providers, the qbs
properties used in the probes will be replaced by the Host and the
FileInfo services.
The new Host service implements these host related properties:
architecture,
os,
platform,
osVersion,
osBuildVersion,
osVersionParts,
osVersionMajor,
osVersionMinor,
osVersionPatch,
nullDevice
The FileInfo service implements these properties:
pathSeparator,
pathListSeparator
Task-number: QBS-1612
Change-Id: Icecde3d82a531a5b143ce150ffd544ee674e6f4d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Replace all the possible use of the qbs module that can be replaced by
the Host and FileInfo services.
Change-Id: I0d6f820bb2577eacd9081ec2df1eb53adf94d50e
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
| |
Both branches of the ternary operator have to have the same type.
Change-Id: I429509adec209aacadf85bb5f8ea0573d92a4e95
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Example for this case is on debian where libPath is equal to
/usr/lib/[arch]/ this would then end up with a prefix of /usr/lib, this
is wrong as it should be /usr.
This also adds an additional check to see if its starts with /lib as
this might be a correct path on some systems, so we ignore this case.
Change-Id: Idc706892ba70ebb3f212a6938a6285c24e4a75b1
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
... with install by default.
If we have an installable product with debug info, it's likely we want
to install the debug info as well.
Task-number: QTCREATORBUG-26419
Change-Id: I6057bcd1620bcf207b38397b7f6f45be4187e44e
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Weak symbols can very easily get pulled into binaries. Make sure this
does not mess with our re-linking detection logic.
Change-Id: I013cc12728528e684d6cd4ba3c61cb56f1f854b4
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
| |
Change-Id: I11dc7ce71c7ce7f161d75e3fcd2fc34c87e7733e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ia5c14b86e5e0952dbebf103c5355f49e41158cba
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Following commits c2b7dd88e2f3ac5ebed99301ec8f847ffaedcb87 and
eb7adb8d9787dddef89e46f7bf6e594d0b5faf4b, the "product" variable in an
Export item now points to the 'importingProduct'. It used to point to
the 'exportingProduct'.
Fixes: QBS-1576
Change-Id: If122a981f14b54114afce20e72cc568b14681dba
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
* All descriptions start with a small letter.
* Trailing dots have been removed from all descriptions.
* For all static library rules replaced 'linking' with 'creating'
in descriptions.
* Added 'ing' ending to all descriptions where it was missing.
Change-Id: I2a4cb9dd53980d33628e097efaae53a68573af42
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: I27ad0920ab12443c8e2c744e3509bce28607c3f0
|
| |
| |
| |
| |
| |
| | |
Change-Id: I2675968a6e11ffea2e7d44fbfbd1a77018999a4b
Reviewed-by: Kai Dohmen <psykai1993@googlemail.com>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I2d951f691c601de9b2d06d1a580b818283eabac5
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ib143dfc99392ed129ea04d57ed8e378c7d1230a9
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iffc41104f002684525f5a0efe6c44cd326299678
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It was only used by Qt and is not needed because of providers these
days.
Task-number: QTCREATORBUG-26475
Change-Id: I8bf79bcaa7468c8df3669902ac453d46bbfa46f8
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Sometimes installing dependencies with conan takes multiple minutes. To
see what conan does and if somehow conan stopped working the conan
stdout and stderr will be printed to commandline.
Change-Id: I987ef95b38deecd713dc6b46be0e2641025345c6
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| | |
Change-Id: Id0758d78f0ef251aeca0447ccc612d294c450a5e
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I3417bbe182c23f8e6a9704b008eb8a5618e4d175
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
pkg-config has 2 different variables - PKG_CONFIG_LIBDIR overrides the
default search paths and PKG_CONFIG_PATH prepends paths to the default
paths or paths set via PKG_CONFIG_LIBDIR.
Change-Id: I8f67b7bbae9325b17abb20ec5eb8d037626c8089
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I4b91047bd688419ca9626d58a304bbeabf9943e7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Due to performance reasons, we have to do the dependency resolution
on the qbspkg-config side, like original pkg-config does.
Otherwise, it is not possible to use GRPC module as it depends on a
bunch of ABSEIL libraries which has a lot of cross-dependencies and
QBS cannot handle them (resolving takes > 10 minutes for a simple
dependency on GRPC).
Change-Id: Ice25f6cea09fe731a511d91891936ba746e5b697
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ib48209643b755954f0f38c3f1bcfb487e23cf292
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is required for the ongoing patch that merges the
dependencies on the pkgconfig level - a valid package
may change it's type to broken if it has unsatisfied
dependencies.
Change-Id: I21e6a214d8524fb95e6b837604ae6b7f32360d4f
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I83691e0e35cf4bbf9955eb0bad58b5a15bf1779a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This implements provider that generates modules based on all .pc files
present in system. This allows to get rid of the multi-shot providers
such as fallback provider.
Fixes: QBS-1614
Change-Id: Icf87ac609bc34bd26e8ed94ae547a7e649835a3a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|/
|
|
|
| |
Change-Id: I89f510619196cc01a9e3b0c2273888b12b188928
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
| |
...when using foo,bar,baz syntax
Change-Id: I013a55f02c5d6d4bbbccf809b9524bed3c486df4
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
| |
This item has grown over time and now pulls bundle module and xcode module on
macOS which is not desired as it make harder to read verbose logs when
debugging tests.
Change-Id: I7fa4dfaec477b5c6d8d8ec602d10db866c353441
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
| |
Change-Id: Ifa1408183c87a6c4f20a8d1e0f3fee448e91f949
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
New docker images are added to test different android ndks. Those
images don't have Qt so only a subset of the tests are run.
So far I added 3 images: r23 (LTS), r21e (LTS) and r19c
(minimum one).
The other android images also have a new ANDROID_NDK_VERSION
argument set to the r23.
Change-Id: Iaa7c80b9cac1c7888b3297fac13333d22a9ad0bc
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|
|
|
|
|
|
|
| |
Otherwise, we pull in dependency on the GL.h header which is
not needed otherwise.
Change-Id: I7cca190ca3883f9203403c8cff21f6a0d274171c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patchset introduce a static library for parsing .pc files. Code is
based on the original pkg-config source code https://
gitlab.freedesktop.org/pkg-config/pkg-config and is written in pure C++
(except for the places where we need access to filesystem as
std::filesystem is not available for all platforms - in that case, Qt
classes are used)
Parsing .pc files manually allows to have more control over dependencies
between modules, e.g. to generate a standalone module per one .pc file
and merge properties using Qbs itself, not via pkg-config.
Library is almost feature-complete and all tests copied from pkg-config
pass. Some functionality is omitted (e.g. prefix variables (what is
this?) or validating dependencies since Qbs does this as well)
Bechmark shows that parsing ~100 files takes about 10-15ms. Running
pkg-config on the same set of files takes ~4 seconds:
RESULT : TestPkgConfig::benchSystem():
14 msecs per iteration (total: 57, iterations: 4)
Fixes: QBS-1615
Change-Id: I5bfdfa588aa04d9d69fd738dd2beea14174c0242
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
|\
| |
| |
| | |
Change-Id: Iac2a17ef4bacf25becc7f2082a8a73a21b2f4d76
|
| |
| |
| |
| |
| |
| |
| |
| | |
FreeBSD uses the LLVM linker these days, so we need to check that
similar as we do on macOS
Change-Id: I28b8aa0743173b20caa8932f942b59dd369d686a
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It is now possible to specify which providers should be run by providing
the list of provider names.
The desired providers can be selected on the Project and Product levels.
Task-number: QBS-1604
Change-Id: Ib0782df00e3086104345f4b740fc1696d715344c
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Iccc5c9a10d1934e2170f75d194ed103b45bfac53
Reviewed-by: Ivan Komissarov <ABBAPOH@gmail.com>
|
|\|
| |
| |
| | |
Change-Id: Id78213238c8692d7aaa1a73378704fa9ef4238a9
|