Gentoo Archives: gentoo-alt

From: Benda Xu <heroxbd@g.o>
To: gentoo-alt@l.g.o
Subject: Re: [gentoo-alt] rap prefix on ppc64 reloaded
Date: Wed, 08 Nov 2017 01:47:39
Message-Id: 87o9od4k3y.fsf@gentoo.org
In Reply to: [gentoo-alt] rap prefix on ppc64 reloaded by "François Bissey"
1 Hi François,
2
3 Thank you for this detailed report of ppc64 Prefix. The profile of
4 ppc64 is not there because we know we donot have support for it. Your
5 diagnosis is crucial for us to get ready for it. However, I dont have
6 access to ppc64, therefore I will only comment on general issues.
7
8 Are you interested in joining our Gentoo Prefix team to support ppc64?
9 Your past contributions to Gentoo Science and Prefix are well recognized
10 and received. If you would like step up I will be happy to support you
11 through the process.
12
13 > 1) baselayout-prefix still doesn't have a suitable ppc64 keyword. This
14 > hits fairly early on in stage 2 I think. Vague memories from my
15 > previous experience suggested that it wasn't necessary. So I snipped
16 > it from the list in bootstrap-rap.sh. Which seemed to be fine until
17 > much later, after solving other issues it came back to bite in stage 3
18 > (after I fixed point 3). stage 3 tried to emerge baselayout and it
19 > failed. Both variant of baselayout prepare the system for multilib. If
20 > installed early enough it will move files around and link {,usr/}lib
21 > to {,usr/}lib64 and so on. But it will fail miserably if there is
22 > stuff it doesn't know about in {,usr/}lib. Which, at the stage 3
23 > level, is pretty much the case. I manually fixed things and baselayout
24 > merged successfully. Should rap use baselayout directly in stage 2?
25 > That would solve the keyword problem and match what happens in stage
26 > 3.
27
28 baselayout-prefix is for prefix-rpath. For prefix-standalone aka. RAP,
29 baselayout is used.
30
31 Our profiles are no-multilib, which in Gentoo means lib is a symlink to
32 lib64. stage 3 baselayout fails if lib already exists and the creation
33 of symlink fails. This happens if some package, like gentoo-functions,
34 installs into EPREFIX/lib.
35
36 The solution is install baselayout in stage3 as early as possible,
37 before gentoo-functions.
38
39 https://gitweb.gentoo.org/repo/proj/prefix.git/tree/scripts/bootstrap-prefix.sh#n1614
40
41
42 > 2) gcc 6.4.0 and 5.4.0 failed to bootstrap. Two issues:
43 > a) I needed to export LIBRARY_PATH=${EPREFIX}/usr/lib64
44 > (I wonder if it was related to baselayout but I haven't checked)
45
46 This does not look good. The logic should have been covered by
47
48 export LDFLAGS="-L${ROOT}/usr/$(get_libdir)"
49
50 in stage3,
51
52 https://gitweb.gentoo.org/repo/proj/prefix.git/tree/scripts/bootstrap-prefix.sh#n1568
53
54 > b) the formula to insert the prefix to the location ld64.so was
55 > defeated again by new peculiarity in the gcc/config/rs6000/linux64.h
56 > code. I ended up adding the following formula in my own
57 > ${EPREFIX}/etc/portage/profile/profile.bashrc
58
59 > if [[ ${CATEGORY}/${PN} == sys-devel/gcc && ${EBUILD_PHASE} ==
60 > configure ]]; then
61 > cd "${S}"
62 > sed -i
63 > "s:%(dynamic_linker_prefix)/lib64/ld64:${EPREFIX}/lib64/ld64:g" \
64 > gcc/config/rs6000/linux64.h
65
66 > fi
67
68 Yes, this should be fixed. We'd better reuse the DYNAMIC_LINKER_PREFIX
69 logic inside rs6000. It was introduced for IBM advanced toolchain.
70
71 > 3) glibc issues. This is detailed in
72 > https://archives.gentoo.org/gentoo-alt/message/1efbc07a12332306715cfaebf38c8897
73
74 I am not sure. Probably glibc has a different set of kernel version
75 requirements on ppc64.
76
77 > The additional issue is that I need also this on ppc:
78 > https://patchwork.ozlabs.org/patch/686205/
79
80 > 4) acl/attr not really a prefix issue but I guess it is most likely
81 > to show up in that kind of environment. I am sure I complained about
82 > other packages doing the same thing before. Those two are a pair because
83 > they share the build system. Both identify the primary group with
84 > id -g -n
85 > which gives you the name of the group instead of the numeric ID.
86 > Problem is my group on that system, which is loosely linked to AD is
87 > domain users
88 > This value is passed to the install command which in turn passes it to
89 > the "cp" command which doesn't know what to do with "users".
90 > The cure is to use the numeric group ID, either by patching configure
91 > (not true autoconf as far as I can tell) to use "id -g" or setting a
92 > variable (INSTALL_GROUP I think it was) to that value.
93
94 Sorry I don't fully understand why cp fails if supplied with a group
95 name.
96
97 Yours,
98 Benda

Replies

Subject Author
Re: [gentoo-alt] rap prefix on ppc64 reloaded Francois Bissey <francois.bissey@×××××××××××××.nz>