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>