【发布时间】:2020-11-24 21:19:41
【问题描述】:
寻找一点 Makefile 糖果;没有什么关键任务。我有这个 Makefile 输出:
$ make
all The Whole Enchilada
target01 Descript1
target02 Descript2
target03 Descript3
target04 Descript4
由于某种原因,我似乎无法让它在输出中打印出一条水平线;正在寻找这个:
$ make
all The Whole Enchilada
target01 Descript1
target02 Descript2
------------------------------------------------ make all ends here
target03 Descript3
target04 Descript4
只是一个带有右对齐消息的简单分隔符。
我应该分享一下,这是我的 Makefile 的结尾,它会打印所有目标:
#-----------------------------------------------------------------------------#
#------------------------ MANAGERIAL OVERHEAD ----------------------------#
#-----------------------------------------------------------------------------#
print-% : ## Print any variable from the Makefile (e.g. make print-VARIABLE);
@echo $* = $($*)
.PHONY: help
help:
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-16s\033[0m %s\n", $$1, $$2}'
.DEFAULT_GOAL := help
如果您能在单行 printf 语句中帮助我理解它,则可以加分;出于某种原因,printf 不太适合我。
【问题讨论】: