С ++ найти зависимые файлы
Я искал метод или утилиту, чтобы найти зависимые файлы для крупномасштабного проекта C/C++.
Я хочу, чтобы при изменении (фиксации) файла я хотел, чтобы наш сборочный бот запускал тесты классов, связанных с измененным файлом.
Любая помощь будет принята с благодарностью!
2 ответа
Зависит от того, какой тип buildbot вы используете. Самый распространенный метод, который я знаю, - это использовать опцию -M компиляторов C++ для генерации make-файлов зависимостей, которые вы включаете в ваш основной make-файл. Такие инструменты, как cmake, сделают это автоматически для вас без каких-либо усилий.
Опция компилятора
gcc -MMD
выведет список зависимостей, используемых компилятором, в формате, подходящем для использования с GNU или Posix Make. Другие компиляторы должны иметь аналогичные параметры, и нетрудно преобразовать этот формат зависимостей для использования с другими системами make, использующими, например, perl.