Подкаталоги Autoconf с подпакетами в зависимости друг от друга? - PullRequest
7 голосов
/ 26 сентября 2011

У меня есть большой проект (мастер), который разделен на несколько компонентов (liba, b, c, d) для упрощения сборки и обслуживания.При сборке всего пакета все подкомпоненты должны быть собраны в последовательности, и некоторые из этих пакетов зависят друг от друга.

В более явных терминах liba является необходимым условием для b, c и d, иНаличие либы проверяется скриптом настройки.Эта проверка, безусловно, необходима для предоставления удобных сообщений об ошибках при самостоятельном построении дистрибутива b.Однако при сборке мастер-пакета и всех его подпакетов liba создается как подзадача.Поэтому, когда configure запускается в основном наборе, liba еще не установлена, и проверка liba в b не удалась.

Я мог бы исправить эту проблему, передав флаг --with-liba = internal или аналогичный флагунастроить скрипт b;однако я не нашел никакой документации по такой передаче флага для autoconf.В настоящее время у меня есть длинный, длинный пользовательский Makefile в master, который делает то же самое, что и autoconf / automake с подкаталогами, но немного переупорядочивает зависимости, так что вместо (configure liba) => (configure b) => (build)liba) => (сборка b), порядок такой (настройка liba) => (сборка liba) => (установка liba) => (настройка b) => (сборка b).

Любая идея, какЯ мог бы рефакторинг это со стандартными подкаталогами autoconf / automake?

1 Ответ

2 голосов
/ 27 сентября 2011

Это письмо может помочь.

...