[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[PATCH 3/4] Add support for building for other architectures



From: Andrew Ruthven <puck@catalyst.net.nz>

---
 Makefile | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index 9f4a6d7..21962e1 100644
--- a/Makefile
+++ b/Makefile
@@ -5,6 +5,8 @@ UPPER_CLOUD = $(shell echo $(CLOUD) | tr '[:lower:]' '[:upper:]')
 UPPER_DIST = $(shell echo $(DIST) | tr '[:lower:]' '[:upper:]')
 PWD := $(shell readlink -f .)
 SPACE = 8
+ARCH = $(shell dpkg --print-architecture)
+UPPER_ARCH = $(shell echo $(ARCH) | tr '[:lower:]' '[:upper:]')
 
 VALID_CLOUDS = (azure|ec2|gce|openstack|vm|vagrant)
 VALID_DISTS = (stretch|buster)
@@ -23,7 +25,7 @@ help:
 	@echo "  WHERE <DIST> is buster or stretch"
 	@echo "    And <CLOUD> is azure, ec2, gce, openstack, vagrant"
 
-_image.raw: config_space/basefiles/$(UPPER_DIST).tar.gz
+_image.raw: config_space/basefiles/$(UPPER_DIST)_$(UPPER_ARCH).tar.gz
 	@echo $(CLOUD) | egrep -q "$(VALID_CLOUDS)" || { \
 		 echo "$(CLOUD) is an invalid. Valid clouds are $(VALID_CLOUDS)"; exit 1; }
 	@echo $(DIST) | egrep -q "$(VALID_DISTS)" || { \
@@ -31,11 +33,11 @@ _image.raw: config_space/basefiles/$(UPPER_DIST).tar.gz
 	sudo fai-diskimage -v \
 		--hostname debian-$(DIST) \
 		--size $(SPACE)G \
-		--class DEBIAN,$(UPPER_DIST),AMD64,GRUB_PC,CLOUD,$(UPPER_CLOUD) \
-		--cspace $(PWD)/config_space $(CLOUD)-$(DIST)-image.raw
+		--class DEBIAN,$(UPPER_DIST),$(UPPER_ARCH),$(UPPER_DIST)_$(UPPER_ARCH),GRUB_PC,CLOUD,$(UPPER_CLOUD) \
+		--cspace $(PWD)/config_space $(CLOUD)-$(DIST)-$(ARCH)-image.raw
 	if [ "$(FORMAT_NEEDED)" = "vhd" ]; then \
 		qemu-img convert -f raw -o subformat=fixed,force_size -O vpc \
-		$(CLOUD)-$(DIST)-image.raw $(CLOUD)-$(DIST)-image.vhd; fi
+		$(CLOUD)-$(DIST)-$(ARCH)-image.raw $(CLOUD)-$(DIST)-$(ARCH)-image.vhd; fi
 buster-image-%:
 	find config_space/basefiles -type f -atime +1 -print0 | xargs -0 -r rm
 	${MAKE} _image.raw CLOUD=$* DIST=buster
@@ -44,9 +46,9 @@ stretch-image-%:
 	find config_space/basefiles -type f -atime +1 -print0 | xargs -0 -r rm
 	${MAKE} _image.raw CLOUD=$* DIST=stretch
 
-config_space/basefiles/$(UPPER_DIST).tar.gz:
+config_space/basefiles/$(UPPER_DIST)_$(UPPER_ARCH).tar.gz:
 	$(eval DIR := $(shell mktemp -d))
-	sudo debootstrap $(DIST) $(DIR) http://deb.debian.org/debian
+	sudo debootstrap --arch=$(ARCH) $(DIST) $(DIR) http://deb.debian.org/debian
 	(cd $(DIR); sudo tar cfz $(PWD)/$@ *)
 	sudo chown $(USER) $@
 	rm -rf $(DIR)
-- 
2.15.0.rc1


Reply to: