如何在 yocto 中对设备名称进行分组

how to group device name in yocto

我们公司开发了多种硬件并支持 Yocto Linux。我们还将 rpi 等其他机器集成到我们的 Yocto 项目中。我们有自己的 bbappend 文件,我们希望通过添加后缀使其成为指定的机器。因此它不会影响像 rpi 这样的其他机器。

例如,SRC_URI_ourMachine += " \。但是我们有好几台机器,我们怎么能像rpi那样把它们打包成一台呢。 Raspberry Pi 还有几个模块,如 RaspberryPi、RaspberryPi2、RaspberryPi3、RaspberryPi-CM、RaspberryPi-CM3。但是如果你做 SRC_URI_rpi += " \,它会影响所有的 rpi 机器。

我们怎样才能做到这一点?谢谢

我认为你可以使用 - MACHINEOVERRIDES 变量解决这个问题。

在你的配置文件中meta-name/conf/machine/include/machine-name.inc
MACHINEOVERRIDES =. "common-name:"

然后在任何食谱中你都可以像这样使用它(例如 SRC_URI): SRC_URI_common-name = "..."

文档 link:http://www.yoctoproject.org/docs/2.3.2/mega-manual/mega-manual.html#var-MACHINEOVERRIDES

使用 qemuall 的 poky 示例:https://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/conf/machine/include/qemu.inc#n14

还有一个解决方案就是SOC_FAMILY = common-name:。此解决方案需要将 include conf/machine/include/soc-family.inc 放在 conference 或 inc 文件中。

然后在任何食谱中你可以像这样使用它(例如 SRC_URI):SRC_URI_common-name = "..."