我得到了一个使用C编写的开源项目。它使用#ifdef进行交叉编译。源代码中到处都有很多ifdef。我只想修改它以适应一个平台。我考虑通过编译器的预处理器(Visual C++)运行它,但它会将预处理结果写入单个文件,这不是我需要的。有人知道一种在保留结构完整的情况下预处理项目的方法吗(所有文件都完好无损)?请勿使用grep。
编辑:
我找到了一个潜在的解决方案(现在互联网上可以找到很多惊人的东西)。这是boost.wave - 一个C++预处理器库,可以做一些有趣的事情。我不知道它会变成什么样子,但我会尝试一下。不过,这还不是最终答案,如果您有解决方案,我很乐意听取。
编辑:
我找到了一个潜在的解决方案(现在互联网上可以找到很多惊人的东西)。这是boost.wave - 一个C++预处理器库,可以做一些有趣的事情。我不知道它会变成什么样子,但我会尝试一下。不过,这还不是最终答案,如果您有解决方案,我很乐意听取。