Re: [gentoo-dev] [PATCH 01/12] toolchain.eclass: remove EAPI 5 and 6
> On 29 Jan 2022, at 17:31, David Seifert wrote: > > Signed-off-by: David Seifert > -- series lgtm Best, sam signature.asc Description: Message signed with OpenPGP
Re: [gentoo-dev] [PATCH 01/12] toolchain.eclass: remove EAPI 5 and 6
The series LGTM from visual review. Note that I haven't verified the variable moves in wider context. -- Best regards, Michał Górny
Re: [gentoo-dev] Unmask >=net-p2p/bitcoin*-0.21.1
On 25/01/2022 07.49, Joonas Niilola wrote: On 24.1.2022 20.37, Florian Schmaus wrote: Hi Joonas, I think it is time to unmask the currently masked Bitcoin versions. The mask was added in Juli of 2021 [1], with the mask's commit message indicating that unmasking is planned for November 2021. I doubt that the mask was ever needed in the first place, as it was intended to prevent automated updates of Bitcoin in Gentoo. However, Gentoo has no unattended upgrade mechanism. Instead, the user explicitly triggers all updates. As this has already caused a little bit of friction, I'd like to get a feeling of the community's view on that. - Flow 1: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d0bbc4dcc33927cbf0ca27a054c430f6866ed72e Publishing a news item 2-4 weeks prior wouldn't cost much for us, I feel like just to make sure it'd be the right thing to do. I am skeptical that a news item would be the right thing to do First, I doubt that the package mask was needed, as I already wrote. Hence unmasking the package is nothing that the users need to be notified about. Secondly, we never did a news item for Bitcoin in the past, even on consensus changes. So I want to prevent creating a precedent that puts us in a position where people expect us to do one for every Bitcoin protocol consensus change. Finally, the news item would state the obvious: Newer software versions may include changes that you, as a user, may want to review before upgrading. That said, I wouldn't object if someone published one. Please let me know if you plan to publish one. Otherwise, I would unmask Bitcoin in one week since no fundamental objections have been raised so far. - Flow
[gentoo-dev] [PATCH 12/12] vcs-snapshot.eclass: canonical variable ordering
Signed-off-by: David Seifert --- eclass/vcs-snapshot.eclass | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/eclass/vcs-snapshot.eclass b/eclass/vcs-snapshot.eclass index 0e86cb4ad51..64bc1da040f 100644 --- a/eclass/vcs-snapshot.eclass +++ b/eclass/vcs-snapshot.eclass @@ -47,7 +47,8 @@ case ${EAPI} in *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -EXPORT_FUNCTIONS src_unpack +if [[ ! ${_VCS_SNAPSHOT_ECLASS} ]]; then +_VCS_SNAPSHOT_ECLASS=1 # @FUNCTION: vcs-snapshot_src_unpack # @DESCRIPTION: @@ -110,3 +111,7 @@ vcs-snapshot_src_unpack() { [[ ${w} == eerror ]] && die "${FUNCNAME}: Unnecessary usage detected" fi } + +fi + +EXPORT_FUNCTIONS src_unpack -- 2.35.0
[gentoo-dev] [PATCH 11/12] vcs-snapshot.eclass: remove EAPI 0-5
Signed-off-by: David Seifert --- eclass/vcs-snapshot.eclass | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/eclass/vcs-snapshot.eclass b/eclass/vcs-snapshot.eclass index 74e5f4bcd42..0e86cb4ad51 100644 --- a/eclass/vcs-snapshot.eclass +++ b/eclass/vcs-snapshot.eclass @@ -4,7 +4,7 @@ # @ECLASS: vcs-snapshot.eclass # @MAINTAINER: # mgo...@gentoo.org -# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6 7 8 +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: support eclass for unpacking VCS snapshot tarballs # @DESCRIPTION: # THIS ECLASS IS NOT NECESSARY FOR MODERN GITHUB AND GITLAB SNAPSHOTS. @@ -42,9 +42,9 @@ # and however the tarballs were originally packed, all files will appear # in ${WORKDIR}/${P} and ${WORKDIR}/${P}-otherstuff respectively. -case ${EAPI:-0} in - 0|1|2|3|4|5|6|7|8) ;; - *) die "vcs-snapshot.eclass API in EAPI ${EAPI} not yet established." +case ${EAPI} in + 6|7|8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac EXPORT_FUNCTIONS src_unpack @@ -102,7 +102,7 @@ vcs-snapshot_src_unpack() { if [[ ! ${renamed_any} ]]; then local w=eerror - [[ ${EAPI} == [0123456] ]] && w=eqawarn + [[ ${EAPI} == 6 ]] && w=eqawarn "${w}" "${FUNCNAME} did not find any archives that needed renaming." "${w}" "Please verify that its usage is really necessary, and remove" "${w}" "the inherit if it is not." -- 2.35.0
[gentoo-dev] [PATCH 10/12] vcs-snapshot.eclass: enable EAPI 8
Signed-off-by: David Seifert --- eclass/vcs-snapshot.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/vcs-snapshot.eclass b/eclass/vcs-snapshot.eclass index 05d963917e2..74e5f4bcd42 100644 --- a/eclass/vcs-snapshot.eclass +++ b/eclass/vcs-snapshot.eclass @@ -1,10 +1,10 @@ -# Copyright 1999-2019 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: vcs-snapshot.eclass # @MAINTAINER: # mgo...@gentoo.org -# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6 7 +# @SUPPORTED_EAPIS: 0 1 2 3 4 5 6 7 8 # @BLURB: support eclass for unpacking VCS snapshot tarballs # @DESCRIPTION: # THIS ECLASS IS NOT NECESSARY FOR MODERN GITHUB AND GITLAB SNAPSHOTS. @@ -43,7 +43,7 @@ # in ${WORKDIR}/${P} and ${WORKDIR}/${P}-otherstuff respectively. case ${EAPI:-0} in - 0|1|2|3|4|5|6|7) ;; + 0|1|2|3|4|5|6|7|8) ;; *) die "vcs-snapshot.eclass API in EAPI ${EAPI} not yet established." esac -- 2.35.0
[gentoo-dev] [PATCH 09/12] vcs-clean.eclass: add missing die
Signed-off-by: David Seifert --- eclass/vcs-clean.eclass | 12 +--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/eclass/vcs-clean.eclass b/eclass/vcs-clean.eclass index 991f680582f..e4c61ac7164 100644 --- a/eclass/vcs-clean.eclass +++ b/eclass/vcs-clean.eclass @@ -23,9 +23,11 @@ _VCS_CLEAN_ECLASS=1 # Remove CVS directories and .cvs* files recursively. Useful when a # source tarball contains internal CVS directories. Defaults to ${PWD}. ecvs_clean() { + debug-print-function ${FUNCNAME} "${@}" + [[ $# -eq 0 ]] && set -- . find "$@" '(' -type d -name 'CVS' -prune -o -type f -name '.cvs*' ')' \ - -exec rm -rf '{}' + + -exec rm -rf '{}' + || die } # @FUNCTION: esvn_clean @@ -34,8 +36,10 @@ ecvs_clean() { # Remove .svn directories recursively. Useful when a source tarball # contains internal Subversion directories. Defaults to ${PWD}. esvn_clean() { + debug-print-function ${FUNCNAME} "${@}" + [[ $# -eq 0 ]] && set -- . - find "$@" -type d -name '.svn' -prune -exec rm -rf '{}' + + find "$@" -type d -name '.svn' -prune -exec rm -rf '{}' + || die } # @FUNCTION: egit_clean @@ -44,8 +48,10 @@ esvn_clean() { # Remove .git* directories recursively. Useful when a source tarball # contains internal Git directories. Defaults to ${PWD}. egit_clean() { + debug-print-function ${FUNCNAME} "${@}" + [[ $# -eq 0 ]] && set -- . - find "$@" -type d -name '.git*' -prune -exec rm -rf '{}' + + find "$@" -type d -name '.git*' -prune -exec rm -rf '{}' + || die } fi -- 2.35.0
[gentoo-dev] [PATCH 08/12] vcs-clean.eclass: enable EAPI 8
Signed-off-by: David Seifert --- eclass/vcs-clean.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/vcs-clean.eclass b/eclass/vcs-clean.eclass index 89f6b732187..991f680582f 100644 --- a/eclass/vcs-clean.eclass +++ b/eclass/vcs-clean.eclass @@ -1,4 +1,4 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: vcs-clean.eclass @@ -6,11 +6,11 @@ # base-sys...@gentoo.org # @AUTHOR: # Benedikt Böhm -# @SUPPORTED_EAPIS: 5 6 7 +# @SUPPORTED_EAPIS: 5 6 7 8 # @BLURB: helper functions to remove VCS directories -case ${EAPI:-0} in - [567]) ;; +case ${EAPI} in + 5|6|7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -- 2.35.0
[gentoo-dev] [PATCH 07/12] usr-ldscript.eclass: canonical variable ordering
Signed-off-by: David Seifert --- eclass/usr-ldscript.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/usr-ldscript.eclass b/eclass/usr-ldscript.eclass index 7842dfc643d..a8229ed2ac2 100644 --- a/eclass/usr-ldscript.eclass +++ b/eclass/usr-ldscript.eclass @@ -7,14 +7,14 @@ # @SUPPORTED_EAPIS: 6 7 8 # @BLURB: Defines the gen_usr_ldscript function. -if [[ -z ${_USR_LDSCRIPT_ECLASS} ]]; then -_USR_LDSCRIPT_ECLASS=1 - case ${EAPI} in 6|7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac +if [[ -z ${_USR_LDSCRIPT_ECLASS} ]]; then +_USR_LDSCRIPT_ECLASS=1 + inherit multilib toolchain-funcs IUSE="split-usr" -- 2.35.0
[gentoo-dev] [PATCH 06/12] usr-ldscript.eclass: remove EAPI 5
Signed-off-by: David Seifert --- eclass/usr-ldscript.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/usr-ldscript.eclass b/eclass/usr-ldscript.eclass index 2bf725abdd0..7842dfc643d 100644 --- a/eclass/usr-ldscript.eclass +++ b/eclass/usr-ldscript.eclass @@ -1,17 +1,17 @@ -# Copyright 2019-2021 Gentoo Authors +# Copyright 2019-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: usr-ldscript.eclass # @MAINTAINER: # Toolchain Ninjas -# @SUPPORTED_EAPIS: 5 6 7 8 +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: Defines the gen_usr_ldscript function. if [[ -z ${_USR_LDSCRIPT_ECLASS} ]]; then _USR_LDSCRIPT_ECLASS=1 case ${EAPI} in - 5|6|7|8) ;; + 6|7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -- 2.35.0
[gentoo-dev] [PATCH 05/12] user-info.eclass: remove EAPI 5
Signed-off-by: David Seifert --- eclass/user-info.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/user-info.eclass b/eclass/user-info.eclass index 8b8538bf843..3838585ab6c 100644 --- a/eclass/user-info.eclass +++ b/eclass/user-info.eclass @@ -1,15 +1,15 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: user-info.eclass # @MAINTAINER: # base-sys...@gentoo.org (Linux) # Michał Górny (NetBSD) -# @SUPPORTED_EAPIS: 5 6 7 8 +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: Read-only access to user and group information -case ${EAPI:-0} in - [5678]) ;; +case ${EAPI} in + 6|7|8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac -- 2.35.0
[gentoo-dev] [PATCH 04/12] user.eclass: canonical variable ordering
Signed-off-by: David Seifert --- eclass/user.eclass | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/eclass/user.eclass b/eclass/user.eclass index 9373b361d59..581704eae81 100644 --- a/eclass/user.eclass +++ b/eclass/user.eclass @@ -12,9 +12,6 @@ # The user eclass contains a suite of functions that allow ebuilds # to quickly make sure users in the installed system are sane. -if [[ -z ${_USER_ECLASS} ]]; then -_USER_ECLASS=1 - case ${EAPI} in 6|7) ;; 8) @@ -29,6 +26,9 @@ case ${EAPI} in *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; esac +if [[ -z ${_USER_ECLASS} ]]; then +_USER_ECLASS=1 + inherit user-info # @FUNCTION: _assert_pkg_ebuild_phase -- 2.35.0
[gentoo-dev] [PATCH 03/12] user.eclass: remove EAPI 5
Signed-off-by: David Seifert --- eclass/user.eclass | 8 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eclass/user.eclass b/eclass/user.eclass index d03d31819fc..9373b361d59 100644 --- a/eclass/user.eclass +++ b/eclass/user.eclass @@ -1,11 +1,11 @@ -# Copyright 1999-2021 Gentoo Authors +# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 # @ECLASS: user.eclass # @MAINTAINER: # base-sys...@gentoo.org (Linux) # Michał Górny (NetBSD) -# @SUPPORTED_EAPIS: 5 6 7 8 +# @SUPPORTED_EAPIS: 6 7 8 # @BLURB: user management in ebuilds # @DEPRECATED: acct-user/acct-group packages # @DESCRIPTION: @@ -15,8 +15,8 @@ if [[ -z ${_USER_ECLASS} ]]; then _USER_ECLASS=1 -case ${EAPI:-0} in - 5|6|7) ;; +case ${EAPI} in + 6|7) ;; 8) if [[ ${CATEGORY} != acct-* ]]; then eerror "In EAPI ${EAPI}, packages must not inherit user.eclass" -- 2.35.0
[gentoo-dev] [PATCH 02/12] toolchain.eclass: canonical variable ordering
Signed-off-by: David Seifert --- eclass/toolchain.eclass | 23 ++- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index 741b6dfbbcc..495a305ed83 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -7,6 +7,15 @@ # @SUPPORTED_EAPIS: 7 8 # @BLURB: Common code for sys-devel/gcc ebuilds +case ${EAPI} in + 7) inherit eutils ;; + 8) ;; + *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; +esac + +if [[ ! ${_TOOLCHAIN_ECLASS} ]]; then +_TOOLCHAIN_ECLASS=1 + DESCRIPTION="The GNU Compiler Collection" HOMEPAGE="https://gcc.gnu.org/"; @@ -30,15 +39,6 @@ fi FEATURES=${FEATURES/multilib-strict/} -case ${EAPI} in - 7) inherit eutils ;; - 8) ;; - *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; -esac - -EXPORT_FUNCTIONS pkg_pretend pkg_setup src_unpack src_prepare src_configure \ - src_compile src_test src_install pkg_postinst pkg_postrm - #>> globals << export CTARGET=${CTARGET:-${CHOST}} @@ -2322,6 +2322,11 @@ toolchain_death_notice() { fi } +fi + +EXPORT_FUNCTIONS pkg_pretend pkg_setup src_unpack src_prepare src_configure \ + src_compile src_test src_install pkg_postinst pkg_postrm + # Note [implicitly enabled flags] # --- # Usually configure-based packages handle explicit feature requests -- 2.35.0
[gentoo-dev] [PATCH 01/12] toolchain.eclass: remove EAPI 5 and 6
Signed-off-by: David Seifert --- eclass/toolchain.eclass | 110 +++- 1 file changed, 40 insertions(+), 70 deletions(-) diff --git a/eclass/toolchain.eclass b/eclass/toolchain.eclass index 61718f0d9a0..741b6dfbbcc 100644 --- a/eclass/toolchain.eclass +++ b/eclass/toolchain.eclass @@ -4,7 +4,7 @@ # @ECLASS: toolchain.eclass # @MAINTAINER: # Toolchain Ninjas -# @SUPPORTED_EAPIS: 5 6 7 8 +# @SUPPORTED_EAPIS: 7 8 # @BLURB: Common code for sys-devel/gcc ebuilds DESCRIPTION="The GNU Compiler Collection" @@ -31,7 +31,6 @@ fi FEATURES=${FEATURES/multilib-strict/} case ${EAPI} in - 5|6) inherit eapi7-ver eutils ;; 7) inherit eutils ;; 8) ;; *) die "${ECLASS}: EAPI ${EAPI:-0} not supported" ;; @@ -129,16 +128,6 @@ LICENSE="GPL-3+ LGPL-3+ || ( GPL-3+ libgcc libstdc++ gcc-runtime-library-excepti IUSE="test vanilla +nls" RESTRICT="!test? ( test )" -tc_supports_dostrip() { - case ${EAPI} in - 5|6) return 1 ;; - 7|8) return 0 ;; - *) die "Update apply_patches() for ${EAPI}." ;; - esac -} - -tc_supports_dostrip || RESTRICT+=" strip" # cross-compilers need controlled stripping - TC_FEATURES=() tc_has_feature() { @@ -146,21 +135,21 @@ tc_has_feature() { } if [[ ${PN} != "kgcc64" && ${PN} != gcc-* ]] ; then - IUSE+=" debug +cxx +nptl" TC_FEATURES+=(nptl) + IUSE+=" debug +cxx +nptl" TC_FEATURES+=( nptl ) [[ -n ${PIE_VER} ]] && IUSE+=" nopie" [[ -n ${SPECS_VER} ]] && IUSE+=" nossp" - IUSE+=" +fortran" TC_FEATURES+=(fortran) + IUSE+=" +fortran" TC_FEATURES+=( fortran ) IUSE+=" doc hardened multilib objc" - tc_version_is_between 3 7 && IUSE+=" awt gcj" TC_FEATURES+=(gcj) + tc_version_is_between 3 7 && IUSE+=" awt gcj" TC_FEATURES+=( gcj ) IUSE+=" pgo" - IUSE+=" objc-gc" TC_FEATURES+=(objc-gc) + IUSE+=" objc-gc" TC_FEATURES+=( objc-gc ) IUSE+=" libssp objc++" IUSE+=" +openmp" tc_version_is_at_least 4.3 && IUSE+=" fixed-point" tc_version_is_at_least 4.7 && IUSE+=" go" # sanitizer support appeared in gcc-4.8, but > S + SRC_URI essentials << @@ -447,25 +432,9 @@ toolchain_src_unpack() { #>> src_prepare << -# 'epatch' is not available in EAPI=7. Abstract away patchset application -# until we eventually get all gcc ebuilds on EAPI=7 or later. -tc_apply_patches() { - [[ ${#@} -lt 2 ]] && die "usage: tc_apply_patches " - - einfo "$1"; shift - - case ${EAPI} in - # Note: even for EAPI=6 we used 'epatch' semantics. To avoid - # breaking existing ebuilds use 'eapply' only in EAPI=7 or later. - 5|6) epatch "$@" ;; - 7|8) eapply "$@" ;; - *) die "Update apply_patches() for ${EAPI}." ;; - esac -} - toolchain_src_prepare() { export BRANDING_GCC_PKGVERSION="Gentoo ${GCC_PVR}" - cd "${S}" + cd "${S}" || die do_gcc_gentoo_patches do_gcc_PIE_patches @@ -475,11 +444,7 @@ toolchain_src_prepare() { BRANDING_GCC_PKGVERSION="${BRANDING_GCC_PKGVERSION}, commit ${EGIT_VERSION}" fi - case ${EAPI} in - 5) epatch_user;; - 6|7|8) eapply_user ;; - *) die "Update toolchain_src_prepare() for ${EAPI}." ;; - esac + eapply_user if ( tc_version_is_at_least 4.8.2 || _tc_use_if_iuse hardened ) \ && ! use vanilla ; then @@ -490,7 +455,7 @@ toolchain_src_prepare() { # since we configure with just one --libdir, we can't use that # (as gcc itself takes care of building multilibs). #435728 find "${S}" -name Makefile.in \ - -exec sed -i '/^pkgconfigdir/s:=.*:=$(toolexeclibdir)/pkgconfig:' {} + + -exec sed -i '/^pkgconfigdir/s:=.*:=$(toolexeclibdir)/pkgconfig:' {} + || die setup_multilib_osdirnames gcc_version_patch @@ -532,10 +497,11 @@ toolchain_src_prepare() { || eerror "Please file a bug about this" eend $? done - sed -i 's|A-Za-z0-9|[:alnum:]|g' "${S}"/gcc/*.awk #215828 + sed -i 's|A-Za-z0-9|[:alnum:]|g' "${S}"/gcc/*.awk || die #215828 # Prevent new texinfo from breaking old versions (see #198182, #464008) - tc_apply_patches "Remove texinfo (bug #198182, bug #464008)" "${FILESDIR}"/gcc-configure-texinfo.patch + einfo "Remove texinfo (bug #198182, bug #464008)" + eapply "${FILESDIR}"/gcc-configure-texinfo.patch # >=gcc-4 if [[ -x contrib/gcc_update ]] ; then @@ -550,7 +516,8 @@ toolchain_src_prepare() { do_gcc_gentoo_patches() { if ! use vanilla ; then if [[ -n ${PATCH_VER} ]] ; then - tc_apply_patches "Applying Gentoo patches ..." "${WORKDIR}"/patch/*.patch + einfo "Applying Gentoo patches ..." +
[gentoo-dev] last-rite: dev-perl/Mac-Pasteboard
# Fabian Groffen (2022-01-29) # Fails to compile with GCC on macOS. No revdeps. # Removal on 2022-02-28. Bug #832309. dev-perl/Mac-Pasteboard -- Fabian Groffen Gentoo on a different level signature.asc Description: PGP signature
[gentoo-dev] Last rites: dev-python/django-pglocks
# Michał Górny (2022-01-29) # No maintainer. No upstream activity since Dec 2019. # Tests not enabled. No revdeps. # Removal on 2022-02-28. Bug #832318. dev-python/django-pglocks -- Best regards, Michał Górny