gitlab-ci: split linux and macos shared before scripts
They're not actually the same anyways and the anchors can't be shared
between the files. We can figure out refactoring in the future.
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index f98f884..ec2393b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,7 +4,6 @@
- local: .gitlab/artifacts.yml
# OS builds.
- - local: .gitlab/os-unix.yml
- local: .gitlab/os-linux.yml
- local: .gitlab/os-macos.yml
- local: .gitlab/os-windows.yml
@@ -35,21 +34,21 @@
build:debian10-iwyu:
extends:
- .debian10_iwyu
- - .cmake_build_unix
+ - .cmake_build_linux
- .linux_builder_tags
- .run_automatically
build:fedora31-tidy:
extends:
- .fedora31_tidy
- - .cmake_build_unix
+ - .cmake_build_linux
- .linux_builder_tags_qt
- .run_automatically
build:fedora31-sphinx:
extends:
- .fedora31_sphinx
- - .cmake_build_unix
+ - .cmake_build_linux
- .linux_builder_tags_qt
- .run_automatically
@@ -88,7 +87,7 @@
build:fedora31-ninja:
extends:
- .fedora31_ninja
- - .cmake_build_unix
+ - .cmake_build_linux
- .cmake_build_artifacts
- .linux_builder_tags_qt
- .run_manually
@@ -96,7 +95,7 @@
test:fedora31-ninja:
extends:
- .fedora31_ninja
- - .cmake_test_unix
+ - .cmake_test_linux
- .linux_builder_tags_qt
- .cmake_test_artifacts
- .run_automatically
@@ -121,7 +120,7 @@
build:macos-ninja:
extends:
- .macos_ninja
- - .cmake_build_unix
+ - .cmake_build_macos
- .cmake_build_artifacts
- .macos_builder_tags
- .run_manually
@@ -129,7 +128,7 @@
test:macos-ninja:
extends:
- .macos_ninja
- - .cmake_test_unix
+ - .cmake_test_macos
- .cmake_test_artifacts
- .macos_builder_tags
- .run_automatically
@@ -141,7 +140,7 @@
build:macos-makefiles:
extends:
- .macos_makefiles
- - .cmake_build_unix
+ - .cmake_build_macos
- .cmake_build_artifacts
- .macos_builder_tags
- .run_manually
@@ -149,7 +148,7 @@
test:macos-makefiles:
extends:
- .macos_makefiles
- - .cmake_test_unix
+ - .cmake_test_macos
- .macos_builder_tags
- .run_automatically
dependencies:
diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml
index 7caf507..1c97377 100644
--- a/.gitlab/os-linux.yml
+++ b/.gitlab/os-linux.yml
@@ -118,6 +118,36 @@
## Linux-specific scripts
+.before_script_linux: &before_script_linux
+ - .gitlab/ci/cmake.sh
+ - .gitlab/ci/ninja.sh
+ - export PATH=$PWD/.gitlab:$PWD/.gitlab/cmake/bin:$PATH
+ - cmake --version
+ - ninja --version
+
+.cmake_build_linux:
+ stage: build
+
+ script:
+ - *before_script_linux
+ - .gitlab/ci/sccache.sh
+ - sccache --start-server
+ - sccache --show-stats
+ - "$LAUNCHER ctest -VV -S .gitlab/ci/ctest_configure.cmake"
+ - "$LAUNCHER ctest -VV -S .gitlab/ci/ctest_build.cmake"
+ - sccache --show-stats
+
+ interruptible: true
+
+.cmake_test_linux:
+ stage: test
+
+ script:
+ - *before_script_linux
+ - "$LAUNCHER ctest --output-on-failure -V -S .gitlab/ci/ctest_test.cmake"
+
+ interruptible: true
+
.cmake_build_release_linux:
stage: build
@@ -154,7 +184,7 @@
stage: test-ext
script:
- - *before_script_unix
+ - *before_script_linux
# Make the CMake package available.
- mkdir -p build/install
- tar -C build/install --strip-components=1 -xzf build/cmake-*-Linux-x86_64.tar.gz
@@ -170,7 +200,7 @@
stage: test-ext
script:
- - *before_script_unix
+ - *before_script_linux
- .gitlab/ci/sccache.sh
- sccache --start-server
- sccache --show-stats
diff --git a/.gitlab/os-macos.yml b/.gitlab/os-macos.yml
index 69b1a07..9d123ec 100644
--- a/.gitlab/os-macos.yml
+++ b/.gitlab/os-macos.yml
@@ -66,11 +66,45 @@
## macOS-specific scripts
+.before_script_macos: &before_script_macos
+ - .gitlab/ci/cmake.sh
+ - .gitlab/ci/ninja.sh
+ - export PATH=$PWD/.gitlab:$PWD/.gitlab/cmake/bin:$PATH
+ - cmake --version
+ - ninja --version
+ # Download Qt
+ - cmake -P .gitlab/ci/download_qt.cmake
+ - export CMAKE_PREFIX_PATH=$PWD/.gitlab/qt
+
+.cmake_build_macos:
+ stage: build
+
+ script:
+ - *before_script_macos
+ - .gitlab/ci/sccache.sh
+ # Allow the server to already be running.
+ - "sccache --start-server || :"
+ - sccache --show-stats
+ - ctest -VV -S .gitlab/ci/ctest_configure.cmake
+ - ctest -VV -S .gitlab/ci/ctest_build.cmake
+ - sccache --show-stats
+
+ interruptible: true
+
+.cmake_test_macos:
+ stage: test
+
+ script:
+ - *before_script_macos
+ - ctest --output-on-failure -V -S .gitlab/ci/ctest_test.cmake
+
+ interruptible: true
+
.cmake_test_macos_external:
stage: test-ext
script:
- - *before_script_unix
+ - *before_script_macos
- .gitlab/ci/sccache.sh
# Allow the server to already be running.
- "sccache --start-server || :"
diff --git a/.gitlab/os-unix.yml b/.gitlab/os-unix.yml
deleted file mode 100644
index c1f6bb7..0000000
--- a/.gitlab/os-unix.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-# Unix-specific build commands
-
-.before_script_unix: &before_script_unix
- - .gitlab/ci/cmake.sh
- - .gitlab/ci/ninja.sh
- - export PATH=$PWD/.gitlab:$PWD/.gitlab/cmake/bin:$PATH
- - cmake --version
- - ninja --version
- # Download Qt on macOS
- - "[ \"$( uname -s )\" = \"Darwin\" ] && cmake -P .gitlab/ci/download_qt.cmake"
- - "[ \"$( uname -s )\" = \"Darwin\" ] && export CMAKE_PREFIX_PATH=$PWD/.gitlab/qt"
-
-.cmake_build_unix:
- stage: build
-
- script:
- - *before_script_unix
- - .gitlab/ci/sccache.sh
- # Allow the server to already be running.
- - "sccache --start-server || :"
- - sccache --show-stats
- - "$LAUNCHER ctest -VV -S .gitlab/ci/ctest_configure.cmake"
- - "$LAUNCHER ctest -VV -S .gitlab/ci/ctest_build.cmake"
- - sccache --show-stats
-
- interruptible: true
-
-.cmake_test_unix:
- stage: test
-
- script:
- - *before_script_unix
- - "$LAUNCHER ctest --output-on-failure -V -S .gitlab/ci/ctest_test.cmake"
-
- interruptible: true