项目构建:依赖管理与实用技巧
1. 生成源文件处理
在项目构建中,对于生成的源文件,我们需要特别处理。例如,有如下代码:
bin_PROGRAMS = program
program_SOURCES = program.c program.h
nodist_program_SOURCES = generated.h
BUILT_SOURCES = generated.h
CLEANFILES = generated.h
generated.h: Makefile
echo "#define generated 1" > $@
nodist_program_SOURCES 变量确保 Automake 不会生成尝试分发该文件的规则,我们希望最终用户运行 make 时构建它,而不是将其包含在分发包中。
BUILT_SOURCES 就像一个“拐杖”,它强制生成所列文件的规则首先执行,并且仅在用户执行 make all 或 make check 目标时执行。如果直接尝试执行 make program 目标,使用 BUILT_SOURCES 创建的规则甚至不会执行。
2. 依赖管理
在 C 或 C++ 项目中,源文件有两种不同类型的依赖:
- 显式定义在 makefile 中的依
超级会员免费看
订阅专栏 解锁全文
1122

被折叠的 条评论
为什么被折叠?



