%% Pierre B <[EMAIL PROTECTED]> writes: pb> The problem is with the backquote AND/OR addprefix. pb> The following makefile illustrates the bug.
I think you're misunderstanding something basic here. Make does not process backquotes. The shell processes backquotes. Make only processes functions, such as the $(shell ...) function. So, the result of this line: buggy_string:=`ls *.tst`# is to create a variable named "buggy_string" with the literal contents "`ls *.tst`", _NOT_ the expansion of the backquote. Then later we see: pb> @ echo xbeginx $(addprefix ./,${buggy_string}) xendx mucked up What does this do? The addprefix function is invoked before the script is passed to the shell, so the actual shell command that's being run here is: echo xbeginx ./`ls ./*.tst` xendx mucked up Now you can see why you get the results you do. It would be enlightening, perhaps, for you to invoke make with the -n option so it prints the commands it would send to the shell without actually sending them there. Then you can see what is being expanded by make and what isn't. Also, you could remove the "@" prefix characters until you know it's working, to see exactly what's going on. -- ------------------------------------------------------------------------------- Paul D. Smith <[EMAIL PROTECTED]> Find some GNU make tips at: http://www.gnu.org http://make.paulandlesley.org "Please remain calm...I may be mad, but I am a professional." --Mad Scientist _______________________________________________ Bug-make mailing list [EMAIL PROTECTED] http://lists.gnu.org/mailman/listinfo/bug-make