yocto - .bbappend

markyang92·2021년 8월 25일
0

yocto

목록 보기
22/53
post-thumbnail

.bbappend

  • .bbappend로 다른 layer의 recipe의 내용을 layer에 추가, 수정하되 원본의 변화없이 더할 수 있다.
    (이름만 들어도 감이옴)

policy

  1. myhello_0.1.bbappendmyhello_0.1.bb에 적용된다.

    • 즉, original recipe와 append file의 <recipe name>_<version> specific하다는 것이다.
    • original recipe의 version, renaming되면, bbappend그에 맞추어 version, renaming을 해야한다.

  1. bbappend를 추가하면, bbappend가 있는 디렉토리의 path${FILESEXTRAPATHS}변수에 prepend!! 해야한다!

  1. Priority가 있다.

$ bitbake-layers show-appends

  • 현재 bitbake 환경에서 bbappend 보여줌

psplash bbappend 예

  1. psplash 컴포넌트
    1-0. Modify 하는 법은 본 블로그 psplash 컴포넌트 수정 참고. 다시 컴포넌트를 원본 상태로 돌려 두고...
    1-1. 레시피 위치: poky/meta/recipes-core/psplash/psplash_git.bb
    1-2. bbappeend: poky/meta-mylayer/recipes-core/psplash/psplash_git.bbappend

  1. psplash_git.bbappend
    2-1. bbappend에서 local files 등을 참조해야한다면, bbappend가 있는 디렉토리의 path${FILESEXTRAPATHS}변수에 prepend!
    2-2. 아래 그림과 같은 방식으로 override 되는 것임

  1. clean
$ bitbake -c cleanall psplash
$ bitbake -c cleanall core-image-minimal-tiny

  1. bitbake build
$ bitbake core-image-minimal-tiny	# IMAGE_FEATURES += " splash" 되어 있음
$ runqemu core-image-minimal-tiny

4-1. bbappend에 의해 poky/meta-mylayer/recipes-core/files/psplash-poky-img.h가 적용됨
4-2. psplash-poky-img.h는 webos.png를 pre convert한 이미지잘뜬다!


priority

위 예제는 meta-mylayer의 priority가 meta보다 높기 때문에 적용된 것임

$ bitbake-layers show-layers

meta-mylayer의 priority를 낮춰 적용해보자.

  1. bitbake clean
$ bitbake -c cleanall psplash
$ bitbake -c cleanall core-image-minimal-tiny
  1. bitbake
$ bitbake psplash
$ bitbake core-image-minimal-tiny
  1. bbappend가 적용되지 않는다.

package-index의 bbappend

  • openembedded 에서 package-index.bb를 사용해 패키지 인덱싱을 한다.
    • openembedded/meta/recipes-core/meta/package-index.bb
    • my-layer/recipes-core/meta/package-index.bbappend


bbappend에서 QA issue

  • bbappend에서 file을 write했을 경우,
    위와 같은 QA Issue가 날 수 있다.
    이럴땐, bbappend에 INSANE_SKIP_${PN} += "host-user-contaminated"를 write한다.
profile
pllpokko@alumni.kaist.ac.kr

0개의 댓글