我想根據xml文件和產品的內容有條件地包含makefile。
我的XML文件(myxml.xml):有條件地包括其他生成文件
<product1>
<component1 dirname=dir1 />
<component2 dirname=dir2 />
</product1>
<product2>
<component1 dirname=dir1 />
<component3 dirname=dir3 />
</product2>
Dir1中我有一個config.mk文件,該文件是這樣的:它們的所有子目錄
SRC_JS+=dir1/file1.js
SRC_JS+=dir1/file2.js
SRC_HTML+=dir1/file3.html
同爲DIR2和DIR3 makefile目錄。
現在我想根據指定的產品包括某些config.mk文件根據什麼是在XML文件。
所以我的makefile:
myjscode.js: myxml.xml
read_dirs.py -p $PRODUCT $< > mydirs.txt
while read mydir; do \
include $$mydir/config.mk ; \
done < mydirs.txt;
js-compiler $(addprexis --js ,$SRC_JS) -output [email protected]
可以這樣做? 僅供參考:我正在使用bash,而read_dirs.py腳本輸出一個「每行一個目錄」列表。
感謝您的幫助! – user1900375
但是...你確定這是工作(第一部分)?據我所見,我首先得到包含文件沒有找到的錯誤(這是正確的,因爲包含文件必須被創建)。 然後構建具有SRC_JS變量先決條件的目標。這會失敗,因爲SRC_JS變量尚未設置。 然後創建包含文件。 此時我期望make文件系統包含創建的包含文件並使用SRC_JS先決條件重新創建目標。不幸的是,事情並非如此。有問題? – user1900375