On Apr 12, 2016, at 1:34 PM, Christopher Jones <jon...@hep.phy.cam.ac.uk> wrote:
> Take if you want, as a real world case, ROOT6, which I know well. It has a 
> large number of variants, because upstream’s build system offers all these as 
> optional extras. Many of them have dependencies I do not wish to force on all 
> users, if they don’t require that feature. 
> 
> Some of them create additional libraries for the new features, some just add 
> the functionality to existing ones. Most will also extend the introspection 
> system as part of root. None can be built as afterthoughts. You have to 
> configure ROOT from the start with the features you want. So for this port 
> there is no chance in hell I am going to implement them as sub-ports. 

It would be nice if upstream could be convinced to 'fix' this.

(As an end user, it's much easier to understand application + optional plugins 
than application configured in one of many possible states).

ROOT6 may well be a 'special case' where we can't easily work-around our lack 
of variant dependency info - but how do other packaging systems that don't have 
variants deal with it?

>> IIRC the subversion-bindings ports didn't initially have nice 'install' 
>> targets, so we manually cleaned up post-destroot so that they would just 
>> have the additional libs that were necessary. The actual 'build' ends up 
>> duplicating some build products that don't get installed for the bindings 
>> ports (because they're already installed by the main port) - but it's worth 
>> it to have everything "just work" for our end-users.
> 
> That sounds just like the hackery needed in the portfiles to implement this 
> that I think we should avoid.

I suppose it looks like hackery to you - but it does provide a consistent and 
functional end product for the user.

hacking on how default variants work only fixes one case (and doesn't fix the 
problem in general).

-- 
Daniel J. Luke



_______________________________________________
macports-dev mailing list
macports-dev@lists.macosforge.org
https://lists.macosforge.org/mailman/listinfo/macports-dev

Reply via email to