Re: git: 9dc70af83e59 - main - stand/uboot: reorg

From: Kyle Evans <kevans_at_freebsd.org>
Date: Mon, 07 Feb 2022 05:30:37 UTC
On Tue, Dec 14, 2021 at 10:15 PM Warner Losh <imp@freebsd.org> wrote:
>
> The branch main has been updated by imp:
>
> URL: https://cgit.FreeBSD.org/src/commit/?id=9dc70af83e5992e543542adbf5a6edeb38f187f6
>
> commit 9dc70af83e5992e543542adbf5a6edeb38f187f6
> Author:     Warner Losh <imp@FreeBSD.org>
> AuthorDate: 2021-12-15 04:09:53 +0000
> Commit:     Warner Losh <imp@FreeBSD.org>
> CommitDate: 2021-12-15 04:09:53 +0000
>
>     stand/uboot: reorg
>
>     Build uboot ubldr and friends like we build efi binaries
>     o move everything to be under stand/uboot
>     o md code goes in arch/$ARCH
>     o move everything over from the library
>       - Had to rename console.c, disk.c and module.c due to conflicts
>     o update version to 1.5 to reflect the new way of building
>
>     This results in a more consistent build system and should represent no
>     functional change, apart from powerpc version getting new help
>     file. Also, moved to exlcuding uboot on powerpc64le by using
>     BROKEN_OPTION instead of the incidental exclusion we had before due to
>     Makefile reorgs.
>
>     Sponsored by:           Netflix
>     Feedback by:            stevek, jrtc27
>     Differential Revision:  https://reviews.freebsd.org/D33362
> [...]
> --- a/stand/arm/uboot/Makefile
> +++ /dev/null
> @@ -1,68 +0,0 @@
> -# $FreeBSD$
> -
> -LOADER_UFS_SUPPORT?=   yes
> -LOADER_CD9660_SUPPORT?=        no
> -LOADER_MSDOS_SUPPORT?= no
> -LOADER_EXT2FS_SUPPORT?=        no
> -LOADER_NET_SUPPORT?=   yes
> -LOADER_NFS_SUPPORT?=   yes
> -LOADER_TFTP_SUPPORT?=  no
> -LOADER_GZIP_SUPPORT?=  no
> -LOADER_BZIP2_SUPPORT?= no
> -
> -.include <bsd.init.mk>
> -
> -FILES+=                ubldr ubldr.bin
> -

Hey Warner,

ubldr.bin used to be built/installed unconditionally above

> diff --git a/stand/uboot/Makefile b/stand/uboot/Makefile
> index fde6f9c4e16e..aed2121bd507 100644
> --- a/stand/uboot/Makefile
> +++ b/stand/uboot/Makefile
> @@ -1,9 +1,81 @@
>  # $FreeBSD$
>
> +LOADER_UFS_SUPPORT?=   yes
> +LOADER_CD9660_SUPPORT?=        no
> +LOADER_MSDOS_SUPPORT?= no
> +LOADER_EXT2FS_SUPPORT?=        no
> +LOADER_NET_SUPPORT?=   yes
> +LOADER_NFS_SUPPORT?=   yes
> +LOADER_TFTP_SUPPORT?=  no
> +LOADER_GZIP_SUPPORT?=  no
> +LOADER_BZIP2_SUPPORT?= no
> +LOADER_DISK_SUPPORT?=  yes
> +
>  .include <bsd.init.mk>
>
> -SUBDIR.yes=    lib
> +.include "${.CURDIR}/arch/${MACHINE_CPUARCH}/Makefile.inc"
> +
> +.if ${MK_PIE} == "yes"
> +FILES+=                ubldr ubldr.bin
> +OBJS+=  ${SRCS:N*.h:R:S/$/.o/g}
> +.else
> +PROG=          ubldr
> +.endif
> +
> [... ]

But now it's behind MK_PIE, which is disabled in numerous places
through stand/ as well as in defs.mk. This broke the armv7 snapshot
build, which is expecting a ubldr.bin it can pluck out.

I suspect the intention was to specifically avoid it in powerpc64, but
we'll need to re-work it a tad bit.

Thanks,

Kyle Evans