Используйте пост-скрипты в buildroot

Я использую buildroot для создания собственных rootfs и использую post-build.sh для его настройки.

В конкретном случае я создаю текстовый файл в /opt с

touch $TARGET_DIR/opt/testfile01.txt

и запустите команду make. Я проверил выход rootfs, и testfile01.txt находится в /opt. Все в порядке.

Затем я меняю содержимое своего post-build-sh на

touch $TARGET_DIR/opt/testfile02.txt

и снова запустите команду make.

Поведение, которое я наблюдаю, заключается в том, что оба файла (testfile01 и testfile02) существуют в rootfs после второго make. Также удаление rootfs и запуск команды make не меняют этого поведения.

В мануале buildroot написано, что нет необходимости в полном ребилде после внесения изменений в post-build скрипты.

Как можно изменить это поведение?

Спасибо за помощь

Изменить: buildroot-2018.02.2, Ubuntu 18.04 LTS


person Marc_BBB    schedule 20.06.2018    source источник


Ответы (1)


Изменения, внесенные в скрипты после сборки, выполняются непосредственно в TARGET_DIR. Таким образом, если ваш сценарий после сборки выполняет одно действие, а затем вы меняете его, чтобы он выполнял другое действие, независимо от того, какая первая версия сценария после сборки все еще видна.

В руководстве говорится, что вам не нужно выполнять полную перестройку, чтобы повторно выполнить сценарий после сборки. Это не говорит о том, что все, что делает сценарий после сборки, «очищается» между частичными перестроениями. Итак, вы наблюдаете ожидаемое поведение.

person Thomas Petazzoni    schedule 21.06.2018