diff options
-rw-r--r-- | coin/provisioning/common/windows/opcua_unifiedautomation.ps1 | 79 |
1 files changed, 55 insertions, 24 deletions
diff --git a/coin/provisioning/common/windows/opcua_unifiedautomation.ps1 b/coin/provisioning/common/windows/opcua_unifiedautomation.ps1 index cdc54c2b..70fcaae0 100644 --- a/coin/provisioning/common/windows/opcua_unifiedautomation.ps1 +++ b/coin/provisioning/common/windows/opcua_unifiedautomation.ps1 @@ -33,27 +33,58 @@ . "$PSScriptRoot\helpers.ps1" -$zip = Get-DownloadLocation "uasdkcpp.zip" -$sha1 = "C73278B4C10DF0E3D60ABAA159ABA9185095124C" -$installLocation = "C:\Utils\uacpp" - -Write-Host "UACPPSDK: Downloading Unified Automation CPP installer..." -$internalUrl = "http://ci-files01-hki.intra.qt.io/input/opcua_uacpp/uasdkcppbundle-bin-EVAL-win32-x86-vs2015-v1.6.3-406.zip" -# No public download link exists -$externalUrl = $internalUrl - -Download $externalUrl $internalUrl $zip -Verify-Checksum $zip $sha1 - -Write-Host "UACPPSDK: Installing $zip..." -Extract-7Zip $zip (Get-DefaultDownloadLocation) -Remove-Item -Path $zip - -$executable = (Get-DefaultDownloadLocation) + "uasdkcppbundle-bin-EVAL-win32-x86-vs2015-v1.6.3-406.exe" -$arguments = "/S /D=$installLocation" -Run-Executable $executable $arguments -Write-Host "UACPPSDK: Installer done." -Remove-Item $executable - -Write-Host "Set environment variable for COIN to locate SDK" -Set-EnvironmentVariable "CI_UACPP_msvc2015_x86_PREFIX" "$installLocation" +function DownloadAndInstallUA +{ + Param ( + [string] $InstallerFileName = $(BadParam("no download URL specified")), + [string] $sha1 = $(BadParam("No SHA1 for download specified")), + [string] $Destination = $(BadParam("No location to install specified")) + ) + Write-Host "UACPPSDK: DownloadAndInstallUA $InstallerFileName" + $zip = Get-DownloadLocation "uasdkcpp.zip" + + Write-Host "UACPPSDK: Downloading Unified Automation CPP installer..." + $internalUrl = "http://ci-files01-hki.intra.qt.io/input/opcua_uacpp/$InstallerFileName.zip" + # No public download link exists + $externalUrl = $internalUrl + + Download $externalUrl $internalUrl $zip + Verify-Checksum $zip $sha1 + + Write-Host "UACPPSDK: Extracting $zip..." + Extract-7Zip $zip (Get-DefaultDownloadLocation) + Remove-Item -Path $zip + + $executable = (Get-DefaultDownloadLocation) + "$InstallerFileName.exe" + # We cannot call the installer as the x86 and x64 versions of the installer are not + # allowed to be installed in parallel (they check for the same registry value and + # delete each other). Extracting does not have a side-effect for Qt + #$arguments = "/S /D=$installLocation" + #Run-Executable $executable $arguments + #Write-Host "UACPPSDK: Installer done." + #Remove-Item $executable + + Extract-7Zip $executable $Destination + Remove-Item $executable +} + +#x86 version +$installerName86 = "uasdkcppbundle-bin-EVAL-win32-x86-vs2015-v1.6.3-406" +$downloadSha86 = "C73278B4C10DF0E3D60ABAA159ABA9185095124C" +$installLocation86 = "C:\Utils\uacpp_x86" + +DownloadAndInstallUA $installerName86 $downloadSha86 $installLocation86 +Set-EnvironmentVariable "CI_UACPP_msvc2015_x86_PREFIX" "$installLocation86" +# For UA msvc2015 is binary compatible with msvc2017 +Set-EnvironmentVariable "CI_UACPP_msvc2017_x86_PREFIX" "$installLocation86" + + +#x64 version +$installerName64 = "uasdkcppbundle-bin-EVAL-win64-x86_64-vs2015-v1.6.3-406" +$downloadSha64 = "1384e6882644f9163e9840aee962cdb9ca3398c8" +$installLocation64 = "C:\Utils\uacpp_x64" + +DownloadAndInstallUA $installerName64 $downloadSha64 $installLocation64 +Set-EnvironmentVariable "CI_UACPP_msvc2015_x64_PREFIX" "$installLocation64" +# For UA msvc2015 is binary compatible with msvc2017 +Set-EnvironmentVariable "CI_UACPP_msvc2017_x64_PREFIX" "$installLocation64" |