diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2021-06-29 10:15:54 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2021-06-29 10:15:54 +0100 |
commit | 9aa80713372911cec499b3adb2cd746790920916 (patch) | |
tree | b8e99dc5dd60ac2094a27cc52f74aada8df38f05 /metadata/install-qa-check.d | |
parent | b4d43e8c611df4a8061b6f88d9e9f6b1e3c83903 (diff) |
gentoo resync : 29.06.2021
Diffstat (limited to 'metadata/install-qa-check.d')
-rw-r--r-- | metadata/install-qa-check.d/08gentoo-paths | 2 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60appdata-path | 7 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60distutils-use-setuptools | 6 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60gtk-doc-paths | 6 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60libcrypt-deps | 47 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60python-pyc | 7 | ||||
-rw-r--r-- | metadata/install-qa-check.d/60python-tests | 2 |
7 files changed, 63 insertions, 14 deletions
diff --git a/metadata/install-qa-check.d/08gentoo-paths b/metadata/install-qa-check.d/08gentoo-paths index 5161aef99221..4d84925d8539 100644 --- a/metadata/install-qa-check.d/08gentoo-paths +++ b/metadata/install-qa-check.d/08gentoo-paths @@ -66,7 +66,7 @@ gentoo_path_check() { # report # ------ if [[ -n ${bad_paths[@]} ]]; then - eqawarn "The ebuild is installing to one or more unexpected paths:" + eqawarn "QA Notice: The ebuild is installing to one or more unexpected paths:" eqawarn eqatag -v non-gentoo-paths "${bad_paths[@]}" eqawarn diff --git a/metadata/install-qa-check.d/60appdata-path b/metadata/install-qa-check.d/60appdata-path index 578137a3e9e7..06c5f91e8ce5 100644 --- a/metadata/install-qa-check.d/60appdata-path +++ b/metadata/install-qa-check.d/60appdata-path @@ -1,4 +1,4 @@ -# Copyright 2020 Gentoo Authors +# Copyright 2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # QA check: ensure that metadata files are installed in /usr/share/metainfo @@ -13,9 +13,8 @@ appdata_path_check() { done < <(find "${ED%/}/usr/share/appdata" -name '*.xml' -print0 || die) if [[ ${found[@]} ]]; then - eqawarn - eqawarn "This package seems to install metainfo files into the following" - eqawarn "location(s):" + eqawarn "QA Notice: This package seems to install metainfo files into the" + eqawarn "following location(s):" eqawarn eqatag -v appdata.invalid-path "${found[@]#${D%/}}" eqawarn diff --git a/metadata/install-qa-check.d/60distutils-use-setuptools b/metadata/install-qa-check.d/60distutils-use-setuptools index effa65358aa5..d08be885eb8e 100644 --- a/metadata/install-qa-check.d/60distutils-use-setuptools +++ b/metadata/install-qa-check.d/60distutils-use-setuptools @@ -47,7 +47,9 @@ distutils_use_setuptools_check() { if [[ ${#expected[@]} -gt 1 ]] && has no "${expected[@]}"; then # 'no' and '[rb]depend' are mutually exclusive - eerror "The package seems to have used distutils and setuptools simultaneously." + eerror "QA Notice: The package seems to have used distutils and setuptools" + eerror "simultaneously" + eerror "" eerror "This could mean the package has bad conditions:" eerror "https://dev.gentoo.org/~mgorny/python-guide/distutils.html#conditional-distutils-setuptools-use-in-packages" eerror "Please report a bug about this and CC python@" @@ -74,7 +76,7 @@ distutils_use_setuptools_check() { local def= [[ ${DISTUTILS_USE_SETUPTOOLS} == bdepend ]] && def=' (or unset)' - eqawarn "DISTUTILS_USE_SETUPTOOLS value is probably incorrect" + eqawarn "QA Notice: DISTUTILS_USE_SETUPTOOLS value is probably incorrect" eqawarn " have: DISTUTILS_USE_SETUPTOOLS=${DISTUTILS_USE_SETUPTOOLS}${def}" if [[ ${expected[0]} == bdepend ]]; then eqawarn " expected: (unset)" diff --git a/metadata/install-qa-check.d/60gtk-doc-paths b/metadata/install-qa-check.d/60gtk-doc-paths index 866e871c221a..8c12c2604337 100644 --- a/metadata/install-qa-check.d/60gtk-doc-paths +++ b/metadata/install-qa-check.d/60gtk-doc-paths @@ -1,4 +1,4 @@ -# Copyright 1999-2015 Gentoo Foundation +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # QA check: ensure that gtk-doc files are installed in /usr/share/gtk-doc @@ -14,8 +14,8 @@ gtk_doc_path_check() { if [[ ${found[@]} ]]; then eqawarn - eqawarn "This package seems to install gtk-doc documentation into the following" - eqawarn "location(s):" + eqawarn "QA Notice: This package seems to install gtk-doc documentation into the" + eqawarn "following location(s):" eqawarn eqatag -v gtk-doc-paths.invalid-path "${found[@]#${D%/}}" eqawarn diff --git a/metadata/install-qa-check.d/60libcrypt-deps b/metadata/install-qa-check.d/60libcrypt-deps new file mode 100644 index 000000000000..26120f7cb8e7 --- /dev/null +++ b/metadata/install-qa-check.d/60libcrypt-deps @@ -0,0 +1,47 @@ +# Copyright 2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +# QA check: ensure that package specifies a dependency on virtual/libcrypt +# Author: Georgy Yakovlev <gyakovlev@gentoo.org> +# Maintainer Sam James <sam@gentoo.org> + +libcrypt_check() { + if ! type -P scanelf >/dev/null || has binchecks ${PORTAGE_RESTRICT}; then + return + fi + + # skip libcrypt.so providers + case "${CATEGORY}/${PN}" in + sys-libs/libxcrypt|sys-libs/glibc|sys-libs/musl|sys-libs/uclibc-ng) + return + ;; + esac + + if grep -q "virtual/libcrypt" <<<${RDEPEND}; then + # nothing to do here + return + fi + + local libcrypt_consumers + # grep outputs newline separated list of files, so it's ok to skip specifying delimiter + IFS= mapfile libcrypt_consumers < <(find "${ED}" -type f -executable \ + -print0 | xargs -0 scanelf -qyRF '%F %n' | grep 'libcrypt\.so' 2>/dev/null ) + + if [[ -n ${libcrypt_consumers[@]} ]]; then + eqawarn "QA Notice: Binary files linked to libcrypt.so found" + eqawarn "But a dependency on virtual/libcrypt is not declared!" + eqawarn + eqatag -v virtual-libcrypt.missing "${libcrypt_consumers[@]%% *}" + eqawarn + eqawarn "Please add virtual/libcrypt:= dependency" + eqawarn "Gentoo bug: https://bugs.gentoo.org/699422" + eqawarn "Tracker bug: https://bugs.gentoo.org/798963" + eqawarn "See: https://wiki.gentoo.org/wiki/Project:Toolchain/libcrypt_implementation" + fi + +} + +libcrypt_check +: # guarantee successful exit + +# vim:ft=sh diff --git a/metadata/install-qa-check.d/60python-pyc b/metadata/install-qa-check.d/60python-pyc index ddc1bf531cd9..e112cdce348b 100644 --- a/metadata/install-qa-check.d/60python-pyc +++ b/metadata/install-qa-check.d/60python-pyc @@ -55,7 +55,8 @@ if [[ ${EAPI} == [6-7] ]]; then if [[ ${missing[@]} ]]; then eqawarn - eqawarn "This package installs one or more Python modules that are not byte-compiled." + eqawarn "QA Notice: This package installs one or more Python modules that are" + eqawarn "not byte-compiled." eqawarn "The following files are missing:" eqawarn eqatag -v python-pyc.missing "${missing[@]#${D}}" @@ -63,8 +64,8 @@ if [[ ${EAPI} == [6-7] ]]; then if [[ ${outdated[@]} ]]; then eqawarn - eqawarn "This package installs one or more compiled Python modules that have older" - eqawarn "timestamps than the corresponding source files:" + eqawarn "QA Notice: This package installs one or more compiled Python modules that have" + eqawarn "older timestamps than the corresponding source files:" eqawarn eqatag -v python-pyc.outdated "${outdated[@]#${D}}" fi diff --git a/metadata/install-qa-check.d/60python-tests b/metadata/install-qa-check.d/60python-tests index 713ed63d3764..4c7892fbc93a 100644 --- a/metadata/install-qa-check.d/60python-tests +++ b/metadata/install-qa-check.d/60python-tests @@ -17,7 +17,7 @@ python_test_check() { [[ -n ${any} ]] || return eqawarn - eqawarn 'QA Notice: this package seems to contain tests but they are not enabled.' + eqawarn 'QA Notice: This package seems to contain tests but they are not enabled.' eqawarn 'Please either run tests (via distutils_enable_tests or declaring' eqawarn 'python_test yourself), or add RESTRICT="test" along with an explanatory' eqawarn 'comment if tests cannot be run.' |