24 lines
735 B
Docker
24 lines
735 B
Docker
# NOTE: Using 1.13 as a base to build the RISCV compiler, the resulting version is based on go1.6.
|
|
FROM golang:1.13
|
|
|
|
# Clone and complie a riscv compatible version of the go compiler.
|
|
RUN git clone https://review.gerrithub.io/riscv/riscv-go /riscv-go
|
|
# riscvdev branch HEAD as of 2019-06-29.
|
|
RUN cd /riscv-go && git checkout 04885fddd096d09d4450726064d06dd107e374bf
|
|
ENV PATH=/riscv-go/misc/riscv:/riscv-go/bin:$PATH
|
|
RUN cd /riscv-go/src && GOROOT_BOOTSTRAP=$(go env GOROOT) ./make.bash
|
|
ENV GOROOT=/riscv-go
|
|
|
|
# Set the base env.
|
|
ENV GOOS=linux GOARCH=riscv CGO_ENABLED=0 GOFLAGS='-v -ldflags=-s -ldflags=-w'
|
|
|
|
# Pre compile the stdlib.
|
|
RUN go build -a std
|
|
|
|
# Add the code to the image.
|
|
WORKDIR pty
|
|
ADD . .
|
|
|
|
# Build the lib.
|
|
RUN go build
|