继续翻译
Note that the directory prefix (D), as described in *note Implicit Rule Search Algorithm: Implicit Rule Search, is appended (after expansion) to all the patterns in the prerequisites list. As an example:
.SECONDEXPANSION: /tmp/foo.o: %.o: $$(addsuffix /%.c,foo bar) foo.h The prerequisite list after the secondary expansion and directory prefix reconstruction will be `/tmp/foo/foo.c /tmp/var/bar/foo.c foo.h'. If you are not interested in this reconstruction, you can use `$$*' instead of `%' in the prerequisites list.
请注意目录前缀 (D), 与此有关的说明在 *note Implicit Rule Search Algorithm: Implicit Rule Search。此前缀会追加到(扩展后)所有 前提条件列表的模式中。如:
.SECONDEXPANSION:
/tmp/foo.o:
%.o: $$(addsuffix /%.c , foo bar) foo.h
经过二次扩展和目录前缀重新构建后,前提条件列表将会变成:
/tmp/foo/foo.c /tmp/var/bar/foo.c foo.h
如果你对这种重新构建不感兴趣,你可以用 $$* 来带前提条件列表中的 %。
后文待续