* Steffen Dettmer wrote on Mon, Feb 08, 2010 at 11:15:52AM CET: > On Sat, Feb 6, 2010 at 6:56 PM, <ralf.wildenh...@gmx.de> wrote: > [...] > > data-in-build-tree: data-in-source-tree > > cp $(srcdir)/data-in-source-tree data-in-build-tree > > We typically write something like: > > # file /must/ be in current dir (builddir) for proprietary tool: > __heap.o: lib/__dfl_heap.o > cp -f $< $@ > > Make finds $(srcdir)/lib/__dfl_heap.o via VPATH, if any, and > sets `$<' accordingly
Using $< is portable only inside inference rules (.suf1.suf2 rules), in target rules it is a GNU make-only feature. For non-GNU make, you need to spell out the source file inside the rule commands. Cheers, Ralf