Commit Graph

91 Commits

Author SHA1 Message Date
Simon Hausmann
57043fb07b Clean up QNX patching
Get rid of COIN_WEBSERVER_ADDRESS and download the QNX C++11 patches
from ci-files01 instead.

Change-Id: I7c32bfc1e1abef59b1e419e7dcdb73a5b16a895f
Reviewed-by: Simo Fält <simo.falt@qt.io>
2017-09-16 05:35:10 +00:00
Simo Fält
a3f4bf703b Provisioning: Fix helper function's mktemp in macOS 10.10
It seems that macOS 10.10 has a non standard mktemp command. It doesn't
work as expected but prints usage and exit instead.

Change-Id: I37be6eb01474466c2b6bbae4f38876673bd9c295
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-09-04 14:23:05 +00:00
Simon Hausmann
6bf5691ca8 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/provisioning/common/InstallPKGFromURL.sh
	coin/provisioning/qtci-linux-RHEL-7.2-x86_64/08-pythondev.sh
	coin/provisioning/qtci-linux-RHEL-7.2-x86_64/09-cmake.sh

Change-Id: I87b10d75250eecd5271be201fdf6b1d27cc5a791
2017-08-31 11:25:26 +02:00
Simo Fält
a99d3432f7 Install python3 on all platforms
Python3 is required in 5.6 by pyside-setup.

Task-number: QTAUTO-345
Change-Id: If11ca425fa08cce8a518710ded0a6ec58159343d
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
(cherry picked from commit a5f3f8ed48)
(cherry picked from commit a765838889)
(cherry picked from commit 1859f9b26c)
2017-08-30 19:57:54 +00:00
Simon Hausmann
1bd2b2acfa Fix code duplication for cmake installation on Linux
Share the code for installing cmake on Linux.

Change-Id: I535f2696151ea4db26dc7194a1fe7016799ed0e2
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-30 17:16:59 +00:00
Joni Jäntti
c7a9bb92e1 Fix adding to path lines for Windows provisioning scripts
Currently the path addition command will forget the previous addition
when adding a new string. This hasn't been found out because python
was the only script using this command. Now we also need to set the
path for ruby, so the python string is left out.

Change-Id: I39721d78111550189e52a9f095030033f9660c0a
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
2017-08-30 17:16:56 +00:00
Tony Sarajärvi
835ef953f0 Provisioning: Fine tune cmake provisioning script
Add version printing and move version strings to variables for
easier reuse.

Change-Id: I5372872bf455609dfb7cc7bbcf7a110cd71933fb
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-08-30 17:16:52 +00:00
Alexandru Croitor
dfaabde5dc Enable developer mode on macOS platforms
Previously when a VM user tried to attach lldb to a process via ssh,
lldb would fail with the following error message:
"error: process exited with status -1 (unable to attach)". If this
were done over VNC rather than ssh, the user would instead get a UI
popup to enter a password to allow debugging the process.

When trying to debug an application using Xcode for the first time,
Xcode will offer to enable the so called "Developer Mode" which allows
attaching a debugger without specifying a password every time.

This change enables "Developer Mode", so that every VM user doesn't
have to.

Change-Id: Ie4e473a982c908afd456ac1773bbdaf4ce778094
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-24 04:49:06 +00:00
Liang Qi
74eb853384 Merge remote-tracking branch 'origin/5.6' into 5.9
Move the Documentation feature to the corresponding Ubuntu 16.04, where
the CI would have used it by magic.

Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Done-with: Frederik Gladhorn<frederik.gladhorn@qt.io>
Change-Id: I885ce572710480cd15ecdc8cfac7edb52957f92a
2017-08-22 08:22:02 +02:00
Kari Oikarinen
c2493f9d6d Use libusb compiled with MSVC 2015
QDB has to change to using Windows 10 for releases, because Windows 8.1
is no longer available for non-qt5 builds as a packaging platform in 5.9
branch.

Don't provision libusb on earlier Windows versions, since they don't
have a compatible compiler.

Change-Id: I771a24fcf208c4961483a39e51cb7d95f004ed55
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@qt.io>
2017-08-21 17:49:27 +00:00
Simo Fält
62c6676f87 Provisioning: Install pip for macOS 10.12
Pip is required to provision python packages.

Change-Id: I73ab7556bb6b9ccc57ef078f422bfbba4bfed6a7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:41 +00:00
Simo Fält
3690fe06a4 Provisioning: Update CMake on osx 10.10
Pyside requires cmake 3.1.0 or more recent.

Change-Id: Ic376d5e5af9f9b0692a2de7c4ec35e6c8bfa9465
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:35 +00:00
Tony Sarajärvi
7db6a1cd0f Provisioning: Reduce verbosity of uncompressing Xcode
Change-Id: Id09ace3fcdf53c3b6921ed277c9fe571b5c43e3b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:24 +00:00
Simo Fält
c9f842af84 Provisioning: Install virtualenv for macOS 10.12
Python virtualenv command is used when building pyside modules,
which installs additional Python modules during build time
and requires access to installation directories.

Change-Id: Id34ac8b36710ba04d8db263acdaf2bd31e314de8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-17 19:52:18 +00:00
Kari Oikarinen
1720ed0b6f Adapt comments to qdb repository move
Change-Id: I3ecdc952d1323a14471cdc87b6854b857d4297a7
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 18:57:26 +00:00
Kari Oikarinen
890a478e07 Update libusb version
Use an unreleased version that does not have a crash on Windows 7, since
there is not yet an official release that would include the fix.

Task-number: QTBUG-62430
Change-Id: I14d83d01fe3d4b0bfebe7514fbec7d25e99af731
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 18:57:15 +00:00
Heikki Halmet
5df417aeb9 Provisioning: Disable system updates
This change will disable system updates from App Store to prevent
unnecessary network load

Change-Id: I7915ec6ffce681a850abef59d58f953effd6deb0
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-16 06:03:50 +00:00
Joni Jäntti
bd3ddeddd2 Make CI use a new win 8.1 provisioning instead of win 8
Added all the provisioning scripts that install required
programs and make changes to certain settings. These are needed to
build qt5. This replaces the old Windows 8 template.

Made all the Windows platforms use the scripts under
provisioning/common/ instead of duplicate files.

Task-number: QTQAINFRA-1357
Change-Id: Ic3f0b50079b212437fff711379f243753ab84872
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-11 16:49:10 +00:00
Tony Sarajärvi
043e54c7c6 Update provisioning scripts with new intra.qt.io address
Change-Id: I9b4c5e9d0fe8e0e84596ad9086f563d11e97930b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-08-08 20:05:08 +00:00
Simon Hausmann
f56f2c20c4 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/platform_configs/default.txt

This also reverts c9d5341307 as on macOS
10.11 in 5.9 we're using a fresh virtual machine template that doesn't
have stale virtualenv/python installations.

Change-Id: Iab50fde0388c97967ada7c40374345ce4327613a
2017-07-19 13:24:43 +02:00
Konstantin Tokarev
dd5096c6c7 Conan: update ICU to 59.1, added VS2017 packages
MinGW packages will be upgraded in another patch.

Task-number: QTBUG-61728
Change-Id: Ie6a1996b7850282a7cdcbe5ceba61f1ce473cf69
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:54 +00:00
Konstantin Tokarev
6837a847bb Provisioning: install x86 conan packages on MSVC2015-x86_64 Win 10 host
Also upgrade to Conan 0.24.0.

Task-number: QTBUG-61829
Change-Id: Ia01609e5f2d8121eb216b03bc8e95bca7225042e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:51 +00:00
Konstantin Tokarev
a96119c121 Provisioning: move Conan manifests to common directory
We need to use x86 packages from qtci-windows-10-x86_64 configuration,
so splitting Conan manifests by configuration is not a good idea anymore.

Task-number: QTBUG-61829
Change-Id: I8b2fc00865cce372ca6b5ec75b4775d345d0d18f
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-09 04:51:48 +00:00
Simo Fält
5f37f812f9 Provision homebrew
Some of the macOS templates are cleaner than others and are mising some
basic tools like 7z. Homebrew provides easy way to install wide range of
tools via command line.

Change-Id: I5a8528bb4a13ef9a72e2467c51a8b5d45f9a3d84
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-08 07:23:16 +00:00
Simo Fält
0001d102f8 Provision libclang
PySide versions following 5.6 use a C++ parser based on Clang.
The Clang library (C-bindings), version 3.9 or higher is
required for building.

Change-Id: Ia7bcad46e3214d6d8b688354c9abdc83a513573c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-08 07:23:09 +00:00
Konstantin Tokarev
331cf52ff7 Provisioning: Install Ninja on windows hosts used to build cmake-based QtWebKit
Makefile-based generators of CMake are much less efficient than Ninja. They
generate bloated Makefiles that call back to cmake often. Main offender on
Windows is cmake_depends command which seems to do lots of disk reads.

QtWebKit can now switch to ninja automatically if it's present in PATH.
This should help to reduce build times.

Change-Id: I33d3f4d766a630f8ca4fb64b719fe2e8a5c2e00c
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-07-03 07:22:38 +00:00
Simon Hausmann
2c4b06a13d Centralize Mesa LLVMPipe installation on Windows
Install the DLL for general availability on all Windows systems. Due to
its distinct name it will not be picked up by anyone unless Qt
explicitly selects it.

This gives us the ability to choose the GLES backend to use in Qt.

Change-Id: Ie36f202ead7080a8f7690734d305bd27f0c9f56b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-06-20 04:44:49 +00:00
Simon Hausmann
20113e4872 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Change-Id: I1709ddd14bf27186a8968ce073cf22e7903ff798
2017-06-12 21:36:03 +02:00
Simon Hausmann
35057fe4b2 Clean up windows cleanup script
* There's no need to have a numbered prefix in the common directory
* Instead of deleting directories trees worth several gigabytes of data,
  just rename the directory. The underlying storage system is
  copy-on-write and so deleting the files produces more data than just
  moving the directory out of the way. Deleting the files does not
  actually free up any physical disk space.

Change-Id: I6de02d56f3485651726ea11183ce7571d5b61520
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-06-06 20:15:40 +00:00
Simon Hausmann
038d263081 Speed up Windows installation of cmake, python, opengl, mysys and Android
We're better off copying off the internal server using CIFS than using
PowerShell's incredibly slow Invoke-WebRequest.

Change-Id: Ic39cf08be70335e9309575d543155bffaceb0db0
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-06-06 20:15:34 +00:00
Simon Hausmann
999b5f5dd7 Speed up Visual Studio update installation
We have a prepared package on the internal server that has everything
necessary included. This way we do not have to download the actual
update content from the internet.

Change-Id: Ie4cb3116a4f91a47df5be1c2b2e473d7ddec9a78
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
2017-06-06 20:15:31 +00:00
Simon Hausmann
ce47238ed9 Improve Postgresql installation on Windows
Similar to the mysql change (parent commit) it's faster to rename any
older artifacts and install only what we need. This also generalizes the
zip archive extraction code for "dev" packages.

Change-Id: I3ad1f23efaed80fab3e0778a3e8c46317138f1ad
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2017-06-06 20:15:28 +00:00
Miikka Heikkinen
c3d2bd97bf Add provisioning for qt3dstudio 3rdparty tools
Change-Id: I8060b6fd89e4c188d17219f43c8789aa25713068
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-04-27 10:25:47 +00:00
Simon Hausmann
ce9181a964 Improve reliability of automated xcode installation
Instead of downloading a 4+GB archive and uncompressing it in /tmp,
let's uncompress the archive via NFS and feed the data straight into
cpio. This should be faster and avoids curl's error handling that's
happy to abort instead of re-trying.

Change-Id: Ifa5d842c50111ccdbd56e795b270ee6433a63adf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-04-21 06:22:10 +00:00
Tony Sarajärvi
9dfab7c1bd Fix provision script to create sub folders if needed
Change-Id: I6bec5e3adb66d0e88f611a83d05a52e6b8858b7a
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2017-04-20 03:29:36 +00:00
Simon Hausmann
fa903eba4b Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

Change-Id: Icee114ea6bd025a54db7ce34d6a0bd0dc16e767c
2017-04-13 21:54:47 +02:00
Tony Sarajärvi
b8211774d9 Fix provision help script DownloadURL.sh
The script neglected the result of the sha1 after download.
Even with a failure it exited nicely.

Change-Id: I6c0e25c2b764a0ad54acbe317eddf395a56d7f1c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-04-10 17:27:24 +00:00
Liang Qi
285ee106e7 Merge remote-tracking branch 'origin/5.6' into 5.9
Conflicts:
	coin/platform_configs/default.txt
	coin/platform_configs/qt5.txt

This also fixes the 7Z extraction code to work on the windows 7 x86
installation where 7z is not in the PATH anymore with revision 2. The
fallback code was 64-bit only and needs the null check for ProgramFiles(x86)
along with the fall back to ProgramFiles to locate the 7z executable.

Change-Id: Ifcf014c3a99685c427a62898e1fa83910a4a7247
2017-04-03 12:06:27 +00:00
Simo Fält
8b59bbc2a4 Coin provisioning: Use arg instead of autodetecting architecture
When provisioning windows machine, it seems that detecting architecture
by checking [System.Environment]::Is64BitProcess doesn't work properly.
Instead pass 32 or 64 as an argument when calling powershell script.

Change-Id: I890ad141b8ef194275848d0e656431753463cd2b
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2017-03-30 15:14:04 +00:00
Heikki Halmet
80b739b1e8 Provisioning: Move Visual Studio installation to pre-provisioning
Visual Studios will be pre-provisioned to tier1/vanilla os when visual
studio update is needed. Even if using pre-configured offline
installer with specific workload and components the installation is
still taking too long. This way we'll reduce provisioning time
significantly

Change-Id: I1f831aef648716dc640ce9cbfb4e63aa54e7afd0
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
2017-03-22 09:31:06 +00:00
Liang Qi
ad3c519525 Merge remote-tracking branch 'origin/5.8' into 5.9
Change-Id: I415772838a8434d00ad4ccebc8b1c4180e85880b
2017-03-04 22:21:23 +01:00
Akseli Salovaara
8de4f42cb6 Provisioning: Upgrade conan version from 0.16.0 to 0.20.2
Conan provisioning fails on private Coin instance due to error message
Could not find a version that satisfies the requirement conan==0.16.0
(from versions: 0.15.0, 0.16.1, 0.17.2, 0.18.1, 0.19.3, 0.20.0, 0.20.1,
0.20.2)
No matching distribution found for conan==0.16.0

Upgrading to 0.16.1 resulted warning
"Your conan's client version is deprecated
for the current remote (v0.20.2). Upgrade conan client."
and provisioning failed with "ERROR: All remotes failed"

After upgrade to 0.20.2 conan provisioning script is working again.

Change-Id: I2fe9d65460954c929abb4822d206dde42909d5b3
Reviewed-by: Konstantin Tokarev <annulen@yandex.ru>
2017-03-03 12:26:24 +00:00
Liang Qi
848c4ac3f8 Merge remote-tracking branch 'origin/5.6' into 5.8
Change-Id: I0203dea8e441e58400d6c44697588a44b97a522b
2017-02-17 15:22:56 +01:00
Tony Sarajarvi
f969320ac5 Add provisioning PKG install helper script for bash
Task-number: QTQAINFRA-1087
Change-Id: I93f33e2e93371f68f31a9ed8b4d9c89ee091b629
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
2017-02-09 08:35:59 +00:00
Tony Sarajarvi
dd1b6e53b1 Add provisioning helper script for installing compressed files
This script downloads a file from a given URL,
uncompresses it and installs it to a desired location.

Task-number: QTQAINFRA-1087
Change-Id: I466cb81ec6c96bb0d46329ec98dcc4f31be173ec
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
2017-02-09 08:35:56 +00:00
Heikki Halmet
ad97fd589f Provisioning: Visual Studio 2015 with update 3
Common install script for Visual Studio installation and
updates. Latest Visual Studio 2015 update is required
for releases

Change-Id: I5b41625ca7f161b4ba2d417797f8839ef175cdbc
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-02-07 19:25:11 +00:00
Konstantin Tokarev
25160f24b6 Upgrade CMake to 3.6.2
QtWebKit requires CMake >= 2.8.12, while only 2.8.11 is available on
Windows 10 machines.

Task-number: QTQAINFRA-996
Change-Id: I734be4cc36f64dd5aeb243b0fbe4395c75c523b3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
(cherry picked from commit 77eeee64a4)
2017-02-07 19:25:07 +00:00
Simon Hausmann
d641d6546b Merge remote-tracking branch 'origin/5.6' into 5.8
Conflicts:
	coin/provisioning/qtci-linux-RHEL-6.6-x86_64/android_linux.sh

Change-Id: I10fcdfc0af68741d931f4732783bafdad2fffc4a
2017-02-03 09:15:43 +01:00
Heikki Halmet
6afffd6985 Provision: Script to print sw versions to provision log
This script is the last script that is run by provisioning. It will
print all storaged sw information to provision log

Change-Id: I2c76d5f7cccf9c116cb660ffcb67d3bece473da8
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2017-02-03 05:46:57 +00:00
Joerg Bornemann
32b5e271a8 Update jom to 1.1.2
The most important changes that affect the CI are:
  - Fixed bogus path in error message for failed targets.
  - Fixed error "JobClient destroyed while still acquiring."
    that could be yielded for failed builds.
  - Fixed /k option (QTCREATORBUG-17131).
  - Added the special .NOTPARALLEL target that disables parallel
    build for the containing makefile. (This one is needed to
    build QtWebEngine in debug-and-release properly.)
  - Introduced the JOMFLAGS environment variable.
    This is a MAKEFLAGS pendant. JOMFLAGS is useful to set up
    separate flags for nmake and jom.

Change-Id: Icb2462d06b000a3fe29e1e9290b294cb1e900409
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2017-02-03 05:46:51 +00:00