git: bda5d2a45c8d - main - installworld: improve portability of ldd use

From: Brooks Davis <brooks_at_FreeBSD.org>
Date: Fri, 01 Jul 2022 07:33:24 UTC
The branch main has been updated by brooks:

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

commit bda5d2a45c8dcc9bbeb71cddeef930ffa6a47f23
Author:     Brooks Davis <brooks@FreeBSD.org>
AuthorDate: 2022-07-01 07:33:16 +0000
Commit:     Brooks Davis <brooks@FreeBSD.org>
CommitDate: 2022-07-01 07:33:16 +0000

    installworld: improve portability of ldd use
    
    b3b462229f97 added a case statement to ignore lines containing strings
    in square brackets such as "[vdso]" and "[preloaded]". On MacOS
    Monterey where /bin/sh may be zsh, this fails with:
    
    /bin/sh: -c: line 0: syntax error near unexpected token `;;'
    
    Invoke grep in the pipeline to remove such lines instead.
    
    Reviewed by:    emaste
    Sponsored by:   DARPA, AFRL
    Differential Revision:  https://reviews.freebsd.org/D35618
---
 Makefile.inc1 | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/Makefile.inc1 b/Makefile.inc1
index 20c537512273..12bb892dfd58 100644
--- a/Makefile.inc1
+++ b/Makefile.inc1
@@ -1368,12 +1368,8 @@ distributeworld installworld stageworld: _installcheck_world .PHONY
 		fi; \
 	    done); \
 	if [ -z "${CROSSBUILD_HOST}" ] ; then \
-		libs=$$(ldd -f "%o %p\n" -f "%o %p\n" $$progs 2>/dev/null | sort -u | \
+		libs=$$(ldd -f "%o %p\n" -f "%o %p\n" $$progs 2>/dev/null | sort -u | grep -Ev '\[.*]' | \
 		    while read line; do \
-			case $$line in \
-			"["*"]") \
-				continue;; \
-			esac; \
 			set -- $$line; \
 			if [ "$$2 $$3" != "not found" ]; then \
 				echo $$2; \