Re: Environment variables, debian/rules and dpkg-buildpackage
On Mon, May 04, 2009 at 07:35:18AM +0200, Guillem Jover wrote:
> * We can set the architecture and default flags (from policy) on the
> makefile to be included, and packagers will be able to do the change
> and fix any possible problems (progressive opt-in), but once it's
> included by all packages, then we can do system-wide default changes
> in the same we change toolchains (mass rebuild, bug filing, change
> when bug count goes down). The makefile has the advantage that the
> distro default can be temporarily changed for the mass build w/o
> needing to totally override the build flags.
I'm really surprised to see this approach getting traction. To me, this
seems like a significant, unprecedented departure from the kinds of
interfaces we've mandated in Policy in the past (i.e., environment
variables, executables and command-line options). While one build helper or
another may mandate Makefile includes, there's never been anything of the
sort in Policy, and I don't think it's good to add such a thing now. I
thought it was generally recognized that it's a Bad Idea to implement config
files using your interpreter's 'include' functionality, but that's basically
what we have here.
If there's any intention at all that Policy eventually mandate use of these
Makefile includes, then at a minimum I think Policy needs to *very* tightly
constrain what dpkg is allowed to put in those files, to avoid future
incompatibilities. But unfortunately, if we're going to support site files,
we're in no position to enforce such requirements there; so packages are
still subject to breakage from admins populating their site file with random
settings (or syntax errors?).
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer http://www.debian.org/