On Monday 22 September 2008 16:50:21 Hisham wrote: > On Sun, Sep 21, 2008 at 8:18 PM, Michael Homer > The solution to this > "problem" is that you don't enable generic flags > > > you don't want to use, and you don't list programs you don't want to > > use as part of the generics you *do* want to use. If you want to use a > > specific implementation for a particular program, you enable that > > implementation for that program. There is no case that isn't already > > covered. > As long as everything defined under Data/DistUseFlags.conf (the > purpose of which is not entirely clear to me) is overridable in > Settings/UseFlags.conf, that sounds like a fair solution. Everything can be overridden at a lower level, and whichever one comes last wins. Distflags are first (the purpose of which is the set of flags that are enabled by default, and that we can update without a potentially messy Settings merge), UseFlags.conf comes next, and the environment variable is last. Within each of those the last also wins, though that probably doesn't come up very often. Maybe during testing. > My distant, high-level perception of the issue: if I don't have > "tcltk" listed in my "gui" flags, or if I have "-tcltk" explicitly > listed in my flags configuration, then I _really_ don't want to see > any optional Tcl/Tk GUIs being built from any recipe I compile. How about just one of them, the one where you take it out of the generic flag. All other ways lie madness and spooky action at a distance. "There's more than one way to do it" isn't a good philosophy for configuration files, and one of the ways is a necessity here.
-foo removes foo from the set of enabled flags at that point. That's all. If foo isn't in the set, that's a no-op. +foo adds foo to the set. If foo is already there, that's a no-op. There's no magic behaviour. Adding one flag will never remove others, and removing one will never cause weird behaviour later on. If a generic flag is turned on at the end of that, it takes the set and does its thing in the way you asked in your GenericFlags.conf. > OTOH, > when I build aMSN, which has a Tcl/Tk GUI, I want that built on the > basis that Tcl/Tk is a mandatory dependency for it, and therefore it > should not be conditioned to a flag in the recipe. If a recipe flags a mandatory dependency, that recipe is broken. That shouldn't ever be a problem so long as we're paying attention in what goes into the store. -Michael
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ gobolinux-devel mailing list gobolinux-devel@lists.gobolinux.org http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel