用途:在创建或修改 Makefile 时,帮助写出自文档化、对使用者友好的 Makefile,并提供对已有 Makefile 的审计清单。
主要能力:一是默认目标约定,要求设置 .DEFAULT_GOAL := help,使直接运行 make 时显示可用目标而非执行第一个目标;二是自文档化 help 目标,使用“target: ## 描述”的注释模式配合 awk 解析生成帮助列表,支持“##@ 段落”作为分组标题;三是安装/卸载模式,通过符号链接把一次性脚本或二进制暴露到 ~/bin,包含 install、uninstall 和可选的 check 目标,强调用符号链接而非复制、只删除符号链接、可重复执行、遇非符号链接冲突时报错、按需 mkdir -p;四是审计模式,检查是否设置默认目标、是否存在 help 目标及其是否用 awk 模式、所有目标是否有 ## 描述,并警告缺失描述、非文件目标缺少 .PHONY、help 未使用 $(MAKEFILE_LIST) 等情况,报告按 PASS/FAIL/WARN 列出并给出行号与修复建议;五是给出包含变量、.PHONY 与示例目标的完整 Makefile 示例。
使用方式:在 Makefile 中按资料给出的模式书写目标与 ## 注释,help 目标用 awk 解析 $(MAKEFILE_LIST);需要把脚本安装到 ~/bin 时使用给定 install/uninstall/check 目标模式,必要时在安装后提示用户 source ~/bin/脚本名。审计时按资料清单逐项核对并输出报告。
适用场景:编写或维护团队共用的 Makefile、为脚本提供统一安装入口、审查现有 Makefile 的规范性。
限制:资料未说明该技能的具体调用命令、安装方式、适用平台与收费信息;示例中 lint/test 等目标仅为示意,具体实现需用户自行提供。