2014-12-05 36 views
1

部分我的makefile有以下代碼:的Makefile:沉默 「使[N]:」 行專門

target.o: 
     cd dir; $(MAKE) 

所在的文件target.o有目錄dir內自己的makefile文件。在編譯期間,我得到下面的輸出線:

make[1]: Entering directory `dir' 
ifort -c target.f -o target.o 
make[1]: Leaving directory `dir' 

我想沉默的第一和第三輸出線,但保持第二。在主makefile中添加-s到make消除了第一個和第三個,但也是我想保留的。

(1)有沒有辦法做到這一點?

(2)有沒有理由這樣做可能不是一個好主意?

+2

'$(MAKE)--no-print-directory'? – 2014-12-05 15:05:27

+0

謝謝你,工作。另外:有沒有辦法讓'cd dir中的兩個命令之一沉默? $(MAKE)--no-print-directory'?或者用兩條線將它們分開,但繼續在同一個shell中工作? – Nordico 2014-12-05 15:11:19

回答

2

你想要$(MAKE) --no-print-directory

-w,--print-directory打印當前目錄。

--no-print-directory關閉-w,即使它是隱式打開的。

你不能只沉默一部分命令。前綴@是全有或全無。

你可以回顯你想要的任何東西(這是自動工具無聲輸出的工作方式,例如,默認的默認輸出,然後輸出GEN target.file或其他)。