Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in sys-libs/glibc/files/eblits: src_unpack.eblit src_compile.eblit
Date: Sat, 29 Mar 2014 05:32:04
Message-Id: 20140329053159.CDE5420054@flycatcher.gentoo.org
1 vapier 14/03/29 05:31:59
2
3 Modified: src_unpack.eblit src_compile.eblit
4 Log:
5 Add support for in-place bootstrapping between ABIs (on x86 for now).
6
7 (Portage version: 2.2.8-r1/cvs/Linux x86_64, signed Manifest commit with key D2E96200)
8
9 Revision Changes Path
10 1.25 sys-libs/glibc/files/eblits/src_unpack.eblit
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit?rev=1.25&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit?rev=1.25&content-type=text/plain
14 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit?r1=1.24&r2=1.25
15
16 Index: src_unpack.eblit
17 ===================================================================
18 RCS file: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v
19 retrieving revision 1.24
20 retrieving revision 1.25
21 diff -u -r1.24 -r1.25
22 --- src_unpack.eblit 28 Sep 2013 22:07:57 -0000 1.24
23 +++ src_unpack.eblit 29 Mar 2014 05:31:59 -0000 1.25
24 @@ -1,6 +1,6 @@
25 -# Copyright 1999-2013 Gentoo Foundation
26 +# Copyright 1999-2014 Gentoo Foundation
27 # Distributed under the terms of the GNU General Public License v2
28 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.24 2013/09/28 22:07:57 vapier Exp $
29 +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_unpack.eblit,v 1.25 2014/03/29 05:31:59 vapier Exp $
30
31 int_to_KV() {
32 local version=$1 major minor micro
33 @@ -165,7 +165,7 @@
34 # http://sourceware.org/ml/libc-alpha/2012-05/msg01865.html
35 if ! version_is_at_least 2.16 ; then
36 echo 'int main(){}' > "${T}"/gcc_eh_test.c
37 - if ! $(tc-getCC ${CTARGET}) "${T}"/gcc_eh_test.c -lgcc_eh 2>/dev/null ; then
38 + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/gcc_eh_test.c -lgcc_eh 2>/dev/null ; then
39 sed -i -e 's:-lgcc_eh::' Makeconfig || die "sed gcc_eh"
40 fi
41 fi
42
43
44
45 1.38 sys-libs/glibc/files/eblits/src_compile.eblit
46
47 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit?rev=1.38&view=markup
48 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit?rev=1.38&content-type=text/plain
49 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit?r1=1.37&r2=1.38
50
51 Index: src_compile.eblit
52 ===================================================================
53 RCS file: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit,v
54 retrieving revision 1.37
55 retrieving revision 1.38
56 diff -u -r1.37 -r1.38
57 --- src_compile.eblit 17 Jan 2014 06:23:22 -0000 1.37
58 +++ src_compile.eblit 29 Mar 2014 05:31:59 -0000 1.38
59 @@ -1,6 +1,6 @@
60 # Copyright 1999-2014 Gentoo Foundation
61 # Distributed under the terms of the GNU General Public License v2
62 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit,v 1.37 2014/01/17 06:23:22 vapier Exp $
63 +# $Header: /var/cvsroot/gentoo-x86/sys-libs/glibc/files/eblits/src_compile.eblit,v 1.38 2014/03/29 05:31:59 vapier Exp $
64
65 glibc_do_configure() {
66 local myconf=()
67 @@ -121,6 +121,20 @@
68 if is_crosscompile && [[ ${CTARGET} == ia64* ]] ; then
69 sed -i '1i+link-static = touch $@' config.make
70 fi
71 +
72 + # If we're trying to migrate between ABI sets, we need
73 + # to lie and use a local copy of gcc. Like if the system
74 + # is built with MULTILIB_ABIS="amd64 x86" but we want to
75 + # add x32 to it, gcc/glibc don't yet support x32.
76 + if [[ -n ${GCC_BOOTSTRAP_VER} ]] && use multilib ; then
77 + echo 'main(){}' > "${T}"/test.c
78 + if ! $(tc-getCC ${CTARGET}) ${CFLAGS} ${LDFLAGS} "${T}"/test.c -Wl,-emain -lgcc 2>/dev/null ; then
79 + sed -i -e '/^CC = /s:$: -B$(objdir)/../'"gcc-${GCC_BOOTSTRAP_VER}/${ABI}:" config.make || die
80 + mkdir -p sunrpc
81 + cp $(which rpcgen) sunrpc/cross-rpcgen || die
82 + touch -t 202001010101 sunrpc/cross-rpcgen || die
83 + fi
84 + fi
85 }
86
87 toolchain-glibc_src_compile() {