summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml14
-rw-r--r--.gitlab/.gitignore1
-rw-r--r--.gitlab/ci/configure_windows_orangec6.73.1.cmake1
-rw-r--r--.gitlab/ci/configure_windows_orangec_common.cmake5
-rwxr-xr-x.gitlab/ci/env_windows_orangec6.73.1.ps12
-rwxr-xr-x.gitlab/ci/orangec-env.ps18
-rwxr-xr-x.gitlab/ci/orangec.ps124
-rw-r--r--.gitlab/os-windows.yml14
8 files changed, 69 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5982c27..c13ba72 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1392,6 +1392,20 @@ t:windows-openwatcom1.9:
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
+t:windows-orangec6.73.1:
+ extends:
+ - .windows_orangec6.73.1
+ - .cmake_test_windows_external
+ - .windows_x86_64_tags_concurrent
+ - .cmake_junit_artifacts
+ - .run_dependent
+ dependencies:
+ - t:windows-vs2022-x64-ninja
+ needs:
+ - t:windows-vs2022-x64-ninja
+ variables:
+ CMAKE_CI_JOB_NIGHTLY: "true"
+
# Windows arm64 jobs
b:windows-arm64-vs2022-ninja:
diff --git a/.gitlab/.gitignore b/.gitlab/.gitignore
index 852dfa6..19796ef 100644
--- a/.gitlab/.gitignore
+++ b/.gitlab/.gitignore
@@ -12,6 +12,7 @@
/ninja*
/openmp
/open-watcom*
+/orangec
/python*
/qt*
/sccache*
diff --git a/.gitlab/ci/configure_windows_orangec6.73.1.cmake b/.gitlab/ci/configure_windows_orangec6.73.1.cmake
new file mode 100644
index 0000000..e667b94
--- /dev/null
+++ b/.gitlab/ci/configure_windows_orangec6.73.1.cmake
@@ -0,0 +1 @@
+include("${CMAKE_CURRENT_LIST_DIR}/configure_windows_orangec_common.cmake")
diff --git a/.gitlab/ci/configure_windows_orangec_common.cmake b/.gitlab/ci/configure_windows_orangec_common.cmake
new file mode 100644
index 0000000..55dce1d
--- /dev/null
+++ b/.gitlab/ci/configure_windows_orangec_common.cmake
@@ -0,0 +1,5 @@
+set(CMake_TEST_Java OFF CACHE BOOL "")
+
+set(configure_no_sccache 1)
+
+include("${CMAKE_CURRENT_LIST_DIR}/configure_external_test.cmake")
diff --git a/.gitlab/ci/env_windows_orangec6.73.1.ps1 b/.gitlab/ci/env_windows_orangec6.73.1.ps1
new file mode 100755
index 0000000..96e36a1
--- /dev/null
+++ b/.gitlab/ci/env_windows_orangec6.73.1.ps1
@@ -0,0 +1,2 @@
+. .gitlab/ci/ninja-env.ps1
+. .gitlab/ci/orangec-env.ps1
diff --git a/.gitlab/ci/orangec-env.ps1 b/.gitlab/ci/orangec-env.ps1
new file mode 100755
index 0000000..3a5d232
--- /dev/null
+++ b/.gitlab/ci/orangec-env.ps1
@@ -0,0 +1,8 @@
+Invoke-Expression -Command .gitlab/ci/orangec.ps1
+$pwdpath = $pwd.Path
+Set-Item -Force -Path "env:PATH" -Value "$pwdpath\.gitlab\orangec\bin;$env:PATH"
+Set-Item -Force -Path "env:ORANGEC" -Value "$pwdpath\.gitlab\orangec"
+
+$env:CC = "occ"
+$env:CXX = "occ"
+occ --version
diff --git a/.gitlab/ci/orangec.ps1 b/.gitlab/ci/orangec.ps1
new file mode 100755
index 0000000..2201e12
--- /dev/null
+++ b/.gitlab/ci/orangec.ps1
@@ -0,0 +1,24 @@
+$erroractionpreference = "stop"
+
+if ("$env:CMAKE_CONFIGURATION".Contains("orangec6.73.1")) {
+ # OrangeC 6.73.1
+ $archive = "ZippedBinaries6738.zip"
+ $release = "Orange-C-v6.73.1"
+ $sha256sum = "29BC506AB105B2BF1002129C37826B2153DF1C8D0F22B9A2C38ACA3FB72A5B89"
+} else {
+ throw ('unknown CMAKE_CONFIGURATION: ' + "$env:CMAKE_CONFIGURATION")
+}
+
+$outdir = $pwd.Path
+$outdir = "$outdir\.gitlab"
+$ProgressPreference = 'SilentlyContinue'
+Invoke-WebRequest -Uri "https://github.com/LADSoft/OrangeC/releases/download/$release/$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")
+# The archive contains directory 'orangec', placed at '$outdir\orangec'.
+Remove-Item "$outdir\$archive"
diff --git a/.gitlab/os-windows.yml b/.gitlab/os-windows.yml
index 81944cb..c449ab8 100644
--- a/.gitlab/os-windows.yml
+++ b/.gitlab/os-windows.yml
@@ -261,6 +261,20 @@
variables:
CMAKE_CONFIGURATION: windows_openwatcom1.9
+.windows_orangec:
+ extends: .windows
+
+ variables:
+ CMAKE_GENERATOR: "Ninja"
+ CMAKE_CI_BUILD_TYPE: Release
+ CMAKE_CI_NIGHTLY_IGNORE_DEPS: "true"
+
+.windows_orangec6.73.1:
+ extends: .windows_orangec
+
+ variables:
+ CMAKE_CONFIGURATION: windows_orangec6.73.1
+
.windows_arm64_vs2022:
extends: .windows