Ядро Linux (и различные другие проекты включая мерзавца) имеет очень хорошие make-файлы, которые скрывают гигантские вызовы CC в миленькие акронимы.
Например:
gcc -O2 -o cool.o cool.c -llib
gcc -O2 -o neat.o neat.c -llib
стал бы:
CC cool.c
CC neat.c
Который действительно хорош, если у Вас есть проект с большим количеством файлов и длинных флагов компилятора. Я вспоминаю, что это имело отношение к подавлению вывода по умолчанию и созданию пользовательского. Как дела это?
Вы можете предварять @ к вызовам в целевых объектах makefile.
Например:
%.o: %.c
@$(CC) $(CFLAGS) -c -o $@ $<
@echo "CC $<"