Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: Andrew Savchenko <bircoph@g.o>
Cc: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] [PATCH] subversion.eclass: support for EAPI 6
Date: Sat, 30 Jul 2016 05:38:00
Message-Id: 20160730073708.7dcfb01a.mgorny@gentoo.org
In Reply to: Re: [gentoo-dev] [PATCH] subversion.eclass: support for EAPI 6 by Andrew Savchenko
1 On Fri, 29 Jul 2016 22:36:01 +0300
2 Andrew Savchenko <bircoph@g.o> wrote:
3
4 > diff --git a/eclass/subversion.eclass b/eclass/subversion.eclass
5 > index c45c725..489e448 100644
6 > --- a/eclass/subversion.eclass
7 > +++ b/eclass/subversion.eclass
8 > @@ -21,10 +21,17 @@ case "${EAPI:-0}" in
9 > EXPORT_FUNCTIONS src_unpack pkg_preinst
10 > DEPEND="dev-vcs/subversion"
11 > ;;
12 > - *)
13 > + 2|3|4|5)
14 > EXPORT_FUNCTIONS src_unpack src_prepare pkg_preinst
15 > DEPEND="|| ( dev-vcs/subversion[http] dev-vcs/subversion[webdav-neon] dev-vcs/subversion[webdav-serf] )"
16 > ;;
17 > + 6)
18 > + EXPORT_FUNCTIONS src_unpack pkg_preinst
19 > + DEPEND="|| ( dev-vcs/subversion[http] dev-vcs/subversion[webdav-neon] dev-vcs/subversion[webdav-serf] )"
20 > + ;;
21 > + *)
22 > + die "EAPI ${EAPI} is not supported in subversion.eclass"
23 > + ;;
24 > esac
25 >
26 > DEPEND+=" net-misc/rsync"
27 > @@ -116,7 +123,8 @@ ESVN_PROJECT="${ESVN_PROJECT:-${PN/-svn}}"
28 >
29 > # @ECLASS-VARIABLE: ESVN_BOOTSTRAP
30 > # @DESCRIPTION:
31 > -# bootstrap script or command like autogen.sh or etc..
32 > +# Bootstrap script or command like autogen.sh or etc..
33 > +# Removed in EAPI 6 and later.
34 > ESVN_BOOTSTRAP="${ESVN_BOOTSTRAP:-}"
35 >
36 > # @ECLASS-VARIABLE: ESVN_PATCHES
37 > @@ -127,6 +135,8 @@ ESVN_BOOTSTRAP="${ESVN_BOOTSTRAP:-}"
38 > #
39 > # Patches are searched both in ${PWD} and ${FILESDIR}, if not found in either
40 > # location, the installation dies.
41 > +#
42 > +# Removed in EAPI 6 and later, use PATCHES instead.
43 > ESVN_PATCHES="${ESVN_PATCHES:-}"
44
45 It would be a good idea to check if the variables are set and die if
46 they are, so people don't accidentally use them.
47
48 >
49 > # @ECLASS-VARIABLE: ESVN_RESTRICT
50 > @@ -355,7 +365,10 @@ subversion_fetch() {
51 > # @FUNCTION: subversion_bootstrap
52 > # @DESCRIPTION:
53 > # Apply patches in ${ESVN_PATCHES} and run ${ESVN_BOOTSTRAP} if specified.
54 > +# Removed in EAPI 6 and later.
55 > subversion_bootstrap() {
56 > + has "${EAPI:-0}" 6 && die "${FUNCNAME[1]} is removed from subversion.eclass in EAPI 6 and later"
57 > +
58
59 Reverse the logic. This will require updating in every EAPI while it is
60 rather unlikely the next EAPIs will return to previous behavior.
61
62 > if has "export" ${ESVN_RESTRICT}; then
63 > return
64 > fi
65 > @@ -432,7 +445,9 @@ subversion_src_unpack() {
66 > # @FUNCTION: subversion_src_prepare
67 > # @DESCRIPTION:
68 > # Default src_prepare. Bootstrap.
69 > +# Removed in EAPI 6 and later.
70 > subversion_src_prepare() {
71 > + has "${EAPI:-0}" 6 && die "${FUNCNAME[1]} is removed from subversion.eclass in EAPI 6 and later"
72 > subversion_bootstrap || die "${ESVN}: unknown problem occurred in subversion_bootstrap."
73 > }
74 >
75
76
77
78 --
79 Best regards,
80 Michał Górny
81 <http://dev.gentoo.org/~mgorny/>

Replies

Subject Author
Re: [gentoo-dev] [PATCH] subversion.eclass: support for EAPI 6 Andrew Savchenko <bircoph@g.o>