Контроль многословности make

Я использую make-файл для компиляции программы, состоящей из множества .c файлов, и каждый раз, когда вызывается make , он компилирует только те файлы, которые были изменены после последний пробег (пока здесь ничего особенного).

Чтобы не загромождать экран, я добавляю @ в начале каждого вызова $ (CC) , а перед этим я печатаю настраиваемое сообщение echo . Например:

%.o: %.c $(h1) $(h3) %.h
    @echo -e "\tCompiling <" $< 
    @$(CC) $(CFLAGS) -c $< -o $(libDir)$@$(MATHOPTS)

Мой вопрос: как я могу контролировать многословие make более "динамичным способом", чтобы иметь возможность:

  1. Нормальное поведение : только настраиваемое сообщение печатается для каждого выполненного правила make-файла.
  2. Подробное поведение : вывести команду, фактически выполняемую каждым правилом make-файла (как если бы @ вообще не использовался).
11
задан Nicolás Ozimica 16 February 2012 в 15:45
поделиться