Commit Graph

94 Commits

Author SHA1 Message Date
Iikka Eklund
d68e108b94 Add Conan profiles
Create conan profile per packaging configuration. Profiles will
carry configuration information to the builds conan does.

Profiles allow users to replicate identical configurations
to the packaging configurations and reuse existing binaries.

Change-Id: I50a2a4edbedbf56774bd4ceaae268928f8ed00e0
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-09-06 13:58:10 +03:00
Tony Sarajärvi
426bab28a8 Replace SLES 15 SP2 with SP3
Task-number: QTQAINFRA-4498
Change-Id: I248a0ea19a7e2af59350ba66b55983c20927fff3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-08-23 08:12:43 +03:00
Topi Reinio
e8a86ab6c8 Provision qdoc and qtattributionsscanner
Provision documentation generators for Ubuntu 20.04, and add 'TestDocs'
feature to the configuration already used for generating documentation.

This is to allow building docs during the testing cycle to block
integrations that introduce new documentation warnings, without the
need to add a dependency to qttools.

Pick-to: 6.2
Fixes: QTBUG-83851
Change-Id: I74d7daeb7abb49403e97af41b0521f903607ce55
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2021-08-16 11:21:31 +02:00
Tony Sarajärvi
dcab4e83f3 Revert "Replace SLES 15 SP2 with SP3"
This reverts commit 5ecf01ade7.

Reason for revert: Wicked doesn't work well with our Windows 2012's DHCP

Change-Id: I062fbfb50a68af308db9cb810583ca85c2c3e627
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-08-16 07:18:13 +00:00
Heikki Halmet
9ff48e5585 Add Red Hat 8.4 to CI
Red Hat 8.4 will be added as parallel with Red Hat 8.3 until packaging
site gives green light to remove the older Red Hat version.
Also targets which are not tested during Qt5 integration will be set
as Insignificant until proven to work

Task-number: QTQAINFRA-4516
Change-Id: I3d9543da315b3d93ee8d9e37389acaf7212b00f7
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-08-13 09:03:39 +03:00
Tony Sarajärvi
5ecf01ade7 Replace SLES 15 SP2 with SP3
Task-number: QTQAINFRA-4498
Change-Id: I3d4ab50d16d7279cac771ac3a911af53489e2e2d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-08-12 14:30:54 +03:00
Heikki Halmet
ebf78374a7 Remove Insignificant flag from Windows ARM target
Task-number: QTQAINFRA-4452
Change-Id: I049dfb8df259fed40438ee08b339507bda3ed768
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 0a5e63dce9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2021-06-28 09:21:05 +00:00
Alexandru Croitor
52eebe8a89 WoA: Build both release and debug configs for Windows on ARM
The config is marked as Packaging, but it didn't specify the list of
CMake configurations to build and defaulted only to Debug.

Pick-to: 6.2
Task-number: QTQAINFRA-4492
Change-Id: If75eaf76d386442355c45e4705fe2f4c0eeaa086
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2021-06-16 15:00:29 +02:00
Tony Sarajärvi
d9be0951b4 Replace openSUSE 15.2 with 15.3
Task-number: QTQAINFRA-4477
Change-Id: Ie8ce60c4e6d9b948be2ff813b599a2d8f6d75099
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-06-07 18:40:13 +03:00
Heikki Halmet
b1a3ccb99c Remove InsignificantTests flag from Windows developer build
This patch only affects to dev branch.
Separate patch will handle 6.1 and 6.0 branches

Task-number: QTQAINFRA-4427
Change-Id: Ibaf6422061e9cd66a3458922fae7a4533f80c40f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-05-27 11:33:50 +03:00
Joerg Bornemann
43f3795125 wasm: Add WebAssembly platform to Coin
Change-Id: Ia377ad7ff8a675e80ead78eaf47848cc0f235247
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-05-19 19:14:15 +02:00
Heikki Halmet
ca1894acaa Remove CentOS 8.3 targets
Provisioning scripts will be removed later

Task-number: QTQAINFRA-4415
Change-Id: I71da9743066a81638518f44dc663324246a2ce8c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-05-17 20:40:58 +03:00
Simo Fält
2a4635379c Add ci config for Windows 10 on Arm
Task-number: QTBUG-85820
Change-Id: I145cbfbd39fe164bc57d4106e58c50add51fe976
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-05-05 20:52:42 +03:00
Alexandru Croitor
b3a0469100 CMake: Re-add Linux static config to keep build coverage
We want at least one config that ensures static host Qt builds
work in the CI, even if no tests are built.

Amends bead5e8720

Task-number: QTBUG-87580
Change-Id: I091e85ca40faef30ddad57e2a392d65197a47027
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2021-04-27 20:09:30 +02:00
Alexandru Croitor
bead5e8720 Build minimal subset of tests in desktop static builds
New cmake_platforms_static_tests.yaml file will be included in repos
that support building and running a minimal subset of tests built
against a static Qt.

Currently it's limited to qtbase.

Moved existing 'linux-SLES static' config into this new file and
also added a macOS and Windows config.

Skipped specifying the PostgreSQL lib path for Windows and macOS because
the plugin gets automatically linked into tst_moc, but the test build
phase doesn't actually call find_package for PostgreSQL and the build
system generation fails.

Similary skipped specifying the openssl lib location for macOS,
because the module_includes cmake auto test fails to find the
WrapOpenSSLHeaders package.

Explicitly tag iOS static config with DisableTests. The instructions
already skipped building tests for iOS, but it's better to be explicit
and update the instructions not to do that anymore.

Pick-to: 6.1
Task-number: QTBUG-87580
Change-Id: I0d38a0ad055c92646609202691aeb8db29689f5a
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2021-04-27 15:18:22 +02:00
Heikki Halmet
1ebec86732 Remove packaging flag from CentOS targets
This will also remove CentOS target under QtCreator
and RHEL's Insignificant flags from submodules

Task-number: QTQAINFRA-4416
Change-Id: I2e6d910dfbba7a7903b149f5cf0bc3386cd4e3e2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-04-23 14:32:45 +03:00
Alexandru Croitor
1306da8f92 macOS: Build universal Qt for macOS
Build a universal macOS targeting Intel x86_64 and Apple Silicon
arm64 using the fat library technique. It will be our new Packaging
configuration for macOS.

Rename the Id of the configuration to
'macos-latest-xcode-universal-packaging-build'.

x86_64 is the main config test architecture.

The arm64 slice of the Qt build lacks certain functionality:
 - no qdoc, lupdate, etc due to missing arm64 llvm packages
 - no postgresql and odbc sql plugins due to missing
   arm64 3rd party libraries
 - no openssl due to missing arm64 library
 - no JIT support in QtQml, due to limitations in the current fork
   of the javascript engine

Task-number: QTBUG-85447
Change-Id: If2a70f192a54d6f98137e05e5b938d118b6d1d1d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2021-04-20 13:32:31 +02:00
Heikki Halmet
aa5112af99 Add Red Hat 8.2 to CI
Red Hat 8.2 is the latest version with extended update
support. In the end Red Hat 8.2 will replace CentOS 8.3

Task-number: QTQAINFRA-4322
Change-Id: Iaa2ef452e7e6608349ba7438bbc5d25ddb35fa2a
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-04-20 08:38:20 +03:00
Jani Heikkinen
7a8094dc9d Drop unnecessary ci and packaging configurations
- Drop Ubuntu 18.04 from CI; we aren't supporting it as development host
in Qt6. And we aren't using its prebuild binaries anywhere
- Drop 'Packaging' feature from QNX builds; we aren't packaging those
- Drop 'Packaging' feature from openSUSE builds; we aren't packaging those

Pick-to: 6.1
Change-Id: Ic5c6e0e1c480946380cbcf4b01133caffe7a71e0
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-04-09 10:42:15 +03:00
Marianne Yrjänä
50962fb204 Make QNX builds significant
All components now pass QNX builds so they can be made significant.
Old QNX6.6 removed from provisioning.

Task-number: QTQAINFRA-4286
Pick-to: 6.1
Change-Id: Idb6abcc1d61030e1edba9467044fe59d17ee9d82
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-08 20:55:04 +02:00
Toni Saario
6f4acb8746 Disable sccache on QNX targets
There appears to be issues with sccache on q++/qcc compiler that
lead tha false positive cache hit and build failures.

Task-number: QTQAINFRA-4391
Pick-to: 6.1
Change-Id: I84f38242e6de4094933300bd535686206c849960
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-04-08 10:30:14 +00:00
Heikki Halmet
fb65f86083 Add Packaging target for openSUSE 15.2
With current approach we need to make two different linux installers.
One for SUSE and one for other linux targets we support. This is because
current CentOS version have newer GLIBC version than what we have in SUSE.
This means that installer made with CentOS won't work in SUSE versions
we support

Task-number: QTBUG-91873
Change-Id: If65d66093bf8dcb5fe46812e06d6b9194fdedac2
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-03-22 06:13:12 +00:00
Heikki Halmet
0a6511c1e7 Change configuration arguments for Ubuntu 18.04 to match CentOS target
We shouldn't change configuration parameters when whiching to use
Ubuntu 18.04 instead of CentOS 8.3

Pick-to: 6.1
Change-Id: Icfce35acec8baa4488089e555c311a063455c24b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-02-25 08:41:24 +02:00
Heikki Halmet
b64b4b169e Add Ubuntu 18.04 for Qt6 binary packages
We need to start using Ubuntu 18.04 with Qt6 binary package
targets. Ubuntu 18.04 includes older GLIBC version which
shouldn't cause any problems with linux distributions supported
by Qt6

Tests will be executed with Ubuntu 20.04.

Task-number: QTQAINFRA-4193
Change-Id: Icb189c509351ff080a2c6431299cc0be6ba8adc1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-02-16 08:18:52 +01:00
Marianne Yrjänä
036729ed05 Add QNX7.1 to CI
Task-number: QTQAINFRA-3768
Change-Id: I9c0aa78fad9c6a1263e75b06fa954c335f4b6ec2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2021-02-08 19:32:25 +02:00
Heikki Halmet
e6ecc001f6 Replace CentOS 8.1 with CentOS 8.3 in CI
Task-number: QTQAINFRA-3964
Change-Id: I368e59867e8061ed25d4d3f10de7e995e56bd676
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-02-01 15:23:31 +02:00
Toni Saario
f4fa7d40fe Update iOS platform dependency
Change-Id: I91b2807861027542f3208cc9a1ac2fcf9b6300d7
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-01-23 15:52:22 +02:00
Toni Saario
b57b2358cb macOS: Split building and testing stages
We now build with the latest Xcode available, and then run the tests
on all the supported deployment target (10.14, 10.15, 11).

At this point we have the following build/test coverage:

  - Packaging build, all modules tested on:
    - 10.14 (significant)
    - 10.15 (insignificant)
    - 11.x (insignificant)

  - Developer build, qtbase/declarative tested on:
    - 10.14 (significant)
    - 10.15 (insignificant)
    - 11.x (insignificant)

Change-Id: I309bbf5ace7b22b768203f579e29f7a9e2b589b9
Reviewed-by: Toni Saario <toni.saario@qt.io>
2021-01-23 14:51:46 +01:00
Heikki Halmet
f6b0b21ba2 Add Big Sur macOS 11.0 to CI
Only one target is added because current HW capasity is minor.

Task-number: QTQAINFRA-3967
Change-Id: Iae2ac0e02b38b45a219a78e046fb21338ff9cd97
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-01-22 10:35:11 +02:00
Tor Arne Vestbø
7b68a0021f coin: Don't pass macOS SDK sysroot to configure
It's handled by the provisioning scripts that install Xcode and make
it the default via xcode-select --switch.

Change-Id: I788a3672f554112517619f55d5cc810351c56bff
Reviewed-by: Simo Fält <simo.falt@qt.io>
2021-01-19 11:08:40 +01:00
Tor Arne Vestbø
cad93542fd coin: Don't pass macOS deployment target to configure
It's handled automatically by the build system, and set to the
lowest macOS version Qt supports at any point in time.

Change-Id: I7dc7b9f7fe5961ad4d4383590077d7990a84f850
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2021-01-19 11:08:38 +01:00
Heikki Halmet
a4d03dbc19 Provisioning: Upgrade Xcode and Command Line Tools to version 12.3
Xcode 12.3 is currently supported in macOS 10.15.4 and 11.1

Task-number: QTQAINFRA-3962
Change-Id: Id919e63cd792e4c35b4bb625a574009fd044f440
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2021-01-08 12:06:21 +02:00
Tony Sarajärvi
61e28c4e57 Add MinGW developer build with testing and build of examples
Pick-to: 6.0
Task-number: QTQAINFRA-3758
Change-Id: I8f1fc88175b91848b47ab8e794ac252c88221aa5
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2021-01-07 05:37:51 +00:00
Joerg Bornemann
f79742edb1 Build Linux packages against legacy OpenGL libs
Do not link against the GLVND OpenGL libs (libOpenGL.so.0), because
those might not be available on target systems.

In order to do that, we set OpenGL_GL_PREFERENCE to LEGACY.

Pick-to: 6.0
Fixes: QTBUG-89754
Change-Id: I28e8c62b137f17cf6692b84f438a8ae60ebe0e91
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2021-01-06 14:58:04 +01:00
Antti Jaakkola
68a183324d Use Parallels for macOS 10.15 builds and tests
Pick-to: 5.15
Pick-to: 6.0
Change-Id: I875cf12afafae5389f8c974cd40789c5183d4cb2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-12-31 06:08:19 +00:00
Cristian Adam
eff3b74d3b CMake: Enable PCH for all builds
With CMake 3.19.2 provisioned, iOS will be able to compile with PCH.

Pick-to: 6.0
Change-Id: Ic9c9eef98d229a7cb8d87fa1e4555cdbeac1f7cf
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-12-23 15:13:14 +00:00
Tony Sarajärvi
8aa15f4bbd Add a no-opengl build on Ubuntu 20.04
This reverts commit 9a8fb868ec
partially.

See also d494d76c26.

Task-number: QTQAINFRA-2577
Task-number: QTQAINFRA-3407
Change-Id: I6a01bea15002efe140c022a79e7f3f2f5a47c202
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-12-22 06:40:08 +00:00
Tony Sarajärvi
7f0113ef9e Build Qt with llvm-mingw
Task-number: QTQAINFRA-2139
Task-number: QTQAINFRA-2039
Change-Id: I4958b3c1b069d6052bccace2d0b21cb27b7b54d1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-12-17 06:05:33 +00:00
Liang Qi
51bc500098 CI: remove InsignificantTests flag for openSUSE build
Change-Id: Icea91c6ff4ff85451df08e74a937cbfb9eb1c0cd
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-12-10 21:03:38 +01:00
Alexandru Croitor
aa79f38529 CMake: Try to build qmake examples on more configs
Add qmake example builds to
- macOS Desktop non-framework builds
- qemu

Task-number: QTBUG-85986
Change-Id: Icfcf9883fa5ac33906a358c9347a1776eaac7696
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-12-07 18:20:29 +01:00
Liang Qi
d3fc95535c CI: remove InsignificantTests flag for win10 msvc2019 developer build
Task-number: QTQAINFRA-3949
Change-Id: I3e39a082fe5d2a22f7e263185b5032fd4f0928e5
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-12-04 19:12:34 +01:00
Heikki Halmet
420d7f809c Update Windows 10 x86_64 version to 20H2
Windows 10 Enterprise 20H2, OS build 19042.508
Additional SW:
MSVC 2019 version 16.8.1
MSVC 2019 Build Tools version 16.8.1
MSVC 2015 14.0.25420.1
Virtio driver
Virtio Balloon driver
NetKVM driver
Vioserial driver
Guest-agent qemu-ga-x86_64

Pick-to: 6.0
Task-number: QTQAINFRA-3961
Change-Id: I8abc7ac011c58ad13db433fc86a1327afceafc68
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-12-04 12:17:14 +02:00
Alexandru Croitor
45ce639a62 CMake: Add headersclean feature to the packaging configs
Task-number: QTBUG-86053
Task-number: QTBUG-82615
Pick-to: 6.0
Change-Id: I89ed5b80b1c6fb793cfec5921b489cbd7693db20
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2020-12-03 11:06:41 +01:00
Joerg Bornemann
0167a01022 CMake: Adapt to new QT_BUILD_TESTS variable
Change-Id: Ib35e164a8628ffc7d1429ba4756a27d4b98977e2
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
(cherry picked from commit 87269f4353)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
2020-12-01 07:33:41 +00:00
Tony Sarajärvi
e472db17f3 Replace openSUSE 15.1 with openSUSE 15.2
Task-number: QTQAINFRA-4035
Change-Id: I11746ab2d6447dd5d33846bff68f6983670adbbe
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ville-Pekka Karhu <ville-pekka.karhu@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-11-26 10:02:04 +00:00
Tony Sarajärvi
66b345fdbb Swap static builds between openSUSE and SLES
By moving the static build to SLES, we can run autotests on openSUSE.
It also makes sense to move the developer build at the same time.

Change-Id: I5e0c4b0caf2bbd5a0d419555b1e270673adfc890
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-11-17 13:19:53 +01:00
Heikki Halmet
b34fa5f9cf Remove RedHat 7.6 from CI
CentOS 8.1 is now in CI without Insignificant flags so
Rhel 7.6 can be removed.

Task-number: QTQAINFRA-2760
Change-Id: Id797a6ea5bf9c4d64929b4d6e183d0c7146309ca
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
2020-11-16 07:38:21 +02:00
Alexandru Croitor
b6fa6cada0 CMake: Mirror missing -no-gui Ubuntu config
Amends 57ae486e36

Fixes: QTBUG-88343
Task-number: QTBUG-86053
Change-Id: Icabf4cda23a61845b7f21b4d9f2e70e05ced0256
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-11-13 13:07:00 +01:00
Liang Qi
919253da5c CI: remove InsignificantTests flag for Ubuntu 20.04 hosts
Change-Id: I50ee36c93e084d5bd8cf97a29a44c66698cc4f5a
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-11 17:12:48 +01:00
Kai Koehne
c7e8d91332 Windows: Fix lookup of LLVM_INSTALL_DIR environment variables
"_ARCH_" was dynamically replaced by either 32 or 64 in
qttools/configure.pri. Anyhow, this is not supported by the
CMake build, and not needed, since we only build with 64
toolchains on Windows.

the qmake builds can still automatically select the "right"
toolchain by either loading LLVM_INSTALL_DIR_msvc,
LLVM_INSTALL_DIR_mingw. But for CMake builds
we now explicitly set LLVM_INSTALL_DIR in each configuration.

Fixes: QTBUG-87215
Change-Id: Iaa7e6eab676c03b34ea723d9f71888ca9ee7bb1f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-11-08 16:57:21 +01:00