summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2023-08-16 17:37:01 (GMT)
committerBrad King <brad.king@kitware.com>2023-08-16 18:29:55 (GMT)
commitef2bab7687a1027a4c8ccba9a1d42177b7b5a107 (patch)
tree5242a57350a048e77510cc9035fb3296661ddb49
parenta705eb963c7e31cd8e34f7b813f007f8be78f84d (diff)
downloadCMake-ef2bab7687a1027a4c8ccba9a1d42177b7b5a107.zip
CMake-ef2bab7687a1027a4c8ccba9a1d42177b7b5a107.tar.gz
CMake-ef2bab7687a1027a4c8ccba9a1d42177b7b5a107.tar.bz2
Utilities/Release: Update docker specs for linux-x86_64 to centos 7
Update the centos base image from centos 6 to centos 7. The latter is the minimum version supported by libuv 1.45. The resulting binaries require GLIBC 2.17.
-rw-r--r--.gitlab-ci.yml46
-rw-r--r--.gitlab/os-linux.yml14
-rw-r--r--Help/release/dev/rel-linux-x86_64.rst5
-rw-r--r--Utilities/Release/linux/x86_64/Dockerfile7
-rw-r--r--Utilities/Release/linux/x86_64/base/Dockerfile11
-rw-r--r--Utilities/Release/linux/x86_64/deps/Dockerfile26
-rw-r--r--Utilities/Release/linux/x86_64/test/Dockerfile4
7 files changed, 56 insertions, 57 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fbf1947..7a66494 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -132,7 +132,7 @@ l:clang-analyzer-fedora38:
# Linux builds
-b:centos6-x86_64:
+b:centos7-x86_64:
extends:
- .linux_release_x86_64
- .cmake_build_linux_release
@@ -140,7 +140,7 @@ b:centos6-x86_64:
- .linux_x86_64_tags
- .run_manually
variables:
- CMAKE_CI_ARTIFACTS_NAME: "artifacts-centos6-x86_64"
+ CMAKE_CI_ARTIFACTS_NAME: "artifacts-centos7-x86_64"
b:centos7-aarch64:
extends:
@@ -160,7 +160,7 @@ t:debian12-ninja:
- .linux_x86_64_tags
- .cmake_junit_artifacts
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY_NINJA: "true"
@@ -181,7 +181,7 @@ t:debian12-ninja-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -191,7 +191,7 @@ t:debian12-makefiles-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -201,7 +201,7 @@ t:debian12-hip-radeon:
- .cmake_test_linux_release
- .linux_x86_64_tags_radeon
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -211,7 +211,7 @@ t:fedora38-hip-radeon:
- .cmake_test_linux_release
- .linux_x86_64_tags_radeon
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -221,7 +221,7 @@ t:fedora38-ninja-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -231,7 +231,7 @@ t:fedora38-ninja-multi-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -241,7 +241,7 @@ t:fedora38-makefiles-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -251,7 +251,7 @@ t:fedora38-makefiles:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
t:fedora38-makefiles-nospace:
extends:
@@ -260,7 +260,7 @@ t:fedora38-makefiles-nospace:
- .linux_x86_64_tags
- .cmake_junit_artifacts
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake-ci"
CMAKE_CI_BUILD_NAME: fedora38_makefiles_nospace
@@ -272,7 +272,7 @@ t:nvhpc22.11-ninja:
- .cmake_test_linux_release
- .linux_x86_64_v3_tags_cuda
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -282,7 +282,7 @@ t:cuda9.2-nvidia:
- .cmake_test_linux_release
- .linux_x86_64_tags_cuda
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -293,7 +293,7 @@ t:cuda10.2-nvidia:
- .linux_x86_64_tags_cuda
- .cmake_junit_artifacts
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
t:cuda10.2-clang:
extends:
@@ -301,7 +301,7 @@ t:cuda10.2-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags_cuda
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -312,7 +312,7 @@ t:cuda11.6-nvidia:
- .linux_x86_64_tags_cuda
- .cmake_junit_artifacts
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
t:cuda11.6-clang:
extends:
@@ -320,7 +320,7 @@ t:cuda11.6-clang:
- .cmake_test_linux_release
- .linux_x86_64_tags_cuda
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -330,7 +330,7 @@ t:cuda11.8-minimal-ninja:
- .cmake_test_linux_release
- .linux_x86_64_tags_cuda
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -340,7 +340,7 @@ t:hip5.5-radeon:
- .cmake_test_linux_release
- .linux_x86_64_tags_radeon
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_NO_MR: "true"
@@ -350,7 +350,7 @@ t:linux-gcc-cxx-modules-ninja:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -360,7 +360,7 @@ t:linux-gcc-cxx-modules-ninja-multi:
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -371,7 +371,7 @@ t:debian10-legacy:
- .linux_x86_64_tags
- .cmake_junit_artifacts
- .run_dependent
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
diff --git a/.gitlab/os-linux.yml b/.gitlab/os-linux.yml
index 46b9602..8398108 100644
--- a/.gitlab/os-linux.yml
+++ b/.gitlab/os-linux.yml
@@ -11,11 +11,11 @@
GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
.linux_release_x86_64:
- image: "kitware/cmake:build-linux-x86_64-deps-2020-04-02@sha256:77e9ab183f34680990db9da5945473e288f0d6556bce79ecc1589670d656e157"
+ image: "kitware/cmake:build-linux-x86_64-deps-2023-08-16@sha256:aa0ebdbd90a51cc83d31f393c5c48ec4599a28f7ccdc288558522c6265b24fae"
variables:
GIT_CLONE_PATH: "$CI_BUILDS_DIR/cmake ci"
- LAUNCHER: "scl enable devtoolset-6 rh-python36 --"
+ LAUNCHER: "scl enable devtoolset-7 --"
CMAKE_ARCH: x86_64
.linux_release_aarch64:
@@ -30,11 +30,11 @@
variables:
BOOTSTRAP_ARGS: '-- "-DCMake_DOC_ARTIFACT_PREFIX=$CI_PROJECT_DIR/build/install-doc"'
-.needs_centos6_x86_64:
+.needs_centos7_x86_64:
dependencies:
- - b:centos6-x86_64
+ - b:centos7-x86_64
needs:
- - b:centos6-x86_64
+ - b:centos7-x86_64
.needs_centos7_aarch64:
dependencies:
@@ -618,7 +618,7 @@
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_manually
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
@@ -628,7 +628,7 @@
- .cmake_test_linux_release
- .linux_x86_64_tags
- .run_manually
- - .needs_centos6_x86_64
+ - .needs_centos7_x86_64
variables:
CMAKE_CI_JOB_NIGHTLY: "true"
diff --git a/Help/release/dev/rel-linux-x86_64.rst b/Help/release/dev/rel-linux-x86_64.rst
new file mode 100644
index 0000000..8302a1c
--- /dev/null
+++ b/Help/release/dev/rel-linux-x86_64.rst
@@ -0,0 +1,5 @@
+rel-linux-x86_64
+----------------
+
+* The precompiled Linux ``x86_64`` binaries provided on
+ `cmake.org <https://cmake.org/download/>`_ now require GLIBC 2.17 or higher.
diff --git a/Utilities/Release/linux/x86_64/Dockerfile b/Utilities/Release/linux/x86_64/Dockerfile
index 736ee26..71c8776 100644
--- a/Utilities/Release/linux/x86_64/Dockerfile
+++ b/Utilities/Release/linux/x86_64/Dockerfile
@@ -6,8 +6,8 @@
# 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-2020-04-02
-ARG FROM_IMAGE_DIGEST=@sha256:77e9ab183f34680990db9da5945473e288f0d6556bce79ecc1589670d656e157
+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
@@ -19,8 +19,7 @@ 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-6/enable \
- && source /opt/rh/rh-python36/enable \
+ && source /opt/rh/devtoolset-7/enable \
&& set -x \
&& ../cmake/bootstrap --parallel=$(nproc) --docdir=doc/cmake \
&& nice make -j $(nproc) \
diff --git a/Utilities/Release/linux/x86_64/base/Dockerfile b/Utilities/Release/linux/x86_64/base/Dockerfile
index dfc7df8..5df138e 100644
--- a/Utilities/Release/linux/x86_64/base/Dockerfile
+++ b/Utilities/Release/linux/x86_64/base/Dockerfile
@@ -4,8 +4,8 @@
# Produce a base image with a build environment for portable CMake binaries.
# Build using the directory containing this file as its own build context.
-ARG FROM_IMAGE_NAME=centos:6
-ARG FROM_IMAGE_DIGEST=@sha256:dec8f471302de43f4cfcf82f56d99a5227b5ea1aa6d02fa56344986e1f4610e7
+ARG FROM_IMAGE_NAME=centos:7
+ARG FROM_IMAGE_DIGEST=@sha256:be65f488b7764ad3638f236b7b515b3678369a5124c47b8d32916d6487418ea4
ARG FROM_IMAGE=$FROM_IMAGE_NAME$FROM_IMAGE_DIGEST
FROM $FROM_IMAGE
@@ -14,8 +14,8 @@ RUN : \
&& yum install -y \
ca-certificates \
curl \
- devtoolset-6-gcc \
- devtoolset-6-gcc-c++ \
+ devtoolset-7-gcc \
+ devtoolset-7-gcc-c++ \
fontconfig-devel \
freetype-devel \
git \
@@ -24,7 +24,8 @@ RUN : \
make \
patch \
perl \
- rh-python36-python-pip \
+ python3-pip \
xz \
+ which \
&& yum clean all \
&& :
diff --git a/Utilities/Release/linux/x86_64/deps/Dockerfile b/Utilities/Release/linux/x86_64/deps/Dockerfile
index 7864aac..b8bd164 100644
--- a/Utilities/Release/linux/x86_64/deps/Dockerfile
+++ b/Utilities/Release/linux/x86_64/deps/Dockerfile
@@ -4,17 +4,11 @@
# Produce an image with custom-built dependencies for portable CMake binaries.
# Build using the directory containing this file as its own build context.
-ARG FROM_IMAGE_NAME=kitware/cmake:build-linux-x86_64-base-2019-08-09
-ARG FROM_IMAGE_DIGEST=@sha256:d2c13617f01181a3143a069e4496d6b78eafffa19d181c42be196d5dfd588151
+ARG FROM_IMAGE_NAME=kitware/cmake:build-linux-x86_64-base-2023-08-16
+ARG FROM_IMAGE_DIGEST=@sha256:95c4d937a635067096dc8fa21b20cce6108ced091d3c42d56cf0261f40406a10
ARG FROM_IMAGE=$FROM_IMAGE_NAME$FROM_IMAGE_DIGEST
FROM $FROM_IMAGE
-# Sphinx
-RUN : \
- && source /opt/rh/rh-python36/enable \
- && pip install sphinx==2.1.2 \
- && :
-
# Qt
# Version 5.12.0 was the last to bundle xkbcommon.
COPY qt-install.patch /opt/qt/src/
@@ -25,7 +19,7 @@ RUN : \
&& sha512sum qt-everywhere-src-5.12.0.tar.xz | grep -q 0dd03d2645fb6dac5b58c8caf92b4a0a6900131f1ccfb02443a0df4702b5da0458f4c45e758d1b929ec709b0f4b36900df2fd60a058af9cc8c1a0748b6d57aae \
&& tar xJf qt-everywhere-src-5.12.0.tar.xz \
&& cd qt-build \
- && source /opt/rh/devtoolset-6/enable \
+ && source /opt/rh/devtoolset-7/enable \
&& ../qt-everywhere-src-5.12.0/configure \
-prefix /opt/qt \
-static \
@@ -97,7 +91,7 @@ RUN : \
-skip qtxmlpatterns \
-nomake examples \
-nomake tests \
- && make install -j $(nproc) \
+ && make install \
&& cd /opt/qt \
&& patch -p1 -i src/qt-install.patch \
&& cd /opt \
@@ -112,7 +106,7 @@ RUN : \
&& sha512sum ncurses-6.1.tar.gz | grep -q e308af43f8b7e01e98a55f4f6c4ee4d1c39ce09d95399fa555b3f0cdf5fd0db0f4c4d820b4af78a63f6cf6d8627587114a40af48cfc066134b600520808a77ee \
&& tar xzf ncurses-6.1.tar.gz \
&& cd ncurses-build \
- && source /opt/rh/devtoolset-6/enable \
+ && source /opt/rh/devtoolset-7/enable \
&& ../ncurses-6.1/configure \
--prefix=/opt/ncurses \
--with-terminfo-dirs=/etc/terminfo:/lib/terminfo:/usr/share/terminfo \
@@ -129,12 +123,12 @@ COPY openssl-source.patch /opt/openssl/src/
RUN : \
&& mkdir -p /opt/openssl/src \
&& cd /opt/openssl/src \
- && curl -O https://www.openssl.org/source/openssl-1.1.1f.tar.gz \
- && sha512sum openssl-1.1.1f.tar.gz | grep -q b00bd9b5ad5298fbceeec6bb19c1ab0c106ca5cfb31178497c58bf7e0e0cf30fcc19c20f84e23af31cc126bf2447d3e4f8461db97bafa7bd78f69561932f000c \
- && tar xzf openssl-1.1.1f.tar.gz \
- && cd openssl-1.1.1f \
+ && curl -O https://www.openssl.org/source/openssl-1.1.1v.tar.gz \
+ && sha512sum openssl-1.1.1v.tar.gz | grep -q 1a67340d99026aa62bf50ff89165d9f77fe4a6690fe30d1751b5021dd3f238391afd581b41724687c322c4e3af1770c44a63766a06e9b8cab6425101153e0c7e \
+ && tar xzf openssl-1.1.1v.tar.gz \
+ && cd openssl-1.1.1v \
&& patch -p1 -i ../openssl-source.patch \
- && source /opt/rh/devtoolset-6/enable \
+ && source /opt/rh/devtoolset-7/enable \
&& ./Configure --prefix=/opt/openssl linux-elf no-asm no-shared -D_POSIX_C_SOURCE=199506L -D_POSIX_SOURCE=1 -D_SVID_SOURCE=1 -D_BSD_SOURCE=1 \
&& make install_dev -j $(nproc) \
&& cd /opt \
diff --git a/Utilities/Release/linux/x86_64/test/Dockerfile b/Utilities/Release/linux/x86_64/test/Dockerfile
index 6629156..e6c195e 100644
--- a/Utilities/Release/linux/x86_64/test/Dockerfile
+++ b/Utilities/Release/linux/x86_64/test/Dockerfile
@@ -4,8 +4,8 @@
# Produce a base image with a test environment for packaged CMake binaries.
# Build using the directory containing this file as its own build context.
-ARG FROM_IMAGE_NAME=debian:9
-ARG FROM_IMAGE_DIGEST=@sha256:397b2157a9ea8d7f16c613aded70284292106e8b813fb1ed5de8a8785310a26a
+ARG FROM_IMAGE_NAME=debian:10
+ARG FROM_IMAGE_DIGEST=@sha256:b86bfc1dd2fb1820fea6c1e0b6e23d155198b518b3a506f6edad71bf6e9a8cef
ARG FROM_IMAGE=$FROM_IMAGE_NAME$FROM_IMAGE_DIGEST
FROM $FROM_IMAGE