aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitlab-ci.yml15
-rw-r--r--ci/docker/gentoo/paludis-gentoo-gcc/Dockerfile22
-rwxr-xr-xci/docker/gentoo/paludis-gentoo-gcc/build.sh4
-rw-r--r--ci/docker/gentoo/paludis-gentoo-gcc/config/package.accept_keywords12
-rw-r--r--ci/docker/gentoo/paludis-gentoo-gcc/config/package.mask1
-rw-r--r--ci/docker/gentoo/paludis-gentoo-gcc/config/package.use9
-rw-r--r--ci/docker/gentoo/paludis-gentoo-gcc/config/sets/paludis-deps17
-rwxr-xr-xci/docker/update-images.sh2
8 files changed, 82 insertions, 0 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e898ea1b8..03f2eb7b9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -52,6 +52,13 @@ docker-images:exherbo-clang:
VERSION: "latest"
<<: *dockerimage-template
+docker-images:gentoo-gcc:
+ variables:
+ DISTRIBUTION: "gentoo"
+ COMPILER: "gcc"
+ VERSION: "latest"
+ <<: *dockerimage-template
+
Exherbo GCC:
variables:
DISTRIBUTION: "exherbo"
@@ -77,6 +84,14 @@ Exherbo clang:
PYTHON_VERSION: "3.7"
<<: *build-template
+Gentoo GCC:
+ variables:
+ DISTRIBUTION: "gentoo"
+ COMPILER: "gcc"
+ VERSION: "latest"
+ PYTHON_VERSION: "3.6"
+ <<: *build-template
+
clang-tidy:
stage: clang-tidy
extends: .build-template
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/Dockerfile b/ci/docker/gentoo/paludis-gentoo-gcc/Dockerfile
new file mode 100644
index 000000000..8a53305c7
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/Dockerfile
@@ -0,0 +1,22 @@
+FROM gentoo/portage:latest as portage
+FROM gentoo/stage3-amd64:latest
+
+# copy the entire portage volume in
+COPY --from=portage /var/db/repos/gentoo /var/db/repos/gentoo
+
+COPY ./config/package.use /etc/portage/
+COPY ./config/package.mask /etc/portage/
+COPY ./config/package.accept_keywords /etc/portage/
+COPY ./config/sets/paludis-deps /etc/portage/sets/
+
+RUN sed -e '/--no-cmake-config/d' \
+ -i /var/db/repos/gentoo/dev-libs/boost/boost-1.72.0-r2.ebuild \
+ && cd /var/db/repos/gentoo/dev-libs/boost \
+ && ebuild --force boost-1.72.0-r2.ebuild manifest \
+ && emerge --update --newuse --deep -v @world \
+ && emerge --update --newuse --deep -v @paludis-deps \
+ && rm -rf /var/db/repos/*
+
+# Unprivileged user
+RUN useradd -M builder
+USER builder
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/build.sh b/ci/docker/gentoo/paludis-gentoo-gcc/build.sh
new file mode 100755
index 000000000..ef7ba5072
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/build.sh
@@ -0,0 +1,4 @@
+#!/usr/bin/env bash
+# vim: set sw=4 sts=4 ts=4 et tw=80 :
+
+docker build --no-cache --rm --pull -t paludis/gentoo-gcc .
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/config/package.accept_keywords b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.accept_keywords
new file mode 100644
index 000000000..0de75ec24
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.accept_keywords
@@ -0,0 +1,12 @@
+# required by app-crypt/rhash-1.3.5::gentoo[ssl,-libressl]
+# required by dev-util/cmake-3.9.6::gentoo
+# required by media-libs/openjpeg-2.3.0::gentoo
+# required by app-text/ghostscript-gpl-9.21::gentoo
+# required by app-doc/doxygen-1.8.14-r1::gentoo
+# required by @selected
+# required by @world (argument)
+=dev-libs/openssl-1.0.2o-r6 ~amd64
+
+=dev-util/boost-build-1.71.0 **
+=dev-libs/boost-1.71.0 **
+=dev-util/cmake-3.15.3 **
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/config/package.mask b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.mask
new file mode 100644
index 000000000..8b1378917
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.mask
@@ -0,0 +1 @@
+
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/config/package.use b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.use
new file mode 100644
index 000000000..1e70c7608
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/config/package.use
@@ -0,0 +1,9 @@
+# required by dev-python/sqlalchemy-1.2.7::gentoo[python_targets_python3_5]
+# required by dev-python/sphinxcontrib-websupport-1.0.1-r1::gentoo
+# required by dev-python/sphinx-1.6.5::gentoo[-test]
+# required by dev-python/sphinx (argument)
+dev-lang/python sqlite
+
+dev-libs/boost python
+
+*/* -ruby_targets_ruby23 ruby_targets_ruby24
diff --git a/ci/docker/gentoo/paludis-gentoo-gcc/config/sets/paludis-deps b/ci/docker/gentoo/paludis-gentoo-gcc/config/sets/paludis-deps
new file mode 100644
index 000000000..13d17df88
--- /dev/null
+++ b/ci/docker/gentoo/paludis-gentoo-gcc/config/sets/paludis-deps
@@ -0,0 +1,17 @@
+app-doc/doxygen
+app-text/asciidoc
+app-text/htmltidy
+app-text/xmlto
+dev-python/sphinx
+dev-ruby/syntax
+
+dev-cpp/gtest
+
+dev-libs/boost
+dev-lang/ruby:2.5
+
+app-arch/libarchive
+
+dev-db/sqlite:3
+
+dev-util/ninja
diff --git a/ci/docker/update-images.sh b/ci/docker/update-images.sh
index 5262e2dd7..61cac1aa7 100755
--- a/ci/docker/update-images.sh
+++ b/ci/docker/update-images.sh
@@ -4,3 +4,5 @@
docker build -t paludis/exherbo-gcc exherbo/paludis-exherbo-gcc
docker build -t paludis/exherbo-clang exherbo/paludis-exherbo-clang
+docker build -t paludis/gentoo-gcc gentoo/paludis-gentoo-gcc
+