Gentoo Archives: gentoo-dev

From: Doug Klima <cardoe@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] subversion.eclass
Date: Fri, 15 Feb 2008 23:40:35
Message-Id: 47B622EF.9010404@gentoo.org
In Reply to: [gentoo-dev] subversion.eclass by "Bo Ørsted Andresen"
1 Bo Ørsted Andresen wrote:
2 > For quite a while the KDE herd has had a modified version of subversion.eclass
3 > in the kde overlay. During that time we have added the following features to
4 > the eclass which we would like to put back in gentoo-x86 soon. Since the
5 > changes are fairly extensive we decided to send it to this list for review
6 > first.
7 >
8 > 1) ESVN_REVISION (before this people had to use ESVN_OPTIONS for this
9 > purpose).
10
11 ESVN_REPO_URI is a standard subversion URI and as such supports @HEAD,
12 @BASE, @COMMITTED, @PREV and @REV. So this is unnecessary.
13
14 > 2) ESVN_OFFLINE which disables svn up.
15
16 Isn't this a bit of a hack? The point is for it to run svn up. Now I've
17 added support in a local refactor that I had started today that if the
18 working copy's revision matches the requested revision, that no svn up
19 is performed. Obviously the situation when you have a "live" SVN ebuild
20 would still result in an svn up, but then again "live" SVN ebuilds are
21 frowned upon and if the person is trying to emerge a "live" SVN ebuild I
22 would expect them to always get the latest version.
23
24 > 3) ESVN_UP_FREQ which uses GNU find to determine if the specified number of
25 > hours has passed and only do svn up if it has. This is currently used in the
26 > kde4svn-meta eclass for split kde ebuilds that use the same checkout of each
27 > module.
28
29 This would be handled by the feature above.
30
31 > 4) ESCM_LOGDIR for logging which revisions packages get installed with. See
32 > [1]. Users need to explicitly enable this feature to use it.
33
34 This seems like it belongs in a generic SCM framework/eclass that all
35 SCM eclasses can support.
36
37 However, I personally like to handle this with two different situations.
38
39 emerge --info pkg, where the pkg installs a file to
40 /usr/share/${PN}/revision that stores the revision used and emerge
41 --info reads out that info. This is only for "live" SVN ebuilds. I don't
42 have any as an example currently.
43
44 The other solution is the way I do this with mythtv. For example,
45 mythtv-0.21_pre15768 checks out trunk revision 15768. This way the
46 revision is part of the version of the package and it's always known.
47
48 Additionally the changes I've been working on address the 5 outstanding
49 bugs found in Bugzilla and also remove some unnecessary and unused
50 functionality found in the eclass.
51
52 I had actually planned on providing the eclass on the ML later tonight
53 when I had it complete.
54
55 Since I have a feeling my changes or suggestions won't jive with the kde
56 herd, I'll offer mine up as svn.eclass
57
58 --
59 Doug Klima <cardoe@g.o>
60 http://dev.gentoo.org/~cardoe/
61
62 --
63 gentoo-dev@l.g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] subversion.eclass Bernd Steinhauser <gentoo@×××××××××××××××××.de>
Re: [gentoo-dev] subversion.eclass "Bo Ørsted Andresen" <zlin@g.o>