aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/qtci-macos-10.12-x86_64
diff options
context:
space:
mode:
Diffstat (limited to 'coin/provisioning/qtci-macos-10.12-x86_64')
-rw-r--r--coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh5
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh128
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh2
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/007-SSL_keychain.sh3
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh50
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/020-java.sh129
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh51
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-homebrew.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh54
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-pip.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh53
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/026-p7zip.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/026-virtualenv.sh4
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/027-libclang.sh5
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/030-android.sh116
-rwxr-xr-xcoin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh117
17 files changed, 733 insertions, 0 deletions
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh b/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh
new file mode 100644
index 00000000..0fbe7628
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/003-bashprofile.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+# Read .bashrc if exist
+printf -- "# Get the aliases and functions\nif [ -f ~/.bashrc ]; then\n . ~/.bashrc\nfi\n" >> ~/.bash_profile
+
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh b/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh
new file mode 100755
index 00000000..5819e9de
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/005-systemsetup.sh
@@ -0,0 +1,128 @@
+#!/bin/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 modified system settings for automated use
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+VNCPassword=qt
+NTS_IP=10.212.2.216
+
+ExceptionDisableScreensaver=100
+ExceptionSetInitialDelay=101
+ExceptionSetDelay=102
+ExceptionVNC=103
+ExceptionNTS=104
+ExceptionDisableScreensaverPassword=105
+
+try
+(
+ echo "Disable Screensaver"
+ # For current session
+ defaults -currentHost write com.apple.screensaver idleTime 0 || throw $ExceptionDisableScreensaver
+
+ # For session after a reboot
+ mkdir -p "$HOME/Library/LaunchAgents" || throw $ExceptionDisableScreensaver
+ (
+ 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">
+
+<plist version="1.0">
+ <dict>
+ <key>Label</key>
+ <string>org.qt.io.screensaver_disable</string>
+ <key>ProgramArguments</key>
+ <array>
+ <string>defaults</string>
+ <string>-currentHost</string>
+ <string>write</string>
+ <string>com.apple.screensaver</string>
+ <string>idleTime</string>
+ <string>0</string>
+ </array>
+ <key>RunAtLoad</key>
+ <true/>
+ <key>KeepAlive</key>
+ <false/>
+ </dict>
+</plist>
+EOT
+ ) || throw $ExceptionDisableScreensaver
+
+ defaults write com.apple.screensaver askForPassword -int 0 || throw $ExceptionDisableScreensaverPassword
+
+ 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 "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 "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;
+ ;;
+ esac
+}
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh b/coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh
new file mode 100755
index 00000000..ba8dbdd3
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/006-crashreporter.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+defaults write com.apple.CrashReporter DialogType server
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/007-SSL_keychain.sh b/coin/provisioning/qtci-macos-10.12-x86_64/007-SSL_keychain.sh
new file mode 100755
index 00000000..61406203
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/007-SSL_keychain.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+# Enables the usage of temporary keychains for SSL autotests
+echo "export QT_SSL_USE_TEMPORARY_KEYCHAIN=1" >> ~/.bashrc
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
new file mode 100755
index 00000000..eca6858c
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/015-xz.sh
@@ -0,0 +1,50 @@
+#!/bin/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 XZ-Utils
+
+# XZ-Utils are needed for uncompressing xz-compressed files
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/InstallPKGFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/XZ.pkg"
+AltUrl="http://sourceforge.net/projects/macpkg/files/XZ/5.0.7/XZ.pkg"
+SHA1="f0c1f82ebcffe0bd4b8b57b6a77805db56b2de67"
+DestDir="/"
+
+InstallPKGFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$DestDir"
+
+echo "XZ = 5.0.7" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/020-java.sh b/coin/provisioning/qtci-macos-10.12-x86_64/020-java.sh
new file mode 100755
index 00000000..a9776ba6
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/020-java.sh
@@ -0,0 +1,129 @@
+#!/bin/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
+echo "Installing Java Development Kit"
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+ExceptionDownloadPrimaryUrl=100
+ExceptionDownloadAltUrl=101
+ExceptionSHA1=102
+ExceptionAttachImage=103
+ExceptionInstall=104
+ExceptionDetachImage=105
+ExceptionRemoveTmpFile=106
+ExceptionDisableAutoUpdate=107
+
+
+url=http://ci-files01-hki.ci.local/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
+}
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh b/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh
new file mode 100755
index 00000000..ea8613ad
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/020-xcode.sh
@@ -0,0 +1,51 @@
+#!/bin/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 Xcode
+# Prerequisites: Have Xcode prefetched to local cache as xz compressed.
+# This can be achieved by fetching Xcode_8.xip from Apple Store.
+# Uncompress it with 'xar -xf Xcode_8.xip'
+# Then get https://gist.githubusercontent.com/pudquick/ff412bcb29c9c1fa4b8d/raw/24b25538ea8df8d0634a2a6189aa581ccc6a5b4b/parse_pbzx2.py
+# with which you can run 'python parse_pbzx2.py Content'.
+# This will give you a file called "Content.part00.cpio.xz" that
+# can be renamed to Xcode_8.xz for this script.
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+# shellcheck source=../common/install_xcode.sh
+source "${BASH_SOURCE%/*}/../common/install_xcode.sh"
+
+InstallXCode /net/ci-files01-hki.ci.local/hdd/www/input/mac/Xcode_8.3.3.xz 8.3.3
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh
new file mode 100755
index 00000000..ddb01d64
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-cmake.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/cmake.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-homebrew.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-homebrew.sh
new file mode 100755
index 00000000..63ec9b69
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-homebrew.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/homebrew.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh
new file mode 100755
index 00000000..54389916
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-mysql.sh
@@ -0,0 +1,54 @@
+#!/bin/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 MySQL
+
+# MySQL is needed for Qt to be able to support MySQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+AltUrl="https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15-osx10.11-x86_64.tar.gz"
+SHA1="07949bd42f350b0504a1536b8830b809b4a34fca"
+appPrefix=""
+targetDir="/opt/mysql57/"
+
+sudo mkdir -p "/opt"
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix" "$targetDir"
+
+echo "export MYSQLBINPATH=/opt/mysql57/bin" >> ~/.bashrc
+echo "MySQL = 5.7.15" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-pip.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-pip.sh
new file mode 100755
index 00000000..07c9a617
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-pip.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/pip.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh b/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh
new file mode 100755
index 00000000..e699933d
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/025-postgresql.sh
@@ -0,0 +1,53 @@
+#!/bin/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 PostgreSQL
+
+# PostgreSQL is needed for Qt to be able to support PostgreSQL
+
+# shellcheck source=../common/InstallAppFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallAppFromCompressedFileFromURL.sh"
+
+psqlVersion="9.6.0"
+
+PrimaryUrl="http://ci-files01-hki.ci.local/input/mac/macos_10.12_sierra/Postgres-$psqlVersion.zip"
+AltUrl="https://github.com/PostgresApp/PostgresApp/releases/download/$psqlVersion/Postgres-$psqlVersion.zip"
+SHA1="5078e44663787006ca55fa3b5e2be598bed82eb5"
+appPrefix=""
+
+InstallAppFromCompressedFileFromURL "$PrimaryUrl" "$AltUrl" "$SHA1" "$appPrefix"
+
+echo "export POSTGRESQLBINPATH=/Applications/Postgres.app/Contents/Versions/9.6/bin" >> ~/.bashrc
+echo "PostgreSQL = $psqlVersion" >> ~/versions.txt
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/026-p7zip.sh b/coin/provisioning/qtci-macos-10.12-x86_64/026-p7zip.sh
new file mode 100755
index 00000000..4fb9ddbc
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/026-p7zip.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+# Install 7z to be used from command line
+brew update
+brew install p7zip
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/026-virtualenv.sh b/coin/provisioning/qtci-macos-10.12-x86_64/026-virtualenv.sh
new file mode 100755
index 00000000..9e4f1d3e
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/026-virtualenv.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+
+BASEDIR=$(dirname "$0")
+$BASEDIR/../common/virtualenv.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/027-libclang.sh b/coin/provisioning/qtci-macos-10.12-x86_64/027-libclang.sh
new file mode 100755
index 00000000..d257ffa1
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/027-libclang.sh
@@ -0,0 +1,5 @@
+#!/usr/bin/env bash
+
+BASEDIR=$(dirname "$0")
+# There is only one mac package and common script uses it as a default
+$BASEDIR/../common/libclang.sh
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/030-android.sh b/coin/provisioning/qtci-macos-10.12-x86_64/030-android.sh
new file mode 100755
index 00000000..c6a17530
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/030-android.sh
@@ -0,0 +1,116 @@
+#!/bin/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 install Android sdk and ndk.
+
+# It also runs update for SDK API, latest SDK tools, latest platform-tools and build-tools version
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+
+targetFolder="/opt/android"
+sdkTargetFolder="$targetFolder/sdk"
+
+basePath="/net/ci-files01-hki.ci.local/hdd/www/input/android"
+
+toolsVersion="r25.2.5"
+toolsFile="tools_$toolsVersion-macosx.zip"
+ndkVersion="r10e"
+ndkFile="android-ndk-$ndkVersion-darwin-x86_64.zip"
+sdkBuildToolsVersion="25.0.2"
+sdkApiLevel="android-21"
+
+toolsSha1="d2168d963ac5b616e3d3ddaf21511d084baf3659"
+ndkSha1="6be8598e4ed3d9dd42998c8cb666f0ee502b1294"
+
+toolsTargetFile="/tmp/$toolsFile"
+toolsSourceFile="$basePath/$toolsFile"
+ndkTargetFile="/tmp/$ndkFile"
+ndkSourceFile="$basePath/$ndkFile"
+
+ExceptionUnzipTools=100
+ExceptionUnzipNdk=101
+ExceptionRmTools=102
+ExceptionRmNdk=103
+ExceptionSdkManager=104
+
+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 "Running SDK manager for platforms;$sdkApiLevel, tools, platform-tools and build-tools;$sdkBuildToolsVersion."
+ echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion" || throw $ExceptionSdkManager
+
+ echo "export ANDROID_SDK_ROOT=$sdkTargetFolder" >> ~/.bashrc
+ echo "export ANDROID_NDK_HOME=$targetFolder/android-ndk-$ndkVersion" >> ~/.bashrc
+ echo "export ANDROID_NDK_HOST=darwin-x86_64" >> ~/.bashrc
+ echo "export ANDROID_API_VERSION=$sdkApiLevel" >> ~/.bashrc
+
+ echo "Android SDK tools = $toolsVersion" >> ~/version.txt
+ echo "Android SDK Build Tools = $sdkBuildToolsVersion" >> ~/version.txt
+ echo "Android SDK API level = $sdkApiLevel" >> ~/version.txt
+ echo "Android NDK = $ndkVersion" >> ~/version.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
+}
+
diff --git a/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh b/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh
new file mode 100755
index 00000000..acd0bd74
--- /dev/null
+++ b/coin/provisioning/qtci-macos-10.12-x86_64/035-openssl.sh
@@ -0,0 +1,117 @@
+#!/bin/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 install OpenSSL
+
+# shellcheck source=../common/try_catch.sh
+source "${BASH_SOURCE%/*}/../common/try_catch.sh"
+# shellcheck source=../common/InstallFromCompressedFileFromURL.sh
+source "${BASH_SOURCE%/*}/../common/InstallFromCompressedFileFromURL.sh"
+
+opensslVersion="1.0.2k"
+opensslFile="openssl-$opensslVersion.tar.gz"
+opensslDlUrl="http://ci-files01-hki.ci.local/input/openssl/$opensslFile"
+opensslAltDlUrl="https://www.openssl.org/source/$opensslFile"
+opensslSha1="5f26a624479c51847ebd2f22bb9f84b3b44dcb44"
+
+# Below target location has been hard coded into Coin.
+# QTQAINFRA-1195
+opensslTargetLocation="/usr/local/opt/openssl"
+
+ExceptionCD=100
+ExceptionConfig=101
+ExceptionMake=102
+ExceptionInstall=103
+ExceptionLN=104
+ExceptionCertificate=105
+ExceptionCleanup=106
+
+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 || throw $ExceptionLN
+
+ echo "export PATH=\"$opensslTargetLocation/bin:$PATH\"" >> ~/.bashrc
+ echo "export MANPATH=\"$opensslTargetLocation/share/man:$MANPATH\"" >> ~/.bashrc
+
+ 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 || 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
+}