Doug Klima wrote: > Doug Klima wrote: >> Doug Klima wrote: >>> Doug Klima wrote: >>>> Bo Ørsted Andresen wrote: >>>>> For quite a while the KDE herd has had a modified version of >>>>> subversion.eclass in the kde overlay. During that time we have >>>>> added the following features to the eclass which we would like to >>>>> put back in gentoo-x86 soon. Since the changes are fairly >>>>> extensive we decided to send it to this list for review first. >>>>> >>>>> 1) ESVN_REVISION (before this people had to use ESVN_OPTIONS for >>>>> this purpose). >>>>> 2) ESVN_OFFLINE which disables svn up. >>>>> 3) ESVN_UP_FREQ which uses GNU find to determine if the specified >>>>> number of hours has passed and only do svn up if it has. This is >>>>> currently used in the kde4svn-meta eclass for split kde ebuilds >>>>> that use the same checkout of each module. >>>>> 4) ESCM_LOGDIR for logging which revisions packages get installed >>>>> with. See [1]. Users need to explicitly enable this feature to use >>>>> it. >>>>> >>>>> Other than this the eclass has been documented for use with >>>>> eclass-manpages. >>>>> >>>>> [1] http://thread.gmane.org/gmane.linux.gentoo.devel/54233 >>>>> >>>>> >>>> ok. Well zlin and I have been talking lately and we've hammered out >>>> his proposed changes and mine. I'm attaching a patch for the first >>>> set of changes I have proposed. >>>> >>>> Attached is a patch for the following: >>>> - use $ECLASS >>>> - adding rsync to deps >>>> - fixing some quoting >>>> - remove multiple subshell calls and problematic to upper usage >>>> (bug #s escape me right now) >>>> - provide some more information about the working copy that will be >>>> used in the future. >>>> - supporting svn switch >>>> >>>> The most important being the svn switch functionality. >>>> >>>> Please review for commit. >>> And the eclass-manpages documentation broken out into it's own patch. >>> >>> Please review for commit. >> Here's a patch that implements the ESVN_REVISION variable. It finally >> removes all the problematic to_upper usage. It builds off the >> previous patches that make the official way for an ebuild to pass the >> revision it wants via the ESVN_REPO_URI. It ewarn's if an ebuild >> tries to stick a revision into ESVN_OPTIONS. It prints out the >> revision that it's going to be pulling. This was the issue I had with >> zlin's original patch since it would break for the MythTV ebuilds >> since we request the revision in the ebuild. > Here's another patch in the series. > > This patch will skip running svn update when it's unnecessary. > Basically if your local working copy is the same URI and same > revision, it won't run svn update which should speed up emerge times > for those svn KDE users that specify a revision they're looking to > use. Also MythTV users that re-emerge with different use flags. The following patch makes changes to where the svn checkouts are stored. This will fix the issue where for example: mytharchive, mythdvd, mythvideo, mythweather are all stored in http://svn.mythtv/svn/trunk/mythplugins the KDE team has similar issues with their split out ebuilds and are currently solving the issues by calling "private" subversion.eclass Giving the ebuild and eclass programmer full control over the ESVN_PROJECT path will allow for these hacks to disappear.