Makefiles的unifdef?

时间:2012-02-24 15:06:52

标签: linux makefile

是否有适用于Makefile的unifdef program?我想自动从Makefile和源文件中删除某些功能。我认为这两者会齐头并进,但到目前为止我似乎无法找到任何东西。

1 个答案:

答案 0 :(得分:1)

unifdef程序已经可用于makefile(或任何其他文本文件),但需要注意的是,#ifdef #endif语句将被make视为注释," raw"文件将通过你所有的statemens。我在makefile上使用unifdef主要用于以下目的:在我的代码中,我有块仅用于开发,并且由于草率或可能有危险,我不想在已发布的代码中使用。通过在源代码和makefile上使用unifdef,我可以从我的开发代码中获得可发布的代码库,而无需通过开发代码与公共分支或类似代码进行同步。我也可以使用unifdef获取代码,包括使用此方法针对不同平台或受众的构建脚本和makefile,但是因为#ifdef语句被解析为注释,使用例如#else可能有点棘手,而且这种技术的太高级应用可能会很快变得无法维护。