我正在测试一个项目,由于测试目的,它必须包含一个 Makefile,第一个测试命令将是“make”。但是我不需要makefile来做任何事情。问题是,如果我把它留空,它会在 shell 中打印一行:
make: *** No targets. Stop.
Run Code Online (Sandbox Code Playgroud)
我需要它在 shell 中调用时不打印任何内容- 甚至不是空行(同样,由于我无法控制的测试格式)。那可能吗?
如果你定义了一个空目标
Nothing:
Run Code Online (Sandbox Code Playgroud)
该make命令将告诉
$ make
make: Nothing to be done for 'Nothing'.
Run Code Online (Sandbox Code Playgroud)
然后,只需添加一个 .SILENT 目标
# A makefile
Nothing:
all: twist again
.SILENT:
Run Code Online (Sandbox Code Playgroud)
请参阅链接GNU 使默认情况下保持沉默