сборки:
Вот есть у меня текстовый файлик, который инклудится в коды через include_str!. Каким образом cargo определяет, что файл изменился и надо пересобрать бинарь? Ну, то есть, в привычном для меня пути (плюсы и cmake) такой файл я бы добавил как зависимость к таргету и cmake уже тогда смог бы определять, что за файлом надо следить.
А как это делает cargo? Строит дерево зависимостей после полного парсинга исходных кодов?
в принципе также как и cmake, по крайне мере... cargo должен сам следить за обновлениями всех этих файлов. даже в build.rs есть знакомый и любимый cargo:rerun-if-changed=PATH который определяет что пакет (ВЕСЬ) надо обязательно пересобрать если изменился файл(PATH). Раньше cargo следил он по времени модификации (как на файлы так и на директории) сейчас может и хэшсумму добавили.
Обсуждают сегодня