mirror of
git://code.qt.io/qt/qt5.git
synced 2026-02-01 19:36:04 +08:00
Merge "Merge remote-tracking branch 'origin/5.11' into dev" into refs/staging/dev
This commit is contained in:
@@ -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
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
else
|
||||
sudo chown -R qt:users "$targetFolder"
|
||||
fi
|
||||
|
||||
echo "Changing ownership of Android files."
|
||||
if uname -a |grep -q "el6\|el7"; then
|
||||
sudo chown -R qt:wheel "$targetFolder"
|
||||
else
|
||||
sudo chown -R qt:users "$targetFolder"
|
||||
fi
|
||||
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"
|
||||
else
|
||||
echo "y" |"$sdkTargetFolder/tools/bin/sdkmanager" "platforms;$sdkApiLevel" "tools" "platform-tools" "build-tools;$sdkBuildToolsVersion"
|
||||
fi
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
@@ -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,74 +53,39 @@ function InstallAppFromCompressedFileFromURL {
|
||||
target="/Applications/"
|
||||
fi
|
||||
|
||||
try
|
||||
(
|
||||
basefilename=${url##*/}
|
||||
extension=${basefilename##*.}
|
||||
filename=${basefilename%.*}
|
||||
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
|
||||
extension="tar.gz"
|
||||
fi
|
||||
basefilename=${url##*/}
|
||||
extension=${basefilename##*.}
|
||||
filename=${basefilename%.*}
|
||||
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
|
||||
extension="tar.gz"
|
||||
fi
|
||||
|
||||
echo "Extension for file: $extension"
|
||||
echo "Creating temporary file and directory"
|
||||
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension") || throw $ExceptionCreateTmpFile
|
||||
# macOS 10.10 mktemp does require prefix
|
||||
if [[ $OSTYPE == "darwin14" ]]; then
|
||||
targetDirectory=$(mktemp -d -t '10.10') || throw $ExceptionCreateTmpDirectory
|
||||
else
|
||||
targetDirectory=$(mktemp -d) || throw $ExceptionCreateTmpDirectory
|
||||
fi
|
||||
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile") || throw $ExceptionDownload
|
||||
echo "Uncompress $targetFile"
|
||||
case $extension in
|
||||
"tar.gz")
|
||||
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
|
||||
;;
|
||||
"zip")
|
||||
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
|
||||
;;
|
||||
*)
|
||||
throw $ExceptionUnknownFormat
|
||||
;;
|
||||
esac
|
||||
echo "Moving app to '$target'"
|
||||
sudo mv "$targetDirectory/$appPrefix/"* "$target" || throw $ExceptionMoveApp
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile" || throw $ExceptionDeleteTmpFile
|
||||
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
|
||||
}
|
||||
echo "Extension for file: $extension"
|
||||
echo "Creating temporary file and directory"
|
||||
targetFile=$(mktemp "$TMPDIR$(uuidgen).$extension")
|
||||
# macOS 10.10 mktemp does require prefix
|
||||
if [[ $OSTYPE == "darwin14" ]]; then
|
||||
targetDirectory=$(mktemp -d -t '10.10')
|
||||
else
|
||||
targetDirectory=$(mktemp -d)
|
||||
fi
|
||||
(DownloadURL "$url" "$url_alt" "$expectedSha1" "$targetFile")
|
||||
echo "Uncompress $targetFile"
|
||||
case $extension in
|
||||
"tar.gz")
|
||||
tar -xzf "$targetFile" --directory "$targetDirectory"
|
||||
;;
|
||||
"zip")
|
||||
unzip "$targetFile" -d "$targetDirectory"
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
echo "Moving app to '$target'"
|
||||
sudo mv "$targetDirectory/$appPrefix/"* "$target"
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile"
|
||||
echo "Removing directory '$targetDirectory'"
|
||||
rm -rf "$targetDirectory"
|
||||
}
|
||||
|
||||
@@ -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
|
||||
(
|
||||
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)
|
||||
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
|
||||
}
|
||||
echo "Checking SHA1 on PKG '$targetFile'"
|
||||
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
|
||||
/usr/bin/shasum --check $targetFile.sha1 || throw $ExceptionSHA1
|
||||
echo "Run installer on PKG"
|
||||
sudo installer -package "$targetFile" -target "$targetDirectory" || throw $ExceptionInstallerPKG
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile" || throw $ExceptionDeleteTmpFile
|
||||
echo "Creating temporary file"
|
||||
targetFile=$(mktemp "$TMPDIR$(uuidgen).pkg")
|
||||
echo "Downloading PKG from primary URL '$url'"
|
||||
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"
|
||||
)
|
||||
|
||||
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
|
||||
}
|
||||
echo "Checking SHA1 on PKG '$targetFile'"
|
||||
echo "$expectedSha1 *$targetFile" > $targetFile.sha1
|
||||
/usr/bin/shasum --check $targetFile.sha1
|
||||
echo "Run installer on PKG"
|
||||
sudo installer -package "$targetFile" -target "$targetDirectory"
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile"
|
||||
}
|
||||
|
||||
@@ -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
|
||||
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"
|
||||
echo "Checking SHA1 on PKG '$targetFile'"
|
||||
echo "$sha1 *$targetFile" > $targetFile.sha1
|
||||
shasum --check $targetFile.sha1
|
||||
echo "Extracting '$targetFile'"
|
||||
tar -xzf "$targetFile" -C "$targetFolder"
|
||||
)
|
||||
catch || {
|
||||
case $ex_code in
|
||||
$ExceptionExtractPrimaryUrl)
|
||||
set -e
|
||||
echo "Failed to uncompress from '$cachedUrl'"
|
||||
echo "Downloading from '$officialUrl'"
|
||||
curl --fail -L --retry 5 --retry-delay 5 -o "$targetFile" "$officialUrl" || exit 1;
|
||||
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
|
||||
|
||||
rm -rf "$targetFile"
|
||||
echo "Running installer for '$installer'"
|
||||
sudo installer -pkg "$installer" -target "/"
|
||||
|
||||
@@ -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
|
||||
cd "/Volumes/Command Line Developer Tools"
|
||||
echo "Installing"
|
||||
sudo installer -verbose -pkg *.pkg -target / || throw $ExceptionInstall
|
||||
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
|
||||
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
|
||||
}
|
||||
DownloadURL $url $url_alt $expectedSha1 /tmp/$packageName
|
||||
echo "Mounting $packageName"
|
||||
hdiutil attach /tmp/$packageName
|
||||
cd "/Volumes/Command Line Developer Tools"
|
||||
echo "Installing"
|
||||
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/
|
||||
echo "Removing $packageName"
|
||||
rm /tmp/$packageName
|
||||
|
||||
echo "Command Line Tools = $version" >> ~/versions.txt
|
||||
}
|
||||
|
||||
@@ -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
|
||||
echo "Uncompressing and installing '$sourceFile'"
|
||||
xzcat < "$sourceFile" | (cd /Applications/ && sudo cpio -dmi)
|
||||
|
||||
echo "Accept license"
|
||||
sudo xcodebuild -license accept || throw $ExceptionAcceptLicense
|
||||
echo "Accept license"
|
||||
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
|
||||
|
||||
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
|
||||
}
|
||||
echo "Enabling developer mode, so that using lldb does not require interactive password entry"
|
||||
sudo /usr/sbin/DevToolsSecurity -enable
|
||||
|
||||
echo "Xcode = $version" >> ~/versions.txt
|
||||
}
|
||||
|
||||
|
||||
@@ -39,94 +39,25 @@ set -ex
|
||||
|
||||
echo "Installing Java Development Kit"
|
||||
|
||||
# shellcheck source=../unix/try_catch.sh
|
||||
source "${BASH_SOURCE%/*}/../unix/try_catch.sh"
|
||||
targetFile=jdk-8u102-macosx-x64.dmg
|
||||
|
||||
ExceptionDownloadPrimaryUrl=100
|
||||
ExceptionDownloadAltUrl=101
|
||||
ExceptionSHA1=102
|
||||
ExceptionAttachImage=103
|
||||
ExceptionInstall=104
|
||||
ExceptionDetachImage=105
|
||||
ExceptionRemoveTmpFile=106
|
||||
ExceptionDisableAutoUpdate=107
|
||||
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
|
||||
|
||||
url=http://ci-files01-hki.intra.qt.io/input/mac/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
|
||||
sudo cp "/Volumes/$targetFile" /tmp
|
||||
sudo umount /Volumes
|
||||
sudo hdiutil attach "/tmp/$targetFile"
|
||||
|
||||
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 Installing JDK
|
||||
cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /
|
||||
|
||||
echo Mounting DMG
|
||||
hdiutil attach "$targetFile" || throw $ExceptionAttachImage
|
||||
echo "Unmounting $targetFile"
|
||||
sudo hdiutil unmount /Volumes/JDK\ 8\ Update\ 102/ -force
|
||||
|
||||
echo Installing JDK
|
||||
(cd /Volumes/JDK\ 8\ Update\ 102/ && sudo installer -package JDK\ 8\ Update\ 102.pkg -target /) || throw $ExceptionInstall
|
||||
echo "Disable auto update"
|
||||
sudo defaults write /Library/Preferences/com.oracle.java.Java-Updater JavaAutoUpdateEnabled -bool false
|
||||
|
||||
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
|
||||
}
|
||||
echo "JDK Version = 8 update 102" >> ~/versions.txt
|
||||
|
||||
@@ -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,70 +45,35 @@ function InstallFromCompressedFileFromURL {
|
||||
installDirectory=$4
|
||||
appPrefix=$5
|
||||
|
||||
try
|
||||
(
|
||||
basefilename=${url##*/}
|
||||
extension=${basefilename##*.}
|
||||
filename=${basefilename%.*}
|
||||
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
|
||||
extension="tar.gz"
|
||||
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
|
||||
echo "Uncompress $targetFile"
|
||||
case $extension in
|
||||
"tar.gz")
|
||||
tar -xzf "$targetFile" --directory "$targetDirectory" || throw $ExceptionUncompress
|
||||
;;
|
||||
"zip")
|
||||
unzip "$targetFile" -d "$targetDirectory" || throw $ExceptionUncompress
|
||||
;;
|
||||
*)
|
||||
throw $ExceptionUnknownFormat
|
||||
;;
|
||||
esac
|
||||
echo "Moving app to $installDirectory"
|
||||
sudo mkdir -p "$installDirectory"
|
||||
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory" || throw $ExceptionMoveApp
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile" || throw $ExceptionDeleteTmpFile
|
||||
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
|
||||
}
|
||||
basefilename=${url##*/}
|
||||
extension=${basefilename##*.}
|
||||
filename=${basefilename%.*}
|
||||
if [ "$extension" == "gz" ] && [ "${filename##*.}" == "tar" ]; then
|
||||
extension="tar.gz"
|
||||
fi
|
||||
echo "Extension for file: $extension"
|
||||
echo "Creating temporary file and directory"
|
||||
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"
|
||||
;;
|
||||
"zip")
|
||||
unzip "$targetFile" -d "$targetDirectory"
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
echo "Moving app to $installDirectory"
|
||||
sudo mkdir -p "$installDirectory"
|
||||
sudo mv "$targetDirectory/$appPrefix/"* "$installDirectory"
|
||||
echo "Removing file '$targetFile'"
|
||||
rm "$targetFile"
|
||||
echo "Removing directory '$targetDirectory'"
|
||||
rm -rf "$targetDirectory"
|
||||
}
|
||||
|
||||
|
||||
@@ -32,19 +32,8 @@
|
||||
##
|
||||
#############################################################################
|
||||
|
||||
source "${BASH_SOURCE%/*}/try_catch.sh"
|
||||
set -ex
|
||||
|
||||
source "${BASH_SOURCE%/*}/../shared/http_proxy.txt"
|
||||
|
||||
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
|
||||
|
||||
(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"
|
||||
|
||||
@@ -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
|
||||
echo "Create $targetDirectory if needed"
|
||||
if [ ! -d "/opt" ]; then
|
||||
sudo mkdir "/opt" || throw $ExceptionCreateFolder
|
||||
fi
|
||||
if [ ! -d "$targetDirectory" ]; then
|
||||
sudo mkdir "$targetDirectory" || throw $ExceptionCreateFolder
|
||||
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
|
||||
else
|
||||
target="$targetDirectory"
|
||||
fi
|
||||
sudo tar -xzf "$targetFileMount" --directory "$target" || throw $ExceptionUncompress
|
||||
echo "Unmounting $mountFolder"
|
||||
sudo umount $mountFolder || throw $ExceptionUmount
|
||||
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 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 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
|
||||
fi
|
||||
echo "Mounting $url to $mountFolder"
|
||||
sudo mount "$url" $mountFolder
|
||||
echo "Create $targetDirectory if needed"
|
||||
if [ ! -d "/opt" ]; then
|
||||
sudo mkdir "/opt"
|
||||
fi
|
||||
if [ ! -d "$targetDirectory" ]; then
|
||||
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"
|
||||
else
|
||||
throw $ExceptionUnknownFormat
|
||||
target="$targetDirectory"
|
||||
fi
|
||||
sudo tar -xzf "$targetFileMount" --directory "$target"
|
||||
echo "Unmounting $mountFolder"
|
||||
sudo umount $mountFolder
|
||||
elif [[ $targetFile == *.dmg ]]; then
|
||||
echo "'dmg-file', no need to uncompress"
|
||||
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
|
||||
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
|
||||
sudo cp "$targetDirectory/package/tcl/lib/tcl8.6/init.tcl" /usr/lib/tcl8.6/
|
||||
fi
|
||||
else
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Changing ownerships"
|
||||
sudo chown -R qt:$usersGroup "$targetDirectory" || throw $ExceptionChangeOwnership
|
||||
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 "Changing ownerships"
|
||||
sudo chown -R qt:$usersGroup "$targetDirectory"
|
||||
sudo chown qt:$usersGroup "$HOME/.squish-3-license"
|
||||
}
|
||||
|
||||
echo "Set commands for environment variables in .bashrc"
|
||||
|
||||
@@ -1,64 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#############################################################################
|
||||
##
|
||||
## Copyright (C) 2017 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$
|
||||
##
|
||||
#############################################################################
|
||||
|
||||
echo "Sourcing try_catch.sh"
|
||||
|
||||
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
|
||||
}
|
||||
@@ -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
|
||||
|
||||
@@ -37,153 +37,127 @@
|
||||
|
||||
set -ex
|
||||
|
||||
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
|
||||
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
|
||||
|
||||
ExceptionAPTUpdate=100
|
||||
ExceptionAPT=101
|
||||
ExceptionSED=102
|
||||
# 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
|
||||
|
||||
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
|
||||
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)
|
||||
# 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)
|
||||
|
||||
# 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
|
||||
throw $ExceptionAPT
|
||||
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[@]}" || 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
|
||||
}
|
||||
echo "Running update for apt"
|
||||
sudo apt-get update
|
||||
echo "Installing packages"
|
||||
sudo DEBIAN_FRONTEND=noninteractive apt-get -q -y install "${installPackages[@]}"
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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"
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -35,45 +35,23 @@
|
||||
|
||||
# This script installs QNX 7.
|
||||
|
||||
# shellcheck source=../common/unix/try_catch.sh
|
||||
source "${BASH_SOURCE%/*}/../common/unix/try_catch.sh"
|
||||
|
||||
targetFolder="/opt/"
|
||||
sourceFile="/net/ci-files01-hki.intra.qt.io/hdd/www/input/qnx/qnx700_mac.zip"
|
||||
folderName="qnx700"
|
||||
|
||||
ExceptionExtract=100
|
||||
ExceptionExtract2=101
|
||||
sudo mkdir -p "$targetFolder"
|
||||
|
||||
echo "Extracting QNX 7"
|
||||
sudo unzip -q "$sourceFile" -d "$targetFolder"
|
||||
|
||||
try
|
||||
(
|
||||
sudo mkdir -p "$targetFolder"
|
||||
sudo chown -R qt:wheel "$targetFolder"/"$folderName"
|
||||
|
||||
echo "Extracting QNX 7"
|
||||
sudo unzip -q "$sourceFile" -d "$targetFolder" || throw $ExceptionExtract
|
||||
# Verify that we have last file in zip
|
||||
if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
sudo chown -R qt:wheel "$targetFolder"/"$folderName"
|
||||
|
||||
# Verify that we have last file in zip
|
||||
if [ ! -f $targetFolder/$folderName/qnxsdp-env.sh ]; then
|
||||
throw $ExceptionExtract2
|
||||
fi
|
||||
|
||||
# Set env variables
|
||||
echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc
|
||||
echo "QNX SDP = 7.0.0" >> ~/versions.txt
|
||||
)
|
||||
catch || {
|
||||
case $ex_code in
|
||||
$ExceptionExtract)
|
||||
echo "Failed to unzip QNX 7."
|
||||
exit 1;
|
||||
;;
|
||||
$ExceptionExtract2)
|
||||
echo "The last file in the zip did not get extracted."
|
||||
exit 1;
|
||||
;;
|
||||
esac
|
||||
}
|
||||
# Set env variables
|
||||
echo "export QNX_700=$targetFolder/$folderName" >> ~/.bashrc
|
||||
echo "QNX SDP = 7.0.0" >> ~/versions.txt
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user