Получение времени сборки C-проекта с использованием Makefile - PullRequest
0 голосов
/ 13 июня 2019

У меня большой проект на языке C, и я хочу получить время его сборки. Проблема в том, если я использую

time -p make 

это дает мне время сборки для всего проекта. Однако, мне также понадобятся данные сборки на уровне сборки подкаталога. То есть я имею дело с более 1000 Makefiles.

Есть ли какой-нибудь способ, которым я могу получить это время сборки уровня подкаталога?

Путь грубой силы, я так думаю. Но не уверен, как этого добиться и сейчас.

Заменить каждое «make» на «time make» на машине. Есть ли способ сделать это?

Любой другой подход к проблеме также высоко ценится. Заранее спасибо.

1 Ответ

0 голосов
/ 13 июня 2019

Один из способов решения этой проблемы - извлечь все команды сборки в файл, например:

make clean
make --dry-run > build-commands.txt

Затем вы можете отфильтровать build-commands.txt по пути к исходному файлу, выполнить команды и измерить время.

Чтобы это работало, ваши рекурсивные make-файлы должны вызывать другие make-файлы, используя ${MAKE}, а не просто make.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...