I built arm64 media on a new machine and forgot to install firmware
from packages.

It took me some digging to find out which packages these were, plus it
failed in the middle of the build rather than up-front.

While here, I noticed that arm64 does not use the "dtb" package like
armv7 does, but it still defines an unused variable.

This makes `make obj' run and not warn but `make' in e.g. the ramdisk
directory will immediately warn and not build anything.

        $ cd /usr/src/distrib
        $ make obj ; echo $?
        ...
        0
        $ cd arm64/ramdisk
        $ doas make
        Run "pkg_add u-boot-aarch64 raspberrypi-firmware"
        *** Error 1 in /usr/src/distrib/arm64/ramdisk (Makefile:46 'all': 
@false)
        $ doas pkg_add  u-boot-aarch64 raspberrypi-firmware
        u-boot-aarch64-2021.10p1: ok
        raspberrypi-firmware-1.20210527: ok
        $ doas make ; echo $?
        ...
        0


Feedback? Objections? OK?


diff 08275eee86493afb82b5297b2f958fa9eeaedf41 /usr/src
blob - 68c30398cea3fff2184278e14d0c9fbea2154938
file + distrib/arm64/iso/Makefile
--- distrib/arm64/iso/Makefile
+++ distrib/arm64/iso/Makefile
@@ -24,7 +24,6 @@ FFSSTART!=    expr ${MSDOSSTART} + ${MSDOSSIZE}
 NEWFS_ARGS_msdos=-L boot -c1 -F16
 MOUNT_ARGS_msdos=-o-l
 
-PDTB=          /usr/local/share/dtb/arm64
 PUBOOT=                /usr/local/share/u-boot
 PRPI=          /usr/local/share/raspberrypi-firmware/boot
 
@@ -45,6 +44,12 @@ PIFILES=\
 PIDTBO=\
        disable-bt.dtbo
 
+.if !exists(${PUBOOT}/rpi_arm64) || !exists(${PRPI})
+all:
+       @echo 'Run "pkg_add u-boot-aarch64 raspberrypi-firmware"'
+       @false
+.endif
+
 all: ${FS}
 
 ${FS}: ${BASE} ${XBASE}
blob - 5dda462c0f42314e7bb21d264e814903440baa02
file + distrib/arm64/ramdisk/Makefile
--- distrib/arm64/ramdisk/Makefile
+++ distrib/arm64/ramdisk/Makefile
@@ -14,7 +14,6 @@ FFSSTART!=    expr ${MSDOSSTART} + ${MSDOSSIZE}
 NEWFS_ARGS_msdos=-L boot -c1 -F16
 MOUNT_ARGS_msdos=-o-l
 
-PDTB=          /usr/local/share/dtb/arm64
 PUBOOT=                /usr/local/share/u-boot
 PRPI=          /usr/local/share/raspberrypi-firmware/boot
 
@@ -41,6 +40,12 @@ PIFILES=\
 PIDTBO=\
        disable-bt.dtbo
 
+.if !exists(${PUBOOT}/rpi_arm64) || !exists(${PRPI})
+all:
+       @echo 'Run "pkg_add u-boot-aarch64 raspberrypi-firmware"'
+       @false
+.endif
+
 all: ${FS}
 
 ${FS}: bsd.rd
blob - bb00f4360a80fa3e93e426e67eaa635a958d0168
file + distrib/armv7/miniroot/Makefile.inc
--- distrib/armv7/miniroot/Makefile.inc
+++ distrib/armv7/miniroot/Makefile.inc
@@ -14,6 +14,12 @@ FFSSTART!=   expr ${MSDOSSTART} + ${MSDOSSIZE}
 PDTB=          /usr/local/share/dtb/arm
 PUBOOT=                /usr/local/share/u-boot
 
+.if !exists(${PDTB}) || !exists(${PUBOOT}/wandboard)
+all:
+       @echo 'Run "pkg_add dtb u-boot-arm"'
+       @false
+.endif
+
 all: ${FS}
 
 ${FS}: bsd.rd

Reply via email to