From 658009b6fe279f91343a4c2797bbde1f8a3962fb Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 12 Nov 2021 13:17:05 -0500 Subject: ci: Fix vcvarsall.ps1 environment variable lookup Previously we were relying on `VCVARSPLATFORM` and `VCVARSVERSION` powershell script variables. Read them from the environment directly. --- .gitlab/ci/vcvarsall.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab/ci/vcvarsall.ps1 b/.gitlab/ci/vcvarsall.ps1 index 57d3386..f91b100 100755 --- a/.gitlab/ci/vcvarsall.ps1 +++ b/.gitlab/ci/vcvarsall.ps1 @@ -1,6 +1,6 @@ $erroractionpreference = "stop" -cmd /c "`"$env:VCVARSALL`" $VCVARSPLATFORM -vcvars_ver=$VCVARSVERSION & set" | +cmd /c "`"$env:VCVARSALL`" $env:VCVARSPLATFORM -vcvars_ver=$env:VCVARSVERSION & set" | foreach { if ($_ -match "=") { $v = $_.split("=") -- cgit v0.12 From bbb26645477fd7d6532d805490bae20ce8971a06 Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 12 Nov 2021 12:03:13 -0500 Subject: gitlab-ci: Add wix, cmake, and ninja to PATH incrementally on Windows Also run their scripts in an isolated child process. --- .gitlab/os-windows.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml index 4ecc120..7c578aa 100644 --- a/.gitlab/os-windows.yml +++ b/.gitlab/os-windows.yml @@ -151,13 +151,14 @@ ## Windows-specific scripts .before_script_windows: &before_script_windows - - Invoke-Expression -Command .gitlab/ci/wix.ps1 - - Invoke-Expression -Command .gitlab/ci/cmake.ps1 - - Invoke-Expression -Command .gitlab/ci/ninja.ps1 - $pwdpath = $pwd.Path + - powershell -File ".gitlab/ci/wix.ps1" - Set-Item -Force -Path "env:WIX" -Value "$pwdpath\.gitlab\wix" + - powershell -File ".gitlab/ci/cmake.ps1" + - Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab\cmake\bin;$env:PATH" + - powershell -File ".gitlab/ci/ninja.ps1" + - Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab;$env:PATH" - (& "$env:WIX\bin\light.exe" -help) | Select -First 1 - - Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab;$pwdpath\.gitlab\cmake\bin;$env:PATH" - cmake --version - ninja --version - cmake -P .gitlab/ci/download_qt.cmake -- cgit v0.12 From 3d4073b129c0ee9e738b3c51c2fe6a042fd1c84c Mon Sep 17 00:00:00 2001 From: Brad King Date: Fri, 12 Nov 2021 13:22:29 -0500 Subject: gitlab-ci: Try upstream ninja development branch in a Windows nightly job --- .gitlab-ci.yml | 2 ++ .gitlab/ci/ninja-nightly.ps1 | 9 +++++++++ .gitlab/ci/ninja.ps1 | 5 +++++ 3 files changed, 16 insertions(+) create mode 100755 .gitlab/ci/ninja-nightly.ps1 diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b9b020b..7f38659 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -742,6 +742,8 @@ test:windows-vs2022-x64-ninja: - build:windows-vs2022-x64-ninja needs: - build:windows-vs2022-x64-ninja + variables: + CMAKE_CI_JOB_NIGHTLY_NINJA: "true" test:windows-vs2022-x64: extends: diff --git a/.gitlab/ci/ninja-nightly.ps1 b/.gitlab/ci/ninja-nightly.ps1 new file mode 100755 index 0000000..071b077 --- /dev/null +++ b/.gitlab/ci/ninja-nightly.ps1 @@ -0,0 +1,9 @@ +$erroractionpreference = "stop" + +Invoke-Expression -Command .gitlab/ci/vcvarsall.ps1 +Set-Location -Path ".gitlab" +git clone https://github.com/ninja-build/ninja.git ninja-src +cmake -S ninja-src -B ninja-src/build -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Release +cmake --build ninja-src/build --target ninja +Move-Item -Path "ninja-src\build\ninja.exe" -Destination . -Force +Remove-Item "ninja-src" -Recurse -Force diff --git a/.gitlab/ci/ninja.ps1 b/.gitlab/ci/ninja.ps1 index 4c5333a..47bb056 100755 --- a/.gitlab/ci/ninja.ps1 +++ b/.gitlab/ci/ninja.ps1 @@ -1,5 +1,10 @@ $erroractionpreference = "stop" +if ("$env:CMAKE_CI_JOB_NIGHTLY_NINJA" -eq "true" -And "$env:CMAKE_CI_NIGHTLY" -eq "true") { + & .gitlab/ci/ninja-nightly.ps1 + exit $LASTEXITCODE +} + $version = "1.10.2" $sha256sum = "BBDE850D247D2737C5764C927D1071CBB1F1957DCABDA4A130FA8547C12C695F" $filename = "ninja-win" -- cgit v0.12