我正在使用makefile来编译由许多.c文件组成的程序,并且任何时候make调用它都只会编译上次运行后修改的那些文件(直到这里没有什么特别的)。
为了避免弄乱我的屏幕,我@在每次$(CC)通话开始时预先准备好,并在它之前打印一条自定义echo消息。例如:
%.o: %.c $(h1) $(h3) %.h
@echo -e "\tCompiling <" $<
@$(CC) $(CFLAGS) -c $< -o $(libDir)$@$(MATHOPTS)
我的问题是:我怎样才能make以更“动态的方式”控制冗长,以便能够:
- 正常行为:只为每个执行的 makefile 规则打印一条自定义消息。
- 详细行为:打印每个 makefile 规则实际执行的命令(好像
@根本没有使用)。