Elyes Haouas has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/86616?usp=email )
Change subject: coreboot-sdk: Use same gcc & gnat version as the version in toolchain ......................................................................
coreboot-sdk: Use same gcc & gnat version as the version in toolchain
Change-Id: I3d75f7cf06ed1421cb27e185d9ebf4887626f41a Signed-off-by: Elyes Haouas ehaouas@noos.fr --- M util/docker/coreboot-sdk/Dockerfile 1 file changed, 30 insertions(+), 3 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/16/86616/1
diff --git a/util/docker/coreboot-sdk/Dockerfile b/util/docker/coreboot-sdk/Dockerfile index 6c3a06b..970d647 100644 --- a/util/docker/coreboot-sdk/Dockerfile +++ b/util/docker/coreboot-sdk/Dockerfile @@ -11,6 +11,34 @@ ARG SDK_VERSION ARG CROSSGCC_PARAM
+# Add Debian Sid repository with pinning - needed to install same version +# of GCC/GNAT as the version used in coreboot toolchain +RUN \ + echo "deb http://deb.debian.org/debian sid main" >> /etc/apt/sources.list.d/sid.list && \ + echo "Package: *" > /etc/apt/preferences.d/sid-pinning && \ + echo "Pin: release a=stable" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Pin-Priority: 900" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Package: *" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Pin: release a=testing" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Pin-Priority: 800" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Package: *" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Pin: release a=unstable" >> /etc/apt/preferences.d/sid-pinning && \ + echo "Pin-Priority: 100" >> /etc/apt/preferences.d/sid-pinning && \ + apt-get update + +# Install GCC-14 and GNAT-14 +RUN \ + apt-get install -y --no-install-recommends \ + -t testing gcc-14 g++-14 \ + -t sid gnat-14 + +# Set GCC-14 and GNAT-14 as default compilers +RUN \ + update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-14 60 --slave /usr/bin/g++ g++ /usr/bin/g++-14 && \ + update-alternatives --install /usr/bin/gnat gnat /usr/bin/gnat-14 60 && \ + update-alternatives --set gcc /usr/bin/gcc-14 + +# Install dependencies and create coreboot user RUN \ useradd -p locked -m coreboot && \ apt-get -qq update && \ @@ -30,12 +58,9 @@ diffutils \ exuberant-ctags \ flex \ - g++ \ gawk \ - gcc \ gettext \ git \ - gnat \ golang \ graphicsmagick-imagemagick-compat \ graphviz \ @@ -92,6 +117,7 @@ zlib1g-dev \ && apt-get clean
+# Build coreboot toolchain RUN \ cd /tmp && \ git clone https://review.coreboot.org/coreboot && \ @@ -105,6 +131,7 @@ BUILD_LANGUAGES=c,ada CPUS=$(nproc) DEST=/opt/xgcc && \ rm -rf /tmp/coreboot
+# Set up coreboot environment RUN mkdir /home/coreboot/.ccache && \ chown coreboot:coreboot /home/coreboot/.ccache && \ mkdir /home/coreboot/cb_build && \