在 bitbake 中的机器之间重用源文件

在 bitbake 中的机器之间重用源文件

我的目标是在某些机器之间共享源文件,但不是全部机器。在此示例中,machine_a并且machine_b源目录是彼此精确的副本,我想以某种方式将它们组合在一起以减少重复。

recipe/
    machine_a/
        script_1.sh
        script_2.sh
    machine_b/
        script_1.sh
        script_2.sh
    machine_c/
        script_3.sh

我尝试过符号链接machine_b/以及machine_a/链接各个源文件(machine_b/script_1.sh->machine_a/script_1.sh等),但问题是,由于构建是在 docker 容器中完成的,并且任务do_fetch()不执行深层复制,因此构建无法访问原始源文件。

我可以想到其他方法,例如更改MACHINE_NAME配方内部,但我认为这不会完全有效。

实现这一目标的最佳方法是什么?

答案1

您可以发出绑定安装。因此,无需链接要合并的文件夹,只需将应该相同的文件夹安装在您想要的第二个位置即可。

recipe/
├─ machine_a/
│  ├─ script_1.sh
│  ├─ script_2.sh
├─ machine_b      <-- mount the folder for machine_a here/
├─ machine_c/
│  ├─ script_3.sh

所以在这个例子中,命令看起来或多或少像这样:

$ sudo mount --bind recipe/machine_a recipe/machine_b

然后如果它有效,请将安装添加到您的/etc/fstab

相关内容