Gnu Make использует переменную $ (SHELL) для выполнения команд в целях.
По умолчанию установлено значение /bin/sh.
.
Вы можете установить эту переменную в сценарий, который будет выполнять команду, заданную командой "time". Как то так:
В вашем make-файле укажите переменную SHELL, где-то вверху:
SHELL = ./report_time.sh
и в файле ./report_time.sh:
#!/bin/sh
shift # get rid of the '-c' supplied by make.
time sh -c "$*"
Заменить команду 'sh' на оригинальную SHELL, указанную в Makefile, если таковая имеется.
Это сообщит время.
Однако это не скажет вам, для какой цели выполняется сценарий report_time.sh. Одним из решений этой проблемы является добавление целевого имени ($ @) в каждую целевую запись в make-файле, чтобы оно также передавалось в сценарий report_time.sh.