Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 9 Jul 2022 14:52:36 GMT
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org
Subject:   git: 6af95e9e48b0 - main - Mk/Scripts/qa.sh: Bogus 'xx doesn't have a SONAME' messages are printed by stage-qa for some shared libraries
Message-ID:  <202207091452.269EqamA095977@gitrepo.freebsd.org>

next in thread | raw e-mail | index | archive | help
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6af95e9e48b065580cbac3f329e73c2b83e7f02d

commit 6af95e9e48b065580cbac3f329e73c2b83e7f02d
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-07-09 14:50:47 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-07-09 14:52:33 +0000

    Mk/Scripts/qa.sh: Bogus 'xx doesn't have a SONAME' messages are printed by stage-qa for some shared libraries
    
    Reason: 'grep -q SONAME' ends before it drains the pipe, pipe fails
    when the remaining output is too long, and 'set -o pipefail'
    causes the whole command to fail when it is supposed to succeed.
    
    Remedy: Please apply the attached patch fix-SONAME.patch, or
    alternatively remove 'set -o pipefail' from qa.sh
    
    PR:             259992
    Approved by:    tcberner@ (as portmgr)
---
 Mk/Scripts/qa.sh | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/Mk/Scripts/qa.sh b/Mk/Scripts/qa.sh
index 20d1e296dd5c..dd0f3440c299 100644
--- a/Mk/Scripts/qa.sh
+++ b/Mk/Scripts/qa.sh
@@ -673,7 +673,7 @@ proxydeps() {
 					# When grep -q finds a match it will close the pipe immediately.
 					# This may cause the test to fail when pipefail is turned on.
 					set +o pipefail
-					if ! readelf -d "${dep_file}" | grep -q SONAME; then
+					if ! readelf -d "${dep_file}" | grep SONAME > /dev/null; then
 						err "${file} is linked to ${dep_file} which does not have a SONAME.  ${dep_file_pkg} needs to be fixed."
 					fi
 					set -o pipefail
@@ -724,7 +724,7 @@ sonames() {
 		[ -z "${f}" ] && continue
 		# Ignore symlinks
 		[ -f "${f}" -a ! -L "${f}" ] || continue
-		if ! readelf -d ${f} | grep -q SONAME; then
+		if ! readelf -d ${f} | grep SONAME > /dev/null; then
 			warn "${f} doesn't have a SONAME."
 			warn "pkg(8) will not register it as being provided by the port."
 			warn "If another port depend on it, pkg will not be able to know where it comes from."



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202207091452.269EqamA095977>