Gentoo Archives: gentoo-mips

From: "Anthony G. Basile" <blueness@g.o>
To: gentoo-mips@l.g.o
Subject: Re: [gentoo-mips] Re: On MIPS using the same CHOST for all multilib ABIs
Date: Sun, 29 Dec 2013 22:19:01
Message-Id: 52C0A007.2000609@gentoo.org
In Reply to: Re: [gentoo-mips] Re: On MIPS using the same CHOST for all multilib ABIs by Markos Chandras
1 On 12/29/2013 05:13 PM, Markos Chandras wrote:
2 > On 12/29/2013 09:52 PM, Anthony G. Basile wrote:
3 >> On 12/29/2013 04:48 PM, Markos Chandras wrote:
4 >>> On 12/29/2013 09:48 PM, Michał Górny wrote:
5 >>>> Dnia 2013-12-29, o godz. 16:40:08
6 >>>> Joshua Kinard <kumba@g.o> napisał(a):
7 >>>>
8 >>>>> On 12/28/2013 5:58 PM, Michał Górny wrote:
9 >>>>>> I've noticed today that mips uses the same CHOST value for all three
10 >>>>>> ABIs it supports:
11 >>>>>>
12 >>>>>> arch/mips/mips64/multilib/make.defaults:CHOST_o32="${CHOST}"
13 >>>>>> arch/mips/mips64/multilib/make.defaults:CHOST_n32=${CHOST}
14 >>>>>> arch/mips/mips64/multilib/make.defaults:CHOST_n64=${CHOST}
15 >>>>>> arch/mips/mipsel/mips64el/multilib/make.defaults:CHOST_o32="${CHOST}"
16 >>>>>> arch/mips/mipsel/mips64el/multilib/make.defaults:CHOST_n32="${CHOST}"
17 >>>>>> arch/mips/mipsel/mips64el/multilib/make.defaults:CHOST_n64="${CHOST}"
18 >>>>>>
19 >>>>>> [...]
20 >>>>> Matt can probably vouch for this better, but the only two ABIs
21 >>>>> affected by
22 >>>>> this are n32 and n64. mips[el]-unknown-linux-gnu implies a 32-bit
23 >>>>> big/little endian CHOST, which means the o32 ABI.
24 >>>>> mips64[el]-unknown-linux-gnu means either n32 or n64. So no change
25 >>>>> should
26 >>>>> be needed for o32-based installs.
27 >>>> Just to be clear:
28 >>>>
29 >>>> profiles/arch/mips/mipsel/mips64el/multilib/make.defaults:
30 >>>>
31 >>>> CHOST="mips64el-unknown-linux-gnu"
32 >>>>
33 >>>> [...]
34 >>>>
35 >>>> CFLAGS_o32="-mabi=32"
36 >>>> CHOST_o32="${CHOST}"
37 >>>>
38 >>>> CFLAGS_n32="-mabi=n32"
39 >>>> CHOST_n32="${CHOST}"
40 >>>>
41 >>>> CFLAGS_n64="-mabi=64"
42 >>>> CHOST_n64="${CHOST}"
43 >>>>
44 >>>> So in this case, o32 actually uses mips64el-unknown-linux-gnu, unless
45 >>>> I'm missing something.
46 >>>>
47 >>> Yes all 3 ABIs use the same tuple.
48 >>>
49 >> I think people are missing Mike's point from earlier, which is that
50 >> tuples label toolchains and a toolchain can support multiple abis. So
51 >> for example, what would one do on a system which simultaneously has o32,
52 >> n32 and n64? -gnuabi32n32n64 looks pretty crazy.
53 >>
54 > There is only one default ABI, so the toolchain should be named after
55 > that. But that does not mean the toolchain can't build for different ABIs
56 >
57 No because that would confuse a toolchain which only supports n32 with
58 one that supports o32/n32/n64. Anyhow, Michał response is heading in
59 the right direction where we'd have to use multiple tuple on multilib
60 system support more than one lib. I'm still not sure where this will
61 land us with respect to gnuconfig and other tuple parsing tools that
62 bring in their own assumptions.
63
64 --
65 Anthony G. Basile, Ph.D.
66 Gentoo Linux Developer [Hardened]
67 E-Mail : blueness@g.o
68 GnuPG FP : 1FED FAD9 D82C 52A5 3BAB DC79 9384 FA6E F52D 4BBA
69 GnuPG ID : F52D4BBA

Replies

Subject Author
Re: [gentoo-mips] Re: On MIPS using the same CHOST for all multilib ABIs Markos Chandras <hwoarang@g.o>