On Sat, 2012-03-03 at 07:32 -0800, Mark Galeck (CW) wrote: > MACRO = $(info ->$(1)<-) > $(eval $(call MACRO,\ > foobar)) > > causes a blank to be added before foobar! So "inserting a backslash > followed by a newline" changed the behaviour of the makefile.
I agree that this behavior (backslash/newline is replaced by a single space) is annoying; if I were creating makefile syntax I would not have done it this way. However make is in that class of utilities that were invented in the very early days, before many of the syntax "best practices" we now take for granted had been discovered. Unfortunately this is mandated by the POSIX spec and it's been true of every version of GNU make (and other versions of make). Just yesterday I saw a makefile that contained this: SOURCES = foo.c\ bar.c\ biz.c\ baz.c so changing this would absolutely break many real makefiles. -- ------------------------------------------------------------------------------- Paul D. Smith <psm...@gnu.org> Find some GNU make tips at: http://www.gnu.org http://make.mad-scientist.net "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Help-make mailing list Help-make@gnu.org https://lists.gnu.org/mailman/listinfo/help-make