aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Antony Chazapis <chazapis@gmail.com> 2023-07-10 17:49:01 +0300
committerGravatar GitHub <noreply@github.com> 2023-07-10 07:49:01 -0700
commit7569d132a16dd8778c1f2f7dceeb273a2b8ef115 (patch)
tree41aa8441222ace087a85fa9a7fb3443c09f90aea
parenta338c25e0594939b3f7151e5f46e4cbd3d1d643f (diff)
downloadcoredns-7569d132a16dd8778c1f2f7dceeb273a2b8ef115.tar.gz
coredns-7569d132a16dd8778c1f2f7dceeb273a2b8ef115.tar.zst
coredns-7569d132a16dd8778c1f2f7dceeb273a2b8ef115.zip
Add support for RISC-V (#6195)
* Add support for RISC-V Signed-off-by: Antony Chazapis <chazapis@ics.forth.gr> * Use existing Dockerfile with unstable Debian base images for RISC-V Signed-off-by: Antony Chazapis <chazapis@ics.forth.gr> --------- Signed-off-by: Antony Chazapis <chazapis@ics.forth.gr>
-rw-r--r--Makefile.docker8
-rw-r--r--Makefile.release2
2 files changed, 7 insertions, 3 deletions
diff --git a/Makefile.docker b/Makefile.docker
index 768fafe50..ef73c00a9 100644
--- a/Makefile.docker
+++ b/Makefile.docker
@@ -32,7 +32,7 @@ DOCKER:=
NAME:=coredns
GITHUB:=https://github.com/coredns/coredns/releases/download
# mips is not in LINUX_ARCH because it's not supported by docker manifest. Keep this list in sync with the one in Makefile.release
-LINUX_ARCH:=amd64 arm arm64 mips64le ppc64le s390x
+LINUX_ARCH:=amd64 arm arm64 mips64le ppc64le s390x riscv64
DOCKER_IMAGE_NAME:=$(DOCKER)/$(NAME)
DOCKER_IMAGE_LIST_VERSIONED:=$(shell echo $(LINUX_ARCH) | sed -e "s~[^ ]*~$(DOCKER_IMAGE_NAME):&\-$(VERSION)~g")
@@ -83,7 +83,11 @@ else
docker version
for arch in $(LINUX_ARCH); do \
cp Dockerfile build/docker/$${arch} ; \
- DOCKER_BUILDKIT=1 docker build --platform=$${arch} -t $(DOCKER_IMAGE_NAME):$${arch}-$(VERSION) build/docker/$${arch} ;\
+ DOCKER_ARGS=""; \
+ if [ "$${arch}" = "riscv64" ]; then \
+ DOCKER_ARGS="--build-arg=DEBIAN_IMAGE=debian:unstable-slim --build-arg=BASE=ghcr.io/go-riscv/distroless/static-unstable:nonroot"; \
+ fi; \
+ DOCKER_BUILDKIT=1 docker build --platform=$${arch} -t $(DOCKER_IMAGE_NAME):$${arch}-$(VERSION) $${DOCKER_ARGS} build/docker/$${arch} ;\
done
endif
diff --git a/Makefile.release b/Makefile.release
index 89ca800e2..e89d14974 100644
--- a/Makefile.release
+++ b/Makefile.release
@@ -50,7 +50,7 @@ endif
NAME:=coredns
VERSION:=$(shell grep 'CoreVersion' coremain/version.go | awk '{ print $$3 }' | tr -d '"')
GITHUB:=coredns
-LINUX_ARCH:=amd64 arm arm64 mips64le ppc64le s390x mips
+LINUX_ARCH:=amd64 arm arm64 mips64le ppc64le s390x mips riscv64
all:
@echo Use the 'release' target to build a release