golang.org/x/build@v0.0.0-20240506185731-218518f32b70/env/linux-ppc64le/osuosl/Dockerfile (about) 1 # Copyright 2019 The Go Authors. All rights reserved. 2 # Use of this source code is governed by a BSD-style 3 # license that can be found in the LICENSE file. 4 5 FROM ubuntu:20.04 6 7 ENV DEBIAN_FRONTEND noninteractive 8 9 RUN apt-get update && \ 10 apt-get install --yes \ 11 gcc gdb curl strace \ 12 ca-certificates netbase \ 13 procps lsof psmisc \ 14 openssh-server \ 15 patch 16 17 # For GOPPC64=power10 support. This hack can be removed once the bootstrap 18 # minimum reachs go1.20. 19 # P8 and P9 will use the default bootstrap toolchain downloaded during CI. 20 ADD p10.patch / 21 RUN mkdir -p /usr/local && \ 22 curl --silent -L https://go.dev/dl/go1.17.13.linux-ppc64le.tar.gz --output /go.tar.gz && \ 23 tar -C /usr/local/ -zxf /go.tar.gz && \ 24 mv /usr/local/go /usr/local/go-bootstrap && \ 25 tar -C /usr/local/ -zxf /go.tar.gz && \ 26 mv /usr/local/go /usr/local/go-tmp && \ 27 cd /usr/local/go-bootstrap && patch -p1 < /p10.patch && \ 28 cd /usr/local/go-bootstrap/src && GOROOT_BOOTSTRAP=/usr/local/go-tmp GOOS=linux GOARCH=ppc64le ./bootstrap.bash && \ 29 /usr/local/go-tmp/bin/go install golang.org/x/build/cmd/genbootstrap@v0.0.0-20221130230848-98eb5685978b && \ 30 cd /usr/local && /root/go/bin/genbootstrap -v -skip_build go-linux-ppc64le-bootstrap linux-ppc64le && \ 31 rm -rf /usr/local/go-tmp /usr/local/go-bootstrap /usr/local/go-linux-ppc64le-bootstrap /usr/local/go-linux-ppc64le-bootstrap.tbz && \ 32 mkdir /usr/local/go-bootstrap && tar -C /usr/local/go-bootstrap -xf /tmp/genbootstrap-*/gobootstrap-linux-ppc64le-go*.tar.gz && \ 33 rm -rf /usr/local/go-tmp /root/go /root/.cache /p10.patch /go.tar.gz /tmp/* && apt-get remove --yes patch 34 35 ENV GOROOT_BOOTSTRAP /usr/local/go-bootstrap 36 ADD stage0 /usr/local/bin/stage0 37 38 ENV GO_BUILD_KEY_DELETE_AFTER_READ true 39 ENV GO_BUILD_KEY_PATH /buildkey/gobuildkey 40 41 CMD ["/usr/local/bin/stage0"]