调试Makefile如何抑制沉默

时间:2015-11-19 14:30:32

标签: makefile gnu-make

有没有办法压制沉默' @'在规则? 我想看看Makefile的功能,但是给定Makefile中的所有规则都是用' @'来定义的。在前面像:

if

我搜索选项以查看输出go: @do something here... 不存在。

3 个答案:

答案 0 :(得分:1)

您可以使用//declaration class OneController: UIViewController, PushViewControllerDelegate //show modal let twoController = TwoController() twoController.delegate = self self.presentViewController(twoController, animated:true) //MARK: PushViewControllerDelegate func pushViewController(vc: UIViewController) { self.navigationController?.push(vc, animated:true) } 标记运行make。您将能够看到执行了哪些命令。虽然没有实际执行它们!

来自GNU make manual:

  

当make被赋予标志'-n'或'--just-print'时,它只会回响最多   食谱,不执行它们。请参阅选项摘要。在这种情况下   甚至打印以“@”开头的配方行。这个标志是   有用的找出哪些食谱认为是必要的,没有   实际上是这样做的。

答案 1 :(得分:0)

除了使用-n之外,您可以(如果makefile在您的控制之下进行编辑),请查看使用类似我的自动启动silent make rules内容的内容。

允许您动态覆盖make运行时的静默。

答案 2 :(得分:0)

您可能愿意这样做:

  • 在makefile的顶部,添加silence ?= @

  • 将所有@ - 前缀更改为$(silence)

然后make会默认观察沉默,make silence=会 是冗长的。

如果你不想这样做,那么很有可能:

cat Makefile | sed 's/\t@/\t/g' | make -f -

会做到这一点。