On Thu, Oct 19, 2023 at 08:17:29PM +0200, Mark Kettenis wrote: > Back when I split up the port, Stuart suggested to see if some > simplification of the do-build rule would be possible. I think the > most sensible thing to do is to move this from Makefile.inc into the > per-directory Makefile. There is a tiny bit of duplication, but I > think the result is more manageable, especially if we add more per-SoC > directories. > > Since this doesn't change the output, no REVISION bump is needed is it? > > ok?
looks good ok jsg@ > > > Index: sysutils/u-boot/Makefile.inc > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/Makefile.inc,v > retrieving revision 1.8 > diff -u -p -r1.8 Makefile.inc > --- sysutils/u-boot/Makefile.inc 17 Oct 2023 19:36:22 -0000 1.8 > +++ sysutils/u-boot/Makefile.inc 19 Oct 2023 18:00:06 -0000 > @@ -57,82 +57,6 @@ FILES=\ > spl/sunxi-spl.bin \ > spl/u-boot-spl.bin > > -do-build: > -.for BOARD in ${BOARDS} > - cd ${WRKSRC} && \ > - mkdir -p build/${BOARD} && \ > - ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > - O="build/${BOARD}" \ > - -f ${MAKE_FILE} "${BOARD}"_defconfig > -.if "${BOARD:M*-rk3399*}" > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} BL31=${RK3399_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.elif "${BOARD:M*-rk3328}" > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} BL31=${RK3328_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.elif "${BOARD:M*-rk3566*}" > - cd ${WRKSRC}/build/${BOARD} && \ > - ../../scripts/config --set-val BAUDRATE 115200 > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} ROCKCHIP_TPL=${RK3566_TPL} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.elif "${BOARD:M*-rk3568*}" > - cd ${WRKSRC}/build/${BOARD} && \ > - ../../scripts/config --set-val BAUDRATE 115200 > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} ROCKCHIP_TPL=${RK3568_TPL} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.elif "${BOARD:M*sifive_*}" > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} OPENSBI=${FW_DYNAMIC} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.else > - cd ${WRKSRC} && \ > - ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > - O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.endif > -.if "${BOARD:M*-rk3288}" > - cd ${WRKSRC}/build/${BOARD} && \ > - tools/mkimage -n rk3288 -T rksd -d tpl/u-boot-tpl.bin \ > - idbloader.img && \ > - cat spl/u-boot-spl-dtb.bin >> idbloader.img > -.endif > -.endfor > -.for BOARD in ${SUNXI64} > -.if "${BOARD:M*_h64*}" > - cd ${WRKSRC} && \ > - mkdir -p build/${BOARD} && \ > - ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} "${BOARD}"_defconfig && \ > - ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.else > - cd ${WRKSRC} && \ > - mkdir -p build/${BOARD} && \ > - ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} "${BOARD}"_defconfig && \ > - ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > - ${MAKE_FLAGS} O="build/${BOARD}" \ > - -f ${MAKE_FILE} ${ALL_TARGET} > -.endif > - if [[ -f ${WRKSRC}/build/${BOARD}/spl/sunxi-spl.bin && \ > - -f ${WRKSRC}/build/${BOARD}/u-boot.itb ]]; then \ > - cd ${WRKSRC}/build/${BOARD} && \ > - cat spl/sunxi-spl.bin u-boot.itb > > u-boot-sunxi-with-spl.bin ; \ > - fi > -.endfor > - > do-install: > ${INSTALL_DATA_DIR} ${PREFIX}/share/u-boot > .for BOARD in ${BOARDS} ${SUNXI64} > Index: sysutils/u-boot/aarch64/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/aarch64/Makefile,v > retrieving revision 1.4 > diff -u -p -r1.4 Makefile > --- sysutils/u-boot/aarch64/Makefile 2 Sep 2023 14:33:03 -0000 1.4 > +++ sysutils/u-boot/aarch64/Makefile 19 Oct 2023 18:00:06 -0000 > @@ -46,4 +46,55 @@ SUNXI_H6_BL31= ${LOCALBASE}/share/arm-tr > > MODPY_ADJ_FILES= arch/arm/mach-rockchip/make_fit_atf.py > > +do-build: > +.for BOARD in ${BOARDS} > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig > +.if "${BOARD:M*-rk3399*}" > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} BL31=${RK3399_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.elif "${BOARD:M*-rk3328}" > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} BL31=${RK3328_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.else > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.endif > +.endfor > +.for BOARD in ${SUNXI64} > +.if "${BOARD:M*_h64*}" > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_H6_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.else > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig && \ > + ${SETENV} ${MAKE_ENV} BL31=${SUNXI_BL31} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.endif > + if [[ -f ${WRKSRC}/build/${BOARD}/spl/sunxi-spl.bin && \ > + -f ${WRKSRC}/build/${BOARD}/u-boot.itb ]]; then \ > + cd ${WRKSRC}/build/${BOARD} && \ > + cat spl/sunxi-spl.bin u-boot.itb > > u-boot-sunxi-with-spl.bin ; \ > + fi > +.endfor > + > .include <bsd.port.mk> > Index: sysutils/u-boot/arm/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/arm/Makefile,v > retrieving revision 1.4 > diff -u -p -r1.4 Makefile > --- sysutils/u-boot/arm/Makefile 26 Sep 2023 14:57:37 -0000 1.4 > +++ sysutils/u-boot/arm/Makefile 19 Oct 2023 18:00:06 -0000 > @@ -6,7 +6,6 @@ SOC= arm > OMAP=\ > omap4_panda \ > am335x_evm > -SUNXI64= > SUNXI=\ > A10-OLinuXino-Lime \ > A10s-OLinuXino-M \ > @@ -62,5 +61,24 @@ BOARDS=\ > > BUILD_DEPENDS+= devel/arm-none-eabi/gcc,arm > CROSS_COMPILE= arm-none-eabi- > + > +do-build: > +.for BOARD in ${BOARDS} > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.if "${BOARD:M*-rk3288}" > + cd ${WRKSRC}/build/${BOARD} && \ > + tools/mkimage -n rk3288 -T rksd -d tpl/u-boot-tpl.bin \ > + idbloader.img && \ > + cat spl/u-boot-spl-dtb.bin >> idbloader.img > +.endif > +.endfor > > .include <bsd.port.mk> > Index: sysutils/u-boot/riscv64/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/riscv64/Makefile,v > retrieving revision 1.3 > diff -u -p -r1.3 Makefile > --- sysutils/u-boot/riscv64/Makefile 2 Sep 2023 14:30:00 -0000 1.3 > +++ sysutils/u-boot/riscv64/Makefile 19 Oct 2023 18:00:06 -0000 > @@ -12,4 +12,17 @@ BUILD_DEPENDS+= devel/riscv-elf/gcc \ > CROSS_COMPILE= riscv64-unknown-elf- > FW_DYNAMIC= ${LOCALBASE}/share/opensbi/generic/fw_dynamic.bin > > +do-build: > +.for BOARD in ${BOARDS} > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} OPENSBI=${FW_DYNAMIC} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.endfor > + > .include <bsd.port.mk> > Index: sysutils/u-boot/rk356x/Makefile > =================================================================== > RCS file: /cvs/ports/sysutils/u-boot/rk356x/Makefile,v > retrieving revision 1.1 > diff -u -p -r1.1 Makefile > --- sysutils/u-boot/rk356x/Makefile 17 Oct 2023 19:36:22 -0000 1.1 > +++ sysutils/u-boot/rk356x/Makefile 19 Oct 2023 18:00:06 -0000 > @@ -40,4 +40,26 @@ pre-build: > cp ${FULLDISTDIR}/${RK3568_TPL} . && \ > ./rkbinpatch ${RK3568_TPL} > > +do-build: > +.for BOARD in ${BOARDS} > + cd ${WRKSRC} && \ > + mkdir -p build/${BOARD} && \ > + ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \ > + O="build/${BOARD}" \ > + -f ${MAKE_FILE} "${BOARD}"_defconfig > + cd ${WRKSRC}/build/${BOARD} && \ > + ../../scripts/config --set-val BAUDRATE 115200 > +.if "${BOARD:M*-rk3566*}" > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} ROCKCHIP_TPL=${RK3566_TPL} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.else > + cd ${WRKSRC} && \ > + ${SETENV} ${MAKE_ENV} ROCKCHIP_TPL=${RK3568_TPL} ${MAKE_PROGRAM} \ > + ${MAKE_FLAGS} O="build/${BOARD}" \ > + -f ${MAKE_FILE} ${ALL_TARGET} > +.endif > +.endfor > + > .include <bsd.port.mk> > >