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 |