On Mon, Mar 16 2009, Russ Allbery wrote: > Raphael Hertzog <hert...@debian.org> writes: > >> You're not trying very hard to look from both sides: whether the default >> value comes from the environment or from an included Makefile, in both >> cases the user can override it with command-line arguments. >> >> Granted it means that dpkg-buildpackage would have to pass >> user-overriden flags on the command line instead of using the >> environment, but that can be done if people really want this >> possibility. > > I think it's clearly mandatory to implement a hierarchy of settings: > > * Debian defaults > * Local distribution overrides > * Local package overrides > * User settings > > where each overrides the previous ones.
We can do better than that with the Make snippets. Say, as an user, I think my admin is nuts, and I want o override his setting, and revert to the project wide default, for all packages I build on this machine. Easy (just set site_foo in the env, call debian/rules with -e). Or, as an admin, I want to always override the project wide settings (hey, I like hardening flags), but on some machines I have taken time out to set up site wide defaults -- and I do not want to over ride those. Again, easy to do with the example snippet I posted. All kinds of flexibility become ours once we embrace toe sour^H^H^Hsnippets, I mean. > Personally, I'd rather see this done via an included make fragment. I > think the logic in debian/rules is simpler in that case, and I don't > agree with the argument that it's that much harder to implement than > relying on environment variables. In practice, huge numbers of Debian > packages already unconditionally set CFLAGS in debian/rules and hence > override any environment variable settings. All those packages are > going to have to be modified anyway. I don't see a way of > meaningfully deploying this change without modifying most of the > archive. The advantage of the snippet approach is where packages might break if the builtin defaults are changed will not be broken by the snippet approach, since the change is opt-in. manoj -- It is a city built of bones, and daubed with flesh and blood, in which old age and death, pride and hypocrisy are the inhabitants. 150 Manoj Srivastava <sriva...@debian.org> <http://www.debian.org/~srivasta/> 1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C -- To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org