2012-11-29 30 views
2

这里是我的makefile:预防的makefile文件

STYLES = $(wildcard views/*/*.styl) 
CSS = $(STYLES:.styl=.css) 

all: $(CSS) 
    component build 

%.css: %.styl 
    @echo $< 

这个例子将每一次编译,因为CSS文件不/永远不会存在,因为我建立到/build。我如何建立到另一个目录,而不是重新编译源代码?

谢谢!

回答

0

知道了,会喜欢上清理一些建议......

STYLUS = node_modules/stylus/bin/stylus 
STYLES = $(subst views, , $(wildcard views/*/*.styl)) 
CSS = $(STYLES:.styl=.css) 

all: $(addprefix build, $(CSS)) 
    component build 

build/%.css: views/%.styl 
    mkdir -p $(dir [email protected]) 
    $(STYLUS) -u nib -o $(dir [email protected]) $< 

clean: 
    rm -rf build 

.PHONY: clean 
-1

我知道你的问题具体涉及一种生成文件,但是你可以考虑使用grunt.js(https://github.com/ gruntjs/grunt-contrib-stylus /)来建立你的手写笔项目。它基于javascript并且在node.js上运行,并且比使用make更容易进行设置,配置和维护。

另外,您可以使用grunt轻松管理整个项目的构建过程,因此如果您需要连接并缩小JavaScript,然后在构建后清理临时文件夹,只需添加这些任务即可非常棒的构建系统。