Compare commits

...

71 Commits

Author SHA1 Message Date
Qt Submodule Update Bot
bb59a6bfcb Update submodules on '5.9.6' in qt5
Change-Id: I56e07a48063b65c9a4ab961b10415642d2d1fa72
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-06-07 11:33:48 +00:00
Qt Submodule Update Bot
1cf6f1a8cb Update submodules on '5.9.6' in qt5
Change-Id: I16a75e0ecbc01f944165a6a47f453c2aca82a837
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-06-02 04:58:15 +00:00
Joni Jantti
eeb9fc4129 Provisioning: Ubuntu - Add QNX 6.6.0
QNX 6.6.0 is required by RTA.

Task-number: QTQAINFRA-1914
Change-Id: Id0578050d24fb13f3e10a10e972be790d39f9bc0
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit e8a60ed41b)
2018-06-02 04:58:06 +00:00
Qt Submodule Update Bot
80e2123065 Update submodules on '5.9.6' in qt5
Change-Id: I4b5695046233f88bbfe41b628acc1ea694e5fe98
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-05-23 11:46:56 +00:00
Samuli Piippo
85c2dae031 Change QNX7 x86 release builds to x86_64
Task-number: QTBUG-67746
Change-Id: I677019909d56d8b227f0607069cbf3ab0cf7fec3
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
(cherry picked from commit 1c8ff381be)
2018-05-16 14:56:22 +00:00
Jani Heikkinen
26b22a63a1 Adjust QNX packaging builds for Qt 5.9
- Add missing 'Packaging' flag for linux and windows QNX builds

Change-Id: Ie4c49b9bd93f67f6a2dbbdece99da8c8f5fb3bef
Reviewed-by: Akseli Salovaara <akseli.salovaara@qt.io>
(cherry picked from commit de5d8f3b4f)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-05-16 14:56:18 +00:00
Oswald Buddenhagen
04d6ce5b3d Adjust submodule branches
Change-Id: I3614287752f5fe1bc3795ae16df3ebaede9dc056
2018-05-09 12:35:56 +02:00
Qt Submodule Update Bot
06b5bad1c1 Update submodules on '5.9' in qt5
Change-Id: I1c6c38b91bd327ca1e13e33892c562c43a3bdf1f
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-05-06 15:44:31 +00:00
Qt Submodule Update Bot
fdfe644ad2 Update submodules on '5.9' in qt5
Change-Id: I4ed094e012cc6cdb5a351fdccb7d3db28ae9a983
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-05-03 06:02:47 +00:00
Qt Submodule Update Bot
0ab127c294 Update submodules on '5.9' in qt5
Change-Id: Ie62f2c70c394f5e2dc000f8280c305e96d2f44e9
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-29 15:14:40 +00:00
Qt Submodule Update Bot
ad91a38ee6 Update submodules on '5.9' in qt5
Change-Id: I0031e830e4e05beb078ecdeda88f2eb50d8cf039
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-25 11:33:14 +00:00
Joni Jantti
e66122dac6 Add VC build tools to Windows 10 x86 template
These tools were missing from the installation.

Change-Id: I627b28a6f9373df708952e22a7f404b8dbce6239
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 9af755a79e)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-25 11:33:11 +00:00
Joni Jantti
f413d29be6 Add a clean installed Win10_x86 for RTA
Task-number: QTQAINFRA-1842
Change-Id: I0334d74055690c7f850fd105fe008d11a8e57b8c
Reviewed-by: Matti Paaso <matti.paaso@qt.io>
(cherry picked from commit 9e74a1e5b7)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-25 11:33:08 +00:00
Matti Paaso
cd894f6531 Add Windows 8.1 target for RTA
Change-Id: Ifd055590bada66f7437af0b4de4a8549440952ae
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit b59f4207a3)
2018-04-25 11:33:05 +00:00
Matti Paaso
59721f231c Add RTA targets
Release Test Automation tests are ran also in additional targets
compared to qt5 targets.

Change-Id: I72ca86f875920ec266e0e6b7ea3fee026eaa1cfe
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 884490eaae)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-25 11:33:02 +00:00
Joni Jantti
aa238f9770 Provisioning: Win10_x86 - Windows 10 SDK with debugging tools
RTA needs debugging tools for Windows 10 x86 testing.

Change-Id: I69cae92a2529a933a018f22c1b200bdc4d2c0aa0
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit 081861de18)
2018-04-20 06:16:06 +00:00
Joni Jantti
b9d64d2074 Provisioning: Win10_x86 - psql
Required by RTA.

Task-number: QTQAINFRA-1923
Change-Id: Ia13d9586d1c1934c8c4e51fcbe9ce826bba68524
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c1e2307d02)
2018-04-20 06:16:04 +00:00
Joni Jantti
3b3c2ab697 Provisioning: Win10_x86 - mysql
Required by RTA.

Task-number: QTQAINFRA-1923
Change-Id: I13d78da0bd3ea2fa8a75734fb5f88a472cbd79de
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c404097600)
2018-04-20 06:16:01 +00:00
Joni Jantti
da3d33d2e8 Provisioning: Win10_x86 - openssl
Required by RTA.

Task-number: QTQAINFRA-1923
Change-Id: I4937980a1f23d56e509b71541605c80cb6423402
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit 3d6736a7f1)
2018-04-20 06:15:58 +00:00
Heikki Halmet
0d19fb2955 Provisioning: Fix Squish installation for msvc14 32-bit
Task-number: QTQAINFRA-1809
Change-Id: I8a2947fe52535e39b0817fec2ee0c35bb09e4060
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
(cherry picked from commit 3410bab278)
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-20 06:15:55 +00:00
Oliver Wolff
73621de891 Unify Windows provisioning scripts & improve error handling
While Coin should also see exit codes != 0 as error, we should
stick to one way of handling script errors. As Power Shell cmdlets
signal an error by throwing an exception we should do the same
(and that approach also works in Coin).

Additionally extracting 7zip files was unified across scripts by
using the existing helper function instead of reinventing the wheel
again and again.

A similar helper function was introduced for starting an external
application (and handling its errors).

Also echo and other "cmd" commands were replaced by their PowerShell
equivalents to have a unified approach across our Windows provisioning
scripts.

Change-Id: I70129ce38692f1396c33c13b33a2918485fa5271
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
(cherry picked from commit cb6709ce5c)
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
2018-04-20 06:15:53 +00:00
Oliver Wolff
a37f4a2485 Windows 10: Enable developer mode
Developer mode is required by RTA for testing.

Change-Id: I4f20fb8d694d5148b7f976c1ef4bb23ff2fb57ba
(cherry picked from commit f51fd755b5)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-18 18:16:28 +00:00
Joni Jantti
34cf0234b9 Provisioning: Win10 - Add Squish for mingw53
RTA requires Squish for mingw53 on Windows 10 machines for testing.

Task-number: QTQAINFRA-1729
Change-Id: I42f2c6c62dd004ebc072835340ce24105cfac5e8
(cherry picked from commit 5e31866727)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-18 18:16:22 +00:00
Joni Jantti
18b2d88dd5 Provisioning: Win7-x86 - Add msvc14_x86 squish package
Squish is required by RTA testing.

Task-number: QTQAINFRA-1732
Change-Id: I8ab0b11ccc299cc0b10e59f99d1cf27c0cdd48b9
(cherry picked from commit f6f00fdce1)
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-18 18:16:18 +00:00
Joni Jantti
0f25c861f8 Provisioning: win10_x86 - Disable automatic updates
Task-number: QTQAINFRA-1814
Change-Id: I69b4f57808fe039208d9a92d288a74a09148db39
(cherry picked from commit 3230cdb138)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-18 18:16:13 +00:00
Joni Jantti
2042fea677 Provisioning: Ubuntu 16.04 - QNX700
QNX 7.0 is required by RTA on Ubuntu.

Task-number: QTQAINFRA-1671
Task-number: QTQAINFRA-1914
Change-Id: I82821e096cfa2d35a2176eba6e753a0d71049b72
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit dc6c54cb2d)
2018-04-18 18:16:09 +00:00
Simo Fält
b74a5ac533 Revert "Install Python 2.7.13 to RHEL with pip"
This reverts commit 794913dde7,
which seems to break pyside builds. Instead we install python-pip
package from the EPEL repository.

Change-Id: Ic84680b0b0d6950d389bb42a6add18c83256f00f
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit 6a06c4b4fe)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:16:06 +00:00
Heikki Halmet
6f39655317 Provisioning: Upgrade pip to latest version
Latest pip version is not installed during python
installation. Pip need to be reinstalled after python
installation because older version of pip seems to cause
installation problems randomly at least with python 2.7

Task-number: QTQAINFRA-1902
Change-Id: If3d74130ecee6e410c64cad309feff9edc0e5db0
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 2e6af2bba7)
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
2018-04-18 18:16:02 +00:00
Heikki Halmet
51e22677e8 Provisioning: Remove sha1 file after shasum check
Change-Id: Iee8e66d98e5ebd2dee18baf8e1752a86065417d1
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit c79d285ffa)
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-18 18:15:57 +00:00
Tony Sarajärvi
68884e38f8 Remove updating of RHEL 7.4 system during each provisioning
Yum update doesn't only fetch the repository data. It also runs
a distro upgrade. So if something gets updated that isn't
compatible with us, it breaks. It also slows down the provisioning
a lot.

Change-Id: I27136bc572fbce5410b82ff9574cf85bf89e3100
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit daeaec9b3c)
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-18 18:15:48 +00:00
Tony Sarajärvi
bced3b27e6 Install Python 2.7.13 to RHEL with pip
System's default Python is 2.7.5 and doesn't come
with pip at all. To install its pip, it would require us to
enable the EPEL repository and install it from there.

The repos we use already include Python 2.7.13. If we install that
we get pip as well.

Change-Id: I083a970697a962ddb301616695c2cf419f1229f8
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 794913dde7)
2018-04-18 18:15:44 +00:00
Tony Sarajärvi
afffd938c0 Remove duplicate python-devel provisioning from RHEL 7.x
Change-Id: I445135d675fa6b5cb305f6aadf5b754ab248a1ff
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit f1eca9bbff)
2018-04-18 18:15:39 +00:00
Tony Sarajärvi
9bcf5656a1 Make unzip less verbose in macOS
Change-Id: I83249f724ecbfeeb4fd5c1cd33a9c6195c590c4b
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit ab021d4bb4)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:15:36 +00:00
Frederik Gladhorn
4ff6dd218a Update Python 3.4 to 3.6 in RHEL 7.x
Also install Python 3 through system packages instead
of some weird scripts.

Change-Id: Ie22e126a422bd6efe9b3030d5044f4c196894ca8
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 9ae91ae3f8)
2018-04-18 18:15:31 +00:00
Rainer Keller
836bc7c649 Install RHEL EPEL only once
Installing twice will fail when preventing the +e injection bug
when fixing the try-catch issue.

Change-Id: I26a1b9fa235c44fe933f2f29016a80f57d47ed49
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
(cherry picked from commit 9cb66c0114)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:15:27 +00:00
Tony Sarajärvi
0f10422f5d Disable background update checks in RHEL 7.x
Change-Id: If17fd47850be8b3a59ded7e0a543c9160f92b84c
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit f6d18ec9b3)
2018-04-18 18:15:22 +00:00
Heikki Halmet
4b9ea4477d Provisioning: Fix java installation for mac
Change-Id: I3b6672e671720416af71631c2f9ce814f07e596a
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit a6feaec287)
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-04-18 18:15:17 +00:00
Tony Sarajärvi
a780f200a8 Remove try_catch.sh helper script
Change-Id: I3981920bb8085ffbad89c31e0fd628a6e11146b6
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 1b5f8cec03)
2018-04-18 18:15:13 +00:00
Jędrzej Nowacki
71282805a5 Simplify openssl_for_android_linux provisioning script
The script was over-engineered. The new version provides the same
functionality while removing uninteresting postmortem messages.

In addition try_catch.sh has a bug that injects set +e So it is good
to avoid using it.

Change-Id: I9e26e8fedad71d40270fe94695d5e1c09c3d9023
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
(cherry picked from commit bb9739773c)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:15:09 +00:00
Tony Sarajärvi
9497487c77 Remove try_catch codes from unix scripts
Change-Id: Iabadbf28c65132ae614048cb98e92f57e3786056
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 90261c1df5)
2018-04-18 18:15:04 +00:00
Heikki Halmet
6ef6267ab9 Provisioning: Move http_proxy.txt under shared folder
Change-Id: Id5b2f07a92eadfb21fbfdb3fb65621d6322dc8c4
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
(cherry picked from commit 23b4bcf6c5)
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-04-18 18:15:00 +00:00
Tony Sarajärvi
fb55d5bc14 Set proxy on Windows VMs while provisioning
Task-number: QTQAINFRA-1669
Change-Id: Ia6b5b668051642a3729d7c7c83c69d8797045847
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 54d8396d68)
2018-04-18 18:14:41 +00:00
Tony Sarajärvi
41c372c010 Remove try_catch codes from common macOS scripts
Change-Id: I66291e2da5514499387b61e01ad85a652cd24d7b
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit a98b0f3d79)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:14:37 +00:00
Tony Sarajärvi
34e9e68372 Remove try_catch codes from macOS 10.12 provisioning
Change-Id: I57fbfdef3e8105e9e66c576ef545fc6c22400ac7
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 2f9a2f65e5)
2018-04-18 18:14:32 +00:00
Matti Paaso
ee16738e1b Provisioning: osx-10.11 - Java
This is needed for running RTA jobs in Coin.

Change-Id: Iff855dae54babef00c055a2c8b938871101305e3
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit c3b33afc32)
2018-04-18 18:14:28 +00:00
Tony Sarajärvi
33b0b0751f Remove try_catch codes from macOS 10.11 scripts
Change-Id: I7690ae186729b3a180b1d38c298a861d981dbf5d
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 250dd8c84e)
2018-04-18 18:14:22 +00:00
Tony Sarajärvi
be8d6ad1b7 Remove try_catch from common linux scripts
Change-Id: I9c7b472fa4c448f40c9adc6cc8a0d84cb9c5e74c
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 1c6abfae01)
2018-04-18 18:14:18 +00:00
Tony Sarajärvi
8aef7fc9c0 Remove try_catch codes from Ubuntu 16.04 scripts
Change-Id: I4a377b8bc2a16d9b9c4123a9a4f623f1a6a7ae18
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 4492fd3268)
Reviewed-by: Simo Fält <simo.falt@qt.io>
2018-04-18 18:14:13 +00:00
Frederik Gladhorn
8c9174127a Uninstall aptdaemon/aptd before using apt
This removes various kinds of update notifiers that depend on aptd.
Also gets rid of the problem that aptd may hold apt lock files.

Task-number: QTQAINFRA-1755
Change-Id: I27dd6fef4720ef25a504d76a3da16d9bf45fb2f7
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
(cherry picked from commit b20224fe60)
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2018-04-18 18:14:09 +00:00
Jędrzej Nowacki
ac8a85582b Simplify DownloadURL
The script was over-engineered. The new version provides the same
functionality while removing uninteresting postmortem messages.

In addition try_catch.sh has a bug that injects set +e to a sourcing
script which was propagating through DownloadURL.sh to almost all
provisioning scripts. So it is good to avoid using it.

Change-Id: If191a0dcf52a29c4bec580a254e8e58a00130f6d
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
(cherry picked from commit 8a47814c91)
Reviewed-by: Aapo Keskimolo <aapo.keskimolo@qt.io>
2018-04-18 18:14:04 +00:00
Rainer Keller
ea67572b4a Provisioning: Create symbolic for shasum tool on macOS for compatibility
On macOS the sha1 tool is named 'shasum' while on all other unix systems
it is called 'sha1sum'. In order to make all unix provisioning scripts
run on macOS without special case handling a symbolic link is created.

Change-Id: Ib1365cbb0dcb31e68a22959ce939fb450ec7e3f7
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit 04d1ee1df4)
2018-04-18 18:13:59 +00:00
Qt Submodule Update Bot
0c7588bae3 Update submodules on '5.9' in qt5
Change-Id: Ife627e898e8db611cfaea25892e615fb8ab1a36e
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-18 18:13:40 +00:00
Liang Qi
0f7a4738a0 Merge remote-tracking branch 'origin/5.9.5' into 5.9
Change-Id: Iff18e567ab3b4568054e748347a11c20fc33bcdb
2018-04-15 15:50:47 +02:00
Qt Submodule Update Bot
0ef5baf70b Update submodules on '5.9' in qt5
Change-Id: I35c6ed46b3e4d9dd17615fcd8badec07489eb79a
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-12 07:33:59 +00:00
Qt Submodule Update Bot
4fabcfd5d1 Update submodules on '5.9.5' in qt5
Change-Id: Ic65ec06baa9db9f59521b6ade093e4b41427577d
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2018-04-10 19:13:49 +00:00
Qt Submodule Update Bot
e5d5e2aacb Update submodules on '5.9.5' in qt5
Change-Id: I31ba0df4dd95538fbe9893288c99b2a4df7b5e7c
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-04-05 04:14:52 +00:00
Qt Submodule Update Bot
366ffa5dac Update submodules on '5.9' in qt5
Change-Id: I50a741ca3dd3770fbc455604de9e91c132b8fd12
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-30 17:12:27 +00:00
Tony Sarajärvi
1297fd0b4e Download get-pip primarily from our local cache
We should first download from our local cache,
and if that doesn't work, fetch it online.

This commit doesn't fix it per se, but as we download
it from our local cache, the version is the one
our shasum checksum matches against.

Task-number: QTQAINFRA-1876
Change-Id: Ia7de54cf090af47ba33111911582f9d48c0ab2a2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 863252be49)
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
2018-03-20 09:59:50 +00:00
Tony Sarajärvi
cc6592ef08 Disable update download in background
Task-number: QTQAINFRA-1852
Change-Id: I6d8e433fa40dd080fe84efcf3d0c655d14f86010
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit eebc0133f0)
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
2018-03-20 09:59:48 +00:00
Tony Sarajärvi
4a32f93d87 Clean old RHEL repo data before fetching new data
Task-number: QTQAINFRA-1872
Change-Id: I49d9d1589adc5b34f1b7c2dccc14be0021f2baaa
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
(cherry picked from commit 64c79b27d6)
2018-03-20 09:59:46 +00:00
Tony Sarajärvi
d4c38f8da9 Use local RHEL repositories with RHEL 7.4
This will remove the majority of our network traffic from the outbound
connection while provisioning. Also proxy was removed for
yum, as there is no point in proxying local data.

As a side effect, this makes provisioning currently faster by
reducing the time it takes by 35%.

Task-number: QTQAINFRA-1849
Change-Id: Ida4fb86d4bef166fc72e521e395d9753ec47a687
Reviewed-by: Timo Aarnipuro <timo.aarnipuro@qt.io>
Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
(cherry picked from commit 209cb73a36)
2018-03-20 09:59:43 +00:00
Tony Sarajärvi
677524620d Revert "Provisioning: openSUSE - Set grub timeout to 0"
This reverts commit 2e329bc68e.
grub-update command isn't found, and after enforcing script
results, we have a P0 blocker here.

Change-Id: Iaf4b17a91cdc865974a5f4f196bbb80b085a39c2
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2018-03-17 12:05:27 +00:00
Qt Submodule Update Bot
1547283a3a Update submodules on '5.9' in qt5
Change-Id: I43b202ee47186605ee0bc45c8e1b72aedd5c9a46
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-17 10:23:05 +00:00
Qt Submodule Update Bot
6bc4d562c8 Update submodules on '5.9.5' in qt5
Change-Id: Ia5cb367e95fbb26756c1fa00b20e5638e62d5b5b
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-15 05:30:23 +00:00
Liang Qi
015b9cb53a Merge remote-tracking branch 'origin/5.9' into 5.9.5
Change-Id: If1ad190a0a4688d0f85dcd334396c7012937851b
2018-03-14 21:57:09 +01:00
Qt Submodule Update Bot
a63aa1647c Update submodules on '5.9' in qt5
Change-Id: I00a05444ff7e4b0eaaf8de653222e9cf3eff525a
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-03-13 13:34:45 +00:00
Tony Sarajärvi
07a4522087 Move MSVC2017 x86 builds to 64bit host OS
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Simo Fält <simo.falt@qt.io>
(cherry picked from commit b85b272c26)
Change-Id: I0bd874ac3c7f216f0fccd4141964c630cd8f6e10
2018-03-12 12:55:07 +00:00
Kari Oikarinen
ef2315af73 Install libusbx-devel for QDB on RHEL 7.4
On previous RHEL version the package was libusb1-devel. That package doesn't
seem to be there anymore, which presumably means why the package to install was
changed to libusb-devel. Unfortunately libusb-devel provides a compatibility
package for the old 0.1 API version and doesn't work with QDB. libusbx-devel
seems to be the new name for the 1.0 API version of libusb on RHEL.

(cherry picked from commit 140c6479b5)
Change-Id: I978e9842b3f0ec3a355cd1724934c99a531903ef
Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
2018-03-01 14:32:38 +00:00
Oswald Buddenhagen
2644bebe4b Adjust submodule branches
Change-Id: If02707c6644b429ebc019ea0309b9cd8e17e9ff7
2018-03-01 12:15:06 +01:00
Qt Submodule Update Bot
137ed3408d Update submodules on '5.9' in qt5
Change-Id: I803674e2f243ccc2c084519c4b8a6cc77174aef5
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-02-25 06:40:58 +00:00
Qt Submodule Update Bot
ac53509b31 Update submodules on '5.9' in qt5
Change-Id: Ic1f670ffa7196580a22f0fb893d06230bed42c21
Reviewed-by: Liang Qi <liang.qi@qt.io>
2018-02-23 06:31:30 +00:00
162 changed files with 1408 additions and 1707 deletions

78
.gitmodules vendored
View File

@@ -1,66 +1,66 @@
[submodule "qtbase"]
path = qtbase
url = ../qtbase.git
branch = 5.9
branch = 5.9.6
status = essential
[submodule "qtsvg"]
depends = qtbase
path = qtsvg
url = ../qtsvg.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtdeclarative"]
depends = qtbase
recommends = qtsvg qtxmlpatterns
path = qtdeclarative
url = ../qtdeclarative.git
branch = 5.9
branch = 5.9.6
status = essential
[submodule "qtactiveqt"]
depends = qtbase
path = qtactiveqt
url = ../qtactiveqt.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtscript"]
depends = qtbase
recommends = qttools
path = qtscript
url = ../qtscript.git
branch = 5.9
branch = 5.9.6
status = deprecated
[submodule "qtmultimedia"]
depends = qtbase
recommends = qtdeclarative
path = qtmultimedia
url = ../qtmultimedia.git
branch = 5.9
branch = 5.9.6
status = essential
[submodule "qttools"]
depends = qtbase
recommends = qtdeclarative qtactiveqt
path = qttools
url = ../qttools.git
branch = 5.9
branch = 5.9.6
status = essential
[submodule "qtxmlpatterns"]
depends = qtbase
path = qtxmlpatterns
url = ../qtxmlpatterns.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qttranslations"]
depends = qttools
path = qttranslations
url = ../qttranslations.git
branch = 5.9
branch = 5.9.6
status = essential
priority = 30
[submodule "qtdoc"]
depends = qtdeclarative
path = qtdoc
url = ../qtdoc.git
branch = 5.9
branch = 5.9.6
status = essential
priority = 40
[submodule "qtrepotools"]
@@ -81,14 +81,14 @@
recommends = qtdeclarative qtquickcontrols qtquickcontrols2 qtserialport
path = qtlocation
url = ../qtlocation.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtsensors"]
depends = qtbase
recommends = qtdeclarative
path = qtsensors
url = ../qtsensors.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtsystems"]
depends = qtbase
@@ -121,27 +121,27 @@
recommends = qtdeclarative qtandroidextras
path = qtconnectivity
url = ../qtconnectivity.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtwayland"]
depends = qtbase
recommends = qtdeclarative
path = qtwayland
url = ../qtwayland.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qt3d"]
depends = qtbase
recommends = qtdeclarative qtimageformats qtgamepad
path = qt3d
url = ../qt3d.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtimageformats"]
depends = qtbase
path = qtimageformats
url = ../qtimageformats.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtquick1"]
depends = qtscript
@@ -154,51 +154,51 @@
depends = qtdeclarative
path = qtgraphicaleffects
url = ../qtgraphicaleffects.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtquickcontrols"]
depends = qtdeclarative
recommends = qtgraphicaleffects
path = qtquickcontrols
url = ../qtquickcontrols.git
branch = 5.9
branch = 5.9.6
status = essential
[submodule "qtserialbus"]
depends = qtserialport
path = qtserialbus
url = ../qtserialbus.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtserialport"]
depends = qtbase
path = qtserialport
url = ../qtserialport.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtx11extras"]
depends = qtbase
path = qtx11extras
url = ../qtx11extras.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtmacextras"]
depends = qtbase
path = qtmacextras
url = ../qtmacextras.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtwinextras"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtwinextras
url = ../qtwinextras.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtandroidextras"]
depends = qtbase
path = qtandroidextras
url = ../qtandroidextras.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtenginio"]
depends = qtdeclarative
@@ -211,101 +211,101 @@
recommends = qtdeclarative
path = qtwebsockets
url = ../qtwebsockets.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtwebchannel"]
depends = qtbase
recommends = qtdeclarative qtwebsockets
path = qtwebchannel
url = ../qtwebchannel.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtwebengine"]
depends = qtquickcontrols qtwebchannel
recommends = qtlocation qttools
path = qtwebengine
url = ../qtwebengine.git
branch = 5.9
branch = 5.9.6
status = addon
priority = 10
[submodule "qtcanvas3d"]
depends = qtdeclarative
path = qtcanvas3d
url = ../qtcanvas3d.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtwebview"]
depends = qtdeclarative
recommends = qtwebengine
path = qtwebview
url = ../qtwebview.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtquickcontrols2"]
depends = qtgraphicaleffects
path = qtquickcontrols2
url = ../qtquickcontrols2.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtpurchasing"]
depends = qtbase qtandroidextras
recommends = qtdeclarative
path = qtpurchasing
url = ../qtpurchasing.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtcharts"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtcharts
url = ../qtcharts.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtdatavis3d"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtdatavis3d
url = ../qtdatavis3d.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtvirtualkeyboard"]
depends = qtbase qtdeclarative qtsvg
recommends = qtmultimedia qtquickcontrols
path = qtvirtualkeyboard
url = ../qtvirtualkeyboard.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtgamepad"]
depends = qtbase
recommends = qtdeclarative
path = qtgamepad
url = ../qtgamepad.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtscxml"]
depends = qtbase qtdeclarative
path = qtscxml
url = ../qtscxml.git
branch = 5.9
branch = 5.9.6
status = addon
[submodule "qtspeech"]
depends = qtbase
recommends = qtdeclarative qtmultimedia
path = qtspeech
url = ../qtspeech.git
branch = 5.9
branch = 5.9.6
status = preview
[submodule "qtnetworkauth"]
depends = qtbase
recommends = qtwebview
path = qtnetworkauth
url = ../qtnetworkauth.git
branch = 5.9
branch = 5.9.6
status = preview
[submodule "qtremoteobjects"]
depends = qtbase
recommends = qtdeclarative
path = qtremoteobjects
url = ../qtremoteobjects.git
branch = 5.9
branch = 5.9.6
status = preview

View File

@@ -3,7 +3,7 @@ Template Target OS Target arch Compiler Features
qtci-windows-8.1-x86_64 x86 MSVC2013 DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-8.1-x86_64 MSVC2013 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86_64-10 WinRT_10 MSVC2015 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
qtci-windows-10-x86-6 MSVC2017 DebugAndRelease Release ForceDebugInfo OpenGLDynamic
qtci-windows-10-x86_64-10 x86 MSVC2017 DebugAndRelease Release ForceDebugInfo OpenGLDynamic
qtci-windows-10-x86_64-10 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo OpenGLDynamic
qtci-windows-10-x86_64-10 WinRT_10 x86 MSVC2017 Packaging DebugAndRelease Release ForceDebugInfo DisableTests
qtci-windows-7-x86-3 Mingw53 Packaging DebugAndRelease Release OpenGLDynamic DisableTests
@@ -16,9 +16,9 @@ qtci-macos-10.12-x86_64-8 Android_ANY armv7 GCC Packagin
qtci-macos-10.12-x86_64-8 Android_ANY x86 GCC Packaging Release DisableTests OpenGLES2
qtci-linux-RHEL-6.6-x86_64 QNX_660 x86 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-macos-10.12-x86_64-8 IOS_ANY multi Clang Packaging DebugAndRelease DisableTests Static
qtci-windows-10-x86_64-10 QNX_700 armv7 Mingw53 Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_700 x86 Mingw53 Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_700 armv7 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_700 x86_64 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_660 armv7 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-windows-10-x86_64-10 QNX_660 x86 Mingw53 Packaging Release DisableTests OpenGLES2
qtci-linux-RHEL-7.4-x86_64 QNX_700 x86 GCC Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-RHEL-7.4-x86_64 QNX_700 armv7 GCC Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-RHEL-7.4-x86_64 QNX_700 x86_64 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker
qtci-linux-RHEL-7.4-x86_64 QNX_700 armv7 GCC Packaging Release DisableTests OpenGLES2 NoUseGoldLinker

View File

@@ -0,0 +1,6 @@
Template Target OS Target arch Compiler Features
--------------------------- ------------------- ----------- ----------- -------------------------------------------------------------------------------------
qtci-windows-7-x86_64-4 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-8.1-x86_64 MSVC2013 Release ForceDebugInfo OpenGLDynamic DisableTests
qtci-windows-10-x86-3 MSVC2017 Release ForceDebugInfo OpenGLDynamic

View File

@@ -37,7 +37,6 @@
# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/check_and_set_proxy.sh"
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -62,75 +61,37 @@ toolsSourceFile="$basePath/$toolsFile"
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
ExceptionDownload=99
ExceptionUnzipTools=100
ExceptionUnzipNdk=101
ExceptionRmTools=102
ExceptionRmNdk=103
ExceptionSdkManager=104
DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile"
DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile"
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkTargetFile" -d "$targetFolder"
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder"
rm "$ndkTargetFile"
rm "$toolsTargetFile"
try
(
(DownloadURL "$toolsSourceFile" "$toolsSourceFile" "$toolsSha1" "$toolsTargetFile") || throw $ExceptionDownload
(DownloadURL "$ndkSourceFile" "$ndkSourceFile" "$ndkSha1" "$ndkTargetFile") || throw $ExceptionDownload
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkTargetFile" -d "$targetFolder" || throw $ExceptionUnzipNdk
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsTargetFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
rm "$ndkTargetFile" || throw $ExceptionRmNdk
rm "$toolsTargetFile" || throw $ExceptionRmTools
echo "Changing ownership of Android files."
if uname -a |grep -q "el6\|el7"; then
echo "Changing ownership of Android files."
if uname -a |grep -q "el6\|el7"; then
sudo chown -R qt:wheel "$targetFolder"
else
else
sudo chown -R qt:users "$targetFolder"
fi
fi
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
if [ "$http_proxy" != "" ]; then
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
if [ "$http_proxy" != "" ]; then
proxy_host=$(echo $proxy | cut -d'/' -f3 | cut -d':' -f1)
proxy_port=$(echo $proxy | cut -d':' -f3)
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
fi
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" --no_https --proxy=http --proxy_host=$proxy_host --proxy_port=$proxy_port "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
else
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
fi
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionUnzipTools)
echo "Failed to unzip Android SDK Tools."
exit 1;
;;
$ExceptionUnzipNdk)
echo "Failed to unzip Android NDK."
exit 1;
;;
$ExceptionRmTools)
echo "Failed to remove temporary tools package '$toolsTargetFile'."
exit 1;
;;
$ExceptionRmNdk)
echo "Failed to remove temporary NDK package '$ndkTargetFile'."
exit 1;
;;
$ExceptionSdkManager)
echo "Failed to run sdkmanager."
exit 1;
;;
esac
}
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "linux-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt

View File

@@ -36,7 +36,6 @@
# This script install OpenSSL from sources.
# Requires GCC and Perl to be in PATH.
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -51,37 +50,16 @@ sha="36af23887402a5ea4ebef91df8e61654906f58f2"
# QTQAINFRA-1436
opensslHome="${installFolder}openssl-1.0.2"
ExceptionDownload=99
ExceptionTar=100
ExceptionConfig=101
DownloadURL "$cachedUrl" "$officialUrl" "$sha" "$targetFile"
try
(
(DownloadURL "$cachedUrl" "$officialUrl" "$sha" "$targetFile") || throw $ExceptionDownload
tar -xzf "$targetFile" -C "$installFolder"
# This rename should be removed once hard coded path from Coin is fixed. (QTQAINFRA-1436)
mv "${opensslHome}g" "${opensslHome}"
pushd "$opensslHome"
tar -xzf "$targetFile" -C "$installFolder" || throw $ExceptionTar
# This rename should be removed once hard coded path from Coin is fixed. (QTQAINFRA-1436)
mv "${opensslHome}g" "${opensslHome}"
pushd "$opensslHome"
perl Configure shared android || throw $ExceptionConfig
echo "Running configure"
perl Configure shared android
SetEnvVar "OPENSSL_ANDROID_HOME" "$opensslHome"
SetEnvVar "OPENSSL_ANDROID_HOME" "$opensslHome"
echo "OpenSSL for Android = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionTar)
echo "Failed to extract $targetFile"
exit 1;
;;
$ExceptionConfig)
echo "Failed to run 'config'."
exit 1;
;;
esac
}
echo "OpenSSL for Android = $version" >> ~/versions.txt

View File

@@ -0,0 +1,66 @@
#!/usr/bin/env bash
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# This script installs QNX 6.6.0.
set -ex
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
targetFolder="/opt/"
sourceFile="http://ci-files01-hki.intra.qt.io/input/qnx/linux/qnx660.tar.gz"
sha1="E292CCAEF447AC1AA4DAD7802D604A5531ACD8D0"
folderName="qnx660"
targetFile="qnx660.tar.gz"
wget --tries=5 --waitretry=5 --progress=dot:giga --output-document="$targetFile" "$sourceFile"
echo "$sha1 $targetFile" | sha1sum --check
if [ ! -d "$targetFolder" ]; then
mkdir -p $targetFolder
fi
sudo tar -C $targetFolder -xvzf $targetFile
sudo chown -R qt:users "$targetFolder"/"$folderName"
# Verify that we have last file in tar
if [ ! -f $targetFolder/$folderName/qnx660-env.sh ]; then
echo "Installation failed!"
exit -1
fi
rm -rf $targetFile
# Set env variables
SetEnvVar "QNX_660" "$targetFolder$folderName"
echo "QNX SDP = 6.6.0" >> ~/versions.txt

View File

@@ -37,21 +37,11 @@
# uncompresses it and installs it by default
# to /Applications/. This can be overridden by a target parameter.
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
set -ex
# shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallAppFromCompressedFileFromURL {
url=$1
url_alt=$2
@@ -63,8 +53,6 @@ function InstallAppFromCompressedFileFromURL {
target="/Applications/"
fi
try
(
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
@@ -74,63 +62,30 @@ function InstallAppFromCompressedFileFromURL {
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension")
# macOS 10.10 mktemp does require prefix
if [[ $OSTYPE == "darwin14" ]]; then
targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory
targetDirectory=$(mktemp -d -t '10.10')
else
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
targetDirectory=$(mktemp -d)
fi
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile")
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
tar -xzf "$targetFile" --directory "$targetDirectory"
;;
"zip")
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
unzip -q "$targetFile" -d "$targetDirectory"
;;
*)
throw $ExceptionUnknownFormat
exit 1
;;
esac
echo "Moving app to '$target'"
sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp
sudo mv "$targetDirectory/$appPrefix/"* "$target"
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
rm "$targetFile"
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to '$target'."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
rm -rf "$targetDirectory"
}

View File

@@ -33,16 +33,7 @@
##
#############################################################################
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
ExceptionCreateTmpFile=100
ExceptionDownloadPrimaryUrl=101
ExceptionDownloadAltUrl=102
ExceptionSHA1=103
ExceptionInstallerPKG=104
ExceptionDeleteTmpFile=105
set -ex
function InstallPKGFromURL {
url=$1
@@ -50,55 +41,19 @@ function InstallPKGFromURL {
expectedSha1=$3
targetDirectory=$4
try
(
echo "Creating temporary file"
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg") || trow $ExceptionCreateTmpFile
try
(
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg")
echo "Downloading PKG from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
echo "Failed to download '$url' multiple times"
echo "Downloading PKG from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
)
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
/usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1
/usr/bin/shasum --check $targetFile.sha1
echo "Run installer on PKG"
sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG
sudo installer -package "$targetFile" -target "$targetDirectory"
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
)
catch || {
case $ex_code in
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionDownloadAltUrl)
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed to check sha1sum."
exit 1;
;;
$ExceptionInstallerPKG)
echo "Failed running installer on PKG."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
esac
}
rm "$targetFile"
}

View File

@@ -0,0 +1,3 @@
#!/usr/bin/env bash
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate AutomaticDownload -boolean FALSE

View File

@@ -34,8 +34,8 @@
# This script installs FBX SDK
# shellcheck source=./../unix/try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
set -ex
# shellcheck source=../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
@@ -50,27 +50,18 @@ installer="$targetFolder/fbx20161_2_fbxsdk_clang_macos.pkg"
ExceptionExtractPrimaryUrl=100
try
(
echo "Extracting '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || throw $ExceptionExtractPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionExtractPrimaryUrl)
set -e
echo "Extracting '$cachedUrl'"
tar -xzf "$cachedUrl" -C "$targetFolder" || (
echo "Failed to uncompress from '$cachedUrl'"
echo "Downloading from '$officialUrl'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" || exit 1;
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl"
echo "Checking SHA1 on PKG '$targetFile'"
echo "$sha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1
echo "Extracting '$targetFile'"
tar -xzf "$targetFile" -C "$targetFolder" || exit 1;
;;
esac
}
set -e
tar -xzf "$targetFile" -C "$targetFolder"
)
rm -rf "$targetFile"
echo "Running installer for '$installer'"
sudo installer -pkg "$installer" -target "/"

View File

@@ -33,56 +33,30 @@
##
#############################################################################
source "${BASH_SOURCE%/*}/../unix/DownloadURL.sh"
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
set -ex
# Command line tools is need by homebrew
function InstallCommandLineTools {
ExceptionMount=101
ExceptionInstall=102
ExceptionUnmount=103
url=$1
url_alt=$2
expectedSha1=$3
packageName=$4
version=$5
try
(
DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName
echo "Mounting $packageName"
hdiutil attach /tmp/$packageName || throw $ExceptionMount
hdiutil attach /tmp/$packageName
cd "/Volumes/Command Line Developer Tools"
echo "Installing"
sudo installer -verbose -pkg *.pkg -target / || throw $ExceptionInstall
sudo installer -verbose -pkg *.pkg -target /
cd /
# Let's fait for 5 second before unmounting. Sometimes resource is busy and cant be unmounted
sleep 3
echo "Unmounting"
umount /Volumes/Command\ Line\ Developer\ Tools/ || throw $ExceptionUnmount
umount /Volumes/Command\ Line\ Developer\ Tools/
echo "Removing $packageName"
rm /tmp/$packageName
echo "Command Line Tools = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionMount)
echo "Failed to mount"
exit 1;
;;
$ExceptionInstall)
echo "Failed to install"
exit 1;
;;
$ExceptionUnmount)
echo "Failed to unmount"
exit 1;
esac
}
}

View File

@@ -44,48 +44,18 @@
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
function InstallXCode()
{
ExceptionCPIO=103
ExceptionAcceptLicense=105
ExceptionDeveloperMode=113
function InstallXCode() {
sourceFile=$1
version=$2
try
(
echo "Uncompressing and installing '$sourceFile'"
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi) || throw $ExceptionCPIO
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
echo "Accept license"
sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
sudo xcodebuild -license accept
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
sudo /usr/sbin/DevToolsSecurity -enable || throw $ExceptionDeveloperMode
sudo /usr/sbin/DevToolsSecurity -enable
echo "Xcode = $version" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionCPIO)
echo "Failed to unarchive .cpio."
exit 1;
;;
$ExceptionDeveloperMode)
echo "Failed to enable developer mode."
exit 1;
;;
$ExceptionAcceptLicense)
echo "Failed to accept license."
exit 1;
;;
esac
}
}

View File

@@ -0,0 +1,63 @@
#!/usr/bin/env bash
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# This script installs JDK
set -ex
echo "Installing Java Development Kit"
targetFile=jdk-8u102-macosx-x64.dmg
url=ci-files01-hki.intra.qt.io:/hdd/www/input/mac
# url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg
echo "Mounting $targetFile"
sudo mount "$url" /Volumes
sudo cp "/Volumes/$targetFile" /tmp
sudo umount /Volumes
sudo hdiutil attach "/tmp/$targetFile"
echo Installing JDK
cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /
echo "Unmounting $targetFile"
sudo hdiutil unmount /Volumes/JDK\ 8\ Update\ 102/ -force
echo "Disable auto update"
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
echo "JDK Version = 8 update 102" >> ~/versions.txt

View File

@@ -1,5 +1,11 @@
#!/usr/bin/env bash
# Will install pip utility for python
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo python get-pip.py
rm get-pip.py
function InstallPip {
python=$1
# Will install pip utility for python
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
sudo "$python" get-pip.py
rm get-pip.py
}

View File

@@ -35,8 +35,12 @@
# This script installs python2
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
# shellcheck source=./../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-2.7.14-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/2.7.14/python-2.7.14-macosx10.6.pkg"
@@ -45,8 +49,11 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
InstallPip /Library/Frameworks/Python.framework/Versions/2.7/bin/python
/Library/Frameworks/Python.framework/Versions/2.7/bin/pip install virtualenv
SetEnvVar "PATH" "/Library/Frameworks/Python.framework/Versions/2.7/bin/:\$PATH"
echo "python2 = 2.7.14" >> ~/versions.txt

View File

@@ -36,8 +36,12 @@
# This script installs python3
# shellcheck source=./InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/InstallPKGFromURL.sh"
# shellcheck source=./../unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../unix/SetEnvVar.sh"
# shellcheck source=./pip.sh
source "${BASH_SOURCE%/*}/pip.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/python-3.6.1-macosx10.6.pkg"
AltUrl="https://www.python.org/ftp/python/3.6.1/python-3.6.1-macosx10.6.pkg"
@@ -46,9 +50,12 @@ DestDir="/"
InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
InstallPip /Library/Frameworks/Python.framework/Versions/3.6/bin/python3
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip3 install virtualenv
SetEnvVar "PYTHON3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
SetEnvVar "PIP3_PATH" "/Library/Frameworks/Python.framework/Versions/3.6/bin"
echo "python3 = 3.6.1" >> ~/versions.txt

View File

@@ -0,0 +1,49 @@
#!/usr/bin/env bash
#############################################################################
##
## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# On macOS the sha1 tool is named 'shasum' while on all other unix systems it is called 'sha1sum'.
# In order to make all unix provioning scripts run on macOS without special case handling
# a symbolic link is created.
# The shasum tool is a perl script which does some globbing to determine the perl version. The
# symbolic link has to point directly to the binary including the perl version.
# Additionally the CI seems to have multiple parallel perl versions installed which causes
# multiple shasum tools to be present (shasum5.16, shasum5.18).
#
# Currently this is
# /usr/local/bin/sha1sum -> /usr/bin/shasum5.18
[ -d /usr/local/bin ] || sudo mkdir -p /usr/local/bin
SHASUM_TOOLNAME=$(ls -r /usr/bin/shasum?.* | head -n1)
sudo ln -s "${SHASUM_TOOLNAME}" /usr/local/bin/sha1sum

View File

@@ -40,51 +40,22 @@
# If called directly from another script, it will exit the parent script
# as well, if not called in its own subshell with parentheses.
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/try_catch.sh"
ExceptionDownloadPrimaryUrl=100
ExceptionDownloadAltUrl=101
ExceptionSHA1=102
function DownloadURL {
url=$1
url_alt=$2
expectedSha1=$3
targetFile=$4
try
(
try
(
echo "Downloading from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || (
echo "Failed to download '$url' multiple times"
echo "Downloading tar.gz from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Downloading from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url_alt"
)
echo "Checking SHA1 on PKG '$targetFile'"
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
shasum --check $targetFile.sha1 || throw $ExceptionSHA1
)
catch || {
case $ex_code in
$ExceptionDownloadAltUrl)
echo "Failed downloading PKG from primary and alternative URLs"
exit 1;
;;
$ExceptionSHA1)
echo "Failed checksum on $targetFile."
exit 1;
;;
esac
}
sha1sum --check $targetFile.sha1
rm -f $targetFile.sha1
}

View File

@@ -33,21 +33,11 @@
##
#############################################################################
# shellcheck source=try_catch.sh
source "${BASH_SOURCE%/*}/try_catch.sh"
set -ex
# shellcheck source=DownloadURL.sh
source "${BASH_SOURCE%/*}/DownloadURL.sh"
ExceptionDownload=99
ExceptionCreateTmpFile=100
ExceptionCreateTmpDirectory=101
ExceptionUncompress=102
ExceptionMoveApp=103
ExceptionDeleteTmpFile=104
ExceptionRemoveTmpDirectory=105
ExceptionUnknownFormat=106
function InstallFromCompressedFileFromURL {
url=$1
url_alt=$2
@@ -55,8 +45,6 @@ function InstallFromCompressedFileFromURL {
installDirectory=$4
appPrefix=$5
try
(
basefilename=${url##*/}
extension=${basefilename##*.}
filename=${basefilename%.*}
@@ -65,60 +53,27 @@ function InstallFromCompressedFileFromURL {
fi
echo "Extension for file: $extension"
echo "Creating temporary file and directory"
targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension") || throw $ExceptionCreateTmpFile
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
targetFile=$(mktemp "$TMPDIR$(uuidgen)XXXXX.$extension")
targetDirectory=$(mktemp -d)
DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile"
echo "Uncompress $targetFile"
case $extension in
"tar.gz")
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
tar -xzf "$targetFile" --directory "$targetDirectory"
;;
"zip")
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
unzip "$targetFile" -d "$targetDirectory"
;;
*)
throw $ExceptionUnknownFormat
exit 1
;;
esac
echo "Moving app to $installDirectory"
sudo mkdir -p "$installDirectory"
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory"
echo "Removing file '$targetFile'"
rm "$targetFile" || throw $ExceptionDeleteTmpFile
rm "$targetFile"
echo "Removing directory '$targetDirectory'"
rm -rf "$targetDirectory" || throw $ExceptionRemoveTmpDirectory
)
catch || {
case $ex_code in
$ExceptionDownload)
exit 1;
;;
$ExceptionCreateTmpFile)
echo "Failed to create temporary file"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionMoveApp)
echo "Failed moving app to target location."
exit 1;
;;
$ExceptionDeleteTmpFile)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionRemoveTmpDirectory)
echo "Failed deleting temporary file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
esac
}
rm -rf "$targetDirectory"
}

View File

@@ -32,19 +32,8 @@
##
#############################################################################
source "${BASH_SOURCE%/*}/try_catch.sh"
source "${BASH_SOURCE%/*}/http_proxy.txt"
set -ex
try
(
wget -q -e "http_proxy=$proxy" --spider proxy.intra.qt.io
)
if [ $? -eq 0 ]; then
echo "Setting http_proxy to $proxy"
export http_proxy=$proxy
else
echo "Proxy not detected at $proxy"
fi
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"

View File

@@ -60,12 +60,7 @@ zip="libclang.7z"
destination="/usr/local/libclang-$version"
curl --fail -L --retry 5 --retry-delay 5 -o "$zip" "$url"
_shasum=sha1sum
if [[ "$OSTYPE" == "darwin"* ]]; then
echo "DARWIN"
_shasum=/usr/bin/shasum
fi
echo "$sha1 $zip" | $_shasum --check
echo "$sha1 $zip" | sha1sum --check
7z x $zip -o/tmp/
rm -rf $zip

View File

@@ -33,8 +33,6 @@
##
#############################################################################
source "${BASH_SOURCE%/*}/try_catch.sh"
set -ex
# This script will install squish package for Linux and Mac.
@@ -65,18 +63,7 @@ if [ -f "/etc/profile.d/squish_env.sh" ]; then
export SQUISH_LICENSEKEY_DIR=$HOME
fi
ExceptionMount=100
ExceptionCreateFolder=101
ExceptionUncompress=102
ExceptionUnknownFormat=103
ExceptionCopy=104
ExceptionUmount=105
ExceptionHdiutilAttach=106
ExceptionInstallSquish=107
ExceptionChangeOwnership=108
function MountAndInstall {
url=$1
targetDirectory=$2
targetFile=$3
@@ -102,96 +89,51 @@ function MountAndInstall {
targetFileMount="$mountFolder"/"$targetFile"
try
(
echo "Mounting $url to $mountFolder"
sudo mount "$url" $mountFolder || throw $ExceptionMount
sudo mount "$url" $mountFolder
echo "Create $targetDirectory if needed"
if [ ! -d "/opt" ]; then
sudo mkdir "/opt" || throw $ExceptionCreateFolder
sudo mkdir "/opt"
fi
if [ ! -d "$targetDirectory" ]; then
sudo mkdir "$targetDirectory" || throw $ExceptionCreateFolder
sudo mkdir "$targetDirectory"
fi
echo "Uncompress $targetFile"
if [[ $targetFile == *.tar.gz ]]; then
if [[ $targetFile == .squish-3-license.* ]]; then
target="$squishLicenseDir"
# Squish license need to be exists also in users home directory, because squish check it before it starts running tests
sudo tar -xzf "$targetFileMount" --directory "$HOME" || throw $ExceptionUncompress
sudo tar -xzf "$targetFileMount" --directory "$HOME"
else
target="$targetDirectory"
fi
sudo tar -xzf "$targetFileMount" --directory "$target" || throw $ExceptionUncompress
sudo tar -xzf "$targetFileMount" --directory "$target"
echo "Unmounting $mountFolder"
sudo umount $mountFolder || throw $ExceptionUmount
sudo umount $mountFolder
elif [[ $targetFile == *.dmg ]]; then
echo "'dmg-file', no need to uncompress"
sudo cp $targetFileMount /tmp || throw $ExceptionCopy
sudo umount $mountFolder || throw $ExceptionUmount
sudo hdiutil attach "/tmp/$targetFile" || throw $ExceptionHdiutilAttach
sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" || throw $ExceptionInstallSquish
sudo cp $targetFileMount /tmp
sudo umount $mountFolder
sudo hdiutil attach "/tmp/$targetFile"
sudo /Volumes/froglogic\ Squish/Install\ Squish.app/Contents/MacOS/Squish unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory"
sudo hdiutil unmount /Volumes/froglogic\ Squish/
elif [[ $targetFile == *.run ]]; then
echo "'run-file', no need to uncompress"
sudo cp $targetFileMount $targetDirectory || throw $ExceptionCopy
sudo umount $mountFolder || throw $ExceptionUmount
sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1 || throw $ExceptionInstallSquish
sudo cp $targetFileMount $targetDirectory
sudo umount $mountFolder
sudo $targetDirectory/$targetFile unattended=1 targetdir="$targetDirectory/package" qtpath="$targetDirectory" > /dev/null 2>&1
sudo rm -fr "$targetDirectory/$targetFile"
if uname -a |grep -q "Ubuntu"; then
sudo mkdir /usr/lib/tcl8.6 || throw $ExceptionCreateFolder
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/ || throw $ExceptionCopy
sudo mkdir /usr/lib/tcl8.6
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/
fi
else
throw $ExceptionUnknownFormat
exit 1
fi
echo "Changing ownerships"
sudo chown -R qt:$usersGroup "$targetDirectory" || throw $ExceptionChangeOwnership
sudo chown -R qt:$usersGroup "$targetDirectory"
sudo chown qt:$usersGroup "$HOME/.squish-3-license"
)
catch || {
case $ex_code in
$ExceptionMount)
echo "Failed to mount $url to $mountFolder."
exit 1;
;;
$ExceptionCreateFolder)
echo "Failed to create folder"
exit 1;
;;
$ExceptionUncompress)
echo "Failed extracting compressed file."
exit 1;
;;
$ExceptionUnknownFormat)
echo "Unknown file format."
exit 1;
;;
$ExceptionCopy)
echo "Failed to copy"
exit 1;
;;
$ExceptionUmount)
echo "Failed to unmount $mountFolder."
exit 1;
;;
$ExceptionHdiutilAttach)
echo "Failed to hdituli attach $mountFolder/$targetFile."
exit 1;
;;
$ExceptionInstallSquish)
echo "Failed to install squish"
exit 1;
;;
$ExceptionChangeOwnership)
echo "Failed to change ownership of $targetDirectory."
exit 1;
;;
esac
}
}
echo "Set commands for environment variables in .bashrc"

View File

@@ -2,18 +2,12 @@
$scriptsPath = "C:\Python27\Scripts"
& "$scriptsPath\pip.exe" install --upgrade conan==0.24.0
Run-Executable "$scriptsPath\pip.exe" "install --upgrade conan==0.24.0"
# Use Qt Project repository by default
& "$scriptsPath\conan.exe" remote add qtproject https://api.bintray.com/conan/qtproject/conan --insert
Run-Executable "$scriptsPath\conan.exe" "remote add qtproject https://api.bintray.com/conan/qtproject/conan --insert"
[Environment]::SetEnvironmentVariable("CI_CONAN_BUILDINFO_DIR", "C:\Utils\conanbuildinfos", "Machine")
function Start-Process-Logged
{
Write-Host "Start-Process", $args
Start-Process @args
}
Set-EnvironmentVariable "CI_CONAN_BUILDINFO_DIR" "C:\Utils\conanbuildinfos"
function Run-Conan-Install
{
@@ -43,18 +37,20 @@ function Run-Conan-Install
$outpwd = "C:\Utils\conanbuildinfos\$($BuildinfoDir)\$($_.BaseName)"
New-Item $outpwd -Type directory -Force
$process = Start-Process-Logged `
"$scriptsPath\conan.exe" `
-WorkingDirectory $outpwd `
-ArgumentList "install -f $conanfile --no-imports --verify $manifestsDir", `
for ($i = 1; $i -le 5; $i++) {
try {
Push-Location $outpwd
Run-Executable "$scriptsPath\conan.exe" "install -f $conanfile --no-imports --verify $manifestsDir", `
'-s', ('compiler="' + $Compiler + '"'), `
"-s os=Windows -s arch=$Arch -s compiler.version=$CompilerVersion $extraArgs" `
-NoNewWindow -Wait -Verbose `
-PassThru # Return process object
if ($process.ExitCode -ne 0) {
Write-Host "conan exited with code $($process.ExitCode)"
Exit(1)
break;
} catch {
if ($i -eq 5) {
throw "Could not install conan content"
}
} finally {
Pop-Location
}
}
Copy-Item -Path $conanfile -Destination "$outpwd\conanfile.txt"

View File

@@ -5,6 +5,6 @@ $zip = "c:\users\qt\downloads\Qt3DStudio-3rdparty-win64-CI.zip"
Invoke-WebRequest -UseBasicParsing http://ci-files01-hki.intra.qt.io/input/3rdparty/Qt3DStudio-3rdparty-win64-CI.zip -OutFile $zip
Verify-Checksum $zip "08D740D2EFB4CBCDE7D012908B89AA48DE5CD4E1"
Extract-Zip $zip C:\Utils\Qt3DStudio3rdparty
Remove-Item $zip
Remove-Item -Path $zip
[Environment]::SetEnvironmentVariable("QT3DSTUDIO_3RDPARTY_DIR", "C:/Utils/Qt3DStudio3rdparty", "Machine")
Set-EnvironmentVariable "QT3DSTUDIO_3RDPARTY_DIR" "C:/Utils/Qt3DStudio3rdparty"

View File

@@ -30,7 +30,8 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script allows the Windows Remote Desktop Access
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
Run-Executable "reg.exe" "add `"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server`" /v fDenyTSConnections /t REG_DWORD /d 0 /f"

View File

@@ -47,23 +47,23 @@ $destination = "C:\Utils\openssl-android-master"
Download https://www.openssl.org/source/openssl-$version.tar.gz \\ci-files01-hki.intra.qt.io\provisioning\openssl\openssl-$version.tar.gz $zip
Verify-Checksum $zip $sha1
C:\Utils\sevenzip\7z.exe x $zip -oC:\Utils
C:\Utils\sevenzip\7z.exe x C:\Utils\openssl-$version.tar -oC:\Utils
Extract-7Zip $zip C:\Utils
Extract-7Zip C:\Utils\openssl-$version.tar C:\Utils
Rename-Item C:\Utils\openssl-$version $destination
Remove-Item $zip
Remove-Item -Path $zip
Remove-Item C:\Utils\openssl-$version.tar
set CC=C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc
set AR=C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-ar
set ANDROID_DEV=C:\utils\android-ndk-r10e\platforms\android-18\arch-arm\usr
Set-EnvironmentVariable "CC" "C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-gcc"
Set-EnvironmentVariable "AR" "C:\utils\android-ndk-r10e\toolchains\arm-linux-androideabi-4.9\prebuilt\windows\bin\arm-linux-androideabi-ar"
Set-EnvironmentVariable "ANDROID_DEV" "C:\utils\android-ndk-r10e\platforms\android-18\arch-arm\usr"
# Make sure configure for openssl has a "make" and "perl" available
$env:PATH = $env:PATH + ";C:\msys\1.0\bin;C:\strawberry\perl\bin"
echo "Configuring OpenSSL $version for Android..."
pushd $destination
C:\msys\1.0\bin\bash.exe -c "c:/strawberry/perl/bin/perl Configure shared android"
popd
Write-Host "Configuring OpenSSL $version for Android..."
Push-Location $destination
Run-Executable "C:\msys\1.0\bin\bash.exe" "-c `"c:/strawberry/perl/bin/perl Configure shared android`""
Pop-Location
# Following command is needed when using version 1.1.0. With version 1.1.0 msys is not needed.
# C:\mingw530\bin\mingw32-make.exe include\openssl\opensslconf.h

View File

@@ -70,23 +70,19 @@ function Install($1, $2, $3, $4) {
}
function SdkUpdate ($1, $2) {
echo "Running Android SDK update for $1..."
Write-Host "Running Android SDK update for $1..."
cmd /c "echo y |$1\tools\android update sdk --no-ui --all --filter $2"
}
echo "Installing Android ndk $nkdVersion"
Write-Host "Installing Android ndk $nkdVersion"
Install $ndkCachedUrl $ndkZip $ndkChecksum $ndkOfficialUrl
echo "Set environment variable ANDROID_NDK_HOME=$ndkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_NDK_HOME", $ndkFolder, "Machine")
echo "Set environment variable ANDROID_NDK_ROOT=$ndkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_NDK_ROOT", $ndkFolder, "Machine")
Set-EnvironmentVariable "ANDROID_NDK_HOME" $ndkFolder
Set-EnvironmentVariable "ANDROID_NDK_ROOT" $ndkFolder
#echo "Installing Android sdk $sdkVersion"
#Write-Host "Installing Android sdk $sdkVersion"
Install $sdkCachedUrl $sdkZip $sdkChecksum $sdkOfficialUrl
echo "Set environment variable ANDROID_SDK_HOME=$sdkFolder"
[Environment]::SetEnvironmentVariable("ANDROID_SDK_HOME", $sdkFolder, "Machine")
echo "Set environment variable ANDROID_API_VERSION $sdkApiLevel"
[Environment]::SetEnvironmentVariable("ANDROID_API_VERSION", $sdkApiLevel, "Machine")
Set-EnvironmentVariable "ANDROID_SDK_HOME" $sdkFolder
Set-EnvironmentVariable "ANDROID_API_VERSION" $sdkApiLevel
# SDK update
SdkUpdate $sdkFolder $sdkApiLevel
@@ -94,5 +90,11 @@ SdkUpdate $sdkFolder tools
SdkUpdate $sdkFolder platform-tools
SdkUpdate $sdkFolder build-tools-$sdkBuildToolsVersion
# kill adb. This process prevent's provisioning to continue
taskkill /im adb.exe /f
# kill adb. This process prevents provisioning to continue
$p = Get-Process -Name "adb.exe" -ErrorAction:SilentlyContinue
if ($p -ne $null) {
Write-Host "Stopping adb.exe"
Stop-Process -Force $p
} else {
Write-Host "adb.exe not running"
}

View File

@@ -40,7 +40,7 @@ $zip = "c:\users\qt\downloads\cmake-" + $version + "-win32-x86.zip"
$officialurl = "https://cmake.org/files/v" + $majorminorversion + "/cmake-" + $version + "-win32-x86.zip"
$cachedurl = "\\ci-files01-hki.intra.qt.io\provisioning\cmake\cmake-" + $version + "-win32-x86.zip"
echo "Removing old cmake"
Write-Host "Removing old cmake"
Remove-Item "C:\CMake" -Force -Recurse -ErrorAction SilentlyContinue
Download $officialurl $cachedurl $zip
@@ -52,5 +52,5 @@ Rename-Item $defaultinstallfolder C:\CMake
Add-Path "C:\CMake\bin"
echo "CMake = $version" >> ~\versions.txt
Write-Output "CMake = $version" >> ~\versions.txt

View File

@@ -1,2 +1,4 @@
. "$PSScriptRoot\helpers.ps1"
# Disable the NTP from syncing
w32tm /config /syncfromflags:NO
Run-Executable "w32tm.exe" "/config /syncfromflags:NO"

View File

@@ -30,10 +30,11 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script prevents Windows from going to sleep
powercfg -change -monitor-timeout-ac 0
powercfg -change -standby-timeout-ac 0
powercfg -change -disk-timeout-ac 0
powercfg -change -hibernate-timeout-ac 0
Run-Executable "powercfg.exe" "-change -monitor-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -standby-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -disk-timeout-ac 0"
Run-Executable "powercfg.exe" "-change -hibernate-timeout-ac 0"

View File

@@ -30,7 +30,8 @@
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script disables the Windows UAC
C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f
Run-Executable "reg.exe" "ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f"

View File

@@ -2,4 +2,7 @@
#
# If disabled manually, windows will automatically enable it after
# some period of time. Disabling it speeds up the builds.
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /V DisableAntiSpyware /T REG_dWORD /D 1 /F
. "$PSScriptRoot\helpers.ps1"
Run-Executable "reg.exe" "ADD `"HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender`" /V DisableAntiSpyware /T REG_dWORD /D 1 /F"

View File

@@ -43,7 +43,7 @@ if ($service.Status -eq "Stopped") {
Write-Host "Windows Update service already stopped."
} else {
Write-Host "Stopping Windows Update service."
stop-service wuauserv
Stop-Service -Name "wuauserv" -Force
}
$startup = Get-WmiObject Win32_Service | Where-Object {$_.Name -eq "wuauserv"} | Select -ExpandProperty "StartMode"

View File

@@ -11,9 +11,9 @@ $exe = "C:\Windows\Temp\$package"
Download $officialUrl $cachedUrl $exe
echo "Installing DirectX SDK"
cmd /c "$exe /u"
Write-Host "Installing DirectX SDK"
Run-Executable $exe "/u"
Remove-Item $exe
Remove-Item -Path $exe
echo "DirectX SDK = 9.29.1962 (Jun 10)" >> ~\versions.txt
Write-Output "DirectX SDK = 9.29.1962 (Jun 10)" >> ~\versions.txt

View File

@@ -51,18 +51,16 @@ $sha1 = "3690400625672bef6369bcf90dcde4d78b493b24"
#$targetFile = "C:\Windows\Temp\$packageName"
$targetFolder = "C:\Program Files\"
#echo "Downloading '$installerName'"
#Write-Host "Downloading '$installerName'"
#Download $officialUrl $cacheUrl $targetFile
#Verify-Checksum $targetFile $sha1
echo "Extracting '$cacheUrl'"
#Extract-7Zip $cacheUrl $targetFolder
Start-Process -FilePath "C:\Utils\sevenzip\7z.exe" -ArgumentList "x -y `"$cacheUrl`" -o`"$targetFolder`"" -Wait
Write-Host "Extracting '$cacheUrl'"
Extract-7Zip $cacheUrl $targetFolder
#Remove-Item -Recurse -Force "$packageName"
echo "Adding environment variables."
[Environment]::SetEnvironmentVariable("FBXSDK", "$targetFolder\Autodesk\FBX\FBX SDK\2016.1.2", [EnvironmentVariableTarget]::Machine)
Set-EnvironmentVariable "FBXSDK" "$targetFolder\Autodesk\FBX\FBX SDK\2016.1.2"
echo "FBX SDK = $version" >> ~\versions.txt
Write-Output "FBX SDK = $version" >> ~\versions.txt

View File

@@ -5,13 +5,32 @@ function Verify-Checksum
[string]$Expected=$(throw("Checksum required")),
[ValidateSet("sha1","md5")][string]$Algorithm="sha1"
)
Write-Host "Verifying checksum of $File"
$fs = new-object System.IO.FileStream $File, "Open"
$algo = [type]"System.Security.Cryptography.$Algorithm"
$crypto = $algo::Create()
$hash = [BitConverter]::ToString($crypto.ComputeHash($fs)).Replace("-", "")
$fs.Close()
if ($hash -ne $Expected) {
Write-Error "Checksum verification failed, got: '$hash' expected: '$Expected'"
throw "Checksum verification failed, got: '$hash' expected: '$Expected'"
}
}
function Run-Executable
{
Param (
[string]$Executable=$(throw("You must specify a program to run.")),
[string[]]$Arguments
)
if ([string]::IsNullOrEmpty($Arguments)) {
Write-Host "Running `"$Executable`""
$p = Start-Process -FilePath "$Executable" -Wait -PassThru
} else {
Write-Host "Running `"$Executable`" with arguments `"$Arguments`""
$p = Start-Process -FilePath "$Executable" -ArgumentList $Arguments -Wait -PassThru
}
if ($p.ExitCode -ne 0) {
throw "Process $($Executable) exited with exit code $($p.ExitCode)"
}
}
@@ -21,24 +40,21 @@ function Extract-7Zip
[string]$Source,
[string]$Destination
)
echo "Extracting '$Source' to '$Destination'..."
Write-Host "Extracting '$Source' to '$Destination'..."
if ((Get-Command "7z.exe" -ErrorAction SilentlyContinue) -eq $null) {
$zipExe = join-path (${env:ProgramFiles(x86)}, ${env:ProgramFiles} -ne $null)[0] '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
$zipExe = join-path ${env:ProgramW6432} '7-zip\7z.exe'
$zipExe = join-path (${env:ProgramFiles(x86)}, ${env:ProgramFiles}, ${env:ProgramW6432} -ne $null)[0] '7-zip\7z.exe'
if (-not (test-path $zipExe)) {
$zipExe = "C:\Utils\sevenzip\7z.exe"
if (-not (test-path $zipExe)) {
throw "Could not find 7-zip."
}
}
}
} else {
$zipExe = "7z.exe"
}
& $zipExe x $Source "-o$Destination" -y
Run-Executable "$zipExe" "x -y `"-o$Destination`" `"$Source`""
}
function Extract-Zip
@@ -47,7 +63,7 @@ function Extract-Zip
[string]$Source,
[string]$Destination
)
echo "Extracting '$Source' to '$Destination'..."
Write-Host "Extracting '$Source' to '$Destination'..."
New-Item -ItemType Directory -Force -Path $Destination
$shell = new-object -com shell.application
@@ -66,7 +82,7 @@ function Extract-Dev-Folders-From-Zip
$shell = new-object -com shell.application
echo "Extracting contents of $package"
Write-Host "Extracting contents of $package"
foreach ($subDir in "lib", "include", "bin", "share") {
$zip = $shell.Namespace($package + "\" + $zipDir + "\" + $subDir)
if ($zip) {
@@ -97,12 +113,14 @@ function Download
)
$ProgressPreference = 'SilentlyContinue'
try {
Write-Host "Downloading from cached location ($CachedUrl) to $Destination"
if ($CachedUrl.StartsWith("http")) {
Invoke-WebRequest -UseBasicParsing $CachedUrl -OutFile $Destination
} else {
Copy-Item $CachedUrl $Destination
}
} catch {
Write-Host "Cached download failed: Downloading from official location: $OfficialUrl"
Invoke-WebRequest -UseBasicParsing $OfficialUrl -OutFile $Destination
}
}
@@ -112,34 +130,32 @@ function Add-Path
Param (
[string]$Path
)
echo "Adding $Path to Path"
Write-Host "Adding $Path to Path"
$oldPath = [System.Environment]::GetEnvironmentVariable('Path', 'Machine')
[Environment]::SetEnvironmentVariable("Path", $oldPath + ";$Path", [EnvironmentVariableTarget]::Machine)
}
function is64bitWinHost
{
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64")) {
return 1
}
else {
return 0
}
}
Function Execute-Command
function Set-EnvironmentVariable
{
Param (
[string]$command
[string]$Key = $(BadParam("a key")),
[string]$Value = $(BadParam("a value."))
)
Try {
echo "Executing command '$command'..."
$process = Start-Process -FilePath "cmd" -ArgumentList "/c $command" -PassThru -Wait -WindowStyle Hidden
if ($process.ExitCode) {throw "Error running command: '$command'"}
}
Catch {
$_.Exception.Message
exit 1
}
Write-Host "Setting environment variable `"$($Key)`" to `"$($Value)`""
[Environment]::SetEnvironmentVariable($Key, $Value, [EnvironmentVariableTarget]::Machine)
}
function Is64BitWinHost
{
return [environment]::Is64BitOperatingSystem
}
function isProxyEnabled {
return (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyEnable
}
function getProxy {
return (Get-ItemProperty -Path 'HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings').proxyServer
}

View File

@@ -37,7 +37,7 @@
$version = "53_1"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64")) {
if (Is64BitWinHost) {
$url_official_2013 = "http://download.qt.io/development_releases/prebuilt/icu/prebuilt/msvc2013/icu_" + $version + "_msvc_2013_64_devel.7z"
$url_cache_2013 = "\\ci-files01-hki.intra.qt.io/provisioning/windows/icu_" + $version + "_msvc_2013_64_devel.7z"
@@ -46,22 +46,22 @@ if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -e
$icuPackage_msvc2013_64 = "C:\Windows\Temp\icu-$version-msvc2013_64.7z"
if (!(Test-Path C:\Utils\icu_"$version"_msvc_2013_64_devel\)) {
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Download $url_official_2013 $url_cache_2013 $icuPackage_msvc2013_64
Verify-Checksum $icuPackage_msvc2013_64 $sha1_2013
Get-ChildItem $icuPackage_msvc2013_64 | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o""C:\Utils\icu_"$version"_msvc_2013_64_devel\""}
echo "Cleaning $icuPackage_msvc2013_64..."
Write-Host "Cleaning $icuPackage_msvc2013_64..."
Remove-Item -Recurse -Force $icuPackage_msvc2013_64
echo "ICU MSVC2013 = $version" >> ~\versions.txt
Write-Output "ICU MSVC2013 = $version" >> ~\versions.txt
}
# FIXME: do we really want to have it per MSVC version? What about MSVC2015?
[Environment]::SetEnvironmentVariable("CI_ICU_PATH_MSVC2013", "C:\\Utils\\icu_53_1_msvc_2013_64_devel\\icu53_1", "Machine")
# FIXME: do we really want to use the 4.8.2 ICU build?
[Environment]::SetEnvironmentVariable("CI_ICU_PATH_Mingw49", "C:\Utils\icu_53_1_Mingw_builds_4_8_2_posix_seh_64_devel\icu53_1", "Machine")
Set-EnvironmentVariable "CI_ICU_PATH_Mingw49" "C:\Utils\icu_53_1_Mingw_builds_4_8_2_posix_seh_64_devel\icu53_1"
} else {
@@ -72,15 +72,15 @@ if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -e
$icuPackage_msvc2013_32 = "C:\Windows\Temp\icu-$version-msvc2013_32.7z"
if (!(Test-Path C:\Utils\icu_"$version"_msvc_2013_32_devel\)) {
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Download $url_official_2013_32 $url_cache_2013_32 $icuPackage_msvc2013_32
Verify-Checksum $icuPackage_msvc2013_32 $sha1_2013_32
Get-ChildItem $icuPackage_msvc2013_32 | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o""C:\Utils\icu_"$version"_msvc_2013_32_devel\""}
echo "Cleaning $icuPackage_msvc2013_32..."
Write-Host "Cleaning $icuPackage_msvc2013_32..."
Remove-Item -Recurse -Force $icuPackage_msvc2013_32
echo "ICU MSVC2013 = $version" >> ~\versions.txt
Write-Output "ICU MSVC2013 = $version" >> ~\versions.txt
}
# FIXME: do we really want to have it per MSVC version? What about MSVC2015?

View File

@@ -36,11 +36,10 @@
# This script will install Dependency Walker 2.2.6000
$version = "2.2.6000"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "_x64"
$sha1 = "4831D2A8376D64110FF9CD18799FE6C69509D3EA"
}
else {
} else {
$arch = "_x86"
$sha1 = "bfec714057e8449b0246051be99ba46a7760bab9"
}
@@ -49,15 +48,15 @@ $url_official = "http://www.dependencywalker.com/depends22" + $arch + ".zip"
$dependsPackage = "C:\Windows\Temp\depends-$version.zip"
$TARGETDIR = "C:\Utils\dependencywalker"
if(!(Test-Path -Path $TARGETDIR )){
if (!(Test-Path -Path $TARGETDIR )) {
New-Item -ItemType directory -Path $TARGETDIR
}
Download $url_official $url_cache $dependsPackage
Verify-Checksum $dependsPackage $sha1
Get-ChildItem $dependsPackage | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname "-o$TARGETDIR"}
Extract-7Zip $dependsPackage $TARGETDIR
echo "Cleaning $dependsPackage.."
Remove-Item -Recurse -Force "$dependsPackage"
Write-Host "Cleaning $dependsPackage.."
Remove-Item -Recurse -Force -Path "$dependsPackage"
echo "Dependency Walker = $version" >> ~\versions.txt
Write-Output "Dependency Walker = $version" >> ~\versions.txt

View File

@@ -35,11 +35,10 @@
# Install Git version 2.13.0
$version = "2.13.0"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "-64-bit"
$sha1 = "E1D7C6E5E16ACAF3C108064A2ED158F604FA29A7"
}
else {
} else {
$arch = "-32-bit"
$sha1 = "03c7df2e4ef61ea6b6f9c0eb7e6d5151d9682aec"
}
@@ -47,11 +46,11 @@ $gitPackage = "C:\Windows\Temp\Git-" + $version + $arch + ".exe"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\Git-" + $version + $arch + ".exe"
$url_official = "https://github.com/git-for-windows/git/releases/download/v" + $version + ".windows.1/Git-" + $version + $arch + ".exe"
echo "Fetching Git $version..."
Write-Host "Fetching Git $version..."
Download $url_official $url_cache $gitPackage
Verify-Checksum $gitPackage $sha1
echo "Installing Git $version..."
cmd /c "$gitPackage /SILENT /COMPONENTS="icons,ext\reg\shellhere,assoc,assoc_sh""
remove-item $gitPackage
Write-Host "Installing Git $version..."
Run-Executable "$gitPackage" "/SILENT /COMPONENTS=`"icons,ext\reg\shellhere,assoc,assoc_sh`""
Remove-Item -Path $gitPackage
echo "Git = $version" >> ~\versions.txt
Write-Output "Git = $version" >> ~\versions.txt

View File

@@ -38,11 +38,10 @@
$installdir = "C:\Program Files\Java\jdk1.8.0_144"
$version = "8u144"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "x64"
$sha1 = "adb03bc3f4b40bcb3227687860798981d58e1858"
}
else {
} else {
$arch = "i586"
$sha1 = "3b9ab95914514eaefd72b815c5d9dd84c8e216fc"
}
@@ -51,13 +50,13 @@ $url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\jdk-" + $version
$official_url = "http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-" + $version + "-windows-" + $arch + ".exe"
$javaPackage = "C:\Windows\Temp\jdk-$version.exe"
echo "Fetching Java SE $version..."
Write-Host "Fetching Java SE $version..."
$ProgressPreference = 'SilentlyContinue'
try {
echo "...from local cache"
Invoke-WebRequest -UseBasicParsing $url_cache -OutFile $javaPackage
Write-Host "...from local cache"
Download $url_cache $url_cache $javaPackage
} catch {
echo "...from oracle.com"
Write-Host "...from oracle.com"
$client = new-object System.Net.WebClient
$cookie = "oraclelicense=accept-securebackup-cookie"
$client.Headers.Add("Cookie", $cookie)
@@ -68,11 +67,11 @@ try {
Verify-Checksum $javaPackage $sha1
cmd /c "$javaPackage /s SPONSORS=0"
echo "Cleaning $javaPackage.."
Remove-Item -Recurse -Force "$javaPackage"
Run-Executable "$javaPackage" "/s SPONSORS=0"
Write-Host "Cleaning $javaPackage.."
Remove-Item -Recurse -Force -Path "$javaPackage"
[Environment]::SetEnvironmentVariable("JAVA_HOME", "$installdir", [EnvironmentVariableTarget]::Machine)
Set-EnvironmentVariable "JAVA_HOME" "$installdir"
Add-Path "$installdir\bin"
echo "Java SE = $version $arch" >> ~\versions.txt
Write-Output "Java SE = $version $arch" >> ~\versions.txt

View File

@@ -55,14 +55,13 @@ function InstallMinGW
Download $url_official $url_cache $mingwPackage
Verify-Checksum $mingwPackage $sha1
Get-ChildItem $mingwPackage | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname "-o$TARGETDIR"}
Extract-7Zip $mingwPackage $TARGETDIR
echo "Adding MinGW environment variable."
[Environment]::SetEnvironmentVariable("$envvar", "$targetdir\mingw32", [EnvironmentVariableTarget]::Machine)
Set-EnvironmentVariable "$envvar" "$targetdir\mingw32"
echo "Cleaning $mingwPackage.."
Remove-Item -Recurse -Force "$mingwPackage"
Write-Host "Cleaning $mingwPackage.."
Remove-Item -Recurse -Force -Path "$mingwPackage"
echo "MinGW = $version $release" >> ~\versions.txt
Write-Output "MinGW = $version $release" >> ~\versions.txt
}

View File

@@ -36,11 +36,10 @@
# This script will install Notepad++
$version = "7.3"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = ".x64"
$sha1 = "E7306DF1D6E81801FB4BE0868610DB70E979B0AA"
}
else {
} else {
$arch = ""
$sha1 = "d4c403675a21cc381f640b92e596bae3ef958dc6"
}
@@ -50,13 +49,12 @@ $nppPackage = "C:\Windows\Temp\npp-$version.exe"
Download $url_official $url_cache $nppPackage
Verify-Checksum $nppPackage $sha1
cmd /c "$nppPackage /S"
Run-Executable "$nppPackage" "/S"
echo "Cleaning $nppPackage.."
Remove-Item -Recurse -Force "$nppPackage"
Write-Host "Cleaning $nppPackage.."
Remove-Item -Recurse -Force -Path "$nppPackage"
echo "Notepad++ = $version" >> ~\versions.txt
Write-Output "Notepad++ = $version" >> ~\versions.txt
Write-Host "Disabling auto updates."
Rename-Item -Path "C:\Program Files\Notepad++\updater" -NewName "updater_disabled"
echo "Auto-updating disabled."

View File

@@ -38,9 +38,13 @@
$version = "6.6.0"
$nondottedversion = $version -replace '[.]',''
$targetFolder = "c:"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\qnx" + $nondottedversion + ".zip"
$fileName = "qnx" + $nondottedversion + ".zip"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\" + $fileName
$zip = "C:\Windows\Temp\" + $fileName
Get-ChildItem $url_cache | % {& "C:\Utils\sevenzip\7z.exe" "x" $_.fullname -o"C:\"}
Download $url_cache $url_cache $zip
Verify-Checksum $zip "52e451648eeef1f14a516fa03d8ddd1a59d485cd"
Extract-7Zip $zip $targetFolder
[Environment]::SetEnvironmentVariable("QNX_660", "$targetFolder", "Machine")
echo "QNX = $version" >> ~\versions.txt
Set-EnvironmentVariable "QNX_660" "$targetFolder"
Write-Output "QNX = $version" >> ~\versions.txt

View File

@@ -36,11 +36,10 @@
# This script will install Ruby
$version = "2.4.2-2"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "-x64"
$sha1 = "c961c2752a183487bc42ed24beb7e931230fa7d5"
}
else {
} else {
$arch = "-x86"
$sha1 = "2639a481c3b5ad11f57d5523cc41ca884286089e"
}
@@ -50,9 +49,9 @@ $rubyPackage = "C:\Windows\Temp\rubyinstaller-$version.exe"
Download $url_official $url_cache $rubyPackage
Verify-Checksum $rubyPackage $sha1
Start-Process -FilePath $rubyPackage -ArgumentList "/dir=C:\Ruby-$version$arch /tasks=modpath /verysilent" -Wait
Run-Executable $rubyPackage "/dir=C:\Ruby-$version$arch /tasks=modpath /verysilent"
echo "Cleaning $rubyPackage.."
Remove-Item -Recurse -Force "$rubyPackage"
Write-Host "Cleaning $rubyPackage.."
Remove-Item -Recurse -Force -Path "$rubyPackage"
echo "Ruby = $version" >> ~\versions.txt
Write-Output "Ruby = $version" >> ~\versions.txt

View File

@@ -38,11 +38,10 @@
$version = "16.04"
$nonDottedVersion = "1604"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "-x64"
$sha1 = "338A5CC5200E98EDD644FC21807FDBE59910C4D0"
}
else {
} else {
$arch = ""
$sha1 = "dd1cb1163c5572951c9cd27f5a8dd550b33c58a4"
}
@@ -54,11 +53,11 @@ $7zTargetLocation = "C:\Utils\sevenzip\"
Download $url_official $url_cache $7zPackage
Verify-Checksum $7zPackage $sha1
Start-Process -FilePath $7zPackage -ArgumentList "/S","/D=$7zTargetLocation" -Wait
Run-Executable $7zPackage "/S","/D=$7zTargetLocation"
echo "Cleaning $7zPackage.."
Remove-Item -Recurse -Force "$7zPackage"
Write-Host "Cleaning $7zPackage.."
Remove-Item -Recurse -Force -Path "$7zPackage"
Add-Path $7zTargetLocation
echo "7-Zip = $version" >> ~\versions.txt
Write-Output "7-Zip = $version" >> ~\versions.txt

View File

@@ -36,23 +36,23 @@
# This script installs Strawberry Perl
$version = "5.26.0.1"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = "-64bit"
$sha1 = "2AE2EDA36A190701399130CBFEE04D00E9BA036D"
}
else {
} else {
$arch = "-32bit"
$sha1 = "b50b688a879f33941433774b2813bfd4b917e4ee"
}
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\strawberry-perl-" + $version + $arch + ".msi"
$url_official = "http://strawberryperl.com/download/" + $version + "/strawberry-perl-" + $version + $arch + ".msi"
$strawberryPackage = "C:\Windows\Temp\strawberry-installer-$version.msi"
$installer_name = "strawberry-perl-" + $version + $arch + ".msi"
$url_cache = "\\ci-files01-hki.intra.qt.io\provisioning\windows\" + $installer_name
$url_official = "http://strawberryperl.com/download/" + $version + "/" + $installer_name
$strawberryPackage = "C:\Windows\Temp\" + $installer_name
Download $url_official $url_cache $strawberryPackage
Verify-Checksum $strawberryPackage $sha1
cmd /c "$strawberryPackage /QB INSTALLDIR=C:\strawberry REBOOT=REALLYSUPPRESS"
Run-Executable "$strawberryPackage" "/QB INSTALLDIR=C:\strawberry REBOOT=REALLYSUPPRESS"
echo "Cleaning $strawberryPackage.."
Remove-Item -Recurse -Force "$strawberryPackage"
Write-Host "Cleaning $strawberryPackage.."
Remove-Item -Recurse -Force -Path "$strawberryPackage"
echo "strawberry = $version" >> ~\versions.txt
Write-Output "strawberry = $version" >> ~\versions.txt

View File

@@ -6,4 +6,4 @@ Invoke-WebRequest -UseBasicParsing http://download.qt.io/official_releases/jom/j
Verify-Checksum $zip "80EE5678E714DE99DDAF5F7593AB04DB1C7928E4"
Extract-Zip $zip C:\Utils\Jom
[Environment]::SetEnvironmentVariable("CI_JOM_PATH", "C:\Utils\Jom", "Machine")
Set-EnvironmentVariable "CI_JOM_PATH" "C:\Utils\Jom"

View File

@@ -24,9 +24,10 @@ $destination = "C:\Utils\libclang-" + $libclang_version
Download $url $url $zip
Verify-Checksum $zip $sha1
C:\Utils\sevenzip\7z.exe x $zip -oC:\Utils\
Extract-7Zip $zip C:\Utils\
Rename-Item C:\Utils\libclang $destination
Remove-Item -Force -Path $zip
[Environment]::SetEnvironmentVariable("LLVM_INSTALL_DIR", $destination, [EnvironmentVariableTarget]::Machine)
del $zip
echo "libClang = $libclang_version" >> ~/versions.txt
Set-EnvironmentVariable "LLVM_INSTALL_DIR" $destination
Write-Output "libClang = $libclang_version" >> ~/versions.txt

View File

@@ -44,4 +44,4 @@ Verify-Checksum $archive "396a3224c306480f24a583850d923d06aa4377c1"
Extract-7Zip $archive $libusb_location
# Tell qt-apps/qdb build system where to find libusb
[Environment]::SetEnvironmentVariable("LIBUSB_PATH", $libusb_location, "Machine")
Set-EnvironmentVariable "LIBUSB_PATH" $libusb_location

View File

@@ -1,3 +1,3 @@
# This is needed e.g. for Android NDK installation for Windows 7 x86
echo "Increase value of MaxMemoryPerShellMB to avoid 'out of memory' exception"
Write-Host "Increase value of MaxMemoryPerShellMB to avoid 'out of memory' exception"
set-item wsman:localhost\Shell\MaxMemoryPerShellMB 2048

View File

@@ -47,14 +47,15 @@ function Extract-Mesa
[string]$targetFolder
)
Write-Host "Installing Mesa from $downloadUrl to $targetFolder"
$localArchivePath = "C:\Windows\temp\opengl32sw.7z"
Invoke-WebRequest -UseBasicParsing $downloadUrl -OutFile $localArchivePath
Verify-Checksum $localArchivePath $sha1
Get-ChildItem $package | % {& "C:\Utils\sevenzip\7z.exe" "x" "-y" $_.fullname "-o$targetFolder"}
Remove-Item $localArchivePath
Write-Host "Downloading $downloadUrl to $package"
Invoke-WebRequest -UseBasicParsing $downloadUrl -OutFile $package
Verify-Checksum $package $sha1
Extract-7Zip $package $targetFolder
Write-Host "Removing $package"
Remove-Item -Path $package
}
if ( Test-Path C:\Windows\SysWOW64 ) {
if (Is64BitWinHost) {
Extract-Mesa $mesaOpenglUrl_64 $mesaOpenglSha1_64 "C:\Windows\System32"
Extract-Mesa $mesaOpenglUrl_32 $mesaOpenglSha1_32 "C:\Windows\SysWOW64"
} else {

View File

@@ -36,25 +36,30 @@
# Original download page: https://msdn.microsoft.com/en-us/library/mt752379.aspx
$version = "2015 update3 (KB3165756)"
$package = "C:\Windows\Temp\vs14-kb3165756.exe"
$packagePath = "C:\Windows\Temp"
$package = $packagePath + "\vs14-kb3165756.exe"
$url_cache = "http://ci-files01-hki.intra.qt.io/input/windows/vs14-kb3165756.exe"
$url_official = "http://go.microsoft.com/fwlink/?LinkID=816878"
$sha1 = "6a21d9b291ca75d44baad95e278fdc0d05d84c02"
$preparedPackage="\\ci-files01-hki.intra.qt.io\provisioning\windows\vs14-kb3165756-update"
$preparedPackage = "\\ci-files01-hki.intra.qt.io\provisioning\windows\vs14-kb3165756-update"
if (Test-Path $preparedPackage) {
echo "Using prepared package"
pushd $preparedPackage
$commandLine = "$preparedPackage\vs14-kb3165756.exe"
# The prepared package contains updated packages so that not everything has to be downloaded
Write-Host "Using prepared package"
Copy-Item -Recurse $preparedPackage $packagePath
# Remove the whole downloaded folder
$toRemove = $packagePath + "\vs14-kb3165756-update"
$executable = "$toRemove\vs14-kb3165756.exe"
} else {
echo "Fetching patch for Visual Studio $version..."
Write-Host "Fetching patch for Visual Studio $version..."
Download $url_official $url_cache $package
Verify-Checksum $package $sha1
$commandLine = $package
$executable = $package
# Remove the downloaded executable
$toRemove = $executable
}
echo "Installing patch for Visual Studio $version..."
. $commandLine /norestart /passive
if ($commandLine.StartsWith("C:\Windows")) {
remove-item $package
}
Verify-Checksum $executable $sha1
Write-Host "Installing patch for Visual Studio $version..."
Run-Executable $executable "/norestart /passive"
Remove-Item -Force -Recurse -Path $toRemove

View File

@@ -48,16 +48,16 @@ function DownloadAndInstall
[string]$installPath
)
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Copy-Item $internalUrl $package
$zipDir = [io.path]::GetFileNameWithoutExtension($package)
Extract-Dev-Folders-From-Zip $package $zipDir $installPath
Remove-Item $package
Remove-Item -Path $package
}
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
# Install x64 bit version
$architecture = "x64"
$installFolder = "C:\Utils\my_sql\my_sql"
@@ -65,26 +65,23 @@ if( (is64bitWinHost) -eq 1 ) {
DownloadAndInstall $internalUrl $packagex64 $installFolder
echo "Set environment variables ..."
[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("MYSQL_LIB_x64", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\include"
Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\lib"
}
# Install x86 bit version
$architecture = "x86"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-win32.zip"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$installFolder = "C:\Utils\my_sql\my_sql$architecture"
}
else {
} else {
$installFolder = "C:\Utils\my_sql\my_sql"
}
DownloadAndInstall $internalUrl $packagex86 $installFolder
echo "Set environment variables ..."
[Environment]::SetEnvironmentVariable("MYSQL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("MYSQL_LIB_x86", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\include"
Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
echo "MySQL = $version" >> ~/versions.txt
Write-Output "MySQL = $version" >> ~/versions.txt

View File

@@ -6,6 +6,6 @@ Download https://github.com/ninja-build/ninja/releases/download/v1.6.0/ninja-win
Verify-Checksum $zip "E01093F6533818425F8EFB0843CED7DCAABEA3B2"
Extract-Zip $zip C:\Utils\Ninja
Remove-Item $zip
Remove-Item -Path $zip
Add-Path "C:\Utils\Ninja"

View File

@@ -40,7 +40,7 @@ $version = "1_0_2j"
$packagex64 = "C:\Windows\Temp\Win64OpenSSL-$version.exe"
$packagex86 = "C:\Windows\Temp\Win32OpenSSL-$version.exe"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
# Install x64 bit version
$architecture = "x64"
@@ -49,25 +49,24 @@ if( (is64bitWinHost) -eq 1 ) {
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\openssl\Win64OpenSSL-$version.exe"
$sha1 = "b1660dbdcc77e1b3d81d780c7167be1c75384d44"
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex64
Verify-Checksum $packagex64 $sha1
echo "Installing $packagex64 ..."
cmd /c "$packagex64 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
Write-Host "Installing $packagex64 ..."
Run-Executable "$packagex64" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
echo "Remove downloaded $packagex64 ..."
Remove-Item $packagex64
Write-Host "Remove downloaded $packagex64 ..."
Remove-Item -Path $packagex64
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x64", "$installFolder\bin\openssl.cfg", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x64", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "OPENSSL_CONF_x64" "$installFolder\bin\openssl.cfg"
Set-EnvironmentVariable "OPENSSL_INCLUDE_x64" "$installFolder\include"
Set-EnvironmentVariable "OPENSSL_LIB_x64" "$installFolder\lib"
}
# Install x86 bit version
$architecture = "x86"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$installFolder = "C:\openssl$architecture"
} else {
$installFolder = "C:\openssl"
@@ -77,19 +76,18 @@ $externalUrl = "https://slproweb.com/download/Win32OpenSSL-$version.exe"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\openssl\Win32OpenSSL-$version.exe"
$sha1 = "29b31d20545214ab4e4c57afb20be2338c317cc3"
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex86
Verify-Checksum $packagex86 $sha1
echo "Installing $packagex86 ..."
cmd /c "$packagex86 /SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
Write-Host "Installing $packagex86 ..."
Run-Executable "$packagex86" "/SP- /SILENT /LOG /SUPPRESSMSGBOXES /NORESTART /DIR=$installFolder"
echo "Remove downloaded $packagex86 ..."
Remove-Item $packagex86
Write-Host "Remove downloaded $packagex86 ..."
Remove-Item -Path $packagex86
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("OPENSSL_CONF_x86", "$installFolder\bin\openssl.cfg", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("OPENSSL_LIB_x86", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "OPENSSL_CONF_x86" "$installFolder\bin\openssl.cfg"
Set-EnvironmentVariable "OPENSSL_INCLUDE_x86" "$installFolder\include"
Set-EnvironmentVariable "OPENSSL_LIB_x86" "$installFolder\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
echo "OpenSSL = $version" >> ~/versions.txt
Write-Output "OpenSSL = $version" >> ~/versions.txt

View File

@@ -40,7 +40,7 @@ $version = "9.1.9-1"
$packagex64 = "C:\Windows\temp\postgresql-$version-windows-x64-binaries.zip"
$packagex86 = "C:\Windows\temp\postgresql-$version-windows-binaries.zip"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
# Install x64 bit versions
$architecture = "x64"
$installFolder = "C:\Utils\postgresql\pgsql"
@@ -48,18 +48,17 @@ if( (is64bitWinHost) -eq 1 ) {
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-x64-binaries.zip"
$sha1 = "4da0453cdfda335e064d4437cf5bb9d356054cfd"
echo "Fetching from URL ..."
Write-Host "Fetching from URL ..."
Download $externalUrl $internalUrl $packagex64
Verify-Checksum $packagex64 $sha1
echo "Installing $packagex64 ..."
Write-Host "Installing $packagex64 ..."
Extract-Dev-Folders-From-Zip $packagex64 "pgsql" $installFolder
echo "Remove downloaded $packagex64 ..."
Remove-Item $packagex64
Write-Host "Remove downloaded $packagex64 ..."
Remove-Item -Path $packagex64
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x64", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x64", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x64" "$installFolder\include"
Set-EnvironmentVariable "POSTGRESQL_LIB_x64" "$installFolder\lib"
}
# Install x86 bit version
@@ -67,26 +66,24 @@ $architecture = "x86"
$externalUrl = "http://get.enterprisedb.com/postgresql/postgresql-$version-windows-binaries.zip"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\postgresql-$version-windows-binaries.zip"
$sha1 = "eb4f01845e1592800edbb74f60944b6c0aca51a9"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$installFolder = "C:\Utils\postgresql$architecture\pgsql"
}
else {
} else {
$installFolder = "C:\Utils\postgresql\pgsql"
}
echo "Fetching from URL..."
Write-Host "Fetching from URL..."
Download $externalUrl $internalUrl $packagex86
Verify-Checksum $packagex86 $sha1
echo "Installing $packagex86 ..."
Write-Host "Installing $packagex86 ..."
Extract-Dev-Folders-From-Zip $packagex86 "pgsql" $installFolder
echo "Remove downloaded $packagex86 ..."
Remove-Item $packagex86
Write-Host "Remove downloaded $packagex86 ..."
Remove-Item -Path $packagex86
echo "Set $architecture environment variables ..."
[Environment]::SetEnvironmentVariable("POSTGRESQL_INCLUDE_x86", "$installFolder\include", "Machine")
[Environment]::SetEnvironmentVariable("POSTGRESQL_LIB_x86", "$installFolder\lib", "Machine")
Set-EnvironmentVariable "POSTGRESQL_INCLUDE_x86" "$installFolder\include"
Set-EnvironmentVariable "POSTGRESQL_LIB_x86" "$installFolder\lib"
# Store version information to ~/versions.txt, which is used to print version information to provision log.
echo "PostgreSQL = $version" >> ~/versions.txt
Write-Output "PostgreSQL = $version" >> ~/versions.txt

View File

@@ -36,11 +36,10 @@
# Python is required for building Qt 5 from source.
$version = "2.7.13"
if( (is64bitWinHost) -eq 1 ) {
if (Is64BitWinHost) {
$arch = ".amd64"
$sha1 = "d9113142bae8829365c595735e1ad1f9f5e2894c"
}
else {
} else {
$arch = ""
$sha1 = "7e3b54236dbdbea8fe2458db501176578a4d59c0"
}
@@ -48,19 +47,25 @@ $package = "C:\Windows\temp\python-$version.msi"
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version" + $arch + ".msi"
$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\python-$version" + $arch + ".msi"
echo "Fetching from URL..."
Write-Host "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
echo "Installing $package..."
cmd /c "msiexec /passive /i $package ALLUSERS=1"
Write-Host "Installing $package..."
Run-Executable "msiexec" "/passive /i $package ALLUSERS=1"
# We need to change allowZip64 from 'False' to 'True' to be able to create ZIP files that use the ZIP64 extensions when the zipfile is larger than 2 GB
echo "Chancing allowZip64 value to 'True'..."
Write-Host "Changing allowZip64 value to 'True'..."
(Get-Content C:\Python27\lib\zipfile.py) | ForEach-Object { $_ -replace "allowZip64=False", "allowZip64=True" } | Set-Content C:\Python27\lib\zipfile.py
echo "Remove $package..."
del $package
Write-Host "Remove $package..."
Remove-Item -Path $package
Add-Path "C:\Python27;C:\Python27\Scripts"
C:\Python27\python.exe -m ensurepip
Run-Executable "C:\Python27\python.exe" "-m ensurepip"
# Install python virtual env
C:\Python27\Scripts\pip.exe install virtualenv
#if ( isProxyEnabled ) {
# Write-Host "Using proxy with pip"
# $pip_args = "--proxy=" + (getProxy)
#}
Run-Executable "C:\Python27\Scripts\pip.exe" "install virtualenv"

View File

@@ -32,7 +32,6 @@
##
#############################################################################
param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# This script installs Python $version.
@@ -43,28 +42,31 @@ $package = "C:\Windows\temp\python-$version.exe"
$install_path = "C:\Python36"
# check bit version
if ( $archVer -eq 64 ) {
echo "Running in 64 bit system"
if (Is64BitWinHost) {
Write-Host "Running in 64 bit system"
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version-amd64.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/python-$version-amd64.exe"
$sha1 = "bf54252c4065b20f4a111cc39cf5215fb1edccff"
}
else {
} else {
$externalUrl = "https://www.python.org/ftp/python/$version/python-$version.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/python-$version.exe"
$sha1 = "76c50b747237a0974126dd8b32ea036dd77b2ad1"
}
echo "Fetching from URL..."
Write-Host "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
echo "Installing $package..."
cmd /c "$package /q TargetDir=$install_path"
echo "Remove $package..."
del $package
Write-Host "Installing $package..."
Run-Executable "$package" "/q TargetDir=$install_path"
Write-Host "Remove $package..."
Remove-Item -Path $package
[Environment]::SetEnvironmentVariable("PYTHON3_PATH", "$install_path", [EnvironmentVariableTarget]::Machine)
[Environment]::SetEnvironmentVariable("PIP3_PATH", "$install_path\Scripts", [EnvironmentVariableTarget]::Machine)
Set-EnvironmentVariable "PYTHON3_PATH" "$install_path"
Set-EnvironmentVariable "PIP3_PATH" "$install_path\Scripts"
# Install python virtual env
cmd /c "$install_path\Scripts\pip3.exe install virtualenv"
#if ( isProxyEnabled ) {
# Write-Host "Using proxy with pip"
# $pip_args = "--proxy=" + (getProxy)
#}
Run-Executable "$install_path\Scripts\pip3.exe" "install virtualenv"

View File

@@ -0,0 +1,64 @@
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
$n = Get-Content "$PSScriptRoot\..\shared\http_proxy.txt"
$n = $n.Split('=')
New-Variable -Name $n[0] -Value $n[1]
if (([string]::IsNullOrEmpty($proxy)) -or ($proxy -eq '""')) {
Write-Host "No proxy is defined."
} else {
Write-Host "Checking proxy @ $proxy"
$proxy = $proxy -replace '"', ""
$webclient = New-Object System.Net.WebClient
$proxy_obj = New-Object System.Net.WebProxy($proxy)
$webclient.proxy = $proxy_obj
try {
$webpage = $webclient.DownloadData("http://proxy.intra.qt.io")
} catch {
$ErrorMessage = $_.Exception.Message
$FailedItem = $_.Exception.ItemName
$iserror = $true
}
if ($iserror -eq $true) {
Write-Host "Testing download with proxy does not work: $ErrorMessage, $FailedItem. Not setting proxy."
}
else {
Write-Host "Setting proxy to: $proxy"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer -Value "$proxy"
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 1
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyOverride -Value 10.215
}
}

View File

@@ -50,10 +50,10 @@ $licensePackage = ".squish-3-license"
$OSVersion = (get-itemproperty -Path "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion" -Name ProductName).ProductName
# This can be removed when using vanilla os
if((Test-Path -Path "$targetDir" )){
if ((Test-Path -Path "$targetDir" )) {
try {
echo "Renaming old Squish"
echo "Rename-Item -ErrorAction 'Stop' $targetDir $targetDir_deleted"
Write-Host "Renaming old Squish"
Write-Host "Rename-Item -ErrorAction 'Stop' $targetDir $targetDir_deleted"
Rename-Item -ErrorAction 'Stop' "$targetDir" squish_deleted
} catch {}
}
@@ -72,13 +72,12 @@ Function DownloadAndInstallSquish {
$SquishUrl = $squishBranchUrl + "\squish-" + $version + "-qt" + $qtBranch + "-" + $bit + "-" + $squishPackage + ".exe"
$SquishInstaller = "$targetDir\$squishPackage.exe"
$SquishParameters = "unattended=1 targetdir=$targetDir\$squishPackage"
$Command = "$SquishInstaller $SquishParameters"
echo "Fetching from URL ..."
Write-Host "Fetching from URL $squishUrl"
Copy-Item "$SquishUrl" "$SquishInstaller"
echo "Installing Squish"
Execute-Command $Command
remove-item $SquishInstaller
Write-Host "Installing Squish"
Run-Executable "$SquishInstaller" "$SquishParameters"
Remove-Item -Path $SquishInstaller
}
Function DownloadSquishLicence {
@@ -90,61 +89,25 @@ Function DownloadSquishLicence {
)
# This can be removed when using vanilla os
if ($Env:SQUISH_LICENSEKEY_DIR)
{
echo "Removing SQUISH_LICENSEKEY_DIR env variable"
if ($Env:SQUISH_LICENSEKEY_DIR) {
Write-Host "Removing SQUISH_LICENSEKEY_DIR env variable"
Remove-Item Env:\SQUISH_LICENSEKEY_DIR
}
echo "Installing Squish license to home directory"
Write-Host "Installing Squish license to home directory"
Copy-Item $squishUrl\$licensePackage ~\$licensePackage
}
echo "Creating $targetDir"
Write-Host "Creating $targetDir"
New-Item -ErrorAction Ignore -ItemType directory -Path "$targetDir"
DownloadSquishLicence $licensePackage $squishUrl $targetDir
if(($OSVersion -eq "Windows 10 Enterprise") -or ($OSVersion -eq "Windows 8.1 Enterprise"))
{
# Squish for Visual Studio 2015
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage_64"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
echo "Installing $squishPackage"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
}
if($OSVersion -eq "Windows 8.1 Enterprise")
{
# Squish for Visual Studio 2013
$squishPackage64bit = "msvc12_64"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage_64"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
else
{
echo "Change secret file to normal one"
attrib -h C:\Users\qt\.squish-3-license
}
}
else
{
# Windows 7
# Squish for MinGW
$squishPackageMingw = "mingw_gcc53_posix_dwarf"
echo "Installing $squishPackageMingw"
Write-Host "Installing $squishPackageMingw"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackageMingw
mv $targetDir\$squishPackageMingw $targetDir\mingw
@@ -152,12 +115,45 @@ else
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if(($env:PROCESSOR_ARCHITECTURE -eq "AMD64") -or ($env:PROCESSOR_ARCHITEW6432 -eq "AMD64"))
{
echo "Installing $squishPackage64bit"
if (Is64BitWinHost) {
Write-Host "Installing $squishPackage64bit"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
mv $targetDir\$squishPackage $targetDir\$squishPackage64bit
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
Write-Host "Installing $squishPackage"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
}
if ($OSVersion -eq "Windows 8.1 Enterprise") {
# Squish for Visual Studio 2013
$squishPackage64bit = "msvc12_64"
if (Is64BitWinHost) {
Write-Host "Installing $squishPackage_64"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
} else {
Write-Host "Change secret file to normal one"
Run-Executable "attrib.exe" "-h C:\Users\qt\.squish-3-license"
}
}
if ($OSVersion -eq "Windows 7 Enterprise") {
# Squish for MinGW
$squishPackageMingw = "mingw_gcc53_posix_dwarf"
Write-Host "Installing $squishPackageMingw"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackageMingw
Rename-Item $targetDir\$squishPackageMingw $targetDir\mingw
# Squish for Visual Studio 2015
$squishPackage = "msvc14"
$squishPackage64bit = "msvc14_64"
if (Is64BitWinHost) {
Write-Host "Installing $squishPackage64bit"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win64 $targetDir $squishPackage
Rename-Item $targetDir\$squishPackage $targetDir\$squishPackage64bit
}
Write-Host "Installing $squishPackage"
DownloadAndInstallSquish $version $squishBranchUrl $qtBranch win32 $targetDir $squishPackage
}

View File

@@ -0,0 +1,41 @@
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
Write-Host "Disabling proxy"
$dcs = (Get-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections").DefaultConnectionSettings
$dcs[8] = $_ -band 0xF7
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections" -Name DefaultConnectionSettings -Value $dcs
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyEnable -Value 0
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyServer
Remove-ItemProperty -Path "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings" -Name ProxyOverride

View File

@@ -32,21 +32,18 @@
##
#############################################################################
param([Int32]$archVer=32)
. "$PSScriptRoot\helpers.ps1"
# This script installs Visual C++ Redistributable for Visual Studio 2015
# This is a dependency of the current python3 version
# check bit version
if ( $archVer -eq 64 ) {
echo "Running in 64 bit system"
if (Is64BitWinHost) {
Write-Host "Running in 64 bit system"
$arch = "x64"
$externalUrl = "https://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x64.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/vc_redist.x64.exe"
$sha1 = "3155cb0f146b927fcc30647c1a904cd162548c8c"
}
else {
} else {
$arch = "x86"
$externalUrl = "https://download.microsoft.com/download/9/3/F/93FCF1E7-E6A4-478B-96E7-D4B285925B00/vc_redist.x86.exe"
$internalUrl = "http://ci-files01-hki.intra.qt.io/input/windows/vc_redist.x86.exe"
@@ -55,10 +52,10 @@ else {
$package = "C:\Windows\temp\vc_redist.$arch.exe"
echo "Fetching from URL..."
Write-Host "Fetching from URL..."
Download $externalUrl $internalUrl $package
Verify-Checksum $package $sha1
echo "Installing $package..."
Start-Process -FilePath $package -ArgumentList "/q" -Wait
echo "Remove $package..."
del $package
Write-Host "Installing $package..."
Run-Executable $package "/q"
Write-Host "Remove $package..."
Remove-Item -Force -Path $package

View File

@@ -0,0 +1,5 @@
# Turning on developer mode.
#
# In order to run auto tests for UWP, we have to enable developer mode on Windows 10 machines.
# https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development
REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\AppModelUnlock" /V AllowDevelopmentWithoutDevLicense /T REG_DWORD /D 1 /F

View File

@@ -0,0 +1,50 @@
############################################################################
##
## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
. "$PSScriptRoot\helpers.ps1"
# This script will install Windows 10 SDK
$url_cache = "\\ci-files01-hki.ci.local\provisioning\windows\winsdksetup.exe"
$url_official = "https://download.microsoft.com/download/8/C/3/8C37C5CE-C6B9-4CC8-8B5F-149A9C976035/windowssdk/winsdksetup.exe"
$package = "C:\Windows\Temp\winsdksetup.exe"
$sha1 = "db237323f1779fb143e7cdc558e4345e7004489e"
Copy-Item $url_cache $package
Verify-Checksum $package $sha1
Run-Executable $package "/features + /q"
Write-Host "Cleaning $package.."
Remove-Item -Recurse -Force -Path "$package"
Write-Output "Windows 10 SDK = 10.0.16229.91" >> ~\versions.txt

View File

@@ -1,3 +1,4 @@
. "$PSScriptRoot\helpers.ps1"
# Disable the windows search indexing service
sc.exe config WSearch start= disabled
Run-Executable "sc.exe" "config WSearch start= disabled"

View File

@@ -36,7 +36,6 @@
set -ex
BASEDIR=$(dirname "$0")
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
source $BASEDIR/../common/shared/network_test_server_ip.txt
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
@@ -50,7 +49,3 @@ export DISPLAY=:0
gsettings set org.gnome.desktop.screensaver lock-enabled false
# disable blank screen power saving
gsettings set org.gnome.desktop.session idle-delay 0
if [ "$http_proxy" != "" ]; then
echo "proxy=$proxy" | sudo tee -a /etc/yum.conf
fi

View File

@@ -35,4 +35,42 @@
set -ex
sudo subscription-manager repos --enable rhel-workstation-rhscl-7-rpms
echo "set WritePreparedUpdates=false" | sudo tee -a /etc/PackageKit/PackageKit.conf
sudo systemctl stop packagekit
sudo systemctl disable packagekit
sudo subscription-manager config --rhsm.manage_repos=0
sudo subscription-manager refresh
sudo tee "/etc/yum.repos.d/local.repo" > /dev/null <<EOC
[rhel-7-workstation-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-7-workstation-optional-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-7-workstation-optional-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Enterprise Linux 7 Workstation - Optional (RPMs)
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
[rhel-workstation-rhscl-7-rpms]
metadata_expire = 86400
baseurl = http://repo-clones.ci.qt.io/repos/rhel-workstation-rhscl-7-rpms
ui_repoid_vars = releasever basearch
name = Qt Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Workstation
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled = 1
gpgcheck = 1
EOC
sudo yum clean all
# As well as this fetching the repository data, we also get a printout of the used repos
sudo yum repolist

View File

@@ -35,7 +35,6 @@
set -ex
sudo yum-config-manager --enable rhel-server-rhscl7-rpms
sudo yum -y install devtoolset-4
echo "source /opt/rh/devtoolset-4/enable" >> ~/.bashrc

View File

@@ -2,7 +2,7 @@
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
@@ -37,27 +37,14 @@ set -ex
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
packageEpel="epel-release-latest-7.noarch.rpm"
OfficialUrl="https://dl.fedoraproject.org/pub/epel/$packageEpel"
CachedUrl="http://ci-files01-hki.intra.qt.io/input/redhat/$packageEpel"
SHA1="5512b80e5b71f2370d8419fa16a0bc14c5edf854"
package="epel-release-7-11.noarch.rpm"
primaryUrl="https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/$package"
cacheUrl="http://ci-files01-hki.intra.qt.io/input/rhel7/$package"
sha1="5512b80e5b71f2370d8419fa16a0bc14c5edf854"
targetFile="/tmp/$package"
DownloadURL $OfficialUrl $CachedUrl $SHA1 ./$packageEpel
sudo rpm -Uvh $packageEpel
sudo rm -f $packageEpel
DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile"
# install python3
sudo yum install -y python34-devel
# install pip3
packagePip="get-pip.py"
OfficialUrlPip="https://bootstrap.pypa.io/$packagePip"
CachedUrlPip="http://ci-files01-hki.intra.qt.io/input/redhat/$packagePip"
SHA1Pip="3d45cef22b043b2b333baa63abaa99544e9c031d"
DownloadURL $OfficialUrlPip $CachedUrlPip $SHA1Pip ./$packagePip
sudo python3 $packagePip
sudo rm -f $packagePip
sudo pip3 install virtualenv
sudo rpm -ivh "$targetFile"
rm "$targetFile"

View File

@@ -48,7 +48,6 @@ installPackages+=(mesa-libGL-devel)
installPackages+=(libxkbfile-devel)
# Xinput2
installPackages+=(libXi-devel)
installPackages+=(python-devel)
installPackages+=(mysql-server)
installPackages+=(mysql)
installPackages+=(mysql-devel)
@@ -61,11 +60,13 @@ installPackages+=(gstreamer1-plugins-base-devel)
# gtk3 style for QtGui/QStyle
installPackages+=(gtk3-devel)
# libusb1 for tqtc-boot2qt/qdb
installPackages+=(libusb-devel)
installPackages+=(libusbx-devel)
# speech-dispatcher-devel for QtSpeech, otherwise it has no backend on Linux
installPackages+=(speech-dispatcher-devel)
# Python
installPackages+=(python-devel python-virtualenv)
# Python 2 devel and pip. python-pip requires the EPEL repository to be added
installPackages+=(python-devel python-pip)
# Python 3 with python-devel, pip and virtualenv
installPackages+=(rh-python36)
# WebEngine
installPackages+=(bison)
installPackages+=(flex)
@@ -84,5 +85,11 @@ installPackages+=(glibc.i686)
# Enable Qt Bluetooth
installPackages+=(bluez-libs-devel)
sudo yum -y update
sudo yum -y install "${installPackages[@]}"
sudo ln -s /opt/rh/rh-python36/root/usr/bin/python3 /usr/local/bin/python3
sudo ln -s /opt/rh/rh-python36/root/usr/bin/pip3 /usr/local/bin/pip3
# We shouldn't use yum to install virtualenv. The one found from package repo is not
# working, but we can use installed pip
sudo pip install --upgrade pip
sudo pip install virtualenv

View File

@@ -35,21 +35,9 @@
set -ex
source "${BASH_SOURCE%/*}/../common/unix/DownloadURL.sh"
name="p7zip"
version="7-11"
package="epel-release-$version.noarch.rpm"
primaryUrl="https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/$package"
cacheUrl="http://ci-files01-hki.intra.qt.io/input/rhel7/$package"
sha1="5512b80e5b71f2370d8419fa16a0bc14c5edf854"
targetFile="/tmp/$package"
DownloadURL "$primaryUrl" "$cacheUrl" "$sha1" "$targetFile"
sudo rpm -ivh "$targetFile"
sudo yum -y install "$name"
sudo rm "$targetFile"
# Link 7za to 7z so we can use existing installation scripts
sudo ln -s /usr/bin/7za /usr/bin/7z

View File

@@ -37,69 +37,25 @@
set -ex
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
NTS_IP=10.212.2.216
ExceptionGsettings1=100
ExceptionGsettings2=101
ExceptionGsettings3=102
ExceptionNTS=103
ExceptionProxy=104
ExceptionGrub=105
echo "Set timezone to UTC."
sudo timedatectl set-timezone Etc/UTC
echo "Timeout for blanking the screen (0 = never)"
gsettings set org.gnome.desktop.session idle-delay 0
echo "Prevents screen lock when screesaver goes active."
gsettings set org.gnome.desktop.screensaver lock-enabled false
echo "Disable questions on shutdown."
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub
sudo update-grub
try
(
echo "Set timezone to UTC."
sudo timedatectl set-timezone Etc/UTC || throw $ExceptionTimezone
echo "Timeout for blanking the screen (0 = never)"
gsettings set org.gnome.desktop.session idle-delay 0 || throw $ExceptionGsettings1
echo "Prevents screen lock when screesaver goes active."
gsettings set org.gnome.desktop.screensaver lock-enabled false || throw $ExceptionGsettings2
echo "Disable questions on shutdown."
gsettings set com.canonical.indicator.session suppress-logout-restart-shutdown true || throw $ExceptionGsettings3
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub || throw $ExceptionGrub
sudo update-grub || throw $ExceptionGrub
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS
if [ "$http_proxy" != "" ]; then
echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf || throw $ExceptionProxy
fi
)
catch || {
case $ex_code in
$ExceptionTimezone)
echo "Failed to set timezone to UTC"
exit 1;
;;
$ExceptionGsettings1)
echo "Failed to disable black screen."
exit 1;
;;
$ExceptionGsettings2)
echo "Failed to prevent screen lock."
exit 1;
;;
$ExceptionGsettings3)
echo "Failed to disable questions on shutdown."
exit 1;
;;
$ExceptionGrub)
echo "Failed to set grub timeout."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set network teset server address into /etc/hosts."
exit 1;
;;
$ExceptionProxy)
echo "Failed to set proxy /etc/apt/apt.conf."
exit 1;
;;
esac
}
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts
if [ "$http_proxy" != "" ]; then
echo "Acquire::http::Proxy \"$proxy\";" | sudo tee -a /etc/apt/apt.conf
fi

View File

@@ -37,134 +37,127 @@
set -ex
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
ExceptionAPTUpdate=100
ExceptionAPT=101
ExceptionSED=102
try
(
echo "Disabling auto update"
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic || throw $ExceptionSED
for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do
echo "Disabling auto update"
sudo sed -i 's/APT::Periodic::Update-Package-Lists "1";/APT::Periodic::Update-Package-Lists "0";/' /etc/apt/apt.conf.d/10periodic
for service in apt-daily.timer apt-daily-upgrade.timer apt-daily.service apt-daily-upgrade.service; do
sudo systemctl stop $service
sudo systemctl disable $service
done
# Git is not needed by builds themselves, but is nice to have
# immediately as one starts debugging
installPackages+=(git)
# 7zip is a needed decompressing tool
installPackages+=(p7zip-full)
# To be able to mount yocto-cache during builds
installPackages+=(nfs-common)
# libssl-dev provides headers for OpenSSL
installPackages+=(libssl-dev)
# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
installPackages+=("^libxcb.*")
installPackages+=(libxkbcommon-dev)
installPackages+=(libxkbcommon-x11-dev)
installPackages+=(libx11-xcb-dev)
installPackages+=(libglu1-mesa-dev)
installPackages+=(libxrender-dev)
installPackages+=(libxi-dev)
# Enable linking to system dbus
installPackages+=(libdbus-1-dev)
# Needed libraries for WebEngine
installPackages+=(libudev-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
# Common event loop handling
installPackages+=(libglib2.0-dev)
# MySQL support
installPackages+=(libmysqlclient-dev)
# PostgreSQL support
installPackages+=(libpq-dev)
# SQLite support
installPackages+=(libsqlite3-dev)
# ODBC support
installPackages+=(unixodbc-dev)
# Support for FreeType font engine
installPackages+=(libfreetype6-dev)
# Enable the usage of system jpeg libraries
installPackages+=(libjpeg-dev)
# Enable support for printer driver
installPackages+=(libcups2-dev)
# Install libraries needed for QtMultimedia to be able to support all plugins
installPackages+=(libasound2-dev)
installPackages+=(libgstreamer1.0-dev)
installPackages+=(libgstreamer-plugins-base1.0-dev)
installPackages+=(libgstreamer-plugins-good1.0-dev)
installPackages+=(libgstreamer-plugins-bad1.0-dev)
# Support for cross-building to x86 (needed by WebEngine boot2qt builds)
installPackages+=(g++-multilib)
# python3 development package
installPackages+=(python3-dev)
installPackages+=(python3-pip)
installPackages+=(python3-virtualenv)
# Automates interactive applications (Needed by RTA to automate configure testing)
installPackages+=(expect)
installPackages+=(mesa-common-dev)
installPackages+=(libgl1-mesa-glx)
installPackages+=(libgl1-mesa-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(curl)
installPackages+=(libicu-dev)
installPackages+=(zlib1g-dev)
installPackages+=(zlib1g)
installPackages+=(openjdk-8-jdk)
installPackages+=(libgtk-3-dev)
installPackages+=(ninja-build)
installPackages+=(libssl-dev)
installPackages+=(libxcursor-dev)
installPackages+=(libxcomposite-dev)
installPackages+=(libxdamage-dev)
installPackages+=(libxrandr-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
installPackages+=(libsrtp0-dev)
installPackages+=(libwebp-dev)
installPackages+=(libjsoncpp-dev)
installPackages+=(libopus-dev)
installPackages+=(libminizip-dev)
installPackages+=(libavutil-dev)
installPackages+=(libavformat-dev)
installPackages+=(libavcodec-dev)
installPackages+=(libevent-dev)
installPackages+=(bison)
installPackages+=(flex)
installPackages+=(gperf)
installPackages+=(libasound2-dev)
installPackages+=(libpulse-dev)
installPackages+=(libxtst-dev)
installPackages+=(libnspr4-dev)
installPackages+=(libnss3-dev)
installPackages+=(libopenal-dev)
installPackages+=(libbluetooth-dev)
#VirtualBox for RTA
installPackages+=(virtualbox)
installPackages+=(dkms)
done
echo "Running update for apt"
sudo apt-get update
echo "Installing packages"
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}" || throw $ExceptionAPT
)
catch || {
case $ex_code in
$ExceptionAPTUpdate)
echo "Failed to run APT update."
exit 1;
;;
$ExceptionAPT)
echo "Failed to install package."
sudo lsof /var/lib/dpkg/lock
exit 1;
;;
$ExceptionSED)
echo "Failed to disable auto update."
exit 1;
;;
esac
}
# aptdaemon is used by update notifiers and similar and there is no point in having those (the symptom is aptd holding a lock)
for i in `seq 10`; do
echo attempting to remove aptdaemon
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y remove aptdaemon || true
# check that aptdaemon is no longer installed
which aptd > /dev/null || break
if [[ $i -eq 10 ]]; then
exit 1
fi
sleep 10
done
# Git is not needed by builds themselves, but is nice to have
# immediately as one starts debugging
installPackages+=(git)
# 7zip is a needed decompressing tool
installPackages+=(p7zip-full)
# To be able to mount yocto-cache during builds
installPackages+=(nfs-common)
# libssl-dev provides headers for OpenSSL
installPackages+=(libssl-dev)
# Needed libraries for X11 support accordingly to https://wiki.qt.io/Building_Qt_5_from_Git
installPackages+=("^libxcb.*")
installPackages+=(libxkbcommon-dev)
installPackages+=(libxkbcommon-x11-dev)
installPackages+=(libx11-xcb-dev)
installPackages+=(libglu1-mesa-dev)
installPackages+=(libxrender-dev)
installPackages+=(libxi-dev)
# Enable linking to system dbus
installPackages+=(libdbus-1-dev)
# Needed libraries for WebEngine
installPackages+=(libudev-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
# Common event loop handling
installPackages+=(libglib2.0-dev)
# MySQL support
installPackages+=(libmysqlclient-dev)
# PostgreSQL support
installPackages+=(libpq-dev)
# SQLite support
installPackages+=(libsqlite3-dev)
# ODBC support
installPackages+=(unixodbc-dev)
# Support for FreeType font engine
installPackages+=(libfreetype6-dev)
# Enable the usage of system jpeg libraries
installPackages+=(libjpeg-dev)
# Enable support for printer driver
installPackages+=(libcups2-dev)
# Install libraries needed for QtMultimedia to be able to support all plugins
installPackages+=(libasound2-dev)
installPackages+=(libgstreamer1.0-dev)
installPackages+=(libgstreamer-plugins-base1.0-dev)
installPackages+=(libgstreamer-plugins-good1.0-dev)
installPackages+=(libgstreamer-plugins-bad1.0-dev)
# Support for cross-building to x86 (needed by WebEngine boot2qt builds)
installPackages+=(g++-multilib)
# python2 development package
installPackages+=(python-pip)
# python3 development package
installPackages+=(python3-dev)
installPackages+=(python3-pip)
installPackages+=(python3-virtualenv)
# Needed to be able to build Yocto
installPackages+=(chrpath)
installPackages+=(gawk)
installPackages+=(texinfo)
# Automates interactive applications (Needed by RTA to automate configure testing)
installPackages+=(expect)
installPackages+=(mesa-common-dev)
installPackages+=(libgl1-mesa-glx)
installPackages+=(libgl1-mesa-dev)
installPackages+=(libegl1-mesa-dev)
installPackages+=(curl)
installPackages+=(libicu-dev)
installPackages+=(zlib1g-dev)
installPackages+=(zlib1g)
installPackages+=(openjdk-8-jdk)
installPackages+=(libgtk-3-dev)
installPackages+=(ninja-build)
installPackages+=(libssl-dev)
installPackages+=(libxcursor-dev)
installPackages+=(libxcomposite-dev)
installPackages+=(libxdamage-dev)
installPackages+=(libxrandr-dev)
installPackages+=(libfontconfig1-dev)
installPackages+=(libxss-dev)
installPackages+=(libsrtp0-dev)
installPackages+=(libwebp-dev)
installPackages+=(libjsoncpp-dev)
installPackages+=(libopus-dev)
installPackages+=(libminizip-dev)
installPackages+=(libavutil-dev)
installPackages+=(libavformat-dev)
installPackages+=(libavcodec-dev)
installPackages+=(libevent-dev)
installPackages+=(bison)
installPackages+=(flex)
installPackages+=(gperf)
installPackages+=(libasound2-dev)
installPackages+=(libpulse-dev)
installPackages+=(libxtst-dev)
installPackages+=(libnspr4-dev)
installPackages+=(libnss3-dev)
installPackages+=(libopenal-dev)
installPackages+=(libbluetooth-dev)
#VirtualBox for RTA
installPackages+=(virtualbox)
installPackages+=(dkms)
echo "Running update for apt"
sudo apt-get update
echo "Installing packages"
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"

View File

@@ -0,0 +1,38 @@
#!/bin/env bash
#############################################################################
##
## Copyright (C) 2018 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the test suite of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
set -ex
source "${BASH_SOURCE%/*}/../common/linux/qnx_660.sh"

View File

@@ -1,4 +1,4 @@
#!/usr/bin/env bash
#!/bin/env bash
#############################################################################
##
@@ -33,32 +33,6 @@
##
#############################################################################
echo "Sourcing try_catch.sh"
set -ex
function try()
{
[[ $- = *e* ]]; SAVED_OPT_E=$?
set +e
}
function throw()
{
exit "$1"
}
function catch()
{
export ex_code=$?
(( SAVED_OPT_E )) && set +e
return $ex_code
}
function throwErrors()
{
set -e
}
function ignoreErrors()
{
set +e
}
source "${BASH_SOURCE%/*}/../common/linux/qnx_700.sh"

View File

@@ -7,9 +7,6 @@ source $BASEDIR/../common/shared/network_test_server_ip.txt
source "${BASH_SOURCE%/*}/../common/unix/check_and_set_proxy.sh"
sed -i '$ a\[Daemon\]\nAutolock=false\nLockOnResume=false' ~/.config/kscreenlockerrc
echo "Set grub timeout to 0"
sudo sed -i 's|GRUB_TIMEOUT=10|GRUB_TIMEOUT=0|g' /etc/default/grub
sudo update-grub
echo "Set Network Test Server address to $network_test_server_ip in /etc/hosts"
echo "$network_test_server_ip qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts

View File

@@ -0,0 +1 @@
../common/macos/sha1sum-compatibility.sh

View File

@@ -37,33 +37,19 @@ set -ex
# This script modified system settings for automated use
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
VNCPassword=qt
NTS_IP=10.212.2.216
ExceptionDisableScreensaver=100
ExceptionSetInitialDelay=101
ExceptionSetDelay=102
ExceptionVNC=103
ExceptionNTS=104
ExceptionDisableScreensaverPassword=105
ExceptionDisableSleep=106
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0
try
(
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver
echo "Disable sleep"
sudo pmset sleep 0 displaysleep 0
echo "Disable sleep"
sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
(
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents"
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
@@ -87,53 +73,17 @@ try
</dict>
</plist>
EOT
) || throw $ExceptionDisableScreensaver
defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword
defaults write com.apple.screensaver askForPassword -int 0
echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay
# normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay
echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15
# normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2
echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC
echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS
)
catch || {
case $ex_code in
$ExceptionDisableScreensaver)
echo "Failed to disable screensaver."
exit 1;
;;
$ExceptionSetInitialDelay)
echo "Failed to set initial delay of keyboard."
exit 1;
;;
$ExceptionSetDelay)
echo "Failed to set delay of keyboard."
exit 1;
;;
$ExceptionVNC)
echo "Failed to enable VNC."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set NTS."
exit 1;
;;
$ExceptionDisableScreensaverPassword)
echo "Failed to disable requiring of password after screensaver is enabled."
exit 1;
;;
$ExceptionDisableSleep)
echo "Failed to disable sleep."
exit 1;
;;
esac
}
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -39,7 +39,7 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
# shellcheck source=../common/macos/InstallPKGFromURL
source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/XZ.pkg"

View File

@@ -1,132 +1,3 @@
#!/usr/bin/env bash
#############################################################################
##
## Copyright (C) 2017 The Qt Company Ltd.
## Contact: http://www.qt.io/licensing/
##
## This file is part of the provisioning scripts of the Qt Toolkit.
##
## $QT_BEGIN_LICENSE:LGPL21$
## Commercial License Usage
## Licensees holding valid commercial Qt licenses may use this file in
## accordance with the commercial license agreement provided with the
## Software or, alternatively, in accordance with the terms contained in
## a written agreement between you and The Qt Company. For licensing terms
## and conditions see http://www.qt.io/terms-conditions. For further
## information use the contact form at http://www.qt.io/contact-us.
##
## GNU Lesser General Public License Usage
## Alternatively, this file may be used under the terms of the GNU Lesser
## General Public License version 2.1 or version 3 as published by the Free
## Software Foundation and appearing in the file LICENSE.LGPLv21 and
## LICENSE.LGPLv3 included in the packaging of this file. Please review the
## following information to ensure the GNU Lesser General Public License
## requirements will be met: https://www.gnu.org/licenses/lgpl.html and
## http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
##
## As a special exception, The Qt Company gives you certain additional
## rights. These rights are described in The Qt Company LGPL Exception
## version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
##
## $QT_END_LICENSE$
##
#############################################################################
# This script installs JDK
set -ex
echo "Installing Java Development Kit"
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
ExceptionDownloadPrimaryUrl=100
ExceptionDownloadAltUrl=101
ExceptionSHA1=102
ExceptionAttachImage=103
ExceptionInstall=104
ExceptionDetachImage=105
ExceptionRemoveTmpFile=106
ExceptionDisableAutoUpdate=107
url=http://ci-files01-hki.intra.qt.io/input/mac/macos_10.12_sierra/jdk-8u102-macosx-x64.dmg
url_alt=http://download.oracle.com/otn-pub/java/jdk/8u102-b14/jdk-8u102-macosx-x64.dmg
targetFile=/tmp/jdk-8u102-macosx-x64.dmg
expectedSha1=1405af955f14e32aae187b5754a716307db22104
try
(
try
(
echo "Downloading from primary URL '$url'"
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$url" || throw $ExceptionDownloadPrimaryUrl
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download '$url' multiple times"
echo "Downloading tar.gz from alternative URL '$url_alt'"
curl --fail -L --retry 5 --retry-delay 5 -j -k -H "Cookie: oraclelicense=accept-securebackup-cookie" -o "$targetFile" "$url_alt" || throw $ExceptionDownloadAltUrl
;;
esac
}
echo "Checking SHA1 on '$targetFile'"
echo "$expectedSha1 *$targetFile" | shasum --check || throw $ExceptionSHA1
echo Mounting DMG
hdiutil attach "$targetFile" || throw $ExceptionAttachImage
echo Installing JDK
(cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /) || throw $ExceptionInstall
disk=`hdiutil info | grep '/Volumes/JDK 8 Update 102' | awk '{print $1}'`
hdiutil detach $disk || throw $ExceptionDetachImage
echo "Removing temporary file '$targetFile'"
rm "$targetFile" || throw $ExceptionRemoveTmpFile
echo "Disable auto update"
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false || throw $ExceptionDisableAutoUpdate
echo "JDK Version = 8 update 102" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionDownloadPrimaryUrl)
echo "Failed to download JDK from primary URL."
exit 1;
;;
$ExceptionDownloadAltUrl)
echo "Failed to download JDK from alternative URL."
exit 1;
;;
$ExceptionSHA1)
echo "Failed to check SHA1."
exit 1;
;;
$ExceptionAttachImage)
echo "Failed to attach image."
exit 1;
;;
$ExceptionInstall)
echo "Failed to install JDK."
exit 1;
;;
$ExceptionDetachImage)
echo "Failed to detach image."
exit 1;
;;
$ExceptionRemoveTmpFile)
echo "Failed to remove temporary file."
exit 1;
;;
$ExceptionDisableAutoUpdate)
echo "Failed to disable auto update."
exit 1;
;;
esac
}
BASEDIR=$(dirname "$0")
$BASEDIR/../common/macos/java.sh

View File

@@ -44,9 +44,6 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/macos/install_xcode.sh
source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh"

View File

@@ -39,8 +39,6 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/unix/SetEnvVar.sh
source "${BASH_SOURCE%/*}/../common/unix/SetEnvVar.sh"
@@ -64,57 +62,23 @@ toolsSourceFile="$basePath/$toolsFile"
ndkTargetFile="/tmp/$ndkFile"
ndkSourceFile="$basePath/$ndkFile"
ExceptionUnzipTools=100
ExceptionUnzipNdk=101
ExceptionRmTools=102
ExceptionRmNdk=103
ExceptionSdkManager=104
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkSourceFile" -d "$targetFolder"
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder"
try
(
echo "Unzipping Android NDK to '$targetFolder'"
sudo unzip -q "$ndkSourceFile" -d "$targetFolder" || throw $ExceptionUnzipNdk
echo "Unzipping Android Tools to '$sdkTargetFolder'"
sudo unzip -q "$toolsSourceFile" -d "$sdkTargetFolder" || throw $ExceptionUnzipTools
echo "Changing ownership of Android files."
sudo chown -R qt:wheel "$targetFolder"
echo "Changing ownership of Android files."
sudo chown -R qt:wheel "$targetFolder"
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
(echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
echo "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
(echo "y"; echo "y") |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionUnzipTools)
echo "Failed to unzip Android SDK Tools."
exit 1;
;;
$ExceptionUnzipNdk)
echo "Failed to unzip Android NDK."
exit 1;
;;
$ExceptionRmTools)
echo "Failed to remove temporary tools package '$toolsTargetFile'."
exit 1;
;;
$ExceptionRmNdk)
echo "Failed to remove temporary NDK package '$ndkTargetFile'."
exit 1;
;;
$ExceptionSdkManager)
echo "Failed to run sdkmanager."
exit 1;
;;
esac
}
SetEnvVar "ANDROID_SDK_HOME" "$sdkTargetFolder"
SetEnvVar "ANDROID_NDK_HOME" "$targetFolder/android-ndk-$ndkVersion"
SetEnvVar "ANDROID_NDK_HOST" "darwin-x86_64"
SetEnvVar "ANDROID_API_VERSION" "$sdkApiLevel"
echo "Android SDK tools = $toolsVersion" >> ~/versions.txt
echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/versions.txt
echo "Android SDK API level = $sdkApiLevel" >> ~/versions.txt
echo "Android NDK = $ndkVersion" >> ~/versions.txt

View File

@@ -37,8 +37,6 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/unix/InstallFromCompressedFileFromURL.sh
source "${BASH_SOURCE%/*}/../common/unix/InstallFromCompressedFileFromURL.sh"
# shellcheck source=../common/unix/SetEnvVar.sh
@@ -54,68 +52,25 @@ opensslSha1="5f26a624479c51847ebd2f22bb9f84b3b44dcb44"
# QTQAINFRA-1195
opensslTargetLocation="/usr/local/opt/openssl"
ExceptionCD=100
ExceptionConfig=101
ExceptionMake=102
ExceptionInstall=103
ExceptionLN=104
ExceptionCertificate=105
ExceptionCleanup=106
InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion"
cd "/tmp/openssl-$opensslVersion"
pwd
sudo ./config --prefix=/usr/local/openssl-$opensslVersion
echo "Running 'make' for OpenSSL"
sudo make --silent > /tmp/openssl_make.log 2>&1
echo "Running 'make install' for OpenSSL"
sudo make --silent install > /tmp/openssl_make_install.log 2>&1
try
(
InstallFromCompressedFileFromURL "$opensslDlUrl" "$opensslAltDlUrl" "$opensslSha1" "/tmp/openssl-$opensslVersion" "openssl-$opensslVersion"
cd "/tmp/openssl-$opensslVersion" || throw $ExceptionCD
pwd
sudo ./config --prefix=/usr/local/openssl-$opensslVersion || throw $ExceptionConfig
echo "Running 'make' for OpenSSL"
sudo make --silent > /tmp/openssl_make.log 2>&1 || throw $ExceptionMake
echo "Running 'make install' for OpenSSL"
sudo make --silent install > /tmp/openssl_make_install.log 2>&1 || throw $ExceptionInstall
path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/')
sudo mkdir -p "$path"
sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation
path=$(echo "$opensslTargetLocation" | sed -E 's/(.*)\/.*$/\1/')
sudo mkdir -p "$path"
sudo ln -s /usr/local/openssl-$opensslVersion $opensslTargetLocation || throw $ExceptionLN
SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\""
SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\""
SetEnvVar "PATH" "\"$opensslTargetLocation/bin:\$PATH\""
SetEnvVar "MANPATH" "\"$opensslTargetLocation/share/man:\$MANPATH\""
security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem
security find-certificate -a -p /Library/Keychains/System.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain | sudo tee -a $opensslTargetLocation/ssl/cert.pem || throw $ExceptionCertificate
sudo rm -rf /tmp/openssl-$opensslVersion
sudo rm -rf /tmp/openssl-$opensslVersion || throw $ExceptionCleanup
echo "OpenSSL = $opensslVersion" >> ~/versions.txt
)
catch || {
case $ex_code in
$ExceptionCD)
echo "Failed to change directory to /tmp/openssl-$opensslVersion."
exit 1;
;;
$ExceptionConfig)
echo "Failed to run config for OpenSSL."
exit 1;
;;
$ExceptionMake)
echo "Failed to run 'make' for OpenSSL."
exit 1;
;;
$ExceptionInstall)
echo "Failed to run 'make install' for OpenSSL."
exit 1;
;;
$ExceptionLN)
echo "Failed to create a soft link for OpenSSL."
exit 1;
;;
$ExceptionCertificate)
echo "Failed to install Certificate for OpenSSL."
exit 1;
;;
$ExceptionCleanup)
echo "Failed to clean up /tmp/openssl-$opensslVersion."
exit 1;
;;
esac
}
echo "OpenSSL = $opensslVersion" >> ~/versions.txt

View File

@@ -0,0 +1 @@
../common/macos/sha1sum-compatibility.sh

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -0,0 +1 @@
../common/macos/sha1sum-compatibility.sh

View File

@@ -37,33 +37,19 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
VNCPassword=qt
NTS_IP=10.212.2.216
ExceptionDisableScreensaver=100
ExceptionSetInitialDelay=101
ExceptionSetDelay=102
ExceptionVNC=103
ExceptionNTS=104
ExceptionDisableScreensaverPassword=105
ExceptionDisableSleep=106
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0
try
(
echo "Disable Screensaver"
# For current session
defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver
echo "Disable sleep"
sudo pmset sleep 0 displaysleep 0
echo "Disable sleep"
sudo pmset sleep 0 displaysleep 0 || throw $ExceptionDisableSleep
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
(
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
# For session after a reboot
mkdir -p "$HOME/Library/LaunchAgents"
cat >"$HOME/Library/LaunchAgents/no-screensaver.plist" <<EOT
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
@@ -87,54 +73,18 @@ try
</dict>
</plist>
EOT
) || throw $ExceptionDisableScreensaver
defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword
defaults write com.apple.screensaver askForPassword -int 0
echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15 || throw $ExceptionSetInitialDelay
# normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2 || throw $ExceptionSetDelay
echo "Set keyboard type rates and delays"
# normal minimum is 15 (225 ms)
defaults write -g InitialKeyRepeat -int 15
# normal minimum is 2 (30 ms)
defaults write -g KeyRepeat -int 2
echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all || throw $ExceptionVNC
echo "Enable remote desktop sharing"
sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -clientopts -setvnclegacy -vnclegacy yes -clientopts -setvncpw -vncpw $VNCPassword -restart -agent -privs -all
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts || throw $ExceptionNTS
)
catch || {
case $ex_code in
$ExceptionDisableScreensaver)
echo "Failed to disable screensaver."
exit 1;
;;
$ExceptionSetInitialDelay)
echo "Failed to set initial delay of keyboard."
exit 1;
;;
$ExceptionSetDelay)
echo "Failed to set delay of keyboard."
exit 1;
;;
$ExceptionVNC)
echo "Failed to enable VNC."
exit 1;
;;
$ExceptionNTS)
echo "Failed to set NTS."
exit 1;
;;
$ExceptionDisableScreensaverPassword)
echo "Failed to disable requiring of password after screensaver is enabled."
exit 1;
;;
$ExceptionDisableSleep)
echo "Failed to disable sleep."
exit 1;
;;
esac
}
echo "Set Network Test Server address to $NTS_IP in /etc/hosts"
echo "$NTS_IP qt-test-server qt-test-server.qt-test-net" | sudo tee -a /etc/hosts

View File

@@ -0,0 +1,4 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
"$BASEDIR"/../common/macos/disable_update_downloads.sh

View File

@@ -39,7 +39,7 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
# shellcheck source=../common/macos/InstallPKGFromURL.sh
source "${BASH_SOURCE%/*}/../common/macos/InstallPKGFromURL.sh"
PrimaryUrl="http://ci-files01-hki.intra.qt.io/input/mac/osx_10.11_el_capitan/XZ.pkg"

View File

@@ -44,9 +44,6 @@
set -ex
# shellcheck source=../common/unix/try_catch.sh
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
# shellcheck source=../common/macos/install_xcode.sh
source "${BASH_SOURCE%/*}/../common/macos/install_xcode.sh"

View File

@@ -1,6 +1,3 @@
#!/usr/bin/env bash
set -ex
BASEDIR=$(dirname "$0")
$BASEDIR/../common/macos/pip.sh
$BASEDIR/../common/macos/java.sh

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\set-proxy.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\install-sevenzip.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\disable-windows-updates.ps1"

View File

@@ -34,10 +34,10 @@
# Visual Studios are pre-provisioned to tier1 images
# MSVC 2015 Update 3
echo "Visual Studio 2015 = Version 14.0.25421.3 Update 3" >> ~\versions.txt
Write-Output "Visual Studio 2015 = Version 14.0.25421.3 Update 3" >> ~\versions.txt
# MSVC 2017
echo "Visual Studio 2017 = Version 15.1 (26403.7)" >> ~\versions.txt
Write-Output "Visual Studio 2017 = Version 15.1 (26403.7)" >> ~\versions.txt
# MSVC 2017 Build Tools
echo "Visual Studio 2017 Build Tools = Version 15.1 (26403.7)" >> ~\versions.txt
Write-Output "Visual Studio 2017 Build Tools = Version 15.1 (26403.7)" >> ~\versions.txt

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\install-jdk.ps1"

View File

@@ -1 +1 @@
. "$PSScriptRoot\..\common\windows\python3.ps1" 32
. "$PSScriptRoot\..\common\windows\python3.ps1"

View File

@@ -0,0 +1 @@
. "$PSScriptRoot\..\common\windows\openssl.ps1"

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