在构建之前在makefile中的源文件上运行预处理工具

时间:2014-07-15 19:40:12

标签: shell build makefile gnu-make

我有一个工具可以说mytool对源文件进行一些预处理。基本上,它可以检测源文件中的某些功能(基于输入列表文件)。

调用它的方式是:(假设我们有两个源文件 - input1.cinput2.c

./mytool input1.c input2.c --  

(' - '用于将某些参数保留为默认值)

现在,我希望将此工具挂钩到任何构建过程,即makefile,以便该工具可以从makefile获取所有源文件,并且可以在所有源文件上运行。所以它说有3个C文件--1.c,2.c和3.c然后我们想做

./mytool 1.c 2.c 3.c --

然后继续通常的构建过程,即“制作”#39;在最简单的情况下。

我怎样才能做到这一点?这有可能通过某种变量覆盖吗?

1 个答案:

答案 0 :(得分:0)

最简单的事情,假设您不介意每个.c文件运行一次的工具(而不是所有.c文件运行一次)将替换默认的{{ 1}}和%: %.c内置制作规则(假设这些规则正在使用中)并将您的工具添加到这些规则的主体中。

这只运行需要从源代码重建文件的工具(根据@ Beta对OP的评论)。