From 1df158245914ebc8ec2473b19a4cb5f472e7d5c8 Mon Sep 17 00:00:00 2001 From: Ivan Mikushin Date: Tue, 5 Apr 2016 11:08:23 -0700 Subject: [PATCH] Fix building rootfs for arm on amd64 --- Dockerfile.dapper | 1 + Makefile | 5 +++-- scripts/mk-initrd.sh | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Dockerfile.dapper b/Dockerfile.dapper index bd8194da..4129d3e6 100644 --- a/Dockerfile.dapper +++ b/Dockerfile.dapper @@ -35,6 +35,7 @@ ARG TOOLCHAIN ENV TOOLCHAIN ${TOOLCHAIN} RUN if [ "${TOOLCHAIN}" != "" ] && ! which ${TOOLCHAIN}-gcc; then \ + apt-get update && \ apt-get install -y gcc-${TOOLCHAIN} g++-${TOOLCHAIN} \ ;fi diff --git a/Makefile b/Makefile index e18487cf..263c9362 100644 --- a/Makefile +++ b/Makefile @@ -3,6 +3,7 @@ DEV_BUILD := 0 HOST_ARCH := amd64 ARCH := amd64 SUFFIX := $(if $(filter-out amd64,$(ARCH)),_$(ARCH)) +HOST_SUFFIX := $(if $(filter-out amd64,$(HOST_ARCH)),_$(HOST_ARCH)) include build.conf include build.conf.$(ARCH) @@ -55,7 +56,7 @@ build/kernel/: dist/artifacts/initrd: bin/ros assets/docker assets/selinux/policy.29 build/kernel/ build/images.tar assets/modules.tar.gz mkdir -p $(dir $@) - SUFFIX=$(SUFFIX) DFS_IMAGE=$(DFS_IMAGE) DEV_BUILD=$(DEV_BUILD) \ + HOST_SUFFIX=$(HOST_SUFFIX) SUFFIX=$(SUFFIX) DFS_IMAGE=$(DFS_IMAGE) DEV_BUILD=$(DEV_BUILD) \ KERNEL_RELEASE=$(KERNEL_RELEASE) ARCH=$(ARCH) ./scripts/mk-initrd.sh $@ @@ -89,7 +90,7 @@ build/images.tar: build/host_ros build/os-config.yml dist/artifacts/rootfs.tar.gz: bin/ros assets/docker build/images.tar assets/selinux/policy.29 assets/modules.tar.gz mkdir -p $(dir $@) - SUFFIX=$(SUFFIX) DFS_IMAGE=$(DFS_IMAGE) DEV_BUILD=$(DEV_BUILD) IS_ROOTFS=1 ./scripts/mk-initrd.sh $@ + HOST_SUFFIX=$(HOST_SUFFIX) SUFFIX=$(SUFFIX) DFS_IMAGE=$(DFS_IMAGE) DEV_BUILD=$(DEV_BUILD) IS_ROOTFS=1 ./scripts/mk-initrd.sh $@ dist/artifacts/iso-checksums.txt: dist/artifacts/rancheros.iso diff --git a/scripts/mk-initrd.sh b/scripts/mk-initrd.sh index 9dbfb267..02a51f58 100755 --- a/scripts/mk-initrd.sh +++ b/scripts/mk-initrd.sh @@ -4,6 +4,7 @@ set -ex TARGET=$(pwd)/${1} SUFFIX=${SUFFIX:-""} +HOST_SUFFIX=${HOST_SUFFIX:-""} DFS_IMAGE=${DFS_IMAGE:?"DFS_IMAGE not set"} IS_ROOTFS=${IS_ROOTFS:-0} @@ -53,7 +54,7 @@ docker export ${DFS_ARCH} | tar xvf - -C ${INITRD_DIR} --exclude=usr/bin/dockerl usr if [ "$IS_ROOTFS" == "1" ]; then - DFS=$(docker run -d --privileged -v /lib/modules/$(uname -r):/lib/modules/$(uname -r) ${DFS_IMAGE}${SUFFIX}) + DFS=$(docker run -d --privileged -v /lib/modules/$(uname -r):/lib/modules/$(uname -r) ${DFS_IMAGE}${HOST_SUFFIX}) trap "docker rm -fv ${DFS_ARCH} ${DFS}" EXIT docker exec -i ${DFS} docker load < ${BUILD}/images.tar docker stop ${DFS}