假设有一个带有一些函数 func_a 的源文件 ac。我想根据某些功能定义调用 func_a,并且还希望基于理想的相同功能定义将 ac 包含在模块中。
所以在我总是存在的模块源中(比如main.c)我可以有类似的东西
#ifdef FEATURE_A
func_a();
#endif
并在模块的 kbuild 中类似于
obj-$(CONFIG_SAMPLE) += sample.o sample-objs := main.o utils.o
仅当定义了 FEATURE_A 时,才将 ac 包含到示例模块中
???
但这可能没有意义,因为一个是预处理器指令,另一个是编译器/链接器/构建指令。也许预处理器指令使用 kbuild 定义的某些标志的另一种方式更有意义?有没有办法做到这一点?
谢谢。