我正在使用GNU Make來構建靜態html文檔的三個不同版本。如何使用單個Makefile定位多個目錄?
我使用Less作爲CSS預處理器。
我的目錄結構是這樣的:
Makefile
160x600/style.less
300x250/style.less
728x90/style.less
這是我的Makefile:
LESSC=lessc -x # use -x for debugging
.PHONY: all clean
all: 160x600 300x250 728x90
%.css: %.less
$(LESSC) $< > [email protected]
160x600: 160x600/style.css
300x250: 300x250/style.css
728x90: 728x90/style.css
clean:
rm -f 160x600/*.css
rm -f 300x250/*.css
rm -f 728x90/*.css
這樣一來,我可以使用make 160x600
從style.less建設的style.css。
但我不想明確列出每個目錄的目標規則。相反,我嘗試添加該規則,而這三個目錄特定的國家:
%: %/style.css
但是,這並不工作。我想從這個例子中清楚我的目標是什麼。有沒有辦法接受任何目錄作爲目標,這樣我只需要列出all:
規則中的目錄名稱?
http://stackoverflow.com/questions/7123431/building-multiple-executables-with-similar-rules –