Compare commits

...

47 Commits

Author SHA1 Message Date
Olli Vuolteenaho
dc592b73d6 Build and package Qt Gradle Plugin in CI
We want to add automation to the Qt Gradle Plugin build / packaging /
release process. The first step is to build the JARs in CI and upload
those to internal servers. To enable this we'll change the Linux
configuration to also build the binaries instead of only testing.

The "Packaging" feature is added to enable fetching the binaries after
successful integrations.

Task-number: QTTA-238
Task-number: QTBUG-142800
Change-Id: I004f1171d7c28c59fad057306c6e1c89007cfde0
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
Reviewed-by: Rami Potinkara <rami.potinkara@qt.io>
2025-12-23 04:07:02 +00:00
Alexey Edelev
9a13282256 Add vcpkg provisioning on macos platforms
Change-Id: Iee721367772f64a956bf421a8564845506138c33
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Alexey Edelev <semlanik@gmail.com>
2025-12-22 06:25:09 +01:00
Alexey Edelev
5579337dde Add lipomerge tool provisioning
The tool provides an easy and convenient way of merging
per-architecture macos libraries into the universal ones.

Change-Id: Idcec68ea13e4cf4e201373866f1ebabbbc586414
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-12-20 19:38:13 +01:00
Alexey Edelev
4456a7f592 Move linux vcpkg and vcpkg-ports installation files to a common unix directory
These scripts are generic for both linux and macos, we may parameterize
them and reuse on both platforms.

Change-Id: Ia61cfbbf5c91e2135e38253c4a96605015d2d1b6
Reviewed-by: Alexey Edelev <semlanik@gmail.com>
2025-12-20 19:38:10 +01:00
Alexey Edelev
da911f9b20 Unify the vcpkg manifest location
There is not particular reason to hold multiple manifests for the vcpkg
for different platforms, since we expect that the direct dependency set
that is used from vcpkg will remain the same on each platform.
Keeping copies of the vcpkg manifest doesn't make much sense.

The vcpkg manifest and configuration file are now in the
coin/provisioning/common/shared/vcpkg directory.

Change-Id: Icc9c88592c68cb591216f3d0668f9984592d6c7b
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-12-20 19:38:08 +01:00
Alexey Edelev
406dca5bf3 Provision patchelf on ARM macOS 13, 15, and 26
This is required by vcpkg.

The x86_64 macOS and macOS 14 platforms already have patchelf installed.

Change-Id: I722abf2792dcfe954248196ab9bc0ca39d01570a
Reviewed-by: Nils Petter Skålerud <nils.petter.skalerud@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
2025-12-20 19:38:06 +01:00
Qt Submodule Update Bot
9c05c68c86 Update submodules on 'dev in qt/qt5'
Change-Id: I6a47611163ab5fa1d0e04e2bf62e9b84c296dca9
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-12-20 09:10:08 +00:00
Ivan Solovev
8fb136fc8a Revert "Set ZLIB_ROOT on Windows with MSVC"
This reverts commit aecfc7e23b.

Reason for revert: QtOpenAPI can use the zlib that is bundled with
Qt now (which is the case for all MSVC configurations in CI), and
that commit broke qtinsighttracker.

Task-number: QTBUG-138968
Fixes: QTBUG-142771
Pick-to: 6.11
Change-Id: I69344c52572a472baed96a136aecbe33b310da16
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
2025-12-19 13:45:09 +00:00
Oleksii Zbykovskyi
f032c3156d Install NuGet in a separate file
Made an installation of NuGet in a separate script to be able to share
the packages by an environment variable between multiple scripts.
NuGet is needed for both the Windows App SDK and a virtual camera.

Also added a label on top of the scripts about copyright and license.

Change-Id: I11f035d8eb107d2d2c9e2a93f17a935129bb707e
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
2025-12-18 09:46:54 +01:00
Qt Submodule Update Bot
e98fab4c4e Update submodules on 'dev in qt/qt5'
Change-Id: I984119b13cc52c849e03045382a4f3db426dfeed
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-12-18 00:32:29 +00:00
Simo Fält
e6c1ad7c0b COIN: Move QtBridges dotnet config to its own yaml file
The development was moved to different repo.

Change-Id: I57544c891d4b4aebac2687952ad6b655948618d1
Reviewed-by: Toni Saario <toni.saario@qt.io>
2025-12-17 09:07:21 +02:00
Simo Fält
dd0dae532f Provisioning: Install Workload.NativeDesktop .NET package
Change-Id: If28badaf1ddb6befca3bacd355f19c4298b96193
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-17 09:07:20 +02:00
Toni Saario
a98c97ed95 Make VxWorks x86_64 tests significant for qtbase
Pick-to: 6.11
Change-Id: I4224cd484edc9fabe639b1566c624d862b0c829f
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-12-17 07:06:40 +00:00
Nils Petter Skålerud
c5a42f267f FFmpeg, Android: Use 'llvm-strip' from Android NDK explicitly
When running 'install-ffmpeg-android.sh' on Ubuntu hosts, it may fail
due to the FFmpeg build process using the host's 'strip' executable.
This causes the build to fail due to the 'strip' throwing an error
due to it not being able to recognize the format of the .so files for
the FFmpeg Android build.

This patch solves this by explicitly using the executable 'llvm-strip'
command from the Android NDK.

Pick-to: 6.11 6.10 6.8
Change-Id: Ia32c31e3e9d1f550a026f2684362e19d663a8863
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-12-16 20:40:06 +01:00
Jukka Jokiniva
2bac4d3be9 Remove license check on Ubuntu 22.04
The configuration is duplicate as it is also run on 24.04.

Pick-to: 6.11 6.10 6.8
Task-number: QTQAINFRA-7146
Change-Id: Icbd1f7379cb1f23ed8c818f25aa3e09c5fcb5a45
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-16 16:08:27 +02:00
Nils Petter Skålerud
e3966f2ffc Linux, FFmpeg: Make install-ffmpeg-linux.sh take an output parameter
Currently, this script is hardcoded to output to the directory
'/usr/local/'. This output is stored in the variable 'prefix'. However,
this variable is used inconsistently in the script, meaning we cannot
actually modify the variable to change the output directory.

This patch does the following:
- Applies the 'prefix' variable where necessary.
- Allows an optional command-line parameter to be applied to 'prefix',
allowing one to specify where the output directory. This is
particularly useful for local builds.

No changes to current CI behavior.

Pick-to: 6.11 6.10 6.8
Change-Id: I51f83ce3844c2aa9db778b1c54091acb64a227e6
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-16 15:08:21 +01:00
Joerg Bornemann
6bd3b23b6c init-repository: Fix passing no --alternates option
Commit d6918d7ac5 broke init-repository if
you did not pass an --alternates option.

Pick-to: 6.8 6.10 6.11
Task-number: QTBUG-142712
Fixes: QTBUG-142744
Change-Id: Ia727b420a34a46e52f0f05e549aabe2c975c6d7e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-12-16 09:28:12 +00:00
Ville-Pekka Karhu
02beaf2090 Provisioning: Take repo-clones into use in RHEL 8
Pick-to: 6.10 6.8 6.5 5.15
Task-number: QTQAINFRA-7605
Change-Id: If368b7a648d8c97a0028ac834f74326a54d643d7
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-16 09:28:03 +00:00
Rami Potinkara
45aeb45a6e Provisioning: update Gradle cache to Android SDK 36
This patch updates build.gradle to set compile- and
targetSdkVersion to 36.

Task-number: QTBUG-138552
Task-number: QTBUG-138549
Pick-to: 6.11 6.10 6.8
Change-Id: I44be99956f39e7bc23e8c5a3d15289dfdd574921
Reviewed-by: Nicholas Bennett <nicholas.bennett@qt.io>
2025-12-16 09:28:00 +00:00
Johanna Äijälä
4bff151490 Provisioning: cleanup, remove Squish installations
RTA is using different means to install Squish for RTA tests, no need
to do it in general provisioning.

Pick-to: 6.11
Change-Id: I4858a282ad7a0b1412f6dd0f4876109fe54a4c88
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-16 11:27:57 +02:00
Rami Potinkara
2795f20a4e Provisioning: bump Android sdkBuildToolsVersion and sdkApiLevel to 36
This patch bumps:
-The sdkBuildToolsVersion used in Coin to 36.0.0
-The sdkApiLevel used in Coin to 36

Task-number: QTBUG-138550
Task-number: QTBUG-138549
Pick-to: 6.11 6.10 6.8
Change-Id: Ic63cd28ba39743e517ea3a3e2f9ec08bd5dc3267
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-16 09:27:54 +00:00
Qt Submodule Update Bot
90a2d21db6 Update submodules on 'dev in qt/qt5'
Change-Id: Ib2f87bcdba6c2bd0c3d3d376583fa1fe37f16ba2
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-12-15 15:50:33 +00:00
Matti Paaso
c69a56646f Replace hard coded branch value with environment variable
Axvion analysis will be run also in release branches and this
prevents results to be mixed between brnaches.

Task-number: QTQAINFRA-7599
Pick-to: 6.11 6.10 6.8
Change-Id: I5766d234bce2054d0dc6999ae1cac3f05c197d0e
Reviewed-by: Aku Pietikäinen <aku.pietikainen@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2025-12-13 11:04:50 +02:00
Tim Blechmann
e9a003f0c3 provisioning: do not install libc++ on ubuntu
installing libc++-20-dev and libgstreamer1.0-dev on the same system
causes problems:
* using the llvm apt repo, it will uninstall libgstreamer1.0-dev
* using ubuntu's repo, it will break gstreamer's pkg-config integration

reason is that libgstreamer1.0-dev depends on libunwind-dev, but llvm's
libunwind-20-dev does not provide the pkg-config files.
as temporary workaround we basically revert
e5b56d1d37.

Pick-to: 6.11
Change-Id: Ib4626d17339256d56c4764e3167f4e9fe4b9c909
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
Reviewed-by: Liang Qi <liang.qi@qt.io>
2025-12-13 09:04:47 +00:00
Tim Blechmann
88173877d6 Revert "platform_configs: add c++23 nightly builds - part 2"
This reverts commit 9073f03937.

Reason for revert: installing libc++ on ubuntu breaks gstreamer

Pick-to: 6.11
Task-number: QTQAINFRA-7340
Change-Id: I8229f80a7010244fccc462eb31d1feadbf389028
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-13 09:04:44 +00:00
Ahmad Hasan Mubashshir
6f4c400406 init-repository: Add HTTPS support for Gerrit remotes
Introduce a new --codereview-https option to use HTTPS instead of SSH
for Gerrit URLs. Update QtIROptionsHelpers.cmake and document in
QtIRHelp.txt.

Change-Id: Iae032bdf07e323a8f63946475c692cab23deffc4
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-12-13 15:04:41 +06:00
Nils Petter Skålerud
df82dc7de2 FFmpeg, iOS: Store final .xcframework files in 'lib' folder
Currently, the iOS FFmpeg provisioning script will install .xcframework
files into a subfolder 'frameworks'. The .xcframework files fulfill a
similar purpose to ordinary .dylib files and should be placed in a
'lib' subfolder, to make provisioning more similar to how we deploy
FFmpeg for other platforms.

This patch makes us install .xcframework files in a 'lib' subfolder
instead.

Task-number: QTBUG-136480
Pick-to: 6.11 6.10
Change-Id: I91f9938b595ecff5b04d49a71e9872f5d7278cda
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-13 09:04:39 +00:00
Alexandru Croitor
160e6135bb CMake: Modify the RunCMake tests to clone from the Coin CI git mirror
This helps with the test stability when code.qt.io is down or slow.

Pick-to: 6.10 6.11
Change-Id: I0bdaaa06772a94e73cb33d3f827e4e327123b60a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-12-12 17:36:31 +01:00
Joerg Bornemann
d6918d7ac5 init-repository: Fix passing relative path to --alternates
When using --alternates with a relative path, nested submodules
(e.g., qtdeclarative/tests/auto/qml/ecmascripttests/test262) failed
because the alternates path wasn't adjusted for the changed working
directory depth. The --alternates option worked correctly with absolute
paths.

Fix by converting the passed alternates path to an absolute path.

Pick-to: 6.8 6.10 6.11
Fixes: QTBUG-142712
Change-Id: Ief7a87768d9ff17bb2832ae363f573ecae58d5ee
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-12-12 14:56:13 +01:00
hjk
740e232f16 Disable more Axivion rules
This disables 12 more generally Mostly Harmless warnings to have a
realistic chance to get down to a base line of zero violations.

Later we can re-evaluate the disabled rules one by one and re-enable
them if wanted.

Change-Id: Id9fc2e4013fb7c59040868fea54f14dcda6cefe0
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
2025-12-12 06:21:41 +01:00
Ville-Pekka Karhu
3a7f17e0cd Provisioning: Add macOS 26 Intel
Task-number: QTQAINFRA-7196
Change-Id: I56027e54391cbd90c8ff17ff670ad6551c3bcc0f
Reviewed-by: Simo Fält <simo.falt@qt.io>
2025-12-12 05:21:34 +00:00
Rami Potinkara
da6cc0ce0e Android: Android 16 as maximum supported version
This patch
- Replaces Android 15 with Android 16 as a maximum version
- Sets Android 16 as significant and switches to r07 version

Task-number: QTQAINFRA-7299
Task-number: QTQAINFRA-7298
Pick-to: 6.11 6.10 6.8
Change-Id: Ic2ac071da7ab1763225c82e441c27f60cc25fe06
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2025-12-12 06:14:27 +02:00
Allan Sandfeld Jensen
2bd7830030 Update NodeJS to at least version 20
Needed for WebEngine based on Chromium 140

Pick-to: 6.10 6.11
Change-Id: I0cf1df1107cc8f5aa2850239608f03a7c7831676
Reviewed-by: Elias Toivola <elias.toivola@qt.io>
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-10 12:23:37 +01:00
Nils Petter Skålerud
fb6a8b0215 Android, Unix: Move android_emulator_launcher.sh to unix folder
This script is currently located in the 'linux' directory. In future
patches, it will be reused by macOS and Linux hosts.

This patch moves it into the 'unix' folder.

Pick-to: 6.11 6.10 6.8
Change-Id: Ib03b999bef0373dc9600d505b1f4ce926fa97de6
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:12:03 +00:00
Nils Petter Skålerud
ba6a77312d macOS, Xcode: Harden error-handling when installing Xcode
The current script relies on some commands intentionally failing during
provisioning because they only apply to certain versions of Xcode.
These errors are silenced using pipes. This is error-prone because we
can no longer catch when these commands are failing in the case where
they should not.

This patch introduces some additional error-handling and conditionals
to make sure we only run commands when they are intended to succeed.

Pick-to: 6.11 6.10 6.8
Change-Id: Ic5048f54adb31d263e28f51312f44fe3b55e6fe5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2025-12-10 09:12:01 +00:00
Nils Petter Skålerud
c9a8b8f220 Upgrade Android Command-Line Tools to v19.0
This patch updates the Android Command-Line Tools in CI from v2.1 to
v19.0.

The zip file for the older version contained a single directory
'tools', this directory has been renamed to 'cmdline-tools' in the
newer version. This patch includes some changes to make sure we still
use the same folder structure as before.

Task-number: QTQAINFRA-7487
Pick-to: 6.11 6.10 6.8
Change-Id: Id9227241283d4c529005c4961449f50ca7af13be
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:58 +00:00
Nils Petter Skålerud
8a70b9e482 Android: Begin initial alignment of Linux and macOS provisioning
The Android provisioning scripts on macOS and Linux perform many of the
same tasks, but with slightly differing approaches. Future patches will
make us run Android emulators on ARM64, which will further make these
scripts similar.

This patch performs some modifications to the macOS provisioning script
to make it more similar to the Linux one. This will help us combine
parts of these scripts in the future.

Task-number: QTQAINFRA-7487
Pick-to: 6.11 6.10 6.8
Change-Id: Idba30d07607780d1ef8c60cc5e038a034c821632
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:56 +00:00
Nils Petter Skålerud
bc6ba67934 Unix: Add curl fallback to check_and_set_proxy.sh
This script is stored in the directory 'provisioning/common/unix'. This
implies it can be used from Linux and macOS hosts. The script
uses the wget command, but at the time of writing, wget is not
installed on our macOS hosts. If wget is not found, this command will
assume the HTTP proxy is not found rather than fail the script
execution.

This patch rewrites this script to use curl if wget is not found.
This makes it run correctly on macOS. Additionally, it adds a fail
case if neither wget or curl is found on the system.

Pick-to: 6.11 6.10 6.8
Change-Id: Id54b9fc69307ef28eb35cf1c0042df11e704a6e2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:54 +00:00
Nils Petter Skålerud
f0b54a51f7 macOS ARM, Python: Combine Python provisioning into common script
The Python provisioning on macOS ARM hosts is done multiple times
across separate targets.

This patch moves the code into a common script 'macos/python-arm.sh'.
As a drive-by, we bump the version of all targets to 3.12.11, whch is
the same as the one used in the macOS 15 ARM host.

Pick-to: 6.11 6.10 6.8
Change-Id: I8c1f6f7d635fe47b9faa34dbe6988e89252dc2c9
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:51 +00:00
Nils Petter Skålerud
bb77943c0f Provisioning: Use local mirror for pyenv on macOS ARM hosts
On macOS hosts we are using external mirrors for installing with pyenv.
We should instead pull the necessary files from our local mirror.

Pick-to: 6.11 6.10 6.8
Change-Id: I6ba67dfd7cd37809164c7e2c4bcf89d07d45b1b2
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-10 09:11:49 +00:00
Toni Saario
73c4ed922a Update sccache to v0.11.0
Custom patched packages for windows.

Also Add Windows on arm support.

Pick-to: 6.11 6.10 6.8
Fixes: COIN-740
Change-Id: I27f7d36b3501be2a2011b9b8dfa0ec846cd57bf5
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-10 10:11:47 +01:00
Elias Toivola
7c7bbfff4d Remove RHEL-8.10
Existing platform configs with RHEL 8 use RHEL 9 instead. [CI Platforms]

Pick-to: 6.11
Task-number: QTQAINFRA-7529
Change-Id: I202fdf464f59db52f7f1edbf99451054c6889e69
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-09 10:52:29 +00:00
Elias Toivola
8d9d8cf3e8 Remove Red Hat 9.4 from CI
RHEL-9.4 is replaced by RHEL-9.6. [CI Platforms]

Pick-to: 6.11 6.10 6.8
Task-number: QTQAINFRA-7326
Change-Id: Ia270d20eda412da291d9e09c265afa9c977fab2e
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-09 12:52:28 +02:00
Elias Toivola
6856189287 Set Red Hat 9.6 tests as blocking
Also set Packaging targets for RHEL-9.6. [CI Platforms]

Task-number: QTQAINFRA-7326
Task-number: QTQAINFRA-7331
Change-Id: I18ec1e79e6fbe7b4ed001a3cdb648dae37b89561
Reviewed-by: Tero Heikkinen <tero.heikkinen@qt.io>
2025-12-09 12:52:27 +02:00
Elias Toivola
d5bdd4dea6 RHEL-9.6: Add missing package for license-service library
This amends d534aedb32

Pick-to: 6.11 6.10
Change-Id: I2ccc49b1e924ae88315f776900046a57789d149e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2025-12-08 22:31:39 +00:00
Oleksii Zbykovskyi
b276b549f7 Rename 100... to 10... in Windows provisioning scripts
Renamed files since it leads to misunderstanding due to their index.
Our CI system sees only two first digits, so 100 is seen as 10
and executed with other 10s which is misleading.

Pick-to: 6.10 6.8
Change-Id: Iabb548c622d71df8a3593cc171b7e0c2e2ae0287
Reviewed-by: Artem Dyomin <artem.dyomin@qt.io>
2025-12-08 21:42:29 +01:00
Eike Ziller
dcd07cc2ab COIN/QtCreator: Move to RHEL 9 and macOS 15 for QtC 19+
Updating for raising the compiler requirements.
Also adds Ubuntu 22 to test with GCC 11

Since Qt Creator branches can use the same Qt branches
that define these platforms, keep one RHEL 8 job
for Qt Creator 18. Mark it in the features, so the
Qt Creator 19+ configuration can filter these out.

Pick-to: 6.11 6.10
Change-Id: Ib771f473b6ed3ce42c6191647da7d473b64c2316
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2025-12-08 07:50:05 +00:00
279 changed files with 1360 additions and 978 deletions

View File

@@ -421,3 +421,19 @@ function(qt_ir_get_option_as_cmake_flag_option cli_name cmake_option_name out_va
endif()
set(${out_var} "${cmake_option}" PARENT_SCOPE)
endfunction()
# Get the value of a command line option as existing absolute path.
# Yield error if the path does not exist.
# Convert to absolute path if necessary.
function(qt_ir_get_option_as_existing_absolute_path name value)
qt_ir_get_option_value("${name}" path)
if(NOT "${path}" STREQUAL "")
if(NOT EXISTS "${path}")
qt_ir_add_error("The path '${path}' passed with -${name} does not exist.")
endif()
if(NOT IS_ABSOLUTE "${path}")
get_filename_component(path "${path}" ABSOLUTE)
endif()
endif()
set("${value}" "${path}" PARENT_SCOPE)
endfunction()

View File

@@ -102,18 +102,27 @@ endfunction()
# - ../qt/qttools-litehtml.git
function(qt_ir_add_git_remotes repo_relative_url working_directory)
set(gerrit_ssh_base "ssh://@USER@codereview.qt-project.org@PORT@/")
set(gerrit_repo_url "${gerrit_ssh_base}")
set(gerrit_https_base "https://@USER@codereview.qt-project.org@AUTH@/")
qt_ir_get_option_value(codereview-username username)
qt_ir_get_option_value(codereview-https https)
if(https)
set(gerrit_repo_url "${gerrit_https_base}")
else()
set(gerrit_repo_url "${gerrit_ssh_base}")
endif()
# If given a username, make a "verbose" remote.
# Otherwise, rely on proper SSH configuration.
if(username)
string(REPLACE "@USER@" "${username}@" gerrit_repo_url "${gerrit_repo_url}")
string(REPLACE "@PORT@" ":29418" gerrit_repo_url "${gerrit_repo_url}")
string(REPLACE "@AUTH@" "/a" gerrit_repo_url "${gerrit_repo_url}")
else()
string(REPLACE "@USER@" "" gerrit_repo_url "${gerrit_repo_url}")
string(REPLACE "@PORT@" "" gerrit_repo_url "${gerrit_repo_url}")
string(REPLACE "@AUTH@" "" gerrit_repo_url "${gerrit_repo_url}")
endif()
set(namespace "qt")

View File

@@ -98,6 +98,9 @@ Options:
username and port number, and thus relies on a correct SSH
configuration.
--codereview-https
Specify this option to use HTTPs instead of SSH.
--alternates <path to other Qt5 repo>
Adds alternates for each submodule to another full qt5 checkout.
This makes this qt5 checkout very small, as it will use the object

View File

@@ -295,7 +295,7 @@ function(qt_ir_run_after_args_parsed top_level_src_path out_var_exit_reason)
"${working_directory}")
# Get some additional options to pass down.
qt_ir_get_option_value(alternates alternates)
qt_ir_get_option_as_existing_absolute_path(alternates alternates)
qt_ir_get_option_as_cmake_flag_option(branch "CHECKOUT_BRANCH" checkout_branch_option)
# The prefix for the cmake-style 'dictionary' that will be used by various functions.

View File

@@ -14,6 +14,7 @@ macro(qt_ir_set_known_command_line_options)
qt_ir_commandline_option(berlin TYPE boolean)
qt_ir_commandline_option(branch TYPE boolean)
qt_ir_commandline_option(codereview-username TYPE string)
qt_ir_commandline_option(codereview-https TYPE boolean)
qt_ir_commandline_option(copy-objects TYPE boolean)
qt_ir_commandline_option(fetch TYPE boolean DEFAULT_VALUE yes)
qt_ir_commandline_option(force SHORT_NAME f TYPE boolean)

View File

@@ -3,11 +3,6 @@ Include: []
Configurations:
-
Id: 'qttas-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['UseConfigure', 'Packaging', 'DisableTests']
-
Id: 'qttas-on-linux-rhel_9_6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['UseConfigure', 'DisableTests']
Features: ['UseConfigure', 'Packaging', 'DisableTests']

View File

@@ -182,7 +182,6 @@ Configurations:
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
]
-
Id: 'windows-11_24H2-msvc2022'
@@ -198,13 +197,12 @@ Configurations:
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
]
-
Id: 'windows-11_23h2-arm64-msvc2022'
Template: 'qtci-windows-11_23H2-aarch64-53'
Compiler: 'MSVC2022'
Features: ['Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Features: ['Sccache', 'Packaging', 'DebugAndRelease', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-debug-and-release -force-debug-info -headersclean -nomake examples -qt-zlib -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-psql -no-sql-mimer'
Environment variables: [
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
@@ -213,7 +211,6 @@ Configurations:
'VCPKG_TARGET_TRIPLET=arm64-windows-qt',
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
'WEBVIEW2_SDK_ROOT={{.Env.WEBVIEW2_SDK_ROOT_PATH}}',
'ZLIB_ROOT={{.Env.ZLIB_PATH_ARM64}}',
]
-
Id: 'windows-11_24H2-msvc2022-arm64'
@@ -256,37 +253,12 @@ Configurations:
'VCPKG_HOST_TRIPLET=x64-windows-qt',
'VCPKG_TARGET_TRIPLET=x64-windows-qt',
'gRPC_ROOT={{.Env.gRPC_ROOT_msvc}}',
'ZLIB_ROOT={{.Env.ZLIB_PATH_AMD64}}',
]
-
Id: 'rhel-8.10'
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_HOME}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
]
-
Id: 'rhel-9.4'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['Packaging','Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON',
'VCPKG_HOST_TRIPLET=x64-linux-qt',
'VCPKG_TARGET_TRIPLET=x64-linux-qt',
]
-
Id: 'rhel-9.6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'GenerateSBOM', 'VerifySBOM']
Configure arguments: '-nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',

View File

@@ -19,7 +19,7 @@ Configurations:
Id: 'windows-11_23h2-arm64-msvc2022-minimal-static-test'
Template: 'qtci-windows-11_23H2-aarch64-53'
Compiler: 'MSVC2022'
Features: ['UseConfigure', 'InsignificantTests', 'Packaging', 'MinimalStaticTests']
Features: ['Sccache', 'UseConfigure', 'InsignificantTests', 'Packaging', 'MinimalStaticTests']
Configure arguments: '-static -release -headersclean -nomake examples -qt-libjpeg -no-icu -qt-doubleconversion -qt-zlib -c++std c++17 -no-sql-psql'
Environment variables: [
'CMAKE_ARGS=-DFEATURE_msvc_obj_debug_info=ON -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_INCLUDE_arm64}}\..',
@@ -29,8 +29,8 @@ Configurations:
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
]
-
Id: 'rhel-8.10-minimal-static-test'
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
Id: 'rhel-9.6-minimal-static-test'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'MinimalStaticTests']
Configure arguments: '-static -nomake examples -release -qt-libjpeg -no-icu -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'
@@ -44,7 +44,7 @@ Configurations:
Id: 'ubuntu-24.04-arm64'
Template: 'qtci-linux-Ubuntu-24.04-aarch64-52'
Compiler: 'GCC'
Features: ['Packaging', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
Features: ['Sccache', 'Packaging', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
Configure arguments: '-static -nomake examples -release -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -no-libudev -bundled-xcb-xinput -no-icu -qt-doubleconversion'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',

View File

@@ -33,12 +33,12 @@ Configurations:
]
-
Id: 'android-9-x86-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
@@ -51,32 +51,13 @@ Configurations:
'ANDROID_EMULATOR=emulator_x86_api_28'
]
-
Id: 'android-9-x86-on-linux-rhel_9_6'
Id: 'android-16-x86_64-on-linux'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
# We check QT_USE_TARGET_ANDROID_BUILD_DIR only in one configuration, to ensure builds
# without this option work too.
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_api_28'
]
-
Id: 'android-15-x86_64-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'JavaDocs']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
@@ -86,37 +67,5 @@ Configurations:
# configuration, to ensure builds without this option work too.
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_USE_TARGET_ANDROID_BUILD_DIR=ON -DQT_USE_ANDROID_MODERN_BUNDLE=ON',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_64_api_35'
]
-
Id: 'android-16-x86_64-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_64_api_36'
]
-
Id: 'android-16-x86_64-on-linux-rhel_9_6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'GenerateSBOM', 'VerifySBOM', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}} -DQT_GENERATE_WRAPPER_SCRIPTS_FOR_ALL_HOSTS=ON',
'NON_QTBASE_TARGET_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID_X86_64_NDK_LATEST}} -DQT_DEPLOY_FFMPEG=TRUE -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'ANDROID_NDK_ROOT={{.Env.ANDROID_NDK_ROOT_LATEST}}',
'ANDROID_EMULATOR=emulator_x86_64_api_36'
]

View File

@@ -1,10 +1,5 @@
Version: 2
Configurations:
-
Id: 'ubuntu-22.04-license-check'
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
Compiler: 'GCC'
Features: ['TestOnly', 'LicenseCheckV2']
-
Id: 'ubuntu-24.04-x64-license-check'
Template: 'qtci-linux-Ubuntu-24.04-x86_64-50'

View File

@@ -2,12 +2,12 @@ Version: 2
Configurations:
-
Id: 'android-x86-developer-build-testrun-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'AndroidTestRun', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -debug -developer-build -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
@@ -15,18 +15,3 @@ Configurations:
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
'NON_QTBASE_TARGET_CMAKE_ARGS=',
'ANDROID_EMULATOR=emulator_x86_api_28']
-
Id: 'android-x86-developer-build-testrun-on-linux-rhel_9_6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'x86'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'AndroidTestRun', 'UseConfigure', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -debug -developer-build -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
'NON_QTBASE_TARGET_CMAKE_ARGS=',
'ANDROID_EMULATOR=emulator_x86_api_28']

View File

@@ -2,32 +2,6 @@ Version: 2
Configurations:
-
Id: 'android-9-multi-abi'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Target os: 'Android_ANY'
Target arch: 'multi'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: [
'rhel-9.4',
'android-9-x86-on-linux',
'android-15-x86_64-on-linux'
]
Features: [
'Sccache',
'WarningsAreErrors',
'AndroidTestRun',
'MinimalAndroidMultiABITests',
'InstallDepsPerPlatformSubdir'
]
Environment variables: [
'QT_CI_ARTIFACT_ID_PATH_Android-host=QT_CI_ARTIFACT_ID_PATH_rhel-9.4',
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-9-x86-on-linux',
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-15-x86_64-on-linux',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"',
'ANDROID_EMULATOR=emulator_x86_api_28'
]
-
Id: 'android-9-multi-abi-rhel_9_6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Target os: 'Android_ANY'
Target arch: 'multi'
@@ -36,7 +10,7 @@ Configurations:
Platform dependency: [
'rhel-9.6',
'android-9-x86-on-linux',
'android-15-x86_64-on-linux'
'android-16-x86_64-on-linux'
]
Features: [
'Sccache',
@@ -50,7 +24,7 @@ Configurations:
Environment variables: [
'QT_CI_ARTIFACT_ID_PATH_Android-host=QT_CI_ARTIFACT_ID_PATH_rhel-9.6',
'QT_CI_ARTIFACT_ID_PATH_Android-x86=QT_CI_ARTIFACT_ID_PATH_android-9-x86-on-linux',
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-15-x86_64-on-linux',
'QT_CI_ARTIFACT_ID_PATH_Android-x86_64=QT_CI_ARTIFACT_ID_PATH_android-16-x86_64-on-linux',
'COMMON_TARGET_TEST_CMAKE_ARGS=-DQT_ANDROID_ABIS="x86;x86_64"',
'ANDROID_EMULATOR=emulator_x86_api_28'
]

View File

@@ -17,6 +17,8 @@ Configurations:
Environment variables: [
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64" -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFEATURE_gds=OFF -DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE -DINPUT_headersclean=ON -DQT_FEATURE_open62541_security=OFF',
'VCPKG_HOST_TRIPLET=universal-osx-qt',
'VCPKG_TARGET_TRIPLET=universal-osx-qt',
]
# Test on all supported macOS versions (deployment targets)
@@ -41,6 +43,13 @@ Configurations:
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
-
Id: 'macos-26-x86_64-tests'
Template: 'qtci-macos-26-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'TestOnly', 'Packaging', 'DoNotAbortTestingOnFirstFailure']
Platform dependency: 'macos-universal-on-arm64'
Environment variables: [ 'COIN_CTEST_IGNORE_EXIT_CODE=1' ]
# And arm64
@@ -48,25 +57,25 @@ Configurations:
Id: 'macos-13-arm64-tests'
Template: 'qtci-macos-13-arm-107'
Compiler: 'Clang'
Features: ['TestOnly', 'Packaging']
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
-
Id: 'macos-14-arm64-tests'
Template: 'qtci-macos-14-arm-106'
Compiler: 'Clang'
Features: ['TestOnly', 'Packaging']
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
-
Id: 'macos-15-arm64-tests'
Template: 'qtci-macos-15-arm-104'
Compiler: 'Clang'
Features: ['TestOnly', 'Packaging']
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
-
Id: 'macos-26-arm64-tests'
Template: 'qtci-macos-26-arm-104'
Compiler: 'Clang'
Features: ['TestOnly', 'Packaging']
Features: ['Sccache', 'TestOnly', 'Packaging']
Platform dependency: 'macos-universal-on-arm64'
# =========================================================================
@@ -81,6 +90,18 @@ Configurations:
Compiler: 'Clang'
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
'VCPKG_HOST_TRIPLET=universal-osx-qt',
'VCPKG_TARGET_TRIPLET=universal-osx-qt',
]
-
Id: 'macos-26-x86_64-developer-build'
Template: 'qtci-macos-26-x86_64-100'
Compiler: 'Clang'
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'StandaloneExamples']
Configure arguments: '-developer-build -release -force-asserts -force-debug-info -no-pch -no-framework -qtnamespace TestNamespace -make examples'
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
@@ -89,21 +110,25 @@ Configurations:
Id: 'macos-arm64-developer-build'
Template: 'qtci-macos-15-arm-104'
Compiler: 'Clang'
Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure']
Configure arguments: '-developer-build -nomake examples -debug -framework'
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
'VCPKG_HOST_TRIPLET=universal-osx-qt',
'VCPKG_TARGET_TRIPLET=universal-osx-qt',
]
-
Id: 'macos-26-arm64-developer-build'
Template: 'qtci-macos-26-arm-104'
Compiler: 'Clang'
Features: ['DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'Insignificant']
Features: ['Sccache', 'DoNotRunTests', 'WarningsAreErrors', 'UseConfigure', 'Insignificant']
Configure arguments: '-developer-build -nomake examples -debug -framework'
Environment variables: [
'CMAKE_ARGS=-DOPENSSL_ROOT_DIR={{.Env.OPENSSL_DIR}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DQT_DEPLOY_FFMPEG=TRUE',
'VCPKG_HOST_TRIPLET=arm64-osx-qt',
'VCPKG_TARGET_TRIPLET=arm64-osx-qt',
]
# Test on all supported macOS versions (deployment targets)

View File

@@ -1,7 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.4'
'rhel-9.6'
],
cmake_platforms_target_android.yaml: [
'android-15-x86_64-on-linux',

View File

@@ -1,7 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.4',
'rhel-9.6',
'windows-11_24h2-mingw13'
],
cmake_platforms_target_android.yaml: [

View File

@@ -1,7 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.4',
'rhel-9.6',
'windows-11_24h2-mingw13'
],
cmake_platforms_target_android.yaml: [

View File

@@ -1,7 +1,7 @@
Version: 2
Include: [
cmake_platforms.yaml: [
'rhel-9.4'
'rhel-9.6'
],
cmake_platforms_target_android.yaml: [
'android-16-x86_64-on-linux',

View File

@@ -26,14 +26,3 @@ Configurations:
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
]
# Test clang-20 on Ubuntu 24.04 ARM64 Wayland
-
Id: 'ubuntu-24.04-arm64-clang20-cxx23'
Template: 'qtci-linux-Ubuntu-24.04-aarch64-52'
Compiler: 'Clang'
Features: ['Sccache', 'UseConfigure', 'DoNotRunTests']
Configure arguments: '-developer-build -nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-pcre -no-libudev -bundled-xcb-xinput -c++std c++23'
Environment variables: [
'COMMON_CMAKE_ARGS=-DCMAKE_C_COMPILER=clang-20 -DCMAKE_CXX_COMPILER=clang++-20',
'CMAKE_ARGS=-DQT_FEATURE_stdlib_libcpp=ON'
]

View File

@@ -13,8 +13,8 @@ Configurations:
'Protobuf_ROOT={{.Env.Protobuf_ROOT_msvc}}',
]
-
Id: 'rhel-8.10-unity-build'
Template: 'qtci-linux-RHEL-8.10-x86_64-50'
Id: 'rhel-9.6-unity-build'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
Configure arguments: '-make examples -debug -force-debug-info -headersclean -separate-debug-info -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput'

View File

@@ -9,10 +9,6 @@ Configurations:
Template: 'qtci-macos-13-x86_64-103'
Compiler: 'Clang'
Features: ['DisableTests']
-
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['DisableTests']
-
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'

View File

@@ -9,7 +9,7 @@ Configurations:
Environment variables: []
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
-
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'DebugAndRelease']
Configure arguments: ''
@@ -21,7 +21,7 @@ Configurations:
Configure arguments: ''
Environment variables: []
-
Template: 'qtci-macos-14-arm-106'
Template: 'qtci-macos-15-arm-104'
Compiler: 'Clang'
Features: ['Sccache', 'DebugAndRelease']
Configure arguments: ''
@@ -43,17 +43,30 @@ Configurations:
Environment variables: []
Environment script: ['%ProgramFiles%\Microsoft Visual Studio\2022\Professional\VC\Auxiliary\Build\vcvarsall.bat', 'amd64']
-
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
Configure arguments: ''
Environment variables: []
-
Template: 'qtci-macos-14-arm-106'
Template: 'qtci-linux-RHEL-8.10-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'DebugAndRelease', 'OldestQt', 'QtC18AndEarlier']
Configure arguments: ''
Environment variables: []
-
Template: 'qtci-macos-15-arm-104'
Compiler: 'Clang'
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
Configure arguments: ''
Environment variables: []
# Tests GCC 11
-
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'DebugAndRelease', 'OldestQt']
Configure arguments: ''
Environment variables: []
# license check
-
Template: 'qtci-linux-Ubuntu-22.04-x86_64-51'

View File

@@ -15,8 +15,3 @@ Include: [
quick-bridges.yaml
]
Configurations: []
Overrides:
# Make VxWorks tests insignificant.
-
Id: 'vxworks-x86_64-tests'
Features: ['VMSize8', 'UseConfigure', 'BuildTestsInTest', 'TestOnly', 'InsignificantTests']

View File

@@ -1,17 +1,5 @@
Version: 2
Configurations:
# Test gcc-12 on RHEL 9.4
-
Id: 'rhel-9.4-gcc12'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'InstallQt5Dependencies', 'DoNotRunTests']
Configure arguments: '-developer-build -nomake examples -release -force-debug-info -headersclean -separate-debug-info -qt-pcre -no-libudev -bundled-xcb-xinput'
Environment variables: [
'PATH=/opt/rh/gcc-toolset-12/root/usr/bin/:{{.Env.PATH}}',
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR}} -DINPUT_headersclean=ON'
]
# Test gcc-12 on RHEL 9.6
-
Id: 'rhel-9.6-gcc12'

View File

@@ -0,0 +1,13 @@
Version: 2
Include: [
quick-bridges.yaml: [
"windows-quick-bridges"
]
]
Configurations:
-
Id: 'windows-quick-bridges-dotnet'
Template: 'qtci-windows-11_24H2-x86_64-71'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesDotnet']

View File

@@ -1,16 +1,11 @@
Version: 2
Include: []
Configurations:
-
Id: 'qtgp-on-linux'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['TestOnly']
-
Id: 'qtgp-on-linux-rhel_9_6'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['TestOnly', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Packaging', 'UseConfigure']
-
Id: 'qtgp-on-macos'
Template: 'qtci-macos-14-arm-106'

View File

@@ -2,7 +2,6 @@ Version: 2
Module only: True
Include: [
cmake_platforms.yaml: [
'rhel-9.4',
'rhel-9.6'
],
cmake_platforms_target_android.yaml: [

View File

@@ -12,7 +12,6 @@ Include: [
"opensuse-16.0-developer-build",
"sles-15_sp6-static",
"windows-10_22h2-msvc2022",
"rhel-9.4",
"rhel-9.6",
"windows-11_24h2-mingw13",
"windows-11_24H2-mingw13-developer-build",

View File

@@ -13,7 +13,6 @@ Include: [
"opensuse-16.0-developer-build",
"sles-15_sp6-static",
"windows-10_22h2-msvc2022",
"rhel-9.4",
"rhel-9.6",
"windows-11_24h2-mingw13",
"windows-11_24H2-mingw13-developer-build",
@@ -40,21 +39,11 @@ Configurations:
Environment variables: [
'CMAKE_ARGS=-DCMAKE_OSX_ARCHITECTURES="x86_64;arm64"'
]
-
Id: 'Linux-RHEL_9_4_Static'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Compiler: 'GCC'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'MinimalStaticTests']
Configure arguments: '-static -no-icu -nomake examples -release -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput -no-sql-mysql'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',
'NON_QTBASE_CMAKE_ARGS=-DINPUT_headersclean=ON'
]
-
Id: 'Linux-RHEL_9_6_Static'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Features: ['Sccache', 'UseConfigure', 'MinimalStaticTests', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Packaging', 'Sccache', 'UseConfigure', 'MinimalStaticTests']
Configure arguments: '-static -no-icu -nomake examples -release -headersclean -qt-libjpeg -qt-libpng -qt-pcre -qt-harfbuzz -qt-doubleconversion -no-libudev -bundled-xcb-xinput -no-sql-mysql'
Environment variables: [
'CMAKE_ARGS=-DOpenGL_GL_PREFERENCE=LEGACY',

View File

@@ -2,7 +2,6 @@ Version: 2
Include: [
cmake_platforms.yaml: [
"documentation-warnings",
"rhel-9.4",
"rhel-9.6",
'windows-11_24h2-mingw13',
],
@@ -13,43 +12,11 @@ Include: [
'android-arm64-on-macos',
'android-armv7-on-windows',
'android-9-x86-on-linux',
'android-15-x86_64-on-linux'
'android-16-x86_64-on-linux'
],
offline_documentation.yaml
]
Configurations:
-
Id: "automotive-android-14-x86_64-on-linux"
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'ANDROID_EMULATOR=automotive_emulator_x86_64_api_34'
]
-
Id: "automotive-android-10-x86_64-on-linux"
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Target os: 'Android_ANY'
Target arch: 'x86_64'
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.4'
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}}',
'NON_QTBASE_CMAKE_ARGS=-DFFMPEG_DIR={{.Env.FFMPEG_DIR_ANDROID}}',
'NON_QTBASE_TARGET_CMAKE_ARGS= -DQT_PROTOBUF_WELL_KNOWN_TYPES_PROTO_DIR=/usr/local/include',
'ANDROID_EMULATOR=automotive_emulator_x86_64_api_29'
]
-
Id: "automotive-android-14-x86_64-on-linux-rhel_9_6"
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
@@ -58,7 +25,7 @@ Configurations:
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}}',
@@ -74,7 +41,7 @@ Configurations:
Compiler: 'GCC'
Target compiler: 'Clang'
Platform dependency: 'rhel-9.6'
Features: ['Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure', 'InsignificantTests', 'DoNotAbortTestingOnFirstFailure']
Features: ['Packaging', 'Sccache', 'WarningsAreErrors', 'AndroidTestRun', 'VMSize8', 'UseConfigure']
Environment variables: [
'TARGET_CONFIGURE_ARGS=-nomake examples -release -force-debug-info -android-ndk {{.Env.ANDROID_NDK_ROOT_LATEST}} -android-sdk {{.Env.ANDROID_SDK_ROOT}} -android-abis x86_64',
'TARGET_CMAKE_ARGS=-DCMAKE_C_COMPILER_FRONTEND_VARIANT=GNU -DCMAKE_CXX_COMPILER_FRONTEND_VARIANT=GNU -DOPENSSL_ROOT_DIR={{.Env.OPENSSL_ANDROID_HOME_LATEST}}',

View File

@@ -6,17 +6,10 @@ Include: [
"windows-quick-bridges"
],
cmake_platforms.yaml: [
"rhel-9.4"
"rhel-9.6"
]
]
Configurations:
-
Id: 'windows-quick-bridges-dotnet'
Template: 'qtci-windows-11_24H2-x86_64-71'
Compiler: 'MSVC2022'
Platform dependency: 'windows-quick-bridges'
Features: ['Packaging', 'Sccache', "DebugAndRelease", 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesDotnet']
-
Id: 'windows-quick-bridges-rust'
Template: 'qtci-windows-11_24H2-x86_64-71'
@@ -40,9 +33,9 @@ Configurations:
-
Id: 'linux-quick-bridges-python'
Template: 'qtci-linux-RHEL-9.4-x86_64-50'
Template: 'qtci-linux-RHEL-9.6-x86_64-51'
Compiler: 'GCC'
Platform dependency: 'rhel-9.4'
Platform dependency: 'rhel-9.6'
Features: ['Packaging', 'Sccache', 'UseConfigure', 'DisableTests', 'RunAsPlatformDependency', 'QtBridgesPython']
-

View File

@@ -3,7 +3,7 @@ Module only: true
Include: [
cmake_platforms.yaml: [
"windows-10_22h2-msvc2019",
"rhel-8.10"
"rhel-9.6"
],
macos.yaml: [
"macos-universal-on-arm64"

View File

@@ -4,12 +4,12 @@ plugins {
android {
namespace 'com.example.gradle_project'
compileSdk 35
compileSdk 36
defaultConfig {
applicationId "com.example.gradle_project"
minSdk 28
targetSdk 35
targetSdk 36
versionCode 1
versionName "1.0"
}

View File

@@ -6,7 +6,7 @@
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
set -e
set -ex
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
@@ -22,11 +22,12 @@ sudo mkdir -p "$sdkTargetFolder"
basePath="http://ci-files01-hki.ci.qt.io/input/android"
toolsVersion="2.1"
toolsFile="commandlinetools-linux-6609375_latest.zip"
sdkBuildToolsVersion="35.0.1"
sdkApiLevel="android-35"
toolsSha1="9172381ff070ee2a416723c1989770cf4b0d1076"
toolsVersion="19.0"
toolsFile="commandlinetools-linux-13114758_latest.zip"
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
sdkBuildToolsVersion="36.0.0"
sdkApiLevel="android-36"
toolsSha1="5fdcc763663eefb86a5b8879697aa6088b041e70"
ndkVersionLatest="r27c"
ndkSha1Latest="090e8083a715fdb1a3e402d0763c388abb03fb4e"
@@ -57,11 +58,17 @@ toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
echo "Download and unzip Android SDK"
DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile"
DownloadURL "$toolsSourceFile" "$toolsBackupUrl" "$toolsSha1" "$toolsTargetFile"
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder"
rm "$toolsTargetFile"
# Android Command-Line Tools unpacks a directory 'cmdline-tools'. Due
# to existing code, we need to move it into 'cmdline-tools/tools'
sudo mv "$sdkTargetFolder/cmdline-tools" "$sdkTargetFolder/tools"
sudo mkdir "$sdkTargetFolder/cmdline-tools"
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
function InstallNdk() {
ndkVersion=$1
@@ -115,9 +122,6 @@ sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
# But don't let the pipeline hide sdkmanager failures.
set -o pipefail
sudo mkdir "$sdkTargetFolder/cmdline-tools"
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
# shellcheck disable=SC2031
if [ "$http_proxy" != "" ]; then
@@ -145,7 +149,9 @@ cat >>~/versions.txt <<EOB
Android SDK tools = $toolsVersion
Android SDK Build Tools = $sdkBuildToolsVersion
Android SDK API level = $sdkApiLevel
Android NDK = $ndkVersion
Android NDK latest = $ndkVersionLatest
Android NDK nightly1 = $ndkVersionNightly1
Android NDK nightly2 = $ndkVersionNightly2
EOB
cd "$sdkTargetFolder/cmdline-tools/tools/bin"
@@ -178,45 +184,27 @@ echo "Unzipping the Android 9 to $minVersionDestination"
sudo unzip -o -q "$minVersionFilePath" -d "$minVersionDestination"
rm "$minVersionFilePath"
echo "Download and unzip Android 15 System Image"
maxVersionFileName="x86_64-35_r08.zip"
maxVersionDestination="$sdkTargetFolder/system-images/android-35/google_apis/"
echo "Download and unzip Android 16 System Image"
maxVersionFileName="x86_64-36_r07.zip"
maxVersionDestination="$sdkTargetFolder/system-images/android-36/google_apis/"
maxVersionFilePath="$maxVersionDestination/$maxVersionFileName"
maxVersionCiUrl="$basePath/system_images/google_apis/$maxVersionFileName"
maxVersionUrl="https://dl.google.com/android/repository/sys-img/google_apis/$maxVersionFileName"
maxVersionSha1="d79169884cabc6680cb29d32c2112ad46c858c1b"
maxVersionSha1="c6bf44bdcd885bb902b4ba752d111a073ad7a817"
mkdir -p "$maxVersionDestination"
DownloadURL "$maxVersionCiUrl" "$maxVersionUrl" "$maxVersionSha1" "$maxVersionFilePath"
echo "Unzipping the Android 15 to $maxVersionDestination"
echo "Unzipping the Android 16 to $maxVersionDestination"
sudo unzip -o -q "$maxVersionFilePath" -d "$maxVersionDestination"
rm "$maxVersionFilePath"
echo "Download and unzip Android 16 System Image for insignificant"
insignificantMaxVersionFileName="x86_64-36_r06.zip"
insignificantMaxVersionDestination="$sdkTargetFolder/system-images/android-36/google_apis/"
insignificantMaxVersionFilePath="$insignificantMaxVersionDestination/$insignificantMaxVersionFileName"
insignificantMaxVersionCiUrl="$basePath/system_images/google_apis/$insignificantMaxVersionFileName"
insignificantMaxVersionUrl="https://dl.google.com/android/repository/sys-img/google_apis/$insignificantMaxVersionFileName"
insignificantMaxVersionSha1="a9b0b4a0488e0c6c380f5485507950f011388511"
mkdir -p "$insignificantMaxVersionDestination"
DownloadURL "$insignificantMaxVersionCiUrl" "$insignificantMaxVersionUrl" "$insignificantMaxVersionSha1" "$insignificantMaxVersionFilePath"
echo "Unzipping the Android 16 insignicant to $insignificantMaxVersionDestination"
sudo unzip -o -q "$insignificantMaxVersionFilePath" -d "$insignificantMaxVersionDestination"
rm "$insignificantMaxVersionFilePath"
echo "Checking the contents of Android SDK again..."
ls -l "$sdkTargetFolder"
echo "no" | ./avdmanager create avd -n emulator_x86_api_28 -c 2048M -f \
-k "system-images;android-28;google_apis;x86"
echo "no" | ./avdmanager create avd -n emulator_x86_64_api_35 -c 2048M -f \
-k "system-images;android-35;google_apis;x86_64"
echo "no" | ./avdmanager create avd -n emulator_x86_64_api_36 -c 2048M -f \
-k "system-images;android-36;google_apis;x86_64"
@@ -240,7 +228,7 @@ echo "no" | ./avdmanager create avd -n automotive_emulator_x86_64_api_29 -c 2048
# To be used by the VMs to start the emulator for tests
emulator_script_filename="android_emulator_launcher.sh"
scripts_dir_name="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"
cp "${scripts_dir_name}/${emulator_script_filename}" "${HOME}"
cp "${scripts_dir_name}/../unix/${emulator_script_filename}" "${HOME}"
ANDROID_EMULATOR_RUNNER="${HOME}/${emulator_script_filename}"
SetEnvVar "ANDROID_EMULATOR_RUNNER" "$ANDROID_EMULATOR_RUNNER"

View File

@@ -12,7 +12,7 @@
},
"directory": "../work/qt/$(env:TESTED_MODULE_COIN)",
"ir": "$(env:IRNAME)",
"name": "qt_$(env:PACKAGE)_$(env:MODULE)_dev_$(env:TARGET_OS_COIN)"
"name": "qt_$(env:PACKAGE)_$(env:MODULE)_(env:TESTED_MODULE_BRANCH_COIN)_$(env:TARGET_OS_COIN)"
},
"VCSIntegration": {
"vcs_mapping": {

View File

@@ -51,13 +51,13 @@
"_active": true
},
"Qt-CtorMissingParentArgument": {
"_active": true
"_active": false
},
"Qt-DetachingTemporary": {
"_active": true
},
"Qt-FullyQualifiedMocTypes": {
"_active": true
"_active": false
},
"Qt-FunctionArgsByValueRef": {
"_active": false
@@ -69,13 +69,13 @@
"_active": true
},
"Qt-Generic-InitializeAllFieldsInConstructor": {
"_active": true
"_active": false
},
"Qt-Generic-MissingBaseCopy": {
"_active": true
"_active": false
},
"Qt-Generic-MissingIncludeGuard": {
"_active": true
"_active": false
},
"Qt-Generic-MissingTrCall": {
"_active": true
@@ -84,7 +84,7 @@
"_active": true
},
"Qt-Generic-NoFunctionDefinitionInHeader": {
"_active": true
"_active": false
},
"Qt-Generic-NoIrregularInclude": {
"_active": true
@@ -114,7 +114,7 @@
"_active": true
},
"Qt-IncorrectEmit": {
"_active": true
"_active": false
},
"Qt-InstallEventFilter": {
"_active": true
@@ -129,16 +129,16 @@
"_active": true
},
"Qt-MissingQObjectMacro": {
"_active": true
"_active": false
},
"Qt-MutableContainerKey": {
"_active": true
},
"Qt-NonPodGlobalStatic": {
"_active": true
"_active": false
},
"Qt-OldStyleConnect": {
"_active": true
"_active": false
},
"Qt-OverloadedSignal": {
"_active": true
@@ -162,7 +162,7 @@
"_active": true
},
"Qt-QPropertyWithoutNotify": {
"_active": true
"_active": false
},
"Qt-QStringArg": {
"_active": true
@@ -186,7 +186,7 @@
"_active": true
},
"Qt-RuleOfThree": {
"_active": true
"_active": false
},
"Qt-RuleOfTwoSoft": {
"_active": true

View File

@@ -3,6 +3,10 @@
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# This script builds and installs FFmpeg static or shared (default) libs
# It can take an optional output parameter for installation:
#
# install-ffmpeg-linx.sh shared ~/my/install/path
set -ex
source "${BASH_SOURCE%/*}/../unix/ffmpeg-installation-utils.sh"
@@ -12,7 +16,8 @@ build_type=$(get_ffmpeg_build_type "$1")
ffmpeg_source_dir=$(download_ffmpeg)
ffmpeg_name=$(basename "$ffmpeg_source_dir")
ffmpeg_config_options=$(get_ffmpeg_config_options "$build_type")
prefix="/usr/local/$ffmpeg_name"
default_prefix="/usr/local/$ffmpeg_name"
prefix="${2:-$default_prefix}"
pkgconfig_path="$PKG_CONFIG_PATH"
install_ff_nvcodec_headers() {
@@ -95,5 +100,6 @@ if [ "$build_type" == "shared" ]; then
"$fix_dependencies" "$output_dir"
fi
sudo mv "$output_dir" "/usr/local"
sudo mkdir -p "$prefix"
sudo mv "$output_dir"/* "$prefix"
set_ffmpeg_dir_env_var "FFMPEG_DIR" "$prefix"

View File

@@ -8,17 +8,17 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# This script will install node.js 18.16.0
version="18.16.0"
version="22.21.1"
uname_m="$(uname -m)"
case "$uname_m" in
x86_64|amd64)
sha256="44d93d9b4627fe5ae343012d855491d62c7381b236c347f7666a7ad070f26548"
sha256="680d3f30b24a7ff24b98db5e96f294c0070f8f9078df658da1bce1b9c9873c88"
pkgname="node-v$version-linux-x64.tar.xz"
dirname="node-v$version-linux-x64"
;;
arm64|aarch64)
sha256="c81dfa0bada232cb4583c44d171ea207934f7356f85f9184b32d0dde69e2e0ea"
sha256="e660365729b434af422bcd2e8e14228637ecf24a1de2cd7c916ad48f2a0521e1"
pkgname="node-v$version-linux-arm64.tar.xz"
dirname="node-v$version-linux-arm64"
;;

View File

@@ -4,9 +4,7 @@
echo "Installing vcpkg android ports"
pushd "${BASH_SOURCE%/*}/vcpkg" || exit
cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" .
pushd "${BASH_SOURCE%/*}/../shared/vcpkg" || exit
"$VCPKG_ROOT/vcpkg" install --triplet x86-android-qt --x-install-root x86-android-qt-tmp --debug
"$VCPKG_ROOT/vcpkg" install --triplet x86_64-android-qt --x-install-root x86_64-android-qt-tmp --debug

View File

@@ -6,14 +6,13 @@ set -ex
source "${BASH_SOURCE%/*}/../unix/sccache.sh"
targetVersion=0.2.14
targetVersion=v0.11.0
if [[ $(uname -m) == 'aarch64' ]]; then
targetArch=aarch64-unknown-linux-musl
sha1=0f9b57c423d77f7aa89bb642864ac7689d84d6a0
sha1=b7606d0fb461c0aa7351f511d9223416a322d52a
else
targetArch=x86_64-unknown-linux-musl
sha1=281680c0fc2c09173e94d12ba45d9f1b8e62e5b3
sha1=ef389a20c85b732cccd48436a5e28ed40bed2806
fi
installSccache "$targetArch" "$targetVersion" "$sha1"

View File

@@ -8,79 +8,120 @@
set -ex
# shellcheck source=../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# shellcheck source=../unix/check_and_set_proxy.sh
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/android"
sdkTargetFolder="$targetFolder/sdk"
basePath="/net/ci-files01-hki.ci.qt.io/hdd/www/input/android"
sudo mkdir -p "$sdkTargetFolder"
toolsVersion="2.1"
# toolsFile dertermines tools version
toolsFile="commandlinetools-mac-6609375_latest.zip"
basePath="http://ci-files01-hki.ci.qt.io/input/android"
toolsVersion="19.0"
toolsFile="commandlinetools-mac-13114758_latest.zip"
toolsBackupUrl="https://dl.google.com/android/repository/$toolsFile"
sdkBuildToolsVersion="35.0.1"
sdkApiLevel="android-35"
toolsSha1="c3e06a1959762e89167d1cbaa988605f6f7c1d24"
ndkVersionLatest="r27c"
ndkSha1Latest="0217c10ffbec496bb9fbfbb3c6fc2477c6b77297"
# Preview NDK that is in alpha/beta/RC state
ndkVersionPreview="r29-beta2"
ndkSha1Preview="09be4f8fb626a9c93415198ea8e75d8d82f528fa"
# Non-latest (but still supported by the qt/qt5 branch) NDKs are installed for nightly targets in:
# coin/platform_configs/nightly_android.yaml
ndkVersionLatest="r27c"
ndkVersionPreview="r29-beta2"
ndkVersionNightly1="$ndkVersionLatest" # If same version as latest = skip NDK install for nightly
ndkVersionNightly2="$ndkVersionLatest"
sdkBuildToolsVersion="35.0.1"
ndkVersionNightly1=$ndkVersionLatest # Set as same version as latest = skip NDK install in provisioning
ndkSha1Nightly1=$ndkSha1Latest
ndkVersionNightly2=$ndkVersionLatest
ndkSha1Nightly2=$ndkSha1Latest
sdkBuildToolsVersion="36.0.0"
# this is compile sdk version
sdkApiLevel="android-35"
sdkApiLevel="android-36"
toolsTargetFile="/tmp/$toolsFile"
toolsSourceFile="$basePath/$toolsFile"
echo "Download and unzip Android SDK"
DownloadURL "$toolsSourceFile" "$toolsBackupUrl" "$toolsSha1" "$toolsTargetFile"
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder"
rm "$toolsTargetFile"
# Android Command-Line Tools unpacks a directory 'cmdline-tools'. Due
# to existing code, we need to move it into 'cmdline-tools/tools'
sudo mv "$sdkTargetFolder/cmdline-tools" "$sdkTargetFolder/tools"
sudo mkdir "$sdkTargetFolder/cmdline-tools"
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
function InstallNdk() {
ndkVersion=$1
ndkSha1=$2
if [[ ! -d "${targetFolder}/android-ndk-${ndkVersion}" ]]; then
echo "Unzipping Android NDK $ndkVersion to '${targetFolder}'"
ndkSourceFile="$basePath/android-ndk-$ndkVersion-darwin*.zip"
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
fi
ndkFile="android-ndk-$ndkVersion-darwin.zip"
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
echo "Unzipping Android NDK to '$targetFolder'"
# Get the package base directory name as string
zipBase=$(sudo zipinfo -1 "$ndkTargetFile" 2>/dev/null | awk '!seen {sub("/.*",""); print; seen=1}')
sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
rm "$ndkTargetFile"
androidNdkRoot="${targetFolder}/${zipBase}"
}
InstallNdk $ndkVersionLatest
SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$targetFolder/android-ndk-$ndkVersionLatest"
InstallNdk $ndkVersionLatest $ndkSha1Latest
SetEnvVar "ANDROID_NDK_ROOT_LATEST" "$androidNdkRoot"
if [ "$ndkVersionPreview" != "$ndkVersionLatest" ]; then
InstallNdk $ndkVersionPreview
SetEnvVar "ANDROID_NDK_ROOT_PREVIEW" "$targetFolder/android-ndk-$ndkVersionPreview"
InstallNdk $ndkVersionPreview $ndkSha1Preview
SetEnvVar "ANDROID_NDK_ROOT_PREVIEW" "$androidNdkRoot"
fi
if [ "$ndkVersionNightly1" != "$ndkVersionLatest" ]; then
InstallNdk $ndkVersionNightly1
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY1" "$targetFolder/android-ndk-$ndkVersionNightly1"
InstallNdk $ndkVersionNightly1 $ndkSha1Nightly1
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY1" "$androidNdkRoot"
fi
if [ "$ndkVersionNightly2" != "$ndkVersionLatest" ]; then
InstallNdk $ndkVersionNightly2
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY2" "$targetFolder/android-ndk-$ndkVersionNightly2"
InstallNdk $ndkVersionNightly2 $ndkSha1Nightly2
SetEnvVar "ANDROID_NDK_ROOT_NIGHTLY2" "$androidNdkRoot"
fi
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
echo "Changing ownership of Android files."
sudo chown -R qt:wheel "$targetFolder"
sudo chmod -R 755 $targetFolder
# Run the following command under `eval` or `sh -c` so that the shell properly splits it
# Stop the sdkmanager from printing thousands of lines of #hashmarks.
# Run the following command under `eval` or `sh -c` so that the shell properly splits it.
sdkmanager_no_progress_bar_cmd="tr '\r' '\n' | grep -v '^\[[ =]*\]'"
sudo mkdir "$sdkTargetFolder/cmdline-tools"
sudo mv "$sdkTargetFolder/tools" "$sdkTargetFolder/cmdline-tools"
# But don't let the pipeline hide sdkmanager failures.
set -o pipefail
echo "Running SDK manager for platforms;$sdkApiLevel, platform-tools and build-tools;$sdkBuildToolsVersion."
(echo "y"; echo "y") | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" "--sdk_root=$sdkTargetFolder" \
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
| eval "$sdkmanager_no_progress_bar_cmd"
# shellcheck disable=SC2031
if [ "$http_proxy" != "" ]; then
proxy_host=$(echo "$proxy" | cut -d'/' -f3 | cut -d':' -f1)
proxy_port=$(echo "$proxy" | cut -d':' -f3)
echo "y" | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" --sdk_root=$sdkTargetFolder \
--no_https --proxy=http --proxy_host="$proxy_host" --proxy_port="$proxy_port" \
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
| eval "$sdkmanager_no_progress_bar_cmd"
else
echo "y" | "$sdkTargetFolder/cmdline-tools/tools/bin/sdkmanager" --sdk_root=$sdkTargetFolder \
"platforms;$sdkApiLevel" "platform-tools" "build-tools;$sdkBuildToolsVersion" \
| eval "$sdkmanager_no_progress_bar_cmd"
fi
echo "Checking the contents of Android SDK..."
ls -l "$sdkTargetFolder"

View File

@@ -0,0 +1,3 @@
#!/usr/bin/env bash
pip3 install --user lipomerge

View File

@@ -2,6 +2,8 @@
# Copyright (C) 2021 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
set -ex
# shellcheck source=./../unix/DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
@@ -20,6 +22,11 @@ function InstallXCode() {
sourceFile=$1
version=$2
if ! [[ $version =~ ^[0-9] ]]; then
echo "Error: version input must start with a digit"
exit 1
fi
echo "Uncompressing and installing '$sourceFile'"
if [[ $sourceFile =~ tar ]]; then
cd /Applications/ && sudo tar -zxf "$sourceFile"
@@ -35,7 +42,7 @@ function InstallXCode() {
fi
echo "Versioning application bundle"
majorVersion=$(echo "$version" | cut -d '.' -f 1)
majorVersion="${version%%[^0-9]*}"
versionedAppBundle="/Applications/Xcode${majorVersion}.app"
sudo mv /Applications/Xcode*.app "${versionedAppBundle}"
@@ -46,11 +53,12 @@ function InstallXCode() {
sudo xcodebuild -license accept
echo "Install packages"
# -runFirstLaunch is valid in 9.x
sudo xcodebuild -runFirstLaunch || true
sudo xcodebuild -runFirstLaunch
# Metal toolchain not included by default in Xcode 26
xcodebuild -downloadComponent MetalToolchain || true
if ((majorVersion >= 26)); then
xcodebuild -downloadComponent MetalToolchain
fi
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
sudo /usr/sbin/DevToolsSecurity -enable

View File

@@ -7,10 +7,10 @@ source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
# This script will install Nodejs
version="18.16.0"
version="22.21.1"
urlCache="http://ci-files01-hki.ci.qt.io/input/nodejs/node-v$version.pkg"
urlOffcial="https://nodejs.org/dist/v$version/node-v$version.pkg"
sha256="156aa5b9580288fb0b3c6134eb8fac64e50745d78d33eebe9e29eb7ff87b8e1e"
sha256="182ad62634eabbb11497c2284a3172771944f1cd17e23b143e778bd189af6d65"
DownloadURL $urlCache $urlOffcial $sha256 "/tmp/node-v$version.pkg"
sudo installer -pkg "/tmp/node-v$version.pkg" -target /

View File

@@ -0,0 +1,34 @@
#!/usr/bin/env bash
# Copyright (C) 2025 The Qt Company Ltd.
# Copyright (C) 2017 Pelagicore AG
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
# This script installs python3 on macOS ARM hosts.
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# Use 3.12 as a default python
# Note: Make sure that it's a version where dependencies are stored in CI-files.
python_ver="3.12.11"
export PYTHON_BUILD_MIRROR_URL="https://ci-files01-hki.ci.qt.io/input/python/"
export PYTHON_BUILD_MIRROR_URL_SKIP_CHECKSUM=1
pyenv install "$python_ver"
/Users/qt/.pyenv/versions/$python_ver/bin/pip3 install --user virtualenv wheel html5lib
/Users/qt/.pyenv/versions/$python_ver/bin/pip3 install --user -r ${BASH_SOURCE%/*}/../shared/requirements.txt
SetEnvVar "PYTHON3_PATH" "/Users/qt/.pyenv/versions/$python_ver/bin/"
SetEnvVar "PIP3_PATH" "/Users/qt/.pyenv/versions/$python_ver/bin/"
SetEnvVar "PATH" "\$PYTHON3_PATH:\$PATH"
# Provisioning during installation says:
# 'The script sbom2doc is installed in '$HOME/.local/bin' which is not on PATH.'
# hence the explicit assignment to SBOM_PYTHON_APPS_PATH.
SetEnvVar "SBOM_PYTHON_APPS_PATH" "/Users/qt/.local/bin"
# Set SBOM_PYTHON_INTERP_PATH to Python3 instance which was used to install SBOM packages from requirements
SetEnvVar "SBOM_PYTHON_INTERP_PATH" "/Users/qt/.pyenv/versions/$python_ver/bin/python3"
echo "python3 = $python_ver" >> ~/versions.txt

View File

@@ -6,12 +6,12 @@ set -ex
source "${BASH_SOURCE%/*}/../unix/sccache.sh"
targetVersion=0.2.14
targetVersion=v0.11.0
if [[ `arch` == arm* ]]; then
targetArch=aarch64-apple-darwin
sha1=ad10cd4b8889fa08e193a4165ac664876a27c0dc
sha1=3261ab99e5bb1f9f36eafa597d11491bd85da5ec
else
targetArch=x86_64-apple-darwin
sha1=764bc1664c0ff616d9980a6d127175d0a2041781
sha1=57810789bf2813dfa9bf5da26a712dc30b56ce16
fi
installSccache "$targetArch" "$targetVersion" "$sha1"

View File

@@ -0,0 +1,13 @@
set(VCPKG_CMAKE_SYSTEM_NAME Darwin)
set(VCPKG_OSX_ARCHITECTURES arm64)
set(VCPKG_TARGET_ARCHITECTURE arm64)
# Default settings of the triplet from the official vcpkg registry
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
# Qt custom per-port customizations
if(PORT MATCHES "openssl")
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_FIXUP_ELF_RPATH ON)
endif()

View File

@@ -0,0 +1,13 @@
set(VCPKG_CMAKE_SYSTEM_NAME Darwin)
set(VCPKG_OSX_ARCHITECTURES x86_64)
set(VCPKG_TARGET_ARCHITECTURE x64)
# Default settings of the triplet from the official vcpkg registry
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)
# Qt custom per-port customizations
if(PORT MATCHES "openssl")
set(VCPKG_LIBRARY_LINKAGE dynamic)
set(VCPKG_FIXUP_ELF_RPATH ON)
endif()

View File

@@ -5,5 +5,5 @@
"repository": "https://git.qt.io/aledelev/vcpkg",
"baseline": "9c5c2a0ab75aff5bcd08142525f6ff7f6f7ddeee"
},
"overlay-triplets": [ "./../../shared/triplets" ]
"overlay-triplets": [ "./../triplets" ]
}

View File

@@ -1,4 +1,4 @@
vcpkg_tool_release_tag=2025-09-03
windows_x64_checksum=4523B5B2CE77BD0F6DCA55140D831EA6EB03046D5F4496C85DF94AC1A7EFAB01
windows_arm64_checksum=1E8653243C0E7D73FF1F0F3F25A55C8154888F331510F9545AD200EDD3CCB962
linux_checksum=f0c4b30afc2f7baa9cc4372ac325042418251343e0192dbfac94c4f602e9d3ed
unix_checksum=f0c4b30afc2f7baa9cc4372ac325042418251343e0192dbfac94c4f602e9d3ed

View File

@@ -7,4 +7,22 @@ set -ex
# shellcheck source=../shared/http_proxy.txt
source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
{ wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io && echo "Setting http_proxy to $proxy" && export http_proxy=$proxy; } || echo "Proxy not detected at $proxy"
# check using wget, if not, check with curl.
if command -v wget > /dev/null; then
if wget --quiet --execute "http_proxy=$proxy" --spider "proxy.intra.qt.io"; then
echo "Setting http_proxy to $proxy"
export http_proxy=$proxy
else
echo "Proxy not detected at $proxy"
fi
elif command -v curl > /dev/null; then
if curl --silent --proxy "$proxy" --head "proxy.intra.qt.io"; then
echo "Setting http_proxy to $proxy"
export http_proxy=$proxy
else
echo "Proxy not detected at $proxy"
fi
else
echo "Error: Neither 'wget' or 'curl' is installed. Cannot attempt to setup proxy."
exit 1
fi

View File

@@ -82,12 +82,13 @@ build_ffmpeg_android() {
local cc=${toolchain_bin}/${target_toolchain_arch}${api_version}-clang
local ar=${toolchain_bin}/llvm-ar
local ranlib=${toolchain_bin}/llvm-ranlib
local strip=${toolchain_bin}/llvm-strip
local ffmpeg_config_options
ffmpeg_config_options=$(get_ffmpeg_config_options $build_type)
ffmpeg_config_options+=" --enable-cross-compile --target-os=android --enable-jni --enable-mediacodec --enable-openssl --enable-pthreads --enable-neon --disable-asm --disable-indev=android_camera"
ffmpeg_config_options+=" --arch=$target_arch --cpu=${target_cpu} --sysroot=${sysroot} --sysinclude=${sysroot}/usr/include/"
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib}"
ffmpeg_config_options+=" --cc=${cc} --cxx=${cxx} --ar=${ar} --ranlib=${ranlib} --strip=${strip}"
ffmpeg_config_options+=" --extra-cflags=-I${openssl_include} --extra-ldflags=-L${openssl_libs}"
if [ $page_size == "use_16kb_page_size" ]; then
ffmpeg_config_options+=" --extra-ldflags=-Wl,-z,max-page-size=16384"

View File

@@ -158,8 +158,8 @@ create_xcframework() {
local fw_a="$ffmpeg_source_dir/build_ios/${target_platform_a}/installed$prefix/framework/${framework_name}.framework"
local fw_b="$ffmpeg_source_dir/build_ios/${target_platform_b}/installed$prefix/framework/${framework_name}.framework"
sudo mkdir -p "$prefix/framework/"
sudo xcodebuild -create-xcframework -framework $fw_a -framework $fw_b -output "${prefix}/framework/${framework_name}.xcframework"
sudo mkdir -p "$prefix/lib/"
sudo xcodebuild -create-xcframework -framework $fw_a -framework $fw_b -output "${prefix}/lib/${framework_name}.xcframework"
}
build_ffmpeg_ios "x86_64-simulator"
@@ -180,9 +180,5 @@ done
# xcframeworks are already installed directly into the target output directory.
# We need to install headers
sudo cp -r "$ffmpeg_source_dir/build_ios/arm64-iphoneos/installed$prefix/include" $prefix
# The set_ffmpeg_dir_env_var requires the presence of the "lib" subfolder in order to validate
# our FFmpeg install. On iOS we don't use this subfolder, we only rely on the "framework" subfolder.
# So we create a dummy "lib" folder to pass the check.
sudo mkdir -p "${prefix}/lib"
set_ffmpeg_dir_env_var "FFMPEG_DIR_IOS" $prefix

View File

@@ -7,12 +7,12 @@ source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
echo "Installing vcpkg ports"
pushd "${BASH_SOURCE%/*}/vcpkg" || exit
cp "${BASH_SOURCE%/*}/../shared/vcpkg-configuration.json" .
pushd "${BASH_SOURCE%/*}/../shared/vcpkg" || exit
install_root=x64-linux-qt-tmp
install_root=$1-tmp
vcpkg_extra_args=$2
"$VCPKG_ROOT/vcpkg" install --triplet x64-linux-qt --x-install-root $install_root --debug
"$VCPKG_ROOT/vcpkg" install --triplet $1 --x-install-root $install_root --debug $vcpkg_extra_args
cmake "-DVCPKG_EXECUTABLE=$VCPKG_ROOT/vcpkg"\
"-DVCPKG_INSTALL_ROOT=$PWD/$install_root"\

View File

@@ -34,7 +34,7 @@ do
"vcpkg_tool_release_tag")
vcpkgToolReleaseTag=${keyValue[1]}
;;
"linux_checksum")
"unix_checksum")
vcpkgToolChecksum=${keyValue[1]}
;;
esac
@@ -86,7 +86,7 @@ SetEnvVar "VCPKG_ROOT" "$vcpkgRoot"
export VCPKG_ROOT="$vcpkgRoot"
# Set a source for vcpkg Binary and Asset Cache
# The `coin/provisioning/common/linux/mount-vcpkg-cache-drive.sh` script is
# The `coin/provisioning/common/<platform>/mount-vcpkg-cache-drive.sh` script is
# mounting the SMB share located in `vcpkg-server.ci.qt.io/vcpkg` to
# $HOME/vcpkg-cache/
export VCPKG_BINARY_SOURCES="files,$HOME/vcpkg-cache/binaries,readwrite"

View File

@@ -1,104 +0,0 @@
#!/usr/bin/env bash
# Copyright (C) 2020 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
PROVISIONING_DIR="$(dirname "$0")/../../"
source "${BASH_SOURCE%/*}/DownloadURL.sh"
source "$PROVISIONING_DIR"/common/unix/common.sourced.sh
set -ex
# This script will fetch and extract pre-buildt squish package for Linux and Mac.
# Squish is need by Release Test Automation (RTA)
version="8.1.0"
qtBranch="68x"
installFolder="/opt"
squishFolder="$installFolder/squish"
preBuildCacheUrl="ci-files01-hki.ci.qt.io:/hdd/www/input/squish/jenkins_build/stable"
licenseFile=".squish-license"
licenseBranch="squish_license"
licenseUrl="http://ci-files01-hki.ci.qt.io/input/squish/coin/$licenseBranch/$licenseFile"
licenseSHA="e84b499a2011f9bb1a6eefc7b2338d7ae770927a"
testSuiteUrl="ci-files01-hki.ci.qt.io:/hdd/www/input/squish/coin/suite_test_squish"
testSuiteLocal="/tmp/squish_test_suite"
if uname -a |grep -q Darwin; then
compressedFolder="prebuild-squish-$version-$qtBranch-mac-x64.tar.gz"
sha1="03a0c713d0d328667df2e7804f2e4d507707b849"
else
if [ "$PROVISIONING_ARCH" = arm64 ] ; then
compressedFolder="prebuild-squish-$version-$qtBranch-linux-arm64.tar.gz"
sha1="f6a2eb69faed64f13b164fb8d056182c41d2952c"
else
compressedFolder="prebuild-squish-$version-$qtBranch-linux-x64.tar.gz"
sha1="b798417ddf4b668306cb90d551df906828644152"
fi
fi
mountFolder="/tmp/squish"
sudo mkdir "$mountFolder"
sudo mkdir "$testSuiteLocal"
# Check which platform
if uname -a |grep -q Darwin; then
usersGroup="staff"
elif uname -a |grep -q "el7"; then
usersGroup="qt"
elif uname -a |grep -q "Ubuntu"; then
usersGroup="users"
else
usersGroup="users"
fi
targetFileMount="$mountFolder"/"$compressedFolder"
echo "Mounting Squish packages from $preBuildCacheUrl to $mountFolder"
echo "Mounting Squish test suite from $testSuiteUrl to $testSuiteLocal"
if uname -a |grep -q Darwin; then
sudo mount -o locallocks "$preBuildCacheUrl" "$mountFolder"
sudo mount -o locallocks "$testSuiteUrl" "$testSuiteLocal"
else
sudo mount "$preBuildCacheUrl" "$mountFolder"
sudo mount "$testSuiteUrl" "$testSuiteLocal"
fi
echo "Create $installFolder if needed"
if [ ! -d "$installFolder" ]; then
sudo mkdir "$installFolder"
fi
VerifyHash "$targetFileMount" "$sha1"
echo "Uncompress $compressedFolder"
sudo tar -xzf "$targetFileMount" --directory "$installFolder"
if uname -a |grep -q Darwin; then
sudo xattr -r -c "$squishFolder"
fi
echo "Download Squish license"
DownloadURL "$licenseUrl" "$licenseUrl" "$licenseSHA" "$HOME/$licenseFile"
echo "Changing ownerships"
sudo chown -R qt:$usersGroup "$squishFolder"
sudo chown qt:$usersGroup "$HOME/$licenseFile"
echo "Verifying Squish, available installations:"
ls -la $squishFolder
cd $squishFolder
for squishInstallation in */ ; do
if "$squishInstallation/bin/squishrunner" --testsuite "$testSuiteLocal" | grep "Squish test run successfully" ; then
echo "Squish in $squishInstallation tested successfully"
else
echo "Testing Squish in $squishInstallation failed! Squish wasn't installed correctly."
exit 1
fi
done
echo "Clean up installation temp dirs"
echo "- Unmounting $mountFolder"
sudo diskutil unmount force "$mountFolder" || sudo umount -f "$mountFolder" || true
echo "- Unmounting $testSuiteLocal"
sudo diskutil unmount force "$testSuiteLocal" || sudo umount -f "$testSuiteLocal" || true

View File

@@ -38,14 +38,14 @@ $ndkCachedUrlNightly2 = "\\ci-files01-hki.ci.qt.io\provisioning\android\android-
$ndkOfficialUrlNightly2 = "https://dl.google.com/android/repository/android-ndk-$ndkVersionNightly2-windows.zip"
# SDK
$toolsVersion = "2.1"
$toolsFile = "commandlinetools-win-6609375_latest.zip"
$toolsVersion = "19.0"
$toolsFile = "commandlinetools-win-13114758_latest.zip"
$sdkApi = "ANDROID_API_VERSION"
$sdkApiLevel = "android-35"
$sdkBuildToolsVersion = "35.0.1"
$sdkApiLevel = "android-36"
$sdkBuildToolsVersion = "36.0.0"
$toolsCachedUrl= "\\ci-files01-hki.ci.qt.io\provisioning\android\$toolsFile"
$toolsOfficialUrl = "https://dl.google.com/android/repository/$toolsFile"
$toolsChecksum = "e2e19c2ff584efa87ef0cfdd1987f92881323208"
$toolsChecksum = "54a582f3bf73e04253602f2d1c80bd5868aac115"
$cmdFolder = "c:\Utils\Android\cmdline-tools"
$sdkZip = "c:\Windows\Temp\$toolsFile"
@@ -96,9 +96,13 @@ if ($ndkVersionNightly2 -ne $ndkVersionLatest) {
Write-Output "Android NDK = $ndkVersionNightly2" >> ~/versions.txt
}
# Android Command-Line Tools unpacks a directory 'cmdline-tools'. Due
# to existing code, weed to move it into 'cmdline-tools/tools'
Write-Host "Downloading Android Command-Line Tools"
$toolsFolder = Install $toolsCachedUrl $sdkZip $toolsChecksum $toolsOfficialUrl
Rename-Item -Path "$toolsFolder" -NewName "c:\Utils\Android\tools"
New-Item -ItemType directory -Path $cmdFolder
Move-Item -Path $toolsFolder -Destination $cmdFolder\
Move-Item -Path "c:\Utils\Android\tools" -Destination "$cmdFolder\tools"
Set-EnvironmentVariable "ANDROID_SDK_ROOT" "C:\Utils\Android"
Set-EnvironmentVariable "ANDROID_API_VERSION" $sdkApiLevel

View File

@@ -0,0 +1,20 @@
# Copyright (C) 2025 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
. "$PSScriptRoot\helpers.ps1"
$script:nugetVersion = "v6.11.0"
$script:nugetPackage = "nuget_$nugetVersion.exe"
$script:packageRoot = "C:\Utils\NuGet\"
$script:cachedUrl = "\\ci-files01-hki.ci.qt.io\provisioning\windows\nuget\$nugetPackage"
$script:officialUrl = "https://dist.nuget.org/win-x86-commandline/$nugetVersion/nuget.exe"
$script:sdkChecksumSha1 = "5443887cfb5283da5021388d146ebb5febdc82e9"
$script:package_path = "$packageRoot\\$nugetPackage"
New-Item -ItemType Directory -Path "$packageRoot"
Download $officialUrl $cachedUrl $package_path
Verify-Checksum $package_path $sdkChecksumSha1 sha1
Write-Host "Installing Nuget"
Set-EnvironmentVariable "NUGET_EXE_PATH" "$package_path"

View File

@@ -3,14 +3,34 @@
# Install mozilla sccache
param(
[string]$arch="x86_64-pc-windows-msvc",
[string]$version="0.2.14",
[string]$sha1="bbdceb59d6fd7b6a3af02fb36f65c8bf324757b0"
)
. "$PSScriptRoot\helpers.ps1"
$version="v0.11.0-jimis3"
$cpu_arch = Get-CpuArchitecture
switch ($cpu_arch) {
arm64 {
$arch="aarch64-pc-windows-msvc"
$sha1="be429b6c33da9408bba827815d04fceeadf6dbd1"
break
}
x64 {
$arch="x86_64-pc-windows-msvc"
$sha1="bcce35f6b39e2d1d0829f2277fd749767e057486"
break
}
x86 {
$arch="x86-pc-windows-gnu"
$sha1="287f4c3b7db21b72138704b8fe96827e6b1643a8"
$version="0.2.13-alpha-0"
break
}
default {
throw "Unknown architecture $cpu_arch"
}
}
$basename = "sccache-" + $version + "-" + $arch
$zipfile = $basename + ".tar.gz"
$tempfile = "C:\Windows\Temp\" + $zipfile
@@ -28,6 +48,9 @@ Remove-Item -Path $tempfile
# Turnoff idle timeout to avoid sccache shutting down
Set-EnvironmentVariable "SCCACHE_IDLE_TIMEOUT" "0"
# Prevents build job dying from random network I/O errors
Set-EnvironmentVariable "SCCACHE_IGNORE_SERVER_IO_ERROR" "1"
# add sccache to PATH
Set-EnvironmentVariable "PATH" "C:\Program Files\$basename\;$([Environment]::GetEnvironmentVariable('PATH', 'Machine'))"

View File

@@ -7,9 +7,7 @@ $vcpkgExe = "$env:VCPKG_ROOT\vcpkg.exe"
$vcpkgRoot = "$env:VCPKG_ROOT"
$vcpkgInstallRoot = "armeabi-v7a-android-qt-tmp"
Set-Location -Path "$PSScriptRoot\vcpkg"
Copy-Item "$PSScriptRoot\..\shared\vcpkg-configuration.json" -Destination "$PSScriptRoot\vcpkg"
Set-Location -Path "$PSScriptRoot\..\shared\vcpkg"
Run-Executable "$vcpkgExe" "install --triplet armeabi-v7a-android-qt --x-install-root $vcpkgInstallRoot --debug"
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force

View File

@@ -10,9 +10,7 @@ $vcpkgExe = "$env:VCPKG_ROOT\vcpkg.exe"
$vcpkgRoot = "$env:VCPKG_ROOT"
$vcpkgInstallRoot = "$arch-windows-qt-tmp"
Set-Location -Path "$PSScriptRoot\vcpkg"
Copy-Item "$PSScriptRoot\..\shared\vcpkg-configuration.json" -Destination "$PSScriptRoot\vcpkg"
Set-Location -Path "$PSScriptRoot\..\shared\vcpkg"
Run-Executable "$vcpkgExe" "install --triplet $arch-windows-qt --x-install-root $vcpkginstallroot --debug"
New-Item -Path "$vcpkgRoot" -Name "installed" -ItemType "directory" -Force

View File

@@ -1,52 +0,0 @@
# Copyright (C) 2021 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
. "$PSScriptRoot\helpers.ps1"
# This script will pre-installed squish package for Windows.
# Squish is need by Release Test Automation (RTA)
$version = "8.1.0"
$qtBranch = "68x"
$targetDir = "C:\Utils\squish"
$squishPackage = "C:\Utils\rta_squish"
$squishUrl = "\\ci-files01-hki.ci.qt.io\provisioning\squish\jenkins_build\stable"
$licenseBranch="squish_license"
$licenseUrl = "\\ci-files01-hki.ci.qt.io\provisioning\squish\coin\$licenseBranch"
$testSuiteUrl="\\ci-files01-hki.ci.qt.io\provisioning\squish\coin\suite_test_squish"
# Squish license
$licensePackage = ".squish-license"
Write-Host "Installing Squish license to home directory"
Copy-Item $licenseUrl\$licensePackage ~\$licensePackage
if (Is64BitWinHost) {
$arch = "x64"
} else {
$arch = "x86"
}
$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName
if (($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 10 Pro")) {
# In Windows 11 case $OSVersion is 'Windows 10 Pro'
$winVersion = "win10"
if (Is64BitWinHost) {
$sha1 = "e7497b925b9a0aa17628344dbdacd6b3acd41c3b"
}
} else {
$winVersion = "n/a"
}
$squishArchive = "prebuild-squish-$version-$qtBranch-$winVersion-$arch.zip"
Copy-Item "$squishUrl\$squishArchive" "C:\Utils"
Copy-Item -Recurse "$testSuiteUrl" "C:\Utils"
Verify-Checksum "C:\Utils\$squishArchive" $sha1
Extract-7Zip "C:\Utils\$squishArchive" "C:\Utils"
Remove-Item "C:\Utils\prebuild*"
Write-Host "Verifying Squish Installation for following targets:"
get-childitem "$targetDir" -Filter squishrunner.exe -Recurse | % { $_.FullName }
get-childitem "$targetDir" -Filter squishrunner.exe -Recurse | % { if (cmd /c $_.FullName --testsuite "C:\Utils\suite_test_squish" |Select-String -Pattern "Squish test run successfully") { Write-Host "Squish tested successfully"} else { [Environment]::Exit(1) } }

View File

@@ -1,14 +0,0 @@
{
"overrides": [
{
"name": "openssl",
"version": "3.0.7",
"port-version": 2
}
],
"dependencies": [
"openssl",
"protobuf",
"grpc"
]
}

View File

@@ -1,20 +1,14 @@
# Copyright (C) 2025 The Qt Company Ltd.
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
. "$PSScriptRoot\helpers.ps1"
# This script installs Windows App SDK
$script:nugetVersion = "v6.11.0"
$script:nugetPackage = "nuget_$nugetVersion.exe"
$script:packageRoot = "C:\Utils\WindowsAppSdk\"
$script:cachedUrl = "\\ci-files01-hki.ci.qt.io\provisioning\windows\nuget\$nugetPackage"
$script:officialUrl = "https://dist.nuget.org/win-x86-commandline/$nugetVersion/nuget.exe"
$script:sdkChecksumSha1 = "5443887cfb5283da5021388d146ebb5febdc82e9"
$script:package_path = "$packageRoot\\$nugetPackage"
$script:package_path = [System.Environment]::GetEnvironmentVariable('NUGET_EXE_PATH', [System.EnvironmentVariableTarget]::Machine)
New-Item -ItemType Directory -Path "$packageRoot"
Download $officialUrl $cachedUrl $package_path
Verify-Checksum $package_path $sdkChecksumSha1 sha1
Write-Host "Installing Nuget"
Run-Executable "$package_path" "install Microsoft.WindowsAppSDK -OutputDirectory $packageRoot"
$script:cpuarch = Get-CpuArchitecture

View File

@@ -14,7 +14,7 @@ while sudo fuser /usr/libexec/packagekitd >/dev/null 2>&1; do
done
sudo yum -y remove PackageKit gnome-software
sudo subscription-manager config --rhsm.manage_repos=1
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
# List available RHEL versions and bind with correct one
@@ -22,10 +22,35 @@ sudo subscription-manager release --list
sudo subscription-manager release --set=8.10
sudo yum clean all
# sudo yum config-manager --enable 'rhceph-4-tools-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'codeready-builder-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-baseos-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-appstream-rpms'
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-8-for-x86_64-baseos-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-baseos-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Base OS (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-8-for-x86_64-appstream-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-appstream-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Appstream (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[codeready-builder-for-rhel-8-x86_64-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/codeready-builder-for-rhel-8-x86_64-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux Codeready Builder (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
# Epel is required for 'double-conversion-devel', 'libsqlite3x' and 'p7zip'
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

View File

@@ -160,7 +160,7 @@ installPackages+=(perl-JSON)
sudo yum -y install "${installPackages[@]}"
sudo dnf -y module install nodejs:16
sudo dnf -y module install nodejs:20
# We shouldn't use yum to install virtualenv. The one found from package repo is not
# working, but we can use installed pip

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -8,7 +8,7 @@ echo "ANDOID_NDK_HOME: ${ANDROID_NDK_HOME}"
# Installing common ports
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt
# Installing platform specific ports
"$BASEDIR/../common/linux/install-vcpkg-ports-android.sh"

View File

@@ -9,7 +9,7 @@ sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo yum -y remove PackageKit gnome-software
sudo subscription-manager config --rhsm.manage_repos=1
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
# List available RHEL versions and bind with correct one
@@ -17,10 +17,35 @@ sudo subscription-manager release --list
sudo subscription-manager release --set=8.4
sudo yum clean all
# sudo yum config-manager --enable 'rhceph-4-tools-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'codeready-builder-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-baseos-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-appstream-rpms'
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-8-for-x86_64-baseos-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-baseos-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Base OS (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-8-for-x86_64-appstream-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-appstream-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Appstream (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[codeready-builder-for-rhel-8-x86_64-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/codeready-builder-for-rhel-8-x86_64-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux Codeready Builder (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
# Epel is required for 'double-conversion-devel', 'libsqlite3x' and 'p7zip'
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

View File

@@ -14,7 +14,7 @@ while sudo fuser /usr/libexec/packagekitd >/dev/null 2>&1; do
done
sudo yum -y remove PackageKit gnome-software
sudo subscription-manager config --rhsm.manage_repos=1
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
# List available RHEL versions and bind with correct one
@@ -22,10 +22,35 @@ sudo subscription-manager release --list
sudo subscription-manager release --set=8.8
sudo yum clean all
# sudo yum config-manager --enable 'rhceph-4-tools-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'codeready-builder-for-rhel-8-x86_64-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-baseos-rpms'
sudo yum config-manager --enable 'rhel-8-for-x86_64-appstream-rpms'
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-8-for-x86_64-baseos-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-baseos-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Base OS (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-8-for-x86_64-appstream-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-8-for-x86_64-appstream-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 8 Appstream (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[codeready-builder-for-rhel-8-x86_64-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/codeready-builder-for-rhel-8-x86_64-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux Codeready Builder (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
# Epel is required for 'double-conversion-devel', 'libsqlite3x' and 'p7zip'
sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -8,7 +8,7 @@ echo "ANDOID_NDK_HOME: ${ANDROID_NDK_HOME}"
# Installing common ports
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt
# Installing platform specific ports
"$BASEDIR/../common/linux/install-vcpkg-ports-android.sh"

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -176,7 +176,7 @@ installPackages+=(perl-JSON)
sudo yum -y install "${installPackages[@]}"
sudo dnf install nodejs-16.14.0-4.el9_0 -y
sudo dnf -y module install nodejs:20
# Required by QtCore
sudo dnf install 'perl(English)' -y

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -168,6 +168,8 @@ installPackages+=(zip)
installPackages+=(perl-IPC-Cmd)
# password management support for Qt Creator
installPackages+=(libsecret-devel)
# for license-service library
installPackages+=(libuuid-devel)
# For Firebird in RTA
installPackages+=(libtommath-devel)
# For tst_license.pl with all the machines generating SBOM
@@ -175,7 +177,7 @@ installPackages+=(perl-JSON)
sudo yum -y install "${installPackages[@]}"
sudo dnf install nodejs-16.14.0-4.el9_0 -y
sudo dnf -y module install nodejs:22
# Required by QtCore
sudo dnf install 'perl(English)' -y

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -1,7 +0,0 @@
#!/usr/bin/env bash
# Copyright (C) 2024 The Qt Company Ltd
# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg-ports.sh"
"$BASEDIR/../common/unix/install-vcpkg-ports.sh" x64-linux-qt

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -14,4 +14,11 @@ curl -L https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-add-repository 'deb http://apt.llvm.org/noble/ llvm-toolchain-noble-20 main'
sudo apt update
sudo apt -y install clang-20 lldb-20 lld-20 libc++-20-dev
sudo apt -y install clang-20 lldb-20 lld-20
# note: installing the libc++ development files conflicts with libgstreamer1.0-dev
# * installing libunwind-20-dev from apt.llvm.org (as dependency of libc++-20-dev) will
# uninstall libgstreamer1.0-dev
# * installing libunwind-20-dev from the Ubuntu repository will break gstreamer's pkg-config
# integration: https://bugs.launchpad.net/ubuntu/+source/llvm-toolchain-20/+bug/2134518
# sudo apt -y libc++-20-dev

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env bash
#Copyright (C) 2023 The Qt Company Ltd
#SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/unix/squishInstall.sh"

View File

@@ -3,4 +3,4 @@
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR/../common/linux/install-vcpkg.sh"
"$BASEDIR/../common/unix/install-vcpkg.sh"

Some files were not shown because too many files have changed in this diff Show More