From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id C641E158094 for ; Tue, 23 Aug 2022 00:33:28 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B8A8AE095A; Tue, 23 Aug 2022 00:33:27 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 0BCE7E095A for ; Tue, 23 Aug 2022 00:33:27 +0000 (UTC) Received: from oystercatcher.gentoo.org (unknown [IPv6:2a01:4f8:202:4333:225:90ff:fed9:fc84]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 02FF5340DE8 for ; Tue, 23 Aug 2022 00:33:26 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 9166D588 for ; Tue, 23 Aug 2022 00:33:24 +0000 (UTC) From: "Sam James" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Sam James" Message-ID: <1661214799.772fdceea5f148d9bb5fd6c87ffd48f87ca93bab.sam@gentoo> Subject: [gentoo-commits] proj/portage:master commit in: /, bin/install-qa-check.d/ X-VCS-Repository: proj/portage X-VCS-Files: NEWS bin/install-qa-check.d/60pkgconfig X-VCS-Directories: bin/install-qa-check.d/ / X-VCS-Committer: sam X-VCS-Committer-Name: Sam James X-VCS-Revision: 772fdceea5f148d9bb5fd6c87ffd48f87ca93bab X-VCS-Branch: master Date: Tue, 23 Aug 2022 00:33:24 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: cc94c0cb-4f4a-47b7-8f3e-5174550afd7b X-Archives-Hash: 238124a93a3be62fa72c92bad2fc5558 commit: 772fdceea5f148d9bb5fd6c87ffd48f87ca93bab Author: Sam James gentoo org> AuthorDate: Tue Aug 23 00:27:52 2022 +0000 Commit: Sam James gentoo org> CommitDate: Tue Aug 23 00:33:19 2022 +0000 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=772fdcee bin/install-qa-check.d: drop QA_PKGCONFIG_VERSION checks from 60pkgconfig They've been too noisy. We can consider restoring this with an opt-in check (perhaps by setting QA_PKGCONFIG_VERSION) in future. Bug: https://bugs.gentoo.org/857654 Signed-off-by: Sam James gentoo.org> NEWS | 3 ++ bin/install-qa-check.d/60pkgconfig | 60 -------------------------------------- 2 files changed, 3 insertions(+), 60 deletions(-) diff --git a/NEWS b/NEWS index 87799bc4f..9cf67107a 100644 --- a/NEWS +++ b/NEWS @@ -27,6 +27,9 @@ Bug fixes: * dispatch-conf: respect (E)ROOT +* install-qa-check.d: 60pkgconfig: drop noisy pkg-config mismatched Version + field check (bug 857654). + * install-qa-check.d: 60pkgconfig: fix --validate check by adding ${ED}/usr/{lib*,share} to search path. diff --git a/bin/install-qa-check.d/60pkgconfig b/bin/install-qa-check.d/60pkgconfig index 20acaa7fb..f44ec232a 100644 --- a/bin/install-qa-check.d/60pkgconfig +++ b/bin/install-qa-check.d/60pkgconfig @@ -88,66 +88,6 @@ pkgconfig_check() { eqawarn "(contains reference to either lib or lib64 in wrong directory)" eqatag -v pkgconfig.bad-libdir "${bad_libdir[@]}" fi - - # Check for mismatched Version field vs ${PV} - # To be safe, let's make sure _all_ installed .pcs have a bad Version - # before warning, as this should catch the general cases we're worried - # about, while avoiding any pathological cases e.g. multiple libraries - # with different versioning within one package. - # Example bugs: bug #833895, bug #833887. - - # Default to PV if QA_PKGCONFIG_VERSION is unset. - if [[ -z ${QA_PKGCONFIG_VERSION+set} ]]; then - local QA_PKGCONFIG_VERSION=${PV} - fi - - # Skip the check if QA_PKGCONFIG_VERSION is set to empty string. - if [[ -n ${QA_PKGCONFIG_VERSION} ]]; then - local pms_ver_re="^([0-9]+(\.[0-9]+)*)([a-z]?)((_(alpha|beta|pre|rc|p)[0-9]*)*)(-r[0-9]+)?$" - local -A bad_files - - local is_pms_ver=false - if [[ ${QA_PKGCONFIG_VERSION} =~ ${pms_ver_re} ]] ; then - # Ensure that ver_test is available. - [[ $(type -t ver_test) == function ]] || inherit eapi7-ver - is_pms_ver=true - fi - - for f in "${files[@]}" ; do - local file_version=$(pkg-config --modversion "${f}") - if [[ -n ${file_version} ]] ; then - if ${is_pms_ver} && [[ ${file_version} =~ ${pms_ver_re} ]]; then - # If both versions comply to PMS, then we can use ver_test to compare them. - ver_test ${QA_PKGCONFIG_VERSION} -eq ${file_version} && continue - else - # Otherwise, we resort to string comparision. - [[ ${QA_PKGCONFIG_VERSION} == ${file_version} ]] && continue - fi - else - # Record a special value if the .pc file has no version set at all. - file_version="" - fi - - bad_files["${f//${D}}"]="${file_version}" - done - - # Skip result reporting if *_p* because for both _pN and _preN, we - # don't generally expect the versions to be exactly accurate, and - # we want to avoid false positives. - if [[ ${#bad_files[@]} -gt 0 && ${PV} != *_p* ]] && ! has live ${PROPERTIES} ; then - eqawarn "QA Notice: pkg-config files with mismatched Version found!" - eqawarn "The Version field of the following files does not match ${PV}" - local bad_file - for bad_file in "${!bad_files[@]}"; do - local bad_file_version="${bad_files[${bad_file}]}" - eqawarn "- ${bad_file}: ${bad_file_version}" - done - eqawarn "Please check all .pc files installed by this package." - eqawarn "You can use QA_PKGCONFIG_VERSION to set the expected version," - eqawarn "or set to the empty string to disable this QA check." - eqatag pkgconfig.unexpected-version ${!bad_files[@]} - fi - fi } pkgconfig_check