On Sun, 15 Apr 2012 13:00:10 +0200
"Andreas K. Huettel" <dilfri...@gentoo.org> wrote:

> > Right now we have support in some packages for user patches - those
> > being patches dropped into /etc/portage/patches/pkgname/ - which are
> > automatically applied.  Because this feature is implemented by
> > epatch_user() in
> > eutils.eclass, it is only available for ebuilds that inherit eutils
> > and explicitly call epatch_user or inherit another eclass that
> > calls it in an exported phase (eg. base).  The end result is a very
> > inconsistent experience, where user patches may or may not work not
> > only on a package-by-package basis, but ebuild-by-ebuild.
> > 
> > Is there any reason why this couldn't just be done in the package
> > manager, making user patches available for all ebuilds without code
> > changes?
> 
> Well as people have already pointed out, the problem is where to
> place it:
> * before src_prepare is bad because of gentoo-patches
> * after src_prepare is bad because of eautoreconf calls in src_prepare
> 
> I would even suggest a more radical approach, namely (for an upcoming
> EAPI) to migrate some of the features of base.eclass into the package
> manager. Applying patches is a universal problem which should be
> handled as central as possible.
> 
> As example, (in that future EAPI)
> * have patches from the PATCHES array be applied automatically
> _before_ src_prepare (the same way as done currently in
> base_src_prepare)

No. EAPIs have overridable phase functions for a reason.

> * disallow or deprecate at least direct calls to epatch, to ensure
> ordering

What if some patches are applied conditionally?

-- 
Best regards,
Michał Górny

Attachment: signature.asc
Description: PGP signature

Reply via email to