====== Tips ======
* [[https://stackoverflow.com/questions/51002891/overwriting-yocto-classes-through-meta-layer|Overwriting Yocto Classes through meta-layer]]
===== Pass env variables to bitbake =====
To control additional or user defined recipe's variables from env (usefull for CI) add variables to ''BB_ENV_PASSTHROUGH_ADDITIONS'':
export foo="BAR"
export BB_ENV_PASSTHROUGH_ADDITIONS="${BB_ENV_PASSTHROUGH_ADDITIONS} foo BUILD_VERSION CI_COMMIT_BRANCH CI_COMMIT_SHORT_SHA"
bitbake ...
===== add files to rootfs =====
''IMAGE_PREPROCESS_COMMAND += "rsync -a --exclude=.git ${FILE_SRC}/rootfs/* ${WORKDIR}/rootfs;"''
===== override .conf =====
No override or appends mechanism. But some workaround possible:
- override variables in ''local.conf''
- create new conf file and inherit old one with ''require''
- create new conf file with the same name to mask old file (take care of layer priority)
===== MACHINEOVERRIDES =====
When creatung new machine.conf based on existing one [[https://docs.yoctoproject.org/ref-manual/variables.html?highlight=machineoverrides#term-MACHINEOVERRIDES|MACHINEOVERRIDES]] can be used:
[[https://github.com/Freescale/meta-freescale/blob/master/classes/machine-overrides-extender.bbclass|machine-overrides-extender.bbclass]]
===== logging =====
inherit logging
bb.debug("HELLO = %s" % HELLO)