Commit Graph

1470 Commits

Author SHA1 Message Date
Alexandru Croitor
b4d6eed112 CMake: Replace all Windows configurations with Ninja Multi-Config
All the qmake MSVC Windows configurations are debug_and_release ones,
so the equivalent CMake configurations should be the same for all
repositories.

Task-number: QTBUG-80900
Task-number: QTBUG-84883
Change-Id: I083d7a355558666a5f66efdffb592f5e93705547
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-06-12 19:28:48 +02:00
Alexandru Croitor
849fe06871 CMake: Enable CMake builds for qtandroidextras
Everyone forgot to enable it after finishing the port.
We should enable it, so it's tested for per-repo integrations as well.

Task-number: QTBUG-78171
Change-Id: I8e024809b4ece5d0775817e072968b7162d7a38c
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-12 19:28:45 +02:00
Alexandru Croitor
7dd0a8c1d4 CMake: Fix qtcoap configuration to use simulator_and_device iOS builds
Just to be consistent with the rest of the files.

Amends 803eb987ad

Task-number: QTBUG-80899
Change-Id: I26212c5367da7b8bf14e4a7d46b96ffb82bf9aab
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-12 19:28:42 +02:00
Alexandru Croitor
32ccf2a0cd CMake: Enable qt5.git CMake top-level / super builds
Add simple instructions to only configure and not build top-level
builds, similar to what the qmake configurations do.

The CMake configurations need to be copy-pasted again into qt5.yaml.
We can't use default.yaml because that would enable CMake
configurations for repositories that are not ported to CMake, and
thus break the integrations.

Update qtqa sha1 to a dev branch one which contains the
module_config.yaml instructions to build qtqa with CMake.

Task-number: QTBUG-84874
Task-number: QTBUG-84918
Change-Id: I8c64f5e0acc96e14a4952abb6c77fe5c8e27a0ec
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-06-12 14:36:39 +02:00
Alexandru Croitor
803eb987ad CMake: Enable iOS simulator_and_device builds
Coin now has CMake 3.17, so iOS multi-arch builds should
successfully build.
Switch the iOS CMake configurations to simulator_and_device ones.

Task-number: QTBUG-80899
Change-Id: I9c8bde9f1a3c483ea296f3d9d06f089cbfdf2416
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-06-12 14:36:38 +02:00
Alexandru Croitor
25f154199a CMake: Enable CMake builds for qtcoap
Change-Id: I89bc9162203069a61367763b0b9a482a96da87e0
Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
2020-06-12 13:59:48 +02:00
Heikki Halmet
5be3dc5f60 Provisioning: Change mounting folder for Squish installation
Sometimes some process is locking the mounted folder (/tmp) so that
it can't be unmounted untill the process has been ended.
Let's create squish folder under tmp and use that for mounting
instead

Task-number: QTQAINFRA-3709
Change-Id: I49ab8fd90af37a670e45764a176b62d7a732cc6c
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c671c2352e)
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
2020-06-12 08:33:24 +03:00
Liang Qi
37cb787dc1 Temporarily remove two broken platforms in qt5.yaml
We can re-add them later when issue got fixed.

Task-number: QTBUG-84924
Task-number: QTBUG-84925
Change-Id: I2545e5fe03fd44a6016305723b57db8c0d6e9470
Reviewed-by: Liang Qi <liang.qi@qt.io>
2020-06-12 00:22:27 +02:00
Tony Sarajärvi
3bd4b2760e Update ICC 18 to ICC 19.1
Task-number: QTQAINFRA-3241
Change-Id: I9259a9f602e8cdec29720178331dd7b833e52f81
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-06-11 10:40:20 +00:00
Alexandru Croitor
947802bea3 Revert "Revert "CMake: Enable CMake builds for qtqa""
There's a new dev branch for qtqa, so we can re-enable CMake builds
of qtqa using that branch, without breaking builds of other branches.

This reverts commit 33e8275ee5.

Task-number: QTBUG-84233
Change-Id: I1e4ca39717768303eca8435d175aa562fcd6f0f5
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-06-11 12:08:06 +02:00
Heikki Halmet
30714c7cb7 Provisioning: Install Node.js
Node.js is needed by QtWebengine

Task-number: QTQAINFRA-3729
Change-Id: I23ece8567c569d8376eff52b7845589c60d069b8
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
(cherry picked from commit 122cf4cc0e)
2020-06-10 20:50:30 +03:00
Heikki Halmet
2c0816aa99 Provisioning: Change mounting folder for Squish installation
Sometimes some process is locking the mounted folder (/tmp) so that
it can't be unmounted untill the process has been ended.
Let's create squish folder under tmp and use that for mounting
instead

Task-number: QTQAINFRA-3709
Change-Id: I49ab8fd90af37a670e45764a176b62d7a732cc6c
Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c671c2352e)
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
2020-06-10 07:24:41 +03:00
Heikki Halmet
122cf4cc0e Provisioning: Install Node.js
Node.js is needed by QtWebengine

Pick-to: 5.15
Task-number: QTQAINFRA-3729
Change-Id: I23ece8567c569d8376eff52b7845589c60d069b8
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2020-06-09 20:58:09 +03:00
Heikki Halmet
a7654f4a03 Provisioning: Change resolution for Windows 10 x86_64
Currently we have wrong resolution (1024x768) for 64-bit Windows.
Correct one is 1280x800

Change-Id: Ifc17933a5901681a917f973cab4d7c1ca1dfbd9f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit fa58a227cd)
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-06-09 17:57:20 +00:00
Heikki Halmet
c4e49e7464 Provisioning: Use signed opengl32 package
Task-number: QTBUG-80252
Change-Id: Ife9942796ed64c4e2894fb3342259c674cf5d7ed
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
(cherry picked from commit 9c33fe844a)
2020-06-09 20:57:19 +03:00
Heikki Halmet
5279f32fdf Provisioning: Fetch pre-installed squish from local cache
Squish installation is flaky so the installation phase has been
moved from provisioning to Jenkins. Jenkins job will install the
squish to target VM and copy it to local cache. This change only
fetch the installed squish packages from local cache and
uncompress those to VMs.

Task-number: QTQAINFRA-3510
Task-number: QTQAINFRA-3107
Change-Id: I862da3250120dc6a43d9c04d973a25a691ca66a1
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit b0286d6cd6)
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-06-09 17:57:17 +00:00
Heikki Halmet
4ca819a713 Provisioning: Fetch pre-installed squish from local cache
Squish installation is flaky so the installation phase has been
moved from provisioning to Jenkins. Jenkins job will install the
squish to target VM and copy it to local cache. This change only
fetch the installed squish packages from local cache and
uncompress those to VMs.

Task-number: QTQAINFRA-3510
Task-number: QTQAINFRA-3107
Change-Id: I862da3250120dc6a43d9c04d973a25a691ca66a1
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit b0286d6cd6)
Reviewed-by: Toni Saario <toni.saario@qt.io>
2020-06-09 06:09:45 +00:00
Allan Sandfeld Jensen
a0ea975b98 Remove SLES configuration
Mostly duplicate anyway, and not currently possible to install node.js
on.

Change-Id: I23a81ddb45b0597f31b1402e362f83957b5be8ae
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-06-08 11:00:58 +02:00
Heikki Halmet
9c33fe844a Provisioning: Use signed opengl32 package
Task-number: QTBUG-80252
Change-Id: Ife9942796ed64c4e2894fb3342259c674cf5d7ed
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>
2020-06-05 13:22:07 +03:00
Liang Qi
a4b68d6b7d Set Boot2Qt arm builds to release and developer build
Task-number: QTBUG-63152
Change-Id: Id6f2411d6339b7bd1ccb261cf5d9bebe1d0ada1c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2020-06-04 14:35:23 +02:00
Alexandru Croitor
33e8275ee5 Revert "CMake: Enable CMake builds for qtqa"
Revert the change because the qtqa instructions have been
temporarily removed to unblock other branches.

This reverts commit a10584e57c.

Change-Id: I76646026b099d3b039eec6cdaecfbbce6df43aa2
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-06-04 10:13:24 +02:00
Tony Sarajärvi
4c7fe602cb Fix compiler mentioned for host tool building in RHEL
This is only a cosmetic fix. That value is not used anywhere anymore.

Task-number: QTQAINFRA-3757
Change-Id: Iabba6202e7ddbb08e58901a591ba0171e8dd1fc9
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-06-04 06:51:45 +00:00
Alexandru Croitor
a10584e57c CMake: Enable CMake builds for qtqa
Only includes one MinGW configuration, to mirror what Coin does
with the qmake builds of qtqa.

Switching the Coin instructions to do license checking and binary
compatibility testing using CMake will require a different change.
Most likely this change will have to wait until all of qt5.git/dev
is moved to use yaml instructions for building, rather than the
hardcoded instructions provided by Coin.

Besides, the binary compatibility test still depends on finding
qmake to run its test, which might have to be changed in the future.

Task-number: QTBUG-84233
Change-Id: I5ab7120e965f7729968697abf9e0db602c216cd9
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-02 21:19:42 +02:00
Alexandru Croitor
91a164b838 CMake: Enable CMake builds for qtquicktimeline
Task-number: QTBUG-82967
Change-Id: I94324d4ef7d9d393e06a04e2eb1bfb0f9caab971
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-06-02 14:49:21 +02:00
Tony Sarajärvi
b0d9b22f53 Combine two macOS targets that are nearly the same
Change-Id: I1c094f02d1cee059272680941b355e4fb2bbdd31
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2020-05-29 09:21:21 +00:00
Liang Qi
c1c44574f6 Merge remote-tracking branch 'origin/5.15.0' into 5.15
Conflicts:
	coin/provisioning/common/linux/qnx_700.sh
	coin/provisioning/qtci-macos-10.13-x86_64/40-qnx700.sh
	coin/provisioning/qtci-macos-10.14-x86_64/40-qnx700.sh
	coin/provisioning/qtci-windows-10-x86_64/05-qnx_700.ps1

Change-Id: Ic7ed52251573824595821c53025323287d60b536
2020-05-28 10:22:03 +02:00
Joerg Bornemann
4d99fb00cc Fix CMake provisioning for Ubuntu 18.04 x86_64 QEMU armv7
This amends 68134db4.

Change-Id: I2eed240464f1b29c119ca0119001997aefdecd41
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2020-05-27 08:06:16 +02:00
Alexandru Croitor
68134db435 Update provisioned CMake version to 3.17.2
This should fix the ninja deps issue we had on Windows with the
Ninja Multi-Config generator, where calling ninja a second time to
rebuild the project failed.

More details at https://gitlab.kitware.com/cmake/cmake/-/issues/20723

Change-Id: I0029e57fbc704120d2241499a87cad0ad40c2e50
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-26 21:57:20 +02:00
Alexandru Croitor
0685312d2e CMake: Add MinGW config to all cmake enabled repositories
Task-number: QTBUG-75578
Change-Id: I4957efff9f3438c85f9e653130898d4b60a555ba
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-25 21:04:48 +02:00
Alexandru Croitor
5cd8e9576d CMake: Switch qtbase Windows config to use Ninja Multi-Config
And configure with two configurations, RelWithDebInfo and Debug.
This is equivalent to qmake's
--debug-and-release --force-debug-info

This should give us minimal coverage for debug-and-release builds,
as well as avoid regressions with NMC aka multiple configurations.

If the qtbase builds successfully, we can try to extend the rest of
the repositories to also build with NMC on Windows.

We can't add such a configuration to macOS for now, because it
requires CMake 3.18, which is not released yet.

Disable PCH because it seems to fail the build when used together
with Ninja Multi-Config.

Task-number: QTBUG-80900
Change-Id: I71a9584ddb1d48ed22925f67b50891e102036c97
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-25 13:41:38 +02:00
Heikki Halmet
16ca898568 Provisioning: Update QNX7 SDP to include OpenSSL 1.1.1
Still includes ICU 58

Task-number: QTQAINFRA-3537
Change-Id: I2f532ff32157e09eeec9a2196d075d4ec6347df5
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2020-05-22 14:09:47 +03:00
Heikki Halmet
fa58a227cd Provisioning: Change resolution for Windows 10 x86_64
Currently we have wrong resolution (1024x768) for 64-bit Windows.
Correct one is 1280x800

Change-Id: Ifc17933a5901681a917f973cab4d7c1ca1dfbd9f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-05-22 12:23:34 +03:00
Alexandru Croitor
afc08c23ca CMake: Enable CMake builds for qttranslations
Fixes: QTBUG-82969
Change-Id: I17e7df82f578338d6c1e3dbc41677d4302d9689b
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-20 14:48:59 +02:00
Alexandru Croitor
71a559e748 CMake: Enable CMake builds for qtdoc
Change-Id: Idca63aef8951a4a104b816e4aac710225d1279c2
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-14 13:25:23 +02:00
Lars Knoll
688187773b Explicitly enable -headersclean on some configs
This is in preparation to turning this off by default in configure,
as it increases build times significantly.

Change-Id: I2d601595ce8c093765194f36ec5235f79dd4dd7d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-05-13 22:17:58 +02:00
Tony Sarajärvi
38139878ff Install GCC 10 on SLES 15
Task-number: QTQAINFRA-3444
Change-Id: Iaf9b3ea5331cfc0b3d19a09f55aa4df1de93fbb2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2020-05-12 16:40:28 +00:00
Alexandru Croitor
e4d60dd117 CMake: Enable CMake builds for qtvirtualkeyboard
Task-number: QTBUG-78185
Change-Id: Ie8a120aa3425edf6ae18f4a43dcd3f6aa697cd9f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-05-12 13:18:00 +02:00
Alexandru Croitor
29c9ba1835 CMake: Switch to MinGW 8.1 configuration for the qtbase CMake build
Change-Id: I974d34a33370ece9f9e240ba6e5106cc50d8bf84
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
2020-05-12 13:02:52 +02:00
Heikki Halmet
69342bb5b7 Revert "Provisioning: Disable windows defender firewall"
This reverts commit 48ff0140de.

Reason for revert: QtBase WinRT test qcoreapplication needs mpssvc service to be enabled

Change-Id: I523b668d9d7292aaaf7462585dc03819a3973010
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-05-12 05:42:53 +00:00
Alexandru Croitor
3652f77aa3 Provisioning: Set macOS locale to "en_US.UTF-8"
The 419f42903154489e2dace8d1eba183036275448b commit in qtbase
introduced a regression where the tst_fusion test in qtqtuickcontrols2
hits a deadlock while trying to print a warning about a non-UTF-8
locale.

The warning is due to the fact that the agent executed in Coin's VM
does not have an explicit locale set, and thus it defaults to "C".
There is no explicit locale set in any .bashrc (or similar files),
and neither in any launchd configuration (because the agent is
executed at macOS startup via launchd).

The deadlock is due to trying to acquire the same lock twice while
trying to write output to stdout.

The test only deadlocks on CMake configurations, and not qmake
configurations, because Coin has a hardcoded instruction to set the
locale to UTF-8 when running qmake tests.

Until the deadlock situation is addressed in another change, the issue
can be fixed by setting the macOS configuration locale to UTF-8
explicitly, by assigning the LANG environment variable
into ~/.bashrc at provisioning time, like we do with other environment
variables like PATH.

Fixes: COIN-578
Change-Id: Ib6a5849a6868c1776dd425aeb8b5e7d6faa8cde0
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2020-05-07 21:52:16 +02:00
Heikki Halmet
48ff0140de Provisioning: Disable windows defender firewall
Service is still running. It need to be disabled.

Change-Id: I4742f97c93d118a1a98b4107f1597d332c3f1391
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2020-05-06 14:44:31 +03:00
Alexandru Croitor
9f4a39356a CMake: Switch host macOS configurations to framework release builds
Also include debug info. This is the equivalent of qmake's
--release --framework --force-debug-info --separate-debug-info

Change-Id: I2778b4998890146c82552f9c721a48174a764839
Reviewed-by: Simon Hausmann <hausmann@gmail.com>
2020-05-04 22:50:17 +02:00
Alexandru Croitor
4dace06297 CMake: Enable a MinGW 7.3 CMake qtbase configuration
It should be a developer build, but due to some features
that are not ported in src/gui/configure.cmake (directwrite)
there are compilation errors due to unused arguments in
static bool QWindowsFontDatabaseBase::init(QSharedPointer)
in platformsupport/fontdatabases/windows/qwindowsfontdatabasebase.cpp

So it's not a developer build for now.

Task-number: QTBUG-75578
Change-Id: Ieb6daca45473ea42748a39f3e9e33a9db087a0e0
Reviewed-by: Simon Hausmann <hausmann@gmail.com>
2020-05-04 18:01:22 +02:00
Liang Qi
9deba571f9 Temporarily disable QNX builds because license expiry issue
Task-number: QTQAINFRA-3708
Change-Id: I676ad2e519ab527e079648d41a1ff015a2a17657
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-05-04 15:16:19 +02:00
Heikki Halmet
8f653ce4f8 Provisioning: Add sleep before killing gpg-agent in msys installation
Task-number: QTQAINFRA-3691
Change-Id: If84fd2d0d1cd6dccadf21cbf688aca6182cdd920
(cherry picked from commit 5f03b84e65)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2020-05-04 14:42:03 +03:00
Heikki Halmet
71043ca243 Provisioning: Update expired QNX license
Task-number: QTQAINFRA-3708
Change-Id: Id2d6d10d88fc50c9985014c44df0b1cf51cc3410
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2020-05-04 14:41:54 +03:00
Liang Qi
54c94ae681 Merge remote-tracking branch 'origin/5.15' into dev
Conflicts:
	.gitmodules
	coin/platform_configs/default.yaml
	coin/platform_configs/qt5.yaml
	coin/platform_configs/qtbase.yaml
	coin/platform_configs/qtwebkit.yaml
	coin/provisioning/qtci-linux-Ubuntu-18.04-x86_64/02-apt.sh

Change-Id: If6b0f7a671a69d6a2444ee4d26b324e4d269970c
2020-04-30 18:35:08 +02:00
Simon Hausmann
3265e93168 Try to build qtbase with cmake against Yocto
This adds the basic armv7 configuration and passes through two
additional variables for use in the build instructions:

    * QT_YOCTO_ENVSETUP points to the environment-setup script that the
    Yocto SDK expects to be sourced before building against the target
    sysroot.

    * QT_CMAKE_DIR points to the directory that contains our cmake
    installation. Since the environment-setup prepends the Yocto host
    bin dir to the PATH, we'd end up picking the wrong cmake.

Also the choice of system Harfbuzz is disabled as Qt does not build
against the version shipping in Yocto.

Change-Id: I8d657e773143c4db0e2437d029d62372f7b7e638
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2020-04-30 12:02:42 +02:00
Heikki Halmet
5f03b84e65 Provisioning: Add sleep before killing gpg-agent in msys installation
Task-number: QTQAINFRA-3691
Change-Id: If84fd2d0d1cd6dccadf21cbf688aca6182cdd920
Reviewed-by: Simo Fält <simo.falt@qt.io>
2020-04-30 11:05:15 +03:00
Alexandru Croitor
4aa9c4df11 CMake: Enable CMake builds for qtquick3d
Change-Id: I9547c73e8a632754d043bff8c72c29c18449bfd9
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2020-04-27 10:04:09 +02:00