Gentoo Archives: gentoo-embedded

From: Christopher Friedt <cfriedt@××××××××××××××.com>
To: gentoo-embedded@l.g.o
Subject: Re: [gentoo-embedded] overlay-specific keywords / use flags for cross-compiling
Date: Wed, 17 Jan 2007 14:06:06
Message-Id: 45AE2DF3.3060107@visible-assets.com
In Reply to: Re: [gentoo-embedded] overlay-specific keywords / use flags for cross-compiling by Ned Ludd
1 Hi Nedd,
2
3 Thanks for your reply - i've been crazy busy lately.
4
5 The ROOT & PORTAGE_CONFIGROOT directories are the same, and I tested out
6 /sysroot/etc/portage/package.use. That works no problem.
7
8 However, i still don't see an effect if I do something in package.keywords.
9
10 I usually do this on my desktop machine if I'd like to open up the
11 keywords for a particular package. Am I doing something wrong?
12
13
14 vaiprime / # echo "sys-apps/busybox" >>
15 /sysroot/etc/portage/package.keywords
16 vaiprime / # xmerge -pv busybox
17
18 These are the packages that would be merged, in order:
19
20 Calculating dependencies... done!
21 [ebuild R ] sys-apps/busybox-1.2.2.1 to /sysroot/ USE="static*
22 -debug -make-symlinks -netboot -savedconfig" 1,380 kB
23
24 vaiprime / # ACCEPT_KEYWORDS="~arm" xmerge -avB busybox
25
26 These are the packages that would be merged, in order:
27
28 Calculating dependencies... done!
29 [ebuild U ] sys-apps/busybox-1.3.1 [1.2.2.1] to /sysroot/
30 USE="static* -debug -make-symlinks -savedconfig (-netboot%)" 1,456 kB
31
32 Ned Ludd wrote:
33 > Is your $SYSROOT the same as your $PORTAGE_CONFIGROOT?
34 >
35 > Cuz portage only looks in $PORTAGE_CONFIGROOT and cares nothing of
36 > $SYSROOT..
37 >
38 >
39 > On Sat, 2007-01-13 at 00:12 +0100, Christopher Friedt wrote:
40 >> Hi everyone,
41 >>
42 >> I've set up a 'build root' that I can chroot into for cross development.
43 >> There is also a directory of targets to compile for, and for each
44 >> target, a series of different configurations.
45 >>
46 >> When I chroot into my buildroot my 'enter_chroot' script will
47 >> automatically mount -o bind each of the sysroot, binpkgs, and overlay
48 >> directories for a specified configuration, as well as mount -o bind the
49 >> portage tree itself.
50 >>
51 >> So my directory structure looks something like this:
52 >>
53 >> gentoo-crossdev-buildroot/
54 >> enter_chroot.sh
55 >> (mounts proc, mounts -o bind portage/sysroot/binpkg/overlay etc)
56 >> portage/
57 >> ... (the portage tree)
58 >> buildroot/
59 >> ... (all cross compilation tools and a stage1 filesystem)
60 >> targets/
61 >> arm-9tdmi-linux-gnu/
62 >> cross-toolchain/
63 >> configurations/
64 >> reference/
65 >> overlay/
66 >> binpkgs/
67 >> sysroot/
68 >> client1/
69 >> ...
70 >> client2/
71 >> ...
72 >> arm-9tdmi-linux-uclibc/
73 >> cross-toolchain/
74 >> configurations/
75 >> reference/
76 >> overlay/
77 >> binpkgs/
78 >> sysroot/
79 >> client1/
80 >> ...
81 >> client2/
82 >> ...
83 >>
84 >> What I'm hoping to do is leverage the power of portage overlays here,
85 >> and make it possible to have different package customizations for each
86 >> client and each platform that my company deals with.
87 >>
88 >> It doesn't take a lot to see that this is a great way to minimize
89 >> maintenance.
90 >>
91 >> My problem though, is that when doing cross development (I use the
92 >> xmerge scrypt and set a SYSROOT variable), I have noticed that when I
93 >> set new flags in $SYSROOT/etc/portage/package.use, it's not noticed
94 >> properly during emerge.
95 >>
96 >> I'm hoping that portage can be flexible enough to acknowlege those use
97 >> flags. The xmerge script (taken from one of the gentoo cross development
98 >> guides online) properly sets the PORTAGE_CONFIGROOT variable, ROOT, etc,
99 >> so I don't understand why it doesn't acknowlege the changes in
100 >> $SYSROOT/etc/portage/package.use.
101 >>
102 >> Any suggestions?
103 >>
104 >>
105 >> Regards,
106 >>
107 >> ~/Chris
108 --
109 gentoo-embedded@g.o mailing list

Replies

Subject Author
Re: [gentoo-embedded] overlay-specific keywords / use flags for cross-compiling Christopher Friedt <cfriedt@××××××××××××××.com>