漂亮的印刷品makefile

时间:2010-06-03 21:28:01

标签: linux gcc makefile compilation

Linux内核(以及包括git在内的各种其他项目)都有非常好的makefile,可以将巨大的cc调用隐藏起来,形成一个很好的小缩略词。

例如:

gcc -O2 -o cool.o cool.c -llib
gcc -O2 -o neat.o neat.c -llib

会变成:

CC cool.c
CC neat.c

如果你有一个包含大量文件和长编译器标志的项目,这真的很好。我记得这与抑制默认输出和制作自定义输出有关。你是怎么做到的?

2 个答案:

答案 0 :(得分:24)

您可以在make文件目标中添加@来调用。

E.g:

%.o: %.c
    @$(CC) $(CFLAGS) -c -o $@ $<
    @echo "CC $<"

答案 1 :(得分:0)

对于更复杂的Makefile,您可以使用Python脚本实时捕获输出并根据需要进行处理,然后实时打印它们:example