From 694f14f96f8f64725461a585e3c1d11a9b00aec3 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 14 Mar 2024 11:37:28 -0400 Subject: Tests: Teach CPackWiXGenerator to use WiX tools in PATH --- Tests/CPackWiXGenerator/RunCPackVerifyResult.cmake | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Tests/CPackWiXGenerator/RunCPackVerifyResult.cmake b/Tests/CPackWiXGenerator/RunCPackVerifyResult.cmake index c549e61..28665ee 100644 --- a/Tests/CPackWiXGenerator/RunCPackVerifyResult.cmake +++ b/Tests/CPackWiXGenerator/RunCPackVerifyResult.cmake @@ -39,9 +39,8 @@ endif() function(run_wix_command command) file(TO_CMAKE_PATH "$ENV{WIX}" WIX_ROOT) - set(WIX_PROGRAM "${WIX_ROOT}/bin/${command}.exe") - - if(NOT EXISTS "${WIX_PROGRAM}") + find_program(WIX_PROGRAM NAMES ${command} NO_CACHE PATHS "${WIX_ROOT}" PATH_SUFFIXES "bin") + if(NOT WIX_PROGRAM) message(FATAL_ERROR "Failed to find WiX Tool: ${WIX_PROGRAM}") endif() -- cgit v0.12 From b71b6300e50783dca2ca65d9fa43276492ef9a57 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 14 Mar 2024 11:34:35 -0400 Subject: ci: Provide WiX 3 in versioned location Prepare to provide multiple WiX major versions for testing. --- .gitlab/.gitignore | 2 +- .gitlab/ci/wix.ps1 | 20 -------------------- .gitlab/ci/wix3.ps1 | 21 +++++++++++++++++++++ .gitlab/os-windows.yml | 4 ++-- 4 files changed, 24 insertions(+), 23 deletions(-) delete mode 100755 .gitlab/ci/wix.ps1 create mode 100755 .gitlab/ci/wix3.ps1 diff --git a/.gitlab/.gitignore b/.gitlab/.gitignore index 4afdad3..fd9cf8b 100644 --- a/.gitlab/.gitignore +++ b/.gitlab/.gitignore @@ -21,6 +21,6 @@ /tmp /unstable-jom* /watcom -/wix* +/wix3 /clang-tidy-fixes /num_warnings.txt diff --git a/.gitlab/ci/wix.ps1 b/.gitlab/ci/wix.ps1 deleted file mode 100755 index 9313c0f..0000000 --- a/.gitlab/ci/wix.ps1 +++ /dev/null @@ -1,20 +0,0 @@ -$erroractionpreference = "stop" - -$release = "wix314rtm" -$sha256sum = "13F067F38969FAF163D93A804B48EA0576790A202C8F10291F2000F0E356E934" -#$filename = "wix314-binaries" -$filename = "wix-3.14.0.8606-win-i386" -$tarball = "$filename.zip" - -$outdir = $pwd.Path -$outdir = "$outdir\.gitlab" -$ProgressPreference = 'SilentlyContinue' -#Invoke-WebRequest -Uri "https://github.com/wixtoolset/wix3/releases/download/$release/$tarball" -OutFile "$outdir\$tarball" -Invoke-WebRequest -Uri "https://cmake.org/files/dependencies/$tarball" -OutFile "$outdir\$tarball" -$hash = Get-FileHash "$outdir\$tarball" -Algorithm SHA256 -if ($hash.Hash -ne $sha256sum) { - exit 1 -} - -Add-Type -AssemblyName System.IO.Compression.FileSystem -[System.IO.Compression.ZipFile]::ExtractToDirectory("$outdir\$tarball", "$outdir\wix\bin") diff --git a/.gitlab/ci/wix3.ps1 b/.gitlab/ci/wix3.ps1 new file mode 100755 index 0000000..8f5ae4b --- /dev/null +++ b/.gitlab/ci/wix3.ps1 @@ -0,0 +1,21 @@ +$erroractionpreference = "stop" + +$release = "wix314rtm" +$sha256sum = "13F067F38969FAF163D93A804B48EA0576790A202C8F10291F2000F0E356E934" +#$filename = "wix314-binaries" +$filename = "wix-3.14.0.8606-win-i386" +$tarball = "$filename.zip" + +$outdir = $pwd.Path +$outdir = "$outdir\.gitlab" +$ProgressPreference = 'SilentlyContinue' +#Invoke-WebRequest -Uri "https://github.com/wixtoolset/wix3/releases/download/$release/$tarball" -OutFile "$outdir\$tarball" +Invoke-WebRequest -Uri "https://cmake.org/files/dependencies/$tarball" -OutFile "$outdir\$tarball" +$hash = Get-FileHash "$outdir\$tarball" -Algorithm SHA256 +if ($hash.Hash -ne $sha256sum) { + exit 1 +} + +Add-Type -AssemblyName System.IO.Compression.FileSystem +[System.IO.Compression.ZipFile]::ExtractToDirectory("$outdir\$tarball", "$outdir\wix3") +Remove-Item "$outdir\$tarball" diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml index b6678b4..94e35f3 100644 --- a/.gitlab/os-windows.yml +++ b/.gitlab/os-windows.yml @@ -387,8 +387,8 @@ .before_script_windows: &before_script_windows - . .gitlab/ci/env.ps1 - $pwdpath = $pwd.Path - - (& "$pwsh" -File ".gitlab/ci/wix.ps1") - - Set-Item -Force -Path "env:WIX" -Value "$pwdpath\.gitlab\wix" + - (& "$pwsh" -File ".gitlab/ci/wix3.ps1") + - Set-Item -Force -Path "env:WIX" -Value "$pwdpath\.gitlab\wix3" - (& "$pwsh" -File ".gitlab/ci/cmake.ps1") - Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab\cmake\bin;$env:PATH" - $cmake = "cmake" -- cgit v0.12 From cb1b2dc664a21e0792afadba51f1c566db90ff37 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 14 Mar 2024 11:35:34 -0400 Subject: ci: Provide WiX 3 in PATH of jobs that need it Drop the `WIX` environment variable. --- .gitlab/ci/env_windows_arm64_package.ps1 | 1 + .gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 | 1 + .gitlab/ci/env_windows_i386_package.ps1 | 1 + .gitlab/ci/env_windows_vs2022_x64_ninja.ps1 | 2 ++ .gitlab/ci/env_windows_x86_64_package.ps1 | 1 + .gitlab/ci/wix3-env.ps1 | 6 ++++++ .gitlab/os-windows.yml | 3 --- 7 files changed, 12 insertions(+), 3 deletions(-) create mode 100755 .gitlab/ci/env_windows_arm64_package.ps1 create mode 100755 .gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 create mode 100755 .gitlab/ci/env_windows_i386_package.ps1 create mode 100755 .gitlab/ci/env_windows_x86_64_package.ps1 create mode 100755 .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/env_windows_arm64_package.ps1 b/.gitlab/ci/env_windows_arm64_package.ps1 new file mode 100755 index 0000000..a898007 --- /dev/null +++ b/.gitlab/ci/env_windows_arm64_package.ps1 @@ -0,0 +1 @@ +. .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 b/.gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 new file mode 100755 index 0000000..a898007 --- /dev/null +++ b/.gitlab/ci/env_windows_arm64_vs2022_ninja.ps1 @@ -0,0 +1 @@ +. .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/env_windows_i386_package.ps1 b/.gitlab/ci/env_windows_i386_package.ps1 new file mode 100755 index 0000000..a898007 --- /dev/null +++ b/.gitlab/ci/env_windows_i386_package.ps1 @@ -0,0 +1 @@ +. .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/env_windows_vs2022_x64_ninja.ps1 b/.gitlab/ci/env_windows_vs2022_x64_ninja.ps1 index b512e37..0649b9f 100755 --- a/.gitlab/ci/env_windows_vs2022_x64_ninja.ps1 +++ b/.gitlab/ci/env_windows_vs2022_x64_ninja.ps1 @@ -3,3 +3,5 @@ if ("$env:CMAKE_CI_NIGHTLY" -eq "true") { . ".gitlab/ci/ispc-env.ps1" . ".gitlab/ci/swift-env.ps1" } + +. .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/env_windows_x86_64_package.ps1 b/.gitlab/ci/env_windows_x86_64_package.ps1 new file mode 100755 index 0000000..a898007 --- /dev/null +++ b/.gitlab/ci/env_windows_x86_64_package.ps1 @@ -0,0 +1 @@ +. .gitlab/ci/wix3-env.ps1 diff --git a/.gitlab/ci/wix3-env.ps1 b/.gitlab/ci/wix3-env.ps1 new file mode 100755 index 0000000..a872b74 --- /dev/null +++ b/.gitlab/ci/wix3-env.ps1 @@ -0,0 +1,6 @@ +& "$pwsh" -File .gitlab/ci/wix3.ps1 + +$pwdpath = $pwd.Path +Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab\wix3;$env:PATH" + +light -help | Select -First 1 diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml index 94e35f3..3cd6e56 100644 --- a/.gitlab/os-windows.yml +++ b/.gitlab/os-windows.yml @@ -387,13 +387,10 @@ .before_script_windows: &before_script_windows - . .gitlab/ci/env.ps1 - $pwdpath = $pwd.Path - - (& "$pwsh" -File ".gitlab/ci/wix3.ps1") - - Set-Item -Force -Path "env:WIX" -Value "$pwdpath\.gitlab\wix3" - (& "$pwsh" -File ".gitlab/ci/cmake.ps1") - Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab\cmake\bin;$env:PATH" - $cmake = "cmake" - . .gitlab/ci/ninja-env.ps1 - - (& "$env:WIX\bin\light.exe" -help) | Select -First 1 - cmake --version - . .gitlab/ci/qt-env.ps1 - . .gitlab/ci/python-env.ps1 -- cgit v0.12