我有一個Makefile有以下類型的規則:GNU製作和通配符 - 丟失的文件
%.html:
./generate-images.py > [email protected]
make $(patsubst %.png,%.gif,$(wildcard *.png))
的generate-images
腳本不僅寫入HTML文件(到標準輸出),但幾個.png文件到當前目錄。這裏的目標是將它們轉換爲.gif。 (不是真的,但這是一個例子)
這個工程,如果我直接調用它。問題是:如果我從foo.html
是依賴項的其他規則調用它,通配符語句無法找到任何文件。換句話說,它只叫make
,沒有任何參數,這不是我想要的。
與通配符有什麼關係?或者,有沒有更好的方法來做到這一點?
這是我的帖子得到的。 – Novelocrat 2009-09-24 22:46:56
+1表示通配符問題的清晰解釋,-1表示過度複雜和錯誤的規則(即使在編輯後),+1表示令人驚訝的新洞察力:如果沒有遞歸,你真的無法做到這一點! – Beta 2009-09-25 16:00:30
@貝塔:我真的很想知道我的規則中存在哪些錯誤!請放下提示 - 我將編輯我的答案,並給予您適當的歸屬。 順便說一句,實際上,你*可以*沒有遞歸:-)這就是爲什麼我已經從我的帖子中刪除了這一說法:-)但是,這使得我的帖子更加複雜...... – 2009-09-25 19:32:24