Как сделать так, чтобы исходное дерево стало тем, что им нравится, прежде чем я запустил команду "./configure"? - PullRequest
0 голосов
/ 05 мая 2018

Проект содержит файл "configure" - это классический проект automake. Однако, когда я запускаю ./configure, он генерирует Makefile под деревом исходного кода, который включает информацию о конфиденциальности для моей платформы. Когда мне нужно протестировать проект automake, мне нужно скомпилировать его в двоичный файл. Двоичный файл легко очищается с помощью make clean, но файл, сгенерированный с помощью ./configure, не может быть очищен. Есть ли простой способ сбросить все файлы, как они есть, прежде чем я запустите ./configure?

1 Ответ

0 голосов
/ 05 мая 2018

Вы можете использовать правило make distclean, которое должно удалять все файлы, которые не были предоставлены дистрибутивом (все файлы, которые были сгенерированы).

Если вы хотите быть еще более надежным и если ваш проект правильно использует автоинструменты, вы можете использовать «удаленные сборки». Это означает, что вы создаете отдельный каталог, а не создаете его внутри каталога распространения. Например:

src=$(pwd)
mkdir ../_build
cd ../_build
"$src"/configure
make

Это вообще не должно вносить никаких изменений в каталог дистрибутива (вам даже не нужны права на запись в него). Тогда, когда вы хотите очистить это:

cd ..
rm -rf _build
...