Hi Patrick, Do I have to replicate (and maintain) all of the references to > mymachine to also refer to my newly defined "installationmachine"? Or > can I tell Bitbake that "installationmachine" is the same as > "mymachine", and just add/change new stuff for "installationmachine"? >
I would approach in this way: in my meta-something/conf/machine: - machine_base.inc where I put all the standard machine configuration for production - mymachine.conf require conf/machine/machine_base.inc - myinstallationmachine.conf require conf/machine/machine_base.inc PREFERRED_PROVIDER_virtual/kernel = "some-linux-provider" Then in something.bbappend: - If the property is common to both machines: SRC_URI_append = " file://modifications.patch" - if the property is machine specific: SRC_URI_append_<MACHINE> = " file://machinespec.patch" In this way you have to maintain only the differences between your machines, without redundancy. 2. My new image going to be used as an installation image for my > production image. So I need to include the production image (for > MACHINE="mymachine")) deploy products in the image for my installation > image. How can I do that if I define a new MACHINE for the production > image? > This is not clear to me. With 'installation image' do you mean a full image (bootloader, kernel, rootfs etc)? Can you give me some more details about this use case? Best regards, Gabriele Il giorno ven 19 lug 2019 alle ore 14:49 Patrick Doyle <wpds...@gmail.com> ha scritto: > On Fri, Jul 19, 2019 at 1:58 AM Gabriele Zampieri > <gabbla.mal...@gmail.com> wrote: > > > > Hi, > > > > you could define two machines, where the manufacturing one is just an > overlay of the production one. If the two kernels differs only for their > config, you can specify different defconfig based on machine. If you need a > completely different kernel, just specify > PREFERRED_PROVIDER_virtual/kernel in manufacturing overlay > > Hi Gabriele, > I wondered about that, but I get confused about the MACHINE concept in > Yocto/OE/bitbake... > > 1. If I define a new machine, but I have a lot of recipes conditioned > on the old machine, how do I say "This is the same as machine A, but > with these differences"? I have defined a machine now ("mymachine") > and have recipes and .bbappend files with things like this in them: > > SRC_URI_mymachine += "file:/blah/blah/blah" > do_install_append_mymachine() { > do_stuff() > } > > Do I have to replicate (and maintain) all of the references to > mymachine to also refer to my newly defined "installationmachine"? Or > can I tell Bitbake that "installationmachine" is the same as > "mymachine", and just add/change new stuff for "installationmachine"? > > I hope my confusion here makes sense, but since it's confusion, it's > tough to tell :-) > > 2. My new image going to be used as an installation image for my > production image. So I need to include the production image (for > MACHINE="mymachine")) deploy products in the image for my installation > image. How can I do that if I define a new MACHINE for the production > image? > > Thank you so much for the suggestion... it confirms that I am looking > in the right places and thinking about the right things... I just > don't know how to solve this problem. > > I'm also surprised that it's not a more general problem... which leads > me to believe that I must be thinking about this the wrong way. > > Thanks again. > > --wpd >
-- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto