как собрать свой собственный пакет в последний раз из сборки rootfs с помощью buildroot? - PullRequest
0 голосов
/ 26 февраля 2019

Я создаю br2_external пакеты и хочу начать их сборку, только если rootfs уже собран.Может быть возможно установить зависимости в корневом mk-файле моего внешнего дерева пакетов?но неизвестно кто последний ... или возможно более правильное решение?

1 Ответ

0 голосов
/ 27 февраля 2019

Buildroot не поддерживает сборку пакетов после сборки rootfs с использованием обычной инфраструктуры пакетов.Порядок фиксируется следующим образом (несколько упрощенно):

  1. Сборка всех пакетов
  2. Запуск целевых сценариев финализации (включая сценарий после сборки).
  3. Постройте образы rootfs.
  4. Запустите скрипт post-image.

Есть одно исключение из этого.Для ядра со встроенной функцией initramfs (BR2_TARGET_ROOTFS_INITRAMFS) в пакете linux существует дополнительное правило make, позволяющее перестраивать linux после сборки образа rootfs cpio.Можно сделать нечто подобное в пакете BR2_EXTERNAL.

Обычно, однако, вам на самом деле не нужно ничего собирать после генерации rootfs;вместо этого вам просто нужно запустить какой-нибудь инструмент постобработки.Поэтому обычный подход состоит в том, чтобы собрать этот инструмент постобработки как обычный пакет и запустить его из сценария post-image.

Также возможно написать пакет, чтобы он ничего не делал вэтапы сборки и установки и выполните что-то вроде make -C "$(make printvars VARS=MY_PACKAGE_BUILD_DIR)" из сценария post-image.

...