Hi everyone,

I've set up a 'build root' that I can chroot into for cross development.
There is also a directory of targets to compile for, and for each target, a series of different configurations.

When I chroot into my buildroot my 'enter_chroot' script will automatically mount -o bind each of the sysroot, binpkgs, and overlay directories for a specified configuration, as well as mount -o bind the portage tree itself.

So my directory structure looks something like this:

gentoo-crossdev-buildroot/
  enter_chroot.sh
    (mounts proc, mounts -o bind portage/sysroot/binpkg/overlay etc)
  portage/
    ... (the portage tree)
  buildroot/
    ... (all cross compilation tools and a stage1 filesystem)
  targets/
    arm-9tdmi-linux-gnu/
      cross-toolchain/
      configurations/
        reference/
          overlay/
          binpkgs/
          sysroot/
        client1/
          ...
        client2/
          ...
    arm-9tdmi-linux-uclibc/
      cross-toolchain/
      configurations/
        reference/
          overlay/
          binpkgs/
          sysroot/
        client1/
          ...
        client2/
          ...

What I'm hoping to do is leverage the power of portage overlays here, and make it possible to have different package customizations for each client and each platform that my company deals with.

It doesn't take a lot to see that this is a great way to minimize maintenance.

My problem though, is that when doing cross development (I use the xmerge scrypt and set a SYSROOT variable), I have noticed that when I set new flags in $SYSROOT/etc/portage/package.use, it's not noticed properly during emerge.

I'm hoping that portage can be flexible enough to acknowlege those use flags. The xmerge script (taken from one of the gentoo cross development guides online) properly sets the PORTAGE_CONFIGROOT variable, ROOT, etc, so I don't understand why it doesn't acknowlege the changes in $SYSROOT/etc/portage/package.use.

Any suggestions?


Regards,

~/Chris
--
[email protected] mailing list

Reply via email to