Я пытаюсь написать сценарий для запуска статического анализатора PC-Lint только на локально измененных пользователем файлах, а не на всем проекте.
Для этого мне нужно запустить Lint
команду на всех локально измененных файлах
использование статуса svn
svn status -u | grep -w M
команда I получить список локально измененных файлов с полным путем
Например, если локально измененный файлasn1_common_elements.c
, приведенная выше svn
команда выдаст выходные данные как
M 10014 реализацииasn1dersrcasn1_common_elements.с
теперь мне нужно взять только имя asn1_common_elements.c
файла и поставить его с LINT
командой as LINT asn1_common_elements.log
(вместо .c
необходимости изменить на .log
)
Как этого достичь?
Вы можете использовать способность Makefile только позволить компилятору компилировать только измененные файлы.
Сделайте что-то подобное в файле Makefile:
Теперь файл.c будет анализироваться только при его изменении.