Доброго времени суток уважаемые!
Ситуация следующая: Проект собирается из командной строки компилятором MSVC6, но make-процессор остался от BorlandС++3.х, и mak-файлы проекта соответственно в том же формате. И все было бы прекрасно, если бы не одно обстоятельство: при компиляции не отследиваются изменения в заголовочных файлах. Т.е. исходник компилируется только тогда, когда изменился он сам.
Эту проблему можно решить если подключать файл зависимостей (.dep). Такой файл генерируется MSDEV когда экспортируешь проект в mak-файл, однако нужных проектов нет, все в борландовых mak'ах.
Вот и вопрос: как мне сгенерить файл зависимостей из командной строки?
Входные данные при этом имеются всеоблемющие: набор исходников, набор соотв. obj'ей, директории и прочее.
Может кто сталкивался с этим, подскажите пожалуйста.
09.04.04 12:16: Перенесено модератором из 'C/C++' — WH
Здравствуйте, Vamp, Вы писали:
A>>где эта команда ? VS нет, борладовская что ли ? V>Стандартная юниксовая команда. Наверняка есть ее варианты для вин.
UNIX developments tools не подходит к сожалению. Нужно решение под винды.
T>Вот и вопрос: как мне сгенерить файл зависимостей из командной строки? T>Входные данные при этом имеются всеоблемющие: набор исходников, набор соотв. obj'ей, директории и прочее. T>Может кто сталкивался с этим, подскажите пожалуйста.
Может, остался touch от Борланда? Придется им трогать исходник.
Здравствуйте, tousled, Вы писали:
T>Здравствуйте, Vamp, Вы писали:
A>>>где эта команда ? VS нет, борладовская что ли ? V>>Стандартная юниксовая команда. Наверняка есть ее варианты для вин. T>UNIX developments tools не подходит к сожалению. Нужно решение под винды.
Попробуйте погуглевать по словам "makedepend windows" — выдается изрядное количество ссылок.
G>> Может, остался touch от Борланда? Придется им трогать исходник. T>Да остался, а чем он мне поможет?
make перекомпилирует файлы, у которых изменяется время. Если точнее, то сравнивается соотв. исходник с соотв. выходным файлом (*.obj или другой). Если время несовпадает — перекомпилируется.
Надо написать скрипт, который будет "трогать" нужные файлы.