Files
linuxkit/alpine/containers/binfmt/Makefile
Justin Cormack cade1b1d12 Set an exclude pattern when untarring images
This is a bit cleaner than deleting files after.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-12-19 17:54:01 +00:00

30 lines
1.0 KiB
Makefile

# Tag 7a07de557d7f6ae3d72873c32bfb4c51c7687d03
QEMU_IMAGE=mobylinux/qemu-user-static@sha256:cbeba25809c7c3feebc9e20522145e33d8abe5956674afa52814fc57c6644497
QEMU_BINARIES=qemu-arm-static qemu-aarch64-static qemu-ppc64le-static
default: rootfs
$(QEMU_BINARIES):
docker run --rm --net=none $(QEMU_IMAGE) tar cf - -C /usr/bin $@ | tar xf -
EXCLUDE=--exclude .dockerenv --exclude Dockerfile \
--exclude dev/console --exclude dev/pts --exclude dev/shm \
--exclude etc/hostname --exclude etc/hosts --exclude etc/mtab --exclude etc/resolv.conf
rootfs: Dockerfile main.go 00_moby.conf $(QEMU_BINARIES)
mkdir -p $@
BUILD=$$( tar cf - $^ | docker build -q - ) && \
[ -n "$$BUILD" ] && \
echo "Built $$BUILD" && \
IMAGE=$$( docker run --rm --net=none $$BUILD | docker build -q - ) && \
[ -n "$$IMAGE" ] && \
echo "Built $$IMAGE" && \
CONTAINER=$$( docker create $$IMAGE /dev/null ) && \
docker export $$CONTAINER | tar -xf - -C $@ $(EXCLUDE) && \
docker rm $$CONTAINER
clean:
rm -rf rootfs $(QEMU_BINARIES)
.DELETE_ON_ERROR: