大型的makefile经常包含的许多的工作目标,下面是个简介的help目标,能够显示makefile中的工作目标。
.PHONY: help
help:
@ $(MAKE) --print-data-base --question | /
awk '/^[^.%][-A-Za-z0-9_]*:/ /
{print substr($$1, 1, length($$1)-1) }' |/
sort | /
pr --omit-pagination --width=80 --columns=4
先用print-data-base输出make的规则库。包括了内置的规则,和makefile中的规则。
该规则经过awk过滤,凡是不以. 和 %开头的规则都将打印出第一列。
然后就是排版。
不过这个东东,实在有点简单了。