Re: presumable last policy change before releasing Squeeze?
On Tue, 6 Oct 2009, Bernhard R. Link wrote:
3) you patch that Makefile to no longer set CC CFLAGS LDFLAGS and LIBS
What I am saying is that this patch is unnecessary. you can do that
totally in debian/rules by placing those variables in the make
invocation within your build-stamp target.
I tried to do this, but I didn't like the result. I think I could identify
with this approach if it wasn't necessary to patch the upstream Makefile
at all. Since I have to patch the upstream Makefile, I have to edit it,
look at it, and it is very disturbing that I do see (according to the
suggestion above) macro definitions at the top, and have to remind myself,
"yes, those will be overridden by debian/rules". So maybe the Makefile
patch is a little bit bigger, but the patched Makefile shows a much
cleaner picture this way: no definitions for the macros used all over the
place? They *must* be coming from the outside.
Why I have to patch the upstream Makefile: the target "debian-sanity",
which is optionally depended upon, and was developed (IIRC) because my
sponsor asked for it, definitely belongs to the Makefile, not
debian/rules. This target does real stuff, and in my mind debian/rules
should be minimal and mostly contain debhelper invocations; IOW it should
be a thin wrapper.
= and := are exactly the same, except that := is evaluated once and then
stored, whereas = is evaluated later. If I were you I would be more
worried that all the parsing and reparsing (which causes the need for
the extra $) has some side effects.
Wherever lfs.sh is called, I now use := and $(shell), as you suggested.