2

这是我的生成文件:

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

all: $(CSS)
    component build

%.css: %.styl
    @echo $<

这个示例每次都会编译,因为 CSS 文件不/永远不会存在,因为我正在构建/build. 如何构建到另一个目录而不重新编译源代码?

谢谢!

4

2 回答 2

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 $@)
    $(STYLUS) -u nib -o $(dir $@) $<

clean:
    rm -rf build

.PHONY: clean
于 2012-11-29T07:21:29.823 回答
-1

我知道您的问题专门与 makefile 相关,但是您可以考虑使用 grunt.js (https://github.com/gruntjs/grunt-contrib-stylus/) 来构建您的手写笔项目。它基于 javascript 并在 node.js 上运行,并且比使用 make 更容易设置、配置和维护。

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

于 2012-12-06T02:16:33.187 回答