tech-toolchain archive

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

Parallel make issue with RPI images



Hey folks,

we have a problem with src/distrib/evbarm/instkernel/instkernel/Makefile:

it creates images bootable on RPI by transforming a kernel to a .bin (step 1)
and then the .bin to a .img (step 2).

MDSETTARGETS=
.for i in ${BUILD_KERNELS:M*_INSTALL}
.if ${i} == "RPI_INSTALL"
MDSETTARGETS+=          ${i}    ${SSHRAMDISK}   netbsd-${i}
MDSET_SUFFIXES.netbsd-${i}=     bin create-bin  img create-img
.else
MDSETTARGETS+=          ${i}    ${RAMDISK}      -
.endif
.endfor


Now step 1 and step 2 can not run in parallel. I tried to enforce that with
src/distrib/common/Makefile.mdset r1.44, by adding a .WAIT, but that
leads to build fallout (as seen e.g. in the latest dreamcast build failure).

How should we fix this properly?

You can reproduce it easily by goig to src/distrib/evbarm/instkernel/instkernel
after building a evbarm-earmv6hf release and doing something like:

	make cleandir
	make -j 16

and then check the size of the images. In the failure case the netbsd-RPI.img.gz
will be a few bytes (just the compressed header), in the working case (e.g.
when building without -j) the file will be 15 MB.

Thanks!

Martin


Home | Main Index | Thread Index | Old Index