Rick Flower wrote: > ==================================================== > build_teststubs: $(TESTSTUB_SOURCES) > $(foreach srcfile, $(TESTSTUB_SOURCES), ln -s $(srcfile) .) > > all: build_teststubs $(OBJECTS) > ==================================================== > > Once I run this I get output like the following : > > ln -s /export/home/mylogin/foo/bar/bah/teststubs/src/foo.cc . ln -s > /export/home/mylogin/foo/bar/bah/teststubs/src/bar.cc .
Foreach is just a simple string processing function. It has no idea that "ln -s $(srcfile) ." is actually a command, so the output of the foreach expansion is just one long list of words. That's not a valid command. You need to add a delimiter to separate each ls invocation, e.g. "$(foreach srcfile, $(TESTSTUB_SOURCES), ln -s $(srcfile) . ;)". Brian _______________________________________________ Help-make mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-make
