ci: add a Docker image to test out C++ modules with GCC
This commit is contained in:
parent
8c5a53096a
commit
1b2270aa4e
9
.gitlab/ci/docker/gcc_cxx_modules/Dockerfile
Normal file
9
.gitlab/ci/docker/gcc_cxx_modules/Dockerfile
Normal file
@ -0,0 +1,9 @@
|
||||
FROM fedora:36
|
||||
MAINTAINER Ben Boeckel <ben.boeckel@kitware.com>
|
||||
|
||||
# Install build dependencies for packages.
|
||||
COPY install_deps.sh /root/install_deps.sh
|
||||
RUN sh /root/install_deps.sh
|
||||
|
||||
COPY install_gcc.sh /root/install_gcc.sh
|
||||
RUN sh /root/install_gcc.sh
|
7
.gitlab/ci/docker/gcc_cxx_modules/install_deps.sh
Executable file
7
.gitlab/ci/docker/gcc_cxx_modules/install_deps.sh
Executable file
@ -0,0 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
dnf install -y --setopt=install_weak_deps=False \
|
||||
gcc-c++ mpfr-devel libmpc-devel isl-devel flex bison file findutils diffutils
|
||||
dnf clean all
|
26
.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh
Executable file
26
.gitlab/ci/docker/gcc_cxx_modules/install_gcc.sh
Executable file
@ -0,0 +1,26 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
readonly revision="p1689r5-cmake-ci-20220614" # 3075e510e3d29583f8886b95aff044c0474c84a5
|
||||
readonly tarball="https://github.com/mathstuf/gcc/archive/$revision.tar.gz"
|
||||
|
||||
readonly workdir="$HOME/gcc"
|
||||
readonly srcdir="$workdir/gcc"
|
||||
readonly builddir="$workdir/build"
|
||||
readonly njobs="$( nproc )"
|
||||
|
||||
mkdir -p "$workdir"
|
||||
cd "$workdir"
|
||||
curl -L "$tarball" > "gcc-$revision.tar.gz"
|
||||
tar xf "gcc-$revision.tar.gz"
|
||||
mv "gcc-$revision" "$srcdir"
|
||||
mkdir -p "$builddir"
|
||||
cd "$builddir"
|
||||
"$srcdir/configure" \
|
||||
--disable-multilib \
|
||||
--enable-languages=c,c++ \
|
||||
--prefix="/opt/gcc-p1689"
|
||||
make "-j$njobs"
|
||||
make "-j$njobs" install-strip
|
||||
rm -rf "$workdir"
|
Loading…
Reference in New Issue
Block a user