将管理文件放在不同的目录中

时间:2015-05-19 13:24:04

标签: makefile

我有一个程序可以将Less文件编译成CSS文件。我创建了一个通配符make target,它使用适当的参数调用lessc以在同一目录中创建CSS文件:

%.css: %.less node_modules/less/bin/lessc
    node_modules/less/bin/lessc $< $@

这将产生以下输出目录结构:

css/
|- foo.less
|- foo.css

这完美无缺。但是,我想采用不同的目录结构:

css/
|- foo.css
|- less/
   |- foo.less

但是,我无法使用make来管理在不同目录中创建文件的合理方法(我特别希望避免不必要的重新编译)。如何更改目标以实现此行为?

1 个答案:

答案 0 :(得分:0)

您只想将必需的前缀放在先决条件上。处理其余部分。

%.css: less/%.less node_modules/less/bin/lessc
        node_modules/less/bin/lessc $< $@