aboutsummaryrefslogtreecommitdiffstats
path: root/coin/provisioning/common/windows/mysql.ps1
diff options
context:
space:
mode:
Diffstat (limited to 'coin/provisioning/common/windows/mysql.ps1')
-rw-r--r--coin/provisioning/common/windows/mysql.ps194
1 files changed, 24 insertions, 70 deletions
diff --git a/coin/provisioning/common/windows/mysql.ps1 b/coin/provisioning/common/windows/mysql.ps1
index 8ed91402..10a8b633 100644
--- a/coin/provisioning/common/windows/mysql.ps1
+++ b/coin/provisioning/common/windows/mysql.ps1
@@ -1,83 +1,37 @@
-#############################################################################
-##
-## Copyright (C) 2019 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$
-##
-#############################################################################
+# Copyright (C) 2023 The Qt Company Ltd.
+# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
. "$PSScriptRoot\helpers.ps1"
# This script installs MySQL $version.
# Both x86 and x64 versions needed when x86 integrations are done on x64 machine
-$version = "5.7.25"
-$baseNameX64 = "mysql-$version-winx64"
-$packagex64 = "C:\Windows\temp\$baseNameX64.zip"
-$baseNameX86 = "mysql-$version-win32"
-$packagex86 = "C:\Windows\temp\$baseNameX86.zip"
-$installFolder = "C:\Utils\my_sql"
-
-function DownloadAndInstall
-{
- Param (
- [string]$internalUrl,
- [string]$package,
- [string]$installPath
+$version = "8.0.36"
+$installFolder = "C:\Utils"
+$officialUrl = "https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-${version}-winx64.zip"
+$cacheURl = "http://ci-files01-hki.ci.qt.io/input/windows/mysql-${version}-winx64.zip"
+$sha = "e5003569386006ccde9000c98e28e28073c1433d"
+$zip = Get-DownloadLocation ("mysql-" + $version + "-winx64.zip")
+
+function Install {
+ param(
+ [string]$officialUrl,
+ [string]$cacheUrl,
+ [string]$zip,
+ [string]$sha
)
- Write-Host "Fetching from URL ..."
- Copy-Item $internalUrl $package
-
- $zipDir = [io.path]::GetFileNameWithoutExtension($package)
- Extract-7Zip $package $installPath "$zipDir\lib $zipDir\bin $zipDir\share $zipDir\include"
-
- Remove-Item -Path $package
-}
-
-if (Is64BitWinHost) {
- # Install x64 bit version
- $architecture = "x64"
- $internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-winx64.zip"
-
- DownloadAndInstall $internalUrl $packagex64 $installFolder
-
- Set-EnvironmentVariable "MYSQL_INCLUDE_x64" "$installFolder\$baseNameX64\include"
- Set-EnvironmentVariable "MYSQL_LIB_x64" "$installFolder\$baseNameX64\lib"
+ Download $officialUrl $cacheURl $zip
+ Verify-Checksum $zip $sha
+ Extract-7Zip $zip $installFolder
+ Remove $zip
}
-# Install x86 bit version
-$architecture = "x86"
-$internalUrl = "\\ci-files01-hki.intra.qt.io\provisioning\windows\mysql-$version-win32.zip"
-DownloadAndInstall $internalUrl $packagex86 $installFolder
+Install $officialUrl $cacheURl $zip $sha
-Set-EnvironmentVariable "MYSQL_INCLUDE_x86" "$installFolder\$baseNameX86\include"
-Set-EnvironmentVariable "MYSQL_LIB_x86" "$installFolder\$baseNameX86\lib"
+# Can't set MySQL_ROOT & MySQL_LIBRARY_DIR variables. Those will enable mysql in every windows target.
+# Let's use ENV_MySQL_* and use it in platform_configs
+Set-EnvironmentVariable "ENV_MySQL_ROOT" "${installFolder}\mysql-${version}-winx64"
+Set-EnvironmentVariable "ENV_MySQL_LIBRARY_DIR" "${installFolder}\mysql-${version}-winx64\lib"
-# Store version information to ~/versions.txt, which is used to print version information to provision log.
Write-Output "MySQL = $version" >> ~/versions.txt