2012-05-17 125 views
0

這是一個簡單的事情,而且我已經花了太多時間尋找解決方案...makefile文件包含解析變量

我有可變在我的makefile

$(targets): target1.o target2.o target3.o 

現在我想執行include命令爲target1.d target2.d target3.d基於這個變量,什麼是正確的單行命令來做到這一點?

+0

它是GNU make btw? –

回答

2
targets_obj := target1.o target2.o target3.o 
$(targets): $(targets_obj) 
-include $(targets_obj:.o=.d) 
+0

有沒有辦法沒有添加target_obj? – Ulterior

+0

只能使用自動變量'$ <','$ ^'等來獲取目標的先決條件列表,但make不能包含在規則中。因此需要一個帶有文件列表的變量。 –

+0

感謝您的快速響應,它的效果很好 – Ulterior