Older u-boot versions hardcode the use of a host gcc compiler, and gcc relies on having gperf available so we must build and install it first.
I've tried this exact change, which sadly does not work.
Discussed in IRC with imp@, building gcc(1) should not be necessary with the sysutils/u-boot-* ports.
I've applied this change to the set of builds that are in-flight now, though I'd still prefer using the ports ian@ worked on, and avoid building gcc(1) within the build chroot entirely.
I agree moving to the ports is the right path forward, but hopefully this will get things moving again until that switchover.
while this will work, you should transition over to using the u-boot ports for the supported boards, which pulls in the right u-boot and cross compiler...
Without splitting obj out I get "Warning: Object directory not changed from original /usr/src/gnu/usr.bin/gperf" - i.e., gperf ended up built in the src tree instead of under /usr/obj.
I don't expect this to make a difference, to be honest.
When originally trying to build gperf(1) standalone, I did 'make -C /usr/src/gnu/usr.bin/gperf obj depend all install', which resulted in the same failures I've been seeing, which means something is fundamentally broken here.
Splitting up the make(1) targets should not be a fix.