Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
说我有这个: -
files := a.txt b.txt c.txt $(files): ifeq ($@, a.txt) #do this else #do that endif
这似乎不起作用。有什么解决方法吗?
正统的处理方式是:
files_a = a.txt files_bc = b.txt c.txt files = $(files_a) $(files_bc) all: $(files) $(files_a): do this $(files_bc): do that
如果不同的文件需要不同的规则,则将它们单独分组。这样做的另一个优点是它不依赖于 GNUmake扩展。如果两组命令(“做这个”和“做那个”)之间有共同的操作,您可以将这些共同的操作编码为宏。
make