Re: [PATCH] fix cc-option-yn whitespace

From: Roland McGrath
Date: Thu Feb 08 2007 - 15:07:08 EST


> Yes.. It doesn't seem to happen with make-3.81, for some reason, and I
> don't see why the leading space happens. Maybe somebody with deep GNU make
> knowledge knows.

You probably think that's me, but thankfully I have succeeded in forgetting
more about GNU make than anyone else knew. I wouldn't be much surprised if
3.81 changed some details about whitespace in `call', or in `define', or
something else like that; people keep diddling with make. At least in the
world I knew, only whitespace after an = or := is stripped like you might
have been expecting, and not whitespace after commas (I mean, why else
would make have the `strip' function?). All of the $(call foo, a, b) uses
introduce whitespace (vs $(call foo,a,b)). It's been luck, or silent
careful tweaking, that's made all those work out right so far. Note also
that the new form of cc-option-yn results in:
then echo " "y""; \
else echo " "n""; \
in those commands. Some other uses of the functions turned into
checker-shell uses might have doubled quotes (i.e. unquoted text) now too.
(People always think make is sh, but it's m4.)

I have long ago sworn off thinking too hard about other people's makefiles
that get arcane with GNU make features. (You don't feel compelled to watch
every piece of porn on the net that people use Linux to get there, do you?)
So I just did the minimal tweak to fix the concrete regression, though I'd
have to say that the "cleanup" has made things messier and more obfuscated.


Thanks,
Roland
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/