You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
1.3 KiB
36 lines
1.3 KiB
# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
|
|
# file Copyright.txt or https://cmake.org/licensing for details.
|
|
|
|
# Produce an image containing a portable CMake binary package for Linux/x86_64.
|
|
# Build using the CMake source directory as the build context.
|
|
# The resulting image will have an '/out' directory containing the package.
|
|
|
|
# Keep this in sync with the `.gitlab/os-linux.yml` `.linux_release_x86_64` image.
|
|
ARG FROM_IMAGE_NAME=kitware/cmake:build-linux-x86_64-deps-2023-08-16
|
|
ARG FROM_IMAGE_DIGEST=@sha256:aa0ebdbd90a51cc83d31f393c5c48ec4599a28f7ccdc288558522c6265b24fae
|
|
ARG FROM_IMAGE=$FROM_IMAGE_NAME$FROM_IMAGE_DIGEST
|
|
FROM $FROM_IMAGE
|
|
|
|
COPY . /opt/cmake/src/cmake
|
|
|
|
ARG TEST=true
|
|
|
|
RUN : \
|
|
&& mkdir -p /opt/cmake/src/cmake-build \
|
|
&& cd /opt/cmake/src/cmake-build \
|
|
&& cp ../cmake/Utilities/Release/linux/x86_64/cache.txt CMakeCache.txt \
|
|
&& source /opt/rh/devtoolset-7/enable \
|
|
&& set -x \
|
|
&& ../cmake/bootstrap --parallel=$(nproc) --docdir=doc/cmake \
|
|
&& nice make -j $(nproc) \
|
|
&& if $TEST; then \
|
|
# Run tests that require the full build tree.
|
|
bin/ctest --output-on-failure -j 8 -R '^(CMake\.|CMakeLib\.|RunCMake\.ctest_memcheck)'; \
|
|
fi \
|
|
&& bin/cpack -G TGZ \
|
|
&& bin/cpack -G STGZ \
|
|
&& set +x \
|
|
&& mkdir /out \
|
|
&& mv cmake-*-linux-x86_64.* /out \
|
|
&& :
|