2019-12-17 20:41:16 +00:00
yaml : raspi_ 0w .yaml raspi_ 2.yaml raspi_ 3.yaml
images : raspi_ 0w .img raspi_ 2.img raspi_ 3.img
raspi_0w.yaml : raspi_master .yaml
cat raspi_master.yaml | sed "s/__ARCH__/armel/" | \
sed "s/__LINUX_IMAGE__/linux-image-rpi/" | \
sed "s/__EXTRA_PKGS__/- firmware-brcm80211/" | \
sed "s/__DTB__/\\/usr\\/lib\\/linux-image-*-rpi\\/bcm*rpi-*.dtb/" | \
2020-04-10 06:45:32 +01:00
sed "s/__SPU_ENABLE__/deb http:\/\/deb.debian.org\/debian\/ stable-proposed-updates main # Raspberries 0\/1 need raspi3-firmware >= 1.20190215-1+deb10u3/" | \
2019-12-17 20:41:16 +00:00
sed "s/__HOST__/rpi0/" > $@
raspi_2.yaml : raspi_master .yaml
cat raspi_master.yaml | sed "s/__ARCH__/armhf/" | \
sed "s/__LINUX_IMAGE__/linux-image-armmp/" | \
grep -v "__EXTRA_PKGS__" | \
sed "s/__DTB__/\\/usr\\/lib\\/linux-image-*-armmp\\/bcm*rpi*.dtb/" | \
2020-04-10 06:22:30 +01:00
sed "s/__SPU_ENABLE__//" | \
2019-12-17 20:41:16 +00:00
sed "s/__HOST__/rpi2/" > $@
raspi_3.yaml : raspi_master .yaml
cat raspi_master.yaml | sed "s/__ARCH__/arm64/" | \
sed "s/__LINUX_IMAGE__/linux-image-arm64/" | \
sed "s/__EXTRA_PKGS__/- firmware-brcm80211/" | \
sed "s/__DTB__/\\/usr\\/lib\\/linux-image-*-arm64\\/broadcom\\/bcm*rpi*.dtb/" | \
2020-04-10 06:22:30 +01:00
sed "s/__SPU_ENABLE__//" | \
2019-12-17 20:41:16 +00:00
sed "s/__HOST__/rpi3/" > $@
raspi_0w.img : IMAGE =raspi_ 0w
raspi_0w.img : raspi_ 0w .yaml _ck_root _build_img
raspi_2.img : IMAGE =raspi_ 2
raspi_2.img : raspi_ 2.yaml _ck_root _build_img
raspi_3.img : IMAGE =raspi_ 3
raspi_3.img : raspi_ 3.yaml _ck_root _build_img
_build_img :
[ ! -z " $( IMAGE) " ] # This target is not to be called directly
touch $( IMAGE) .log
chmod 0644 $( IMAGE) .log # Allow for non-root users to follow the build log
time nice vmdb2 --verbose --rootfs-tarball= $( IMAGE) .tar.gz --output= $( IMAGE) .img $( IMAGE) .yaml --log $( IMAGE) .log
_ck_root :
[ ` whoami` = 'root' ] # Only root can summon vmdb2 ☹
_clean_yaml :
rm -f raspi_0w.yaml raspi_2.yaml raspi_3.yaml
_clean_images :
rm -f raspi_0w.img raspi_2.img raspi_3.img
_clean_logs :
rm -f raspi_0w.log raspi_2.log raspi_3.log
_clean_tarballs :
rm -f raspi_0w.tar.gz raspi_2.tar.gz raspi_3.tar.gz
clean : _clean_images _clean_yaml _clean_tarballs _clean_logs
.PHONY : _ck_root _build_img clean _clean_images _clean_yaml _clean_tarballs _clean_logs