1 # Distributed under the OSI-approved BSD 3-Clause License. See accompanying
2 # file Copyright.txt or https://cmake.org/licensing for details.
4 # Produce an image containing a portable CMake binary package for Linux/aarch64.
5 # Build using the CMake source directory as the build context.
6 # The resulting image will have an '/out' directory containing the package.
8 # Keep this in sync with the `.gitlab/os-linux.yml` `.linux_release_aarch64` image.
9 ARG FROM_IMAGE_NAME=kitware/cmake:build-linux-aarch64-deps-2020-12-21
10 ARG FROM_IMAGE_DIGEST=@sha256:0bd7dfe4e45593b04e39cd21e44011034610cfd376900558c5ef959bb1af15af
11 ARG FROM_IMAGE=$FROM_IMAGE_NAME$FROM_IMAGE_DIGEST
14 COPY . /opt/cmake/src/cmake
19 && mkdir -p /opt/cmake/src/cmake-build \
20 && cd /opt/cmake/src/cmake-build \
21 && cp ../cmake/Utilities/Release/linux/aarch64/cache.txt CMakeCache.txt \
22 && source /opt/rh/devtoolset-7/enable \
24 && ../cmake/bootstrap --parallel=$(nproc) --docdir=doc/cmake \
25 && nice make -j $(nproc) \
27 # Run tests that require the full build tree.
28 bin/ctest --output-on-failure -j 8 -R '^(CMake\.|CMakeLib\.|CMakeServerLib\.|RunCMake\.ctest_memcheck)'; \
31 && bin/cpack -G STGZ \
34 && mv cmake-*-linux-aarch64.* /out \