On Sun, 18 Oct 2015 11:01:27 +0200
Michał Górny <mgo...@gentoo.org> wrote:
[...]
> > > It's trivial to change patch to -p1 (I think patchutils can do
> > > that).    
> > 
> > It is. But the above cases were not whether it is possible, but
> > rather desirable.  
> 
> Consistency is desirable. There is world outside ebuilds, and they
> need to apply patches sometimes.

Yes, that's why I find '-p1 relative to $S' inconsistent. Nothing wrong
with -p1, but $S is from ebuild. If you avoid '$S', then you must also
drop -p1, simple as that :)

> > > It's beneficial to keep patches with predictable directory
> > > structure. And after all, you can use 'eapply -pN' explicitly.
> > > And yes, I know you hate having to think instead of having some
> > > random hidden implicit, likely-to-fail logic do it for you.    
> > 
> > Well, there's that, but I also wonder why every single ebuild uses
> > epatch and not 'patch -p1 < ...'  directly if epatch is so bad...  
> 
> Because 'patch -p1 < ... || die' needs to be repeated multiple times
> for each file. Simple as that.

Honestly, I have serious doubts that's the only reason :=)

> > But my point was not there: I still fail to understand why we should
> > set in stone something not so well tested in comparison to epatch,
> > that doesn't seem to provide any gain besides a default phase that
> > an eclass can also provide, that has less features and that can't be
> > changed/fixed easily.  
> 
> epatch is not well tested. Some of its branches are. Some of its code
> was changed due to failures. We're reusing the parts of epatch that
> make sense.
> 
> Otherwise, epatch would take more space in PMS than all stuff about
> ebuilds added together, would require change in EAPI every 6 months,
> plus a number of bugfix releases due to broken implementations of
> over-complex concept.


I don't claim that epatch should go to PMS nor that eapply is bad: I
actually agree that for PMS something like eapply is way much better
than epatch.
What I do claim, however, is that PMS is not the place to throw random
widely used functions that can very well be defined in eclasses and
improved without going through all the PMS paperwork (which paperwork
is good for its purpose, but like for multilib, should be avoided when
possible).

Alexis.

Reply via email to