我的makefile的一部分具有以下代码:
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中的make中添加-s可以消除第一个和第三个,但也可以消除我想要保留的那个。
(1)有没有办法做到这一点?
(2)这样做为什么不是一个好主意?
最佳答案
您需要$(MAKE) --no-print-directory
。
您不能仅使命令的一部分静音。 @
前缀为全有或全无。
您当然可以回显任何内容(例如,这是autotools静默输出的工作方式,将默认的make输出静默,然后输出GEN target.file
或其他内容)。
关于Makefile:专门使 "make[N]:"行静音,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27318702/