Должен ли быть распространен скрипт "configure", если файл configure.ac доступен? - PullRequest
6 голосов
/ 15 января 2012

В настоящее время наши инструкции по установке:

autoreconf -fi
./configure
...

Шаг autoreconf создает файл configure из configure.ac и Makefile.in из Makefile.in. Если одна из зависимостей (скажем, pkg-config) не установлена, оба configure и autoreconf не работают, хотя последний выводит загадочное сообщение об ошибке.

При выпуске исходных tar-архивов должен ли скрипт + 1014 * быть включен в пакет или нет? Какие еще файлы должны быть включены, если он должен быть распространен? Также были созданы каталоги build-aux и autom4te.cache и файлы aclocal.m4.

Ответы [ 3 ]

6 голосов
/ 16 января 2012

В репозитории SCM не должно быть ничего сгенерированного автоматически (включая configure - но здесь мнения разработчиков отклоняются). Тарбол должен содержать состояние после autoreconf -fi и / или autogen.sh (или любого имени, которое вы выбрали для него). В-третьих, вы также можете использовать make dist, хотя для этого необходимо, чтобы все файлы, которые должны появиться в архиве, также были перечислены в файлах Makefile.

4 голосов
/ 15 января 2012

Ваши инструкции по установке ужасно нарушены.Пользователю не нужно устанавливать цепочку автоинструмента для сборки вашего программного обеспечения.Вы должны распространять скрипт configure в своем архиве.Обратите внимание, что вы не должны включать скрипт configure в свою систему контроля версий.(Вы не должны использовать свою систему контроля версий в качестве системы распространения.)

3 голосов
/ 15 января 2012

Сценарий configure должен быть собран сопровождающим и распространен в tar-архиве.Конечным пользователям никогда не нужно прикасаться к нему, и это хорошая идея, чтобы убедиться в этом с помощью AM_MAINTAINER_MODE, если вы используете automake.Если нет, убедитесь, что ваш Makefile.in не генерирует заново configure при работе для конечных пользователей.

Пусть automake создаст для вас дистрибутив, если вы хотите знать, что еще там находится.Вспомогательный каталог build-aux и aclocal.m4 do, automat4e.cache не.

...