mirror of
https://gitlab.kitware.com/cmake/cmake.git
synced 2026-09-25 04:09:36 +03:00
@@ -1546,6 +1546,18 @@ t:windows-orangec7.0.7:
|
||||
variables:
|
||||
CMAKE_CI_JOB_NIGHTLY: "true"
|
||||
|
||||
t:windows-pellesc13.01:
|
||||
extends:
|
||||
- .windows_pellesc13.01
|
||||
- .cmake_test_windows_external
|
||||
- .windows_x86_64_tags_concurrent
|
||||
- .cmake_junit_artifacts
|
||||
- .rules
|
||||
needs:
|
||||
- t:windows-vs2026-x64-ninja
|
||||
variables:
|
||||
CMAKE_CI_JOB_NIGHTLY: "true"
|
||||
|
||||
# Windows arm64 jobs
|
||||
|
||||
b:windows-arm64-vs2026-ninja:
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
/openmp
|
||||
/open-watcom*
|
||||
/orangec
|
||||
/pellesc
|
||||
/python*
|
||||
/qt*
|
||||
/sccache*
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_pellesc_common.cmake")
|
||||
@@ -0,0 +1,6 @@
|
||||
set(CMake_TEST_CXX OFF CACHE BOOL "")
|
||||
set(CMake_TEST_Java OFF CACHE BOOL "")
|
||||
|
||||
set(configure_no_sccache 1)
|
||||
|
||||
include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
|
||||
@@ -0,0 +1,6 @@
|
||||
. .gitlab/ci/ninja-env.ps1
|
||||
. .gitlab/ci/pellesc-env.ps1
|
||||
|
||||
# FIXME(#21536): Avoid requiring the end user to enable
|
||||
# Pelles C's Microsoft extensions to use Windows APIs.
|
||||
$env:CFLAGS = "-Ze"
|
||||
@@ -0,0 +1,6 @@
|
||||
& "$pwsh" -File ".gitlab/ci/pellesc.ps1"
|
||||
Invoke-Expression -Command .gitlab/ci/pellesc-vars.ps1
|
||||
|
||||
$env:CC = "pocc"
|
||||
$env:CXX = "pocc-does-not-support-c++"
|
||||
pocc | Select -First 1
|
||||
@@ -0,0 +1,7 @@
|
||||
$erroractionpreference = "stop"
|
||||
|
||||
$all_env = cmd /c "`".gitlab\pellesc\bin\povars64.bat`" >NUL & powershell -Command `"Get-ChildItem env: | Select-Object -Property Key,Value | ConvertTo-Json`"" | ConvertFrom-Json
|
||||
|
||||
foreach ($envvar in $all_env) {
|
||||
[Environment]::SetEnvironmentVariable($envvar.Key, $envvar.Value)
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
$erroractionpreference = "stop"
|
||||
|
||||
if ("$env:CMAKE_CONFIGURATION".Contains("pellesc13.01")) {
|
||||
# PellesC 13.01
|
||||
# https://www.pellesc.se/1300/setup.exe
|
||||
$filename = "pellesc-13.01-1"
|
||||
$sha256sum = "E48AF208D1A46F47490011979538C1DBC427B36D47554A76C3FF83284E8F83AE"
|
||||
} else {
|
||||
throw ('unknown CMAKE_CONFIGURATION: ' + "$env:CMAKE_CONFIGURATION")
|
||||
}
|
||||
$archive = "$filename.zip"
|
||||
|
||||
$outdir = $pwd.Path
|
||||
$outdir = "$outdir\.gitlab"
|
||||
$ProgressPreference = 'SilentlyContinue'
|
||||
# This URL is only visible inside of Kitware's network. See above filename table.
|
||||
Invoke-WebRequest -Uri "https://cmake.org/files/dependencies/internal/$archive" -OutFile "$outdir\$archive"
|
||||
$hash = Get-FileHash "$outdir\$archive" -Algorithm SHA256
|
||||
if ($hash.Hash -ne $sha256sum) {
|
||||
exit 1
|
||||
}
|
||||
|
||||
Add-Type -AssemblyName System.IO.Compression.FileSystem
|
||||
[System.IO.Compression.ZipFile]::ExtractToDirectory("$outdir\$archive", "$outdir")
|
||||
Move-Item -Path "$outdir\$filename" -Destination "$outdir\pellesc"
|
||||
Remove-Item "$outdir\$archive"
|
||||
|
||||
$scripts = "povars32.bat", "povars64.bat"
|
||||
foreach ($script in $scripts) {
|
||||
$bat = Get-Content -Path "$outdir\pellesc\bin\$script.in" -Raw
|
||||
$bat = $bat -Replace "@PellesCDir@","$outdir\pellesc"
|
||||
$bat | Set-Content -Path "$outdir\pellesc\bin\$script"
|
||||
}
|
||||
@@ -325,6 +325,21 @@
|
||||
variables:
|
||||
CMAKE_CONFIGURATION: windows_orangec7.0.7
|
||||
|
||||
.windows_pellesc:
|
||||
extends: .windows
|
||||
|
||||
variables:
|
||||
CMAKE_GENERATOR: "Ninja"
|
||||
CMAKE_CI_BUILD_TYPE: Release
|
||||
CMAKE_CI_JOB_NIGHTLY_IGNORE_DEPS: "true"
|
||||
CTEST_LABELS: "PellesC"
|
||||
|
||||
.windows_pellesc13.01:
|
||||
extends: .windows_pellesc
|
||||
|
||||
variables:
|
||||
CMAKE_CONFIGURATION: windows_pellesc13.01
|
||||
|
||||
.windows_arm64_vs2026:
|
||||
extends: .windows
|
||||
|
||||
|
||||
Reference in New Issue
Block a user