On 08/14/2012 02:51 PM, Michał Górny wrote: > On Tue, 14 Aug 2012 14:09:17 -0700 > Zac Medico <zmed...@gentoo.org> wrote: > >> On 08/14/2012 01:54 PM, Michał Górny wrote: >>> On Tue, 14 Aug 2012 21:45:56 +0100 >>> Ciaran McCreesh <ciaran.mccre...@googlemail.com> wrote: >>> >>>> On Tue, 14 Aug 2012 11:44:49 +0200 >>>> Michał Górny <mgo...@gentoo.org> wrote: >>>>> As some of you may have noticed, lately introduced 'double include >>>>> preventions' have caused changes in effective phase functions in a >>>>> few ebuilds. Also, often it is undesirable that change in inherits >>>>> of an eclass may cause an undesired change of exported functions. >>>> >>>> The problem here is that eclasses aren't clearly split between >>>> "utility" and "does stuff", so people are inheriting "does stuff" >>>> eclasses to get utilities. The fix is to stop having stupidly huge >>>> complicated eclasses; changing inherit behaviour is just >>>> wallpapering over the gaping hole. >> >> Ciaran's assessment sounds pretty accurate to me. >> >>> Soo, how do you propose to handle bug 422533 without changing >>> inherit behavior? >> >> Close it as WONTFIX. The ifndef thing that we're doing now seems like >> a reasonable approach. > > But you're aware that this 'reasonable approach' just made the whole > problem by changing exported functions, right?
That just means that somebody made a mistake. They should have put the EXPORT_FUNCTIONS call *outside* of the ifndef block. Just educate people about the correct place to put the EXPORT_FUNCTIONS call, and that problem is solved. -- Thanks, Zac