I suggest doing this as a separate port.

On 2022/03/01 14:43, adr wrote:
> Hi,
> this patch adds a flavor to sysutils/u-boot so tools like mkimage
> can be installed in openbsd.
> 
> https://u-boot.readthedocs.io/en/latest/build/tools.html
> 
> Regards,
> adr.
> 
> ==========================================
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/sysutils/u-boot/Makefile,v
> retrieving revision 1.90
> diff -u -p -u -r1.90 Makefile
> --- Makefile  15 Jan 2022 11:56:50 -0000      1.90
> +++ Makefile  1 Mar 2022 14:30:07 -0000
> @@ -3,7 +3,7 @@
>  BROKEN-sparc64=      Error: the specified option is not accepted in ISB at 
> operand 1 -- isb sy
>  BROKEN-arm=  lib/time.c:187:1: internal compiler error: Bus error
> 
> -FLAVORS=     aarch64 arm riscv64
> +FLAVORS=     aarch64 arm riscv64 tools
>  FLAVOR?=     arm
> 
>  COMMENT=     U-Boot firmware
> @@ -150,6 +150,11 @@ BOARDS=\
>  BOARDS=\
>       qemu-riscv64_smode \
>       sifive_unmatched
> +.elif "${FLAVOR}" == "tools"
> +WANTLIB += c crypto ssl
> +MAKE_FLAGS+= KBUILD_CFLAGS+="-I/usr/include"
> +MAKE_FLAGS+= CC="${CC}"
> +BOARDS= tools-only
>  .endif
> 
>  FILES=\
> @@ -169,6 +174,16 @@ FILES=\
>       spl/sunxi-spl.bin \
>       spl/u-boot-spl.bin
> 
> +TOOLS=\
> +     dumpimage \
> +     fdtgrep \
> +     fit_check_sign \
> +     gen_eth_addr \
> +     gen_ethaddr_crc \
> +     img2srec \
> +     mkenvimage \
> +     mkimage
> +
>  do-build:
>  .for BOARD in ${BOARDS}
>       cd ${WRKSRC} && \
> @@ -176,8 +191,11 @@ do-build:
>           ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \
>               O="build/${BOARD}" \
>               -f ${MAKE_FILE} "${BOARD}"_defconfig
> -.if "${BOARD:M*-rk3399*}"
> +.if "${BOARD}" == "tools-only"
>       cd ${WRKSRC} && \
> +         ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \
> +             O="build/${BOARD}" -f ${MAKE_FILE} ${BOARD}
> +.elif "${BOARD:M*-rk3399*}"
>           ${SETENV} ${MAKE_ENV} BL31=${RK3399_BL31} ${MAKE_PROGRAM} \
>               ${MAKE_FLAGS} O="build/${BOARD}" \
>               -f ${MAKE_FILE} ${ALL_TARGET}
> @@ -232,11 +250,17 @@ do-build:
>  .endfor
> 
>  do-install:
> +.if "${FLAVOR}" == "tools"
> +.for f in ${TOOLS}
> +     ${INSTALL_PROGRAM} ${WRKSRC}/build/tools-only/tools/${f} ${PREFIX}/bin/
> +.endfor
> +.else
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/u-boot
>  .for BOARD in ${BOARDS} ${SUNXI64}
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/u-boot/${BOARD}
>       -cd ${WRKSRC}/build/${BOARD} && \
>           cp ${FILES} ${PREFIX}/share/u-boot/${BOARD}/
>  .endfor
> +.endif
> 
>  .include <bsd.port.mk>
> Index: pkg/PFRAG.tools
> ===================================================================
> RCS file: pkg/PFRAG.tools
> diff -N pkg/PFRAG.tools
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ pkg/PFRAG.tools   1 Mar 2022 14:30:08 -0000
> @@ -0,0 +1,9 @@
> +@comment $OpenBSD: PLIST,v 1.6 2021/04/28 04:03:28 jsg Exp $
> +@bin bin/dumpimage
> +@bin bin/fdtgrep
> +@bin bin/fit_check_sign
> +@bin bin/gen_eth_addr
> +@bin bin/gen_ethaddr_crc
> +@bin bin/img2srec
> +@bin bin/mkenvimage
> +@bin bin/mkimage
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/sysutils/u-boot/pkg/PLIST,v
> retrieving revision 1.6
> diff -u -p -u -r1.6 PLIST
> --- pkg/PLIST 28 Apr 2021 04:03:28 -0000      1.6
> +++ pkg/PLIST 1 Mar 2022 14:30:08 -0000
> @@ -2,3 +2,4 @@
>  %%aarch64%%
>  %%arm%%
>  %%riscv64%%
> +%%tools%%

> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/sysutils/u-boot/Makefile,v
> retrieving revision 1.90
> diff -u -p -u -r1.90 Makefile
> --- Makefile  15 Jan 2022 11:56:50 -0000      1.90
> +++ Makefile  1 Mar 2022 14:30:07 -0000
> @@ -3,7 +3,7 @@
>  BROKEN-sparc64=      Error: the specified option is not accepted in ISB at 
> operand 1 -- isb sy
>  BROKEN-arm=  lib/time.c:187:1: internal compiler error: Bus error
>  
> -FLAVORS=     aarch64 arm riscv64
> +FLAVORS=     aarch64 arm riscv64 tools
>  FLAVOR?=     arm
>  
>  COMMENT=     U-Boot firmware
> @@ -150,6 +150,11 @@ BOARDS=\
>  BOARDS=\
>       qemu-riscv64_smode \
>       sifive_unmatched
> +.elif "${FLAVOR}" == "tools"
> +WANTLIB += c crypto ssl
> +MAKE_FLAGS+= KBUILD_CFLAGS+="-I/usr/include"
> +MAKE_FLAGS+= CC="${CC}"
> +BOARDS= tools-only
>  .endif
>  
>  FILES=\
> @@ -169,6 +174,16 @@ FILES=\
>       spl/sunxi-spl.bin \
>       spl/u-boot-spl.bin
>  
> +TOOLS=\
> +     dumpimage \
> +     fdtgrep \
> +     fit_check_sign \
> +     gen_eth_addr \
> +     gen_ethaddr_crc \
> +     img2srec \
> +     mkenvimage \
> +     mkimage
> +
>  do-build:
>  .for BOARD in ${BOARDS}
>       cd ${WRKSRC} && \
> @@ -176,8 +191,11 @@ do-build:
>           ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \
>               O="build/${BOARD}" \
>               -f ${MAKE_FILE} "${BOARD}"_defconfig
> -.if "${BOARD:M*-rk3399*}"
> +.if "${BOARD}" == "tools-only"
>       cd ${WRKSRC} && \
> +         ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \
> +             O="build/${BOARD}" -f ${MAKE_FILE} ${BOARD}
> +.elif "${BOARD:M*-rk3399*}"
>           ${SETENV} ${MAKE_ENV} BL31=${RK3399_BL31} ${MAKE_PROGRAM} \
>               ${MAKE_FLAGS} O="build/${BOARD}" \
>               -f ${MAKE_FILE} ${ALL_TARGET}
> @@ -232,11 +250,17 @@ do-build:
>  .endfor
>  
>  do-install:
> +.if "${FLAVOR}" == "tools"
> +.for f in ${TOOLS}
> +     ${INSTALL_PROGRAM} ${WRKSRC}/build/tools-only/tools/${f} ${PREFIX}/bin/
> +.endfor
> +.else
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/u-boot
>  .for BOARD in ${BOARDS} ${SUNXI64}
>       ${INSTALL_DATA_DIR} ${PREFIX}/share/u-boot/${BOARD}
>       -cd ${WRKSRC}/build/${BOARD} && \
>           cp ${FILES} ${PREFIX}/share/u-boot/${BOARD}/
>  .endfor
> +.endif
>  
>  .include <bsd.port.mk>
> Index: pkg/PFRAG.tools
> ===================================================================
> RCS file: pkg/PFRAG.tools
> diff -N pkg/PFRAG.tools
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ pkg/PFRAG.tools   1 Mar 2022 14:30:08 -0000
> @@ -0,0 +1,9 @@
> +@comment $OpenBSD: PLIST,v 1.6 2021/04/28 04:03:28 jsg Exp $
> +@bin bin/dumpimage
> +@bin bin/fdtgrep
> +@bin bin/fit_check_sign
> +@bin bin/gen_eth_addr
> +@bin bin/gen_ethaddr_crc
> +@bin bin/img2srec
> +@bin bin/mkenvimage
> +@bin bin/mkimage
> Index: pkg/PLIST
> ===================================================================
> RCS file: /cvs/ports/sysutils/u-boot/pkg/PLIST,v
> retrieving revision 1.6
> diff -u -p -u -r1.6 PLIST
> --- pkg/PLIST 28 Apr 2021 04:03:28 -0000      1.6
> +++ pkg/PLIST 1 Mar 2022 14:30:08 -0000
> @@ -2,3 +2,4 @@
>  %%aarch64%%
>  %%arm%%
>  %%riscv64%%
> +%%tools%%

Reply via email to