Если ваш вопрос касается постоянных изменений, то Дэн должен ответить. Т.е. добавьте <recipe name>.bbappend
к рецепту на вашем собственном слое, в котором вы добавляете
SRC_URI += "file://mypatch1.patch \
file://mypatch2.patch \
"
, перечисляя все необходимые вам патчи.
Если имеется большое количество патчей, может иметь смысл разветвить вышестоящий репозиторий и сохранить собственную ветку в своей вилке. В этом случае вы, вероятно, захотите сослаться на свой собственный репозиторий, а не на исходный репозиторий или tarball.
OTOH, если ваш вопрос был больше о незавершенной работе; тогда конечно, сделать это в oky/build/tmp/workoky/build/tmp/work/xxxx
будет работать. (И вполне вероятно, что это то, чем большинство людей занимались в течение длительного времени).
Однако в последних выпусках (начиная с 1.8, fido) есть способ лучше. Новый инструмент называется devtool
. Вы можете использовать его следующим образом:
devtool modify -x <recipe-name> <path-to-unpack-source>
распаковывает исходный код и создает новый bbappend для сборки из распакованного исходного кода. Он также создает репозиторий git в исходном каталоге.
Теперь вы можете изменить источник. Вы можете протестировать модифицированный исходный код, запустив devtool build <recipe-name>
. Когда вы будете удовлетворены, используйте git add ...
и git commit
, чтобы зафиксировать изменения в локальном репо. После того, как вы зафиксировали изменения в локальном репо, вы можете запустить:
devtool update-recipe <recipe-name>
, чтобы обновить рассматриваемый рецепт. Когда вы будете удовлетворены, вы можете запустить devtool reset <recipe-name>
, чтобы удалить временный файл bbappend.
См. Также: Руководство Yocto по изменению исходный код
person
Anders
schedule
01.12.2015