Re: git: 83d0b8c089d8 - main - bsdinstall generate opt_osname.h in include
Date: Thu, 07 Dec 2023 03:32:10 UTC
Silly question: why not just add it to CFLAGS with -DOSNAME=\"${OSNAME}\"
rather than generating this file?
Warner
On Wed, Dec 6, 2023, 7:35 PM Simon J. Gerraty <sjg@freebsd.org> wrote:
> The branch main has been updated by sjg:
>
> URL:
> https://cgit.FreeBSD.org/src/commit/?id=83d0b8c089d807d6d4c50cba40ae2d0fedb3bf1b
>
> commit 83d0b8c089d807d6d4c50cba40ae2d0fedb3bf1b
> Author: Simon J. Gerraty <sjg@FreeBSD.org>
> AuthorDate: 2023-12-07 02:34:52 +0000
> Commit: Simon J. Gerraty <sjg@FreeBSD.org>
> CommitDate: 2023-12-07 02:34:52 +0000
>
> bsdinstall generate opt_osname.h in include
>
> This allows the subdirs that do more work to run in parallel
>
> Reviewed by: jrtc27
> Differential Revision: https://reviews.freebsd.org/D42947
> ---
> usr.sbin/bsdinstall/Makefile | 7 ++++---
> usr.sbin/bsdinstall/Makefile.depend | 12 +++++++-----
> usr.sbin/bsdinstall/Makefile.inc | 3 +++
> usr.sbin/bsdinstall/distextract/Makefile | 9 ---------
> usr.sbin/bsdinstall/distextract/Makefile.depend | 1 +
> usr.sbin/bsdinstall/distfetch/Makefile | 1 -
> usr.sbin/bsdinstall/distfetch/Makefile.depend | 2 +-
> usr.sbin/bsdinstall/include/Makefile | 13 +++++++++++++
> usr.sbin/bsdinstall/include/Makefile.depend | 10 ++++++++++
> usr.sbin/bsdinstall/partedit/Makefile | 1 -
> usr.sbin/bsdinstall/partedit/Makefile.depend | 2 +-
> 11 files changed, 40 insertions(+), 21 deletions(-)
>
> diff --git a/usr.sbin/bsdinstall/Makefile b/usr.sbin/bsdinstall/Makefile
> index bbf8071a91c3..422bdcaaa77a 100644
> --- a/usr.sbin/bsdinstall/Makefile
> +++ b/usr.sbin/bsdinstall/Makefile
> @@ -1,9 +1,9 @@
>
> -OSNAME?= FreeBSD
> SUBDIR= distextract distfetch partedit runconsoles scripts
> SUBDIR_PARALLEL=
> -SUBDIR_DEPEND_distfetch = distextract
> -SUBDIR_DEPEND_partedit = distextract
> +SUBDIR_DEPEND_distextract = include
> +SUBDIR_DEPEND_distfetch = include
> +SUBDIR_DEPEND_partedit = include
> SCRIPTS= bsdinstall
> MAN= bsdinstall.8
> PACKAGE= bsdinstall
> @@ -11,5 +11,6 @@ PACKAGE= bsdinstall
> SCRIPTS+= startbsdinstall
> SCRIPTSDIR_startbsdinstall= ${LIBEXECDIR}/bsdinstall
>
> +UPDATE_DEPENDFILE= no
>
> .include <bsd.prog.mk>
> diff --git a/usr.sbin/bsdinstall/Makefile.depend
> b/usr.sbin/bsdinstall/Makefile.depend
> index 11aba52f82cf..6ce3965b1642 100644
> --- a/usr.sbin/bsdinstall/Makefile.depend
> +++ b/usr.sbin/bsdinstall/Makefile.depend
> @@ -1,10 +1,12 @@
> -# Autogenerated - do NOT edit!
> +# Not autogenerated - take care
>
> DIRDEPS = \
> + usr.sbin/bsdinstall/distextract \
> + usr.sbin/bsdinstall/distfetch \
> + usr.sbin/bsdinstall/include \
> + usr.sbin/bsdinstall/partedit \
> + usr.sbin/bsdinstall/runconsoles \
> + usr.sbin/bsdinstall/scripts \
>
>
> .include <dirdeps.mk>
> -
> -.if ${DEP_RELDIR} == ${_DEP_RELDIR}
> -# local dependencies - needed for -jN in clean tree
> -.endif
> diff --git a/usr.sbin/bsdinstall/Makefile.inc
> b/usr.sbin/bsdinstall/Makefile.inc
> index dc4e35b73799..c0907ffac469 100644
> --- a/usr.sbin/bsdinstall/Makefile.inc
> +++ b/usr.sbin/bsdinstall/Makefile.inc
> @@ -1 +1,4 @@
> PACKAGE=bsdinstall
> +
> +CFLAGS+= -I${SRCTOP}/contrib/bsddialog/lib -I${.OBJDIR}/../include
> +
> diff --git a/usr.sbin/bsdinstall/distextract/Makefile
> b/usr.sbin/bsdinstall/distextract/Makefile
> index 368e1b1378ab..6813c9a79391 100644
> --- a/usr.sbin/bsdinstall/distextract/Makefile
> +++ b/usr.sbin/bsdinstall/distextract/Makefile
> @@ -1,18 +1,9 @@
>
> BINDIR= ${LIBEXECDIR}/bsdinstall
> PROG= distextract
> -CFLAGS+= -I${SRCTOP}/contrib/bsddialog/lib -I.
> LIBADD= archive bsddialog m
> SRCS= distextract.c
>
> MAN=
> -GENHDRS= opt_osname.h
> -SRCS+= ${GENHDRS}
> -CLEANFILES+= ${GENHDRS}
> -
> -opt_osname.h: .PHONY
> - if ! grep -q "^#define OSNAME \"${OSNAME}\"$"" ${.TARGET}; then \
> - echo "#define OSNAME \"${OSNAME}\"" > ${.TARGET}; \
> - fi
>
> .include <bsd.prog.mk>
> diff --git a/usr.sbin/bsdinstall/distextract/Makefile.depend
> b/usr.sbin/bsdinstall/distextract/Makefile.depend
> index 10731d6ccb01..dd87c979eb80 100644
> --- a/usr.sbin/bsdinstall/distextract/Makefile.depend
> +++ b/usr.sbin/bsdinstall/distextract/Makefile.depend
> @@ -9,6 +9,7 @@ DIRDEPS = \
> lib/libc \
> lib/libcompiler_rt \
> lib/msun \
> + usr.sbin/bsdinstall/include \
>
>
> .include <dirdeps.mk>
> diff --git a/usr.sbin/bsdinstall/distfetch/Makefile
> b/usr.sbin/bsdinstall/distfetch/Makefile
> index 325f5c55cfd5..8a9011734592 100644
> --- a/usr.sbin/bsdinstall/distfetch/Makefile
> +++ b/usr.sbin/bsdinstall/distfetch/Makefile
> @@ -1,7 +1,6 @@
>
> BINDIR= ${LIBEXECDIR}/bsdinstall
> PROG= distfetch
> -CFLAGS+= -I${SRCTOP}/contrib/bsddialog/lib
> -I${.OBJDIR}/../distextract
> LIBADD= fetch bsddialog
>
> MAN=
> diff --git a/usr.sbin/bsdinstall/distfetch/Makefile.depend
> b/usr.sbin/bsdinstall/distfetch/Makefile.depend
> index 16e54d9b2a6e..9e9ac6d1bae8 100644
> --- a/usr.sbin/bsdinstall/distfetch/Makefile.depend
> +++ b/usr.sbin/bsdinstall/distfetch/Makefile.depend
> @@ -8,7 +8,7 @@ DIRDEPS = \
> lib/libc \
> lib/libcompiler_rt \
> lib/libfetch \
> - usr.sbin/bsdinstall/distextract \
> + usr.sbin/bsdinstall/include \
>
>
> .include <dirdeps.mk>
> diff --git a/usr.sbin/bsdinstall/include/Makefile
> b/usr.sbin/bsdinstall/include/Makefile
> new file mode 100644
> index 000000000000..15f947defa9b
> --- /dev/null
> +++ b/usr.sbin/bsdinstall/include/Makefile
> @@ -0,0 +1,13 @@
> +OSNAME?= FreeBSD
> +GENHDRS= opt_osname.h
> +SRCS+= ${GENHDRS}
> +CLEANFILES+= ${GENHDRS}
> +
> +opt_osname.h: ${META_NOPHONY}
> + @if ! grep -q "^#define OSNAME \"${OSNAME}\"$"" ${.TARGET} 2>
> /dev/null; then \
> + echo "#define OSNAME \"${OSNAME}\"" > ${.TARGET}; \
> + fi
> +
> +MK_STAGING= no
> +
> +.include <bsd.prog.mk>
> diff --git a/usr.sbin/bsdinstall/include/Makefile.depend
> b/usr.sbin/bsdinstall/include/Makefile.depend
> new file mode 100644
> index 000000000000..11aba52f82cf
> --- /dev/null
> +++ b/usr.sbin/bsdinstall/include/Makefile.depend
> @@ -0,0 +1,10 @@
> +# Autogenerated - do NOT edit!
> +
> +DIRDEPS = \
> +
> +
> +.include <dirdeps.mk>
> +
> +.if ${DEP_RELDIR} == ${_DEP_RELDIR}
> +# local dependencies - needed for -jN in clean tree
> +.endif
> diff --git a/usr.sbin/bsdinstall/partedit/Makefile
> b/usr.sbin/bsdinstall/partedit/Makefile
> index 8d7156fd16d2..397e404a126f 100644
> --- a/usr.sbin/bsdinstall/partedit/Makefile
> +++ b/usr.sbin/bsdinstall/partedit/Makefile
> @@ -4,7 +4,6 @@ PROG= partedit
> LINKS= ${BINDIR}/partedit ${BINDIR}/autopart \
> ${BINDIR}/partedit ${BINDIR}/scriptedpart
> SYMLINKS= ../libexec/bsdinstall/partedit /usr/sbin/sade
> -CFLAGS+= -I${SRCTOP}/contrib/bsddialog/lib
> -I${.OBJDIR}/../distextract
> LIBADD+= geom util bsddialog
>
> PARTEDIT_ARCH= ${MACHINE}
> diff --git a/usr.sbin/bsdinstall/partedit/Makefile.depend
> b/usr.sbin/bsdinstall/partedit/Makefile.depend
> index 4d5ca3e13299..68a44a4d87a7 100644
> --- a/usr.sbin/bsdinstall/partedit/Makefile.depend
> +++ b/usr.sbin/bsdinstall/partedit/Makefile.depend
> @@ -9,7 +9,7 @@ DIRDEPS = \
> lib/libcompiler_rt \
> lib/libgeom \
> lib/libutil \
> - usr.sbin/bsdinstall/distextract \
> + usr.sbin/bsdinstall/include \
>
>
> .include <dirdeps.mk>
>