Как включить Bash в кросс-компиляцию NetBSD с помощью build.sh?

Я ищу лучший способ включения GNU Bash в кросс-компиляцию NetBSD с использованием сценария build.sh. Прямо сейчас я планирую включить его в usr/src/gnu/dist, а затем создать соответствующие файлы Makefile в usr/src/gnu/usr.bin, но мне интересно, есть ли более простой/лучший способ сделать это?


person Matthew    schedule 14.04.2011    source источник
comment
Итак, есть два доступных способа (в итоге мы выбрали третий способ, который здесь не применяется). Во-первых, как упоминалось в вопросе, это включить его в usr/src/gnu/dist в дереве исходного кода NetBSD. Однако инструменты, представленные здесь, похоже, используются в основном для кросс-компиляции. Второй вариант — поместить его в дерево extsrc под правильной лицензией (очевидно, gnu). Этот вариант немного проще, так как в отношении Makefiles не так много хлопот.   -  person Matthew    schedule 06.05.2011


Ответы (1)


Новый способ — поместить файлы в папку src/external//. Для bash это src/external/gpl3/bash. (Дальше этот каталог называется ${EXTTOPDIR.bash}.)

Исходный источник расширяется до ${EXTTOPDIR}/dist как есть. Другие файлы и каталоги создаются в ${EXTTOPDIR}. Начните, например, с копирования src/external/gpl2/xcvs. (BSD) make-файлы, которые размещаются (из исходного кода), называются «досягаемыми»; это означает, что процедуры сборки сохраняются, не нарушая первоначальный источник. Это помогает упростить обслуживание исходного кода. (И нет, все это вообще не задокументировано, к сожалению.)

Если вам нужно подключить сборку как «инструменты», вам понадобится что-то еще, чтобы позаботиться. Процедура также не документирована. Просто учитесь у первоисточника.

Если вы работаете с официальным деревом NetBSD, вам есть что узнать о CVS; использовать ветку поставщика и т. д.

HTH, Масао

person uebayasi    schedule 30.09.2011