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?


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>

Reply via email to