我不確定是否gmake或gcc,我不明白在這裏。使刪除依賴文件
我正在使用-MM和-MD選項爲我正在使用的單元測試框架生成依賴關係規則。具體做法是:
$(TEST_OBJ_DIR)/%.d: $(TEST_SRC_DIR)/%.cpp
@$(CPPC) -MM -MD $< -o [email protected]
@sed -i -e 's|\(.*\)\.o:|$(OBJ_DIR)/\1.o $(TEST_OBJ_DIR)/\1.d $(TEST_OBJ_DIR)/\1.o:|' [email protected]
-include $(TEST_DEP_FILES)
當我運行make
,畢竟二進制文件鏈接(正確),我看到了以下額外的(不明原因)行之前做出口
rm test/obj/dice.d test/obj/regex.o test/obj/inventoryContainer.d test/obj/color-string.d test/obj/dice.o test/obj/inventoryContainer.o test/obj/color-string.o test/obj/regex.d
從那裏是rm
命令來嗎?唯一的地方 - 任何地方 - 我有我的生成文件的rm
命令是在乾淨的指令
test-clean:
rm -f $(TEST_BIN_FILES)
rm -f $(TEST_OBJ_DIR)/*.{a,d,o}
任何想法?
或.SECONDARY ... – reinierpost 2010-07-25 16:34:34
@rei啊,是的。我知道'.SECONDARY'強制將文件當作中間文件,但我沒有意識到它也停止了從刪除它們 – 2010-07-25 16:58:22