我正在尝试为现有项目实现命令行界面。我这样做的方式是使用两个单独的makefile。一个是项目已经存在的makefile,另一个是CLI。我首先运行CLI makefile,获取必要的文件,然后使用项目的makefile将这些文件与现有项目链接。现在,问题是每次我将现有项目中的函数添加到CLI文件时,CLI makefile继续并构建这些函数,我不希望它这样做,因为这不是必需的,并且给了我警告和错误(因为我不想要保持包括所有标题和.o's)。
简而言之,我可以做一些事情,以便CLI的makefile忽略添加到CLI文件的功能,而不是查看函数内部来检查所有内容吗?
答案 0 :(得分:1)
让其中一个makefile在编译过程中为宏添加一个定义(称之为useCLI)(-DuseCLI
)。对于您不想编译的函数,请使用#ifndef useCLI
和#endif
将它们包围起来。但请注意依赖性。