git: c70dd03a7ff6 - main - Make sure MACHINE(_ARCH) are exported for depend-cleanup.sh

From: Jessica Clarke <jrtc27_at_FreeBSD.org>
Date: Tue, 11 Jul 2023 00:53:10 UTC
The branch main has been updated by jrtc27:

URL: https://cgit.FreeBSD.org/src/commit/?id=c70dd03a7ff649f832f1d29179b9094720392bce

commit c70dd03a7ff649f832f1d29179b9094720392bce
Author:     Jessica Clarke <jrtc27@FreeBSD.org>
AuthorDate: 2023-07-11 00:53:04 +0000
Commit:     Jessica Clarke <jrtc27@FreeBSD.org>
CommitDate: 2023-07-11 00:53:04 +0000

    Make sure MACHINE(_ARCH) are exported for depend-cleanup.sh
    
    We run depend-cleanup.sh twice during the build. The second time is the
    normal run, where we run it under WMAKEENV and thus have CROSSENV's
    MACHINE(_ARCH)=${TARGET(_ARCH)} in the environment. However, the first
    time is for bootstrap-tools, where it's run under BMAKEENV and we don't
    have any assignments to MACHINE(_ARCH) in the environment, meaning the
    script sees them as unset. In practice this doesn't matter since the
    only use doesn't apply to bootstrap-tools, but it could be a future
    issue. Thus, explicitly export them for depend-cleanup.sh and have the
    script verify they're set.
    
    Reviewed by:    imp
    Differential Revision:  https://reviews.freebsd.org/D40968
---
 Makefile.inc1                 |  3 ++-
 tools/build/depend-cleanup.sh | 10 ++++++++++
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/Makefile.inc1 b/Makefile.inc1
index 6db68b627d96..1e992b05c859 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -1016,7 +1016,8 @@ _sanity_check: .PHONY .MAKE
 # replacing generated files.  Handle these cases here in an ad-hoc fashion.
 _cleanobj_fast_depend_hack: .PHONY
 	@echo ">>> Deleting stale dependencies...";
-	sh ${.CURDIR}/tools/build/depend-cleanup.sh ${OBJTOP}
+	MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE_ARCH} \
+	    sh ${.CURDIR}/tools/build/depend-cleanup.sh ${OBJTOP}
 
 _worldtmp: .PHONY
 	@echo
diff --git a/tools/build/depend-cleanup.sh b/tools/build/depend-cleanup.sh
index 743da3361cf5..ce962cc1eb86 100755
--- a/tools/build/depend-cleanup.sh
+++ b/tools/build/depend-cleanup.sh
@@ -23,6 +23,16 @@ if [ ! -d "$OBJTOP" ]; then
 	exit 1
 fi
 
+if [ -z "${MACHINE+set}" ]; then
+	echo "$(basename "$0"): MACHINE not set" >&2
+	exit 1
+fi
+
+if [ -z "${MACHINE_ARCH+set}" ]; then
+	echo "$(basename "$0"): MACHINE_ARCH not set" >&2
+	exit 1
+fi
+
 # $1 directory
 # $2 source filename w/o extension
 # $3 source extension