2010-02-22 104 views
0

我需要在使用automake工具並遞歸製作的系統上工作。如何跟蹤遞歸make?

'make -n'只追蹤make的最高級別。

有沒有辦法讓make在遇到make命令時執行make -n?

回答

3

使用$(MAKE)來調用您的子圖文件,而不是使用make。這應該工作。請在手冊中查看How the MAKE variable works。這裏有一個簡單的例子:

的Makefile:

all: 
    @$(MAKE) -f Makefile2 

Makefile2:

all: 
    @echo Makefile2 

命令行:

$ make 
Makefile2 
$ make -n 
make -f Makefile2 
echo Makefile2 
$ 
3

請問您的遞歸makefile文件是這樣的:

foo: 
    make -C src1 
    make -C src2 

或者這樣:

foo: 
    ${MAKE} -C src1 
    ${MAKE} -C src2 

我認爲你需要,如果你想傳遞給孩子標誌使流程使用第二種風格。可能是你的問題。