From: Thomas Kahle <tom111@gmx.de>
To: gentoo-devhelp@lists.gentoo.org
Subject: Re: [gentoo-devhelp] epatch and svn
Date: Mon, 16 Nov 2009 16:02:37 +0100 [thread overview]
Message-ID: <4B01698D.1090705@gmx.de> (raw)
In-Reply-To: <6142e6140911160627x76597ca0i54f7dfdd14da1a71@mail.gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 2414 bytes --]
Daniel Pielmeier wrote:
> 2009/11/16 Thomas Kahle <tom111@gmx.de>:
>> Hi,
>> I am trying to make an ebuild that uses the subversion eclass.
>> This seems to disbehave when used with epatch.
>> The problem is that epatch directly works on the downloaded svn-sources
>> (in /usr/portage/distfiles/svn-src) When they have been patched once,
>> any future emerge will fail because the patch cannot be applied again.
>> What is wrong here?
> You should not use epatch in the svn repo (DISTDIR) itself. Patching
> should be done after copying the checkout to WORKDIR
Thats true. Actually all that was missing was
cd "${S}"
I (wrongly) assumed to be cd'ed to ${S} automatically.
> Take a look at the eclass [1,2]. Eclasses for live sources have there
> own patching facility.
> For the subversion.eclass this should be setting the ESVN_PATCHES variable.
Description of this variable says:
"List of patches to apply prior to fetching the sources". I find this
confusing. What can you patch before you have the sources?
> I guess this is because functions from the eutils and base eclass
> (which provide patching functions) are overwritten from the live
> source eclass and the other way round depending on the order of
> inheritance. If you do inherit subversion eutils bootstrapping is not
> available and if you do inherit eutils subversion epatch is not
> available. You can work around this by directly calling the function
> from the eclass but an own patching functionality in the live eclass
> is more convenient. At least this is my theory :)
Wait a minute. Now that I'm in the correct directory I source eutils
before subversion and still have epatch available...?
Thanks for theorizing in any case. Looking at the eclass helps a little.
cheers
Thomas
>> By the way, does an ebuild that uses subversion eclass need to state
>> dev-util/subversion in its dependencies??
>>
>
> Again take a look in the eclass [1,2]. It sets subversion as dependency
>
> [1] http://sources.gentoo.org/viewcvs.py/gentoo-x86/eclass/subversion.eclass?view=markup
> [2] $PORTDIR/eclass/subversion.eclass
>
--
Thomas Kahle
The fundamental theorem of algebra is open source. Like any other
mathematical theorem it can be applied free of charge and everybody
has access to its proof and can convince himself how it works. Why
should software be any different?
[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 261 bytes --]
next prev parent reply other threads:[~2009-11-16 15:05 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-16 13:36 [gentoo-devhelp] epatch and svn Thomas Kahle
[not found] ` <6142e6140911160627x76597ca0i54f7dfdd14da1a71@mail.gmail.com>
2009-11-16 15:02 ` Thomas Kahle [this message]
2009-11-16 15:37 ` Daniel Pielmeier
2009-11-16 17:33 ` Thomas Kahle
2009-11-16 18:25 ` Mike Frysinger
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=4B01698D.1090705@gmx.de \
--to=tom111@gmx.de \
--cc=gentoo-devhelp@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