Makefile 使用记录

赋值

赋值方式特点展开方式适用场景
=(简单变量)延迟展开,支持动态参数每次使用时展开动态参数传递、函数定义
:=(递归扩展变量)立即展开,静态值定义时立即展开静态变量、提高效率
?=(条件赋值)条件赋值,避免覆盖定义时立即展开设置默认值
+=(追加赋值)追加值到变量每次使用时展开动态构建变量值、多行命令
override(覆盖赋值)覆盖变量,优先使用命令行值定义时立即展开确保命令行中的值被使用
define ... endef(函数定义)定义函数,支持参数传递每次调用时展开动态生成值、复杂逻辑