summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHi Key <test@yfqm.date>2020-11-25 23:20:49 +0800
committerBrad King <brad.king@kitware.com>2020-12-22 14:04:39 -0500
commit76742c4cbe7194edfbaba2950008530e4253b885 (patch)
tree6400e3f685c6ba303cda79587206cca4ea9e9376
parente14fb01c4149d3206dc87586101b233400a1ceba (diff)
downloadcmake-76742c4cbe7194edfbaba2950008530e4253b885.tar.gz
gitlab-ci: add jobs to make Linux release packages for aarch64 on 3.19 branch
-rw-r--r--.gitlab-ci.yml23
-rw-r--r--.gitlab/artifacts.yml1
-rwxr-xr-x.gitlab/ci/sccache.sh21
-rw-r--r--.gitlab/os-linux.yml15
4 files changed, 53 insertions, 7 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 5550c2fc87..270ff11e0b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -186,6 +186,29 @@ build:linux-x86_64-package:
variables:
RSYNC_DESTINATION: dev
+build:linux-aarch64-package:
+ extends:
+ - .linux_package_aarch64
+ - .cmake_build_linux_package
+ - .cmake_release_artifacts
+ - .linux_builder_tags_aarch64
+ - .run_only_for_package
+ dependencies:
+ - prep:doc-package
+ needs:
+ - prep:doc-package
+
+.upload:linux-aarch64-package:
+ extends:
+ - .rsync_upload
+ - .run_only_for_package
+ dependencies:
+ - build:linux-aarch64-package
+ needs:
+ - build:linux-aarch64-package
+ variables:
+ RSYNC_DESTINATION: dev
+
# macOS builds
build:macos-ninja:
diff --git a/.gitlab/artifacts.yml b/.gitlab/artifacts.yml
index 589b16cee8..76ffd27713 100644
--- a/.gitlab/artifacts.yml
+++ b/.gitlab/artifacts.yml
@@ -74,6 +74,7 @@
paths:
# Any packages made.
- build/cmake-*-Linux-x86_64.*
+ - build/cmake-*-Linux-aarch64.*
- build/cmake-*-macos-universal.*
# Any source packages made.
- build/cmake-*.tar.gz
diff --git a/.gitlab/ci/sccache.sh b/.gitlab/ci/sccache.sh
index af24710406..77bedaa2ed 100755
--- a/.gitlab/ci/sccache.sh
+++ b/.gitlab/ci/sccache.sh
@@ -2,21 +2,30 @@
set -e
-case "$( uname -s )" in
- Linux)
+readonly kernel="$(uname -s)-$(uname -m)"
+case $kernel in
+ Linux-x86_64)
version="0.2.13"
shatool="sha256sum"
sha256sum="28a5499e340865b08b632306b435913beb590fbd7b49a3f887a623b459fabdeb"
platform="x86_64-unknown-linux-musl"
;;
- Darwin)
+ Linux-aarch64)
+ version="g6628e1f"
+ shatool="sha256sum"
+ sha256sum="bb88adbb5a29c166ecaa78d0593493b609a7f84d91d1228502a908f319b513f0"
+ platform="aarch64-unknown-linux-musl"
+ url="https://github.com/hwinit/sccache/releases/download/$version"
+ ;;
+ Darwin-x86_64)
version="gfe63078"
shatool="shasum -a 256"
sha256sum="60a0302b1d7227f7ef56abd82266353f570d27c6e850c56c6448bf62def38888"
platform="x86_64-apple-darwin"
+ url="https://paraview.org/files/dependencies"
;;
*)
- echo "Unrecognized platform $( uname -s )"
+ echo "Unrecognized platform $kernel"
exit 1
;;
esac
@@ -28,9 +37,7 @@ readonly platform
readonly filename="sccache-$version-$platform"
readonly tarball="$filename.tar.gz"
-if [ "$( uname -s )" = "Darwin" ]; then
- url="https://paraview.org/files/dependencies"
-else
+if [ -z "$url" ]; then
url="https://github.com/mozilla/sccache/releases/download/$version"
fi
readonly url
diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml
index 57e4ae19b7..bfd164bcb1 100644
--- a/.gitlab/os-linux.yml
+++ b/.gitlab/os-linux.yml
@@ -25,6 +25,14 @@
LAUNCHER: "scl enable devtoolset-6 rh-python36 --"
CMAKE_ARCH: x86_64
+.linux_package_aarch64:
+ image: "kitware/cmake:build-linux-aarch64-deps-2020-12-21@sha256:0bd7dfe4e45593b04e39cd21e44011034610cfd376900558c5ef959bb1af15af"
+
+ variables:
+ GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
+ LAUNCHER: "scl enable devtoolset-7 --"
+ CMAKE_ARCH: aarch64
+
### Debian
.debian10:
@@ -155,6 +163,13 @@
- docker
- linux
+.linux_builder_tags_aarch64:
+ tags:
+ - cmake
+ - build
+ - docker
+ - linux-aarch64
+
## Linux-specific scripts
.before_script_linux: &before_script_linux