我想用makefile编译一些文件。
DEBUG=yes
LESS_FILES= static/backend/css/styles.less static/frontend/css/styles.less
ifeq ($(DEBUG),yes)
LESSC=lessc
else
LESSC=lessc -x
endif
less: $(LESS_FILES)
%.css: %.less
$(LESSC) $< > $@
我创建了这个makefile,但是在启动make less
时,我得到了:
make: Rien à faire pour « less ».
文件.css
尚不存在。怎么了?
答案 0 :(得分:11)
我知道了!有时候让问题找到答案是有帮助的......
DEBUG=True
LESS_FILES= static/admin/css/modulo_admin.less
CSS_FILES=$(LESS_FILES:.less=.css)
ifeq ($(DEBUG),True)
LESSC=lessc
else
LESSC=lessc -x
endif
less: $(CSS_FILES)
%.css: %.less
$(LESSC) $< > $@
答案 1 :(得分:1)
请注意,目标less
取决于源文件。那些已经存在并且是最新的。
我建议将less
目标更改为更像这样:
less: $(CSS_FILES:.less=.css)
(未经测试,我没有安装lessc
工具,也没有合适的输入文件。)