From: "Michał Górny" <mgorny@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] [PATCH] bzr.eclass: Drop bzr_bootstrap and bzr_src_prepare.
Date: Wed, 07 Feb 2018 08:34:18 +0100 [thread overview]
Message-ID: <1517988858.1228.1.camel@gentoo.org> (raw)
In-Reply-To: <23162.14634.675867.438221@a1i15.kph.uni-mainz.de>
W dniu śro, 07.02.2018 o godzinie 00∶24 +0100, użytkownik Ulrich Müller
napisał:
> No ebuild in the Gentoo repository uses the bzr_bootstrap
> functionality. Therefore drop the function along with bzr_src_prepare
> (which would not have worked in EAPI 6 anyway, due to missing call to
> eapply_user). After this change, inheriting eutils is not needed any
> more.
>
> Drop support for EAPIs 0 and 1 for further simplification.
> ---
>
> This is to be applied on top of the patch posted earlier today.
>
> We could go for bzr-r1.eclass instead. However, the functionality
> associated with EBZR_PATCHES and EBZR_BOOTSTRAP is not used in the
> tree, and overall the eclass is little used. Therefore I think that
> applying these changes in-place is acceptable here.
>
> eclass/bzr.eclass | 99 ++++++++-----------------------------------------------
> 1 file changed, 13 insertions(+), 86 deletions(-)
>
> diff --git a/eclass/bzr.eclass b/eclass/bzr.eclass
> index 9b3e0b6cf4dc..710b64db28c0 100644
> --- a/eclass/bzr.eclass
> +++ b/eclass/bzr.eclass
> @@ -18,21 +18,20 @@
> # Note: Just set EBZR_REPO_URI to the URI of the branch and src_unpack()
> # of this eclass will export the branch to ${WORKDIR}/${P}.
>
> -inherit eutils
> -
> EBZR="bzr.eclass"
>
> -case "${EAPI:-0}" in
> - 0|1) EXPORT_FUNCTIONS src_unpack ;;
> - *) EXPORT_FUNCTIONS src_unpack src_prepare ;;
> +case ${EAPI:-0} in
> + 2|3|4|5|6) ;;
> + *) die "${EBZR}: EAPI ${EAPI:-0} is not supported" ;;
> esac
>
> -DEPEND=">=dev-vcs/bzr-2.6.0"
> -case "${EAPI:-0}" in
> - 0|1) ;;
> - *) [[ ${EBZR_REPO_URI%%:*} = sftp ]] \
> - && DEPEND=">=dev-vcs/bzr-2.6.0[sftp]" ;;
> -esac
> +EXPORT_FUNCTIONS src_unpack
> +
> +if [[ ${EBZR_REPO_URI%%:*} = sftp ]]; then
> + DEPEND=">=dev-vcs/bzr-2.6.0[sftp]"
> +else
> + DEPEND=">=dev-vcs/bzr-2.6.0"
> +fi
>
> # @ECLASS-VARIABLE: EBZR_STORE_DIR
> # @DESCRIPTION:
> @@ -85,9 +84,8 @@ esac
> # @DESCRIPTION:
> # The repository URI for the source package.
> #
> -# Note: If the ebuild uses an sftp:// URI, then in EAPI 0 or 1 it must
> -# make sure that dev-vcs/bzr was built with USE="sftp". In EAPI 2 or
> -# later, the eclass will depend on dev-vcs/bzr[sftp].
> +# Note: If the ebuild uses an sftp:// URI, then the eclass will depend
> +# on dev-vcs/bzr[sftp].
>
> # @ECLASS-VARIABLE: EBZR_INITIAL_URI
> # @DEFAULT_UNSET
> @@ -100,21 +98,6 @@ esac
> #
> # Normally, this variable needs not be set.
>
> -# @ECLASS-VARIABLE: EBZR_BOOTSTRAP
> -# @DEFAULT_UNSET
> -# @DESCRIPTION:
> -# Bootstrap script or command like autogen.sh or etc.
> -
> -# @ECLASS-VARIABLE: EBZR_PATCHES
> -# @DEFAULT_UNSET
> -# @DESCRIPTION:
> -# bzr.eclass can apply patches in bzr_bootstrap(). You can use regular
> -# expressions in this variable like *.diff or *.patch and the like.
> -# Note: These patches will be applied before EBZR_BOOTSTRAP is processed.
> -#
> -# Patches are searched both in ${PWD} and ${FILESDIR}. If not found in
> -# either location, the installation dies.
> -
> # @ECLASS-VARIABLE: EBZR_PROJECT
> # @DESCRIPTION:
> # The project name of your ebuild. Normally, the branch will be stored
> @@ -276,65 +259,9 @@ bzr_fetch() {
> popd > /dev/null
> }
>
> -# @FUNCTION: bzr_bootstrap
> -# @DESCRIPTION:
> -# Apply patches in ${EBZR_PATCHES} and run ${EBZR_BOOTSTRAP} if specified.
> -bzr_bootstrap() {
> - local patch lpatch
> -
> - pushd "${S}" > /dev/null || die "${EBZR}: can't chdir to ${S}"
> -
> - if [[ -n ${EBZR_PATCHES} ]] ; then
> - einfo "apply patches -->"
> -
> - for patch in ${EBZR_PATCHES} ; do
> - if [[ -f ${patch} ]] ; then
> - epatch "${patch}"
> - else
> - # This loop takes care of wildcarded patches given via
> - # EBZR_PATCHES in an ebuild
> - for lpatch in "${FILESDIR}"/${patch} ; do
> - if [[ -f ${lpatch} ]] ; then
> - epatch "${lpatch}"
> - else
> - die "${EBZR}: ${patch} is not found"
> - fi
> - done
> - fi
> - done
> - fi
> -
> - if [[ -n ${EBZR_BOOTSTRAP} ]] ; then
> - einfo "begin bootstrap -->"
> -
> - if [[ -f ${EBZR_BOOTSTRAP} ]] && [[ -x ${EBZR_BOOTSTRAP} ]] ; then
> - einfo " bootstrap with a file: ${EBZR_BOOTSTRAP}"
> - "./${EBZR_BOOTSTRAP}" \
> - || die "${EBZR}: can't execute EBZR_BOOTSTRAP"
> - else
> - einfo " bootstrap with commands: ${EBZR_BOOTSTRAP}"
> - "${EBZR_BOOTSTRAP}" \
> - || die "${EBZR}: can't eval EBZR_BOOTSTRAP"
> - fi
> - fi
> -
> - popd > /dev/null
> -}
> -
> # @FUNCTION: bzr_src_unpack
> # @DESCRIPTION:
> -# Default src_unpack(), calls bzr_fetch. For EAPIs 0 and 1, also calls
> -# bzr_src_prepare.
> +# Default src_unpack(), calls bzr_fetch.
> bzr_src_unpack() {
> bzr_fetch
> - case "${EAPI:-0}" in
> - 0|1) bzr_src_prepare ;;
> - esac
> -}
> -
> -# @FUNCTION: bzr_src_prepare
> -# @DESCRIPTION:
> -# Default src_prepare(), calls bzr_bootstrap.
> -bzr_src_prepare() {
> - bzr_bootstrap
> }
Hmm, unless I'm mistaken, this can cause another definition
of src_prepare to start applying to ebuilds. You can submit a PR with
this change to get md5-cache with exported phase data suitable for
comparison.
Or... given the popularity of the eclass, you can check by hand ;-P.
--
Best regards,
Michał Górny
next prev parent reply other threads:[~2018-02-07 7:34 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-06 13:57 [gentoo-dev] [PATCH] bzr.eclass: Add --overwrite-tags option to pull command Ulrich Müller
2018-02-06 14:12 ` Kristian Fiskerstrand
2018-02-06 14:36 ` Ulrich Mueller
2018-02-06 14:40 ` eclass committ message verbosity (Was: Re: [gentoo-dev] [PATCH] bzr.eclass: Add --overwrite-tags option to pull command.) Kristian Fiskerstrand
2018-02-06 17:07 ` [gentoo-dev] [PATCH] bzr.eclass: Add --overwrite-tags option to pull command Alec Warner
2018-02-06 20:07 ` Michał Górny
2018-02-06 23:24 ` [gentoo-dev] [PATCH] bzr.eclass: Drop bzr_bootstrap and bzr_src_prepare Ulrich Müller
2018-02-07 7:34 ` Michał Górny [this message]
2018-02-07 13:18 ` Ulrich Mueller
2018-02-07 13:26 ` Michał Górny
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1517988858.1228.1.camel@gentoo.org \
--to=mgorny@gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox