* Re: [gentoo-mips] profiles
2005-08-30 15:18 ` [gentoo-mips] profiles Stephen P. Becker
@ 2005-08-30 16:47 ` Curtis Phillips
2005-09-01 1:49 ` Stuart Longland
2005-09-01 12:12 ` Stephen Bennett
2005-09-03 2:05 ` Kumba
2 siblings, 1 reply; 14+ messages in thread
From: Curtis Phillips @ 2005-08-30 16:47 UTC (permalink / raw
To: gentoo-mips
I'd prefer Kumba's machine specific profiles. Of course, that's the one
that's the biggest PITA to implement/update.
Curtis Phillips
Winemaker
Salmon Leap Consulting
On Aug 30, 2005, at 8:18 AM, Stephen P. Becker wrote:
> Hi folks,
>
> With the somewhat recent introduction of support for a wide variety of
> SGI machines under gentoo, expanding to include all of Indy/Indigo2,
> Origin, Octane, Indigo2 Impact (ip28), and O2, I've noticed more than
> just a handful of new users have had problems when getting to the
> kernel compile phase of the install. The problem is that on systems
> that only run 64-bit kernels, you need a mips64-unknown-linux-gnu
> toolchain to build the kernel. Since the userland is all 32-bit, the
> native toolchain isn't good enough to compile the kernel. However, we
> do provide a proper toolchain via the gcc-mips64 ebuild. Furthermore,
> binutils supports mips64 by default, but symlinks must exist such that
> we have mips64-unknown-linux-gnu-ld -> ld, etc. Both of these are
> automatically provided during emerge system if you use the correct
> profile, which is default-linux/mips/mips64/2005.0 currently.
>
> The problem is that all of our stages ship with
> default-linux/mips/2005.0 as the default profile, which does *not*
> provide gcc-mips64 and the binutils symlinks. Therefore if a user
> didn't know any better and didn't change their profile appropriately,
> they would be stuck while trying to build their kernel because the
> native 32-bit toolchain in the userland will just spit out errors and
> die when compiling the kernel. Of course, this is easily fixed by
> emerging gcc-mips64 and running "binutils-config --mips", which will
> set up a proper toolchain. However, by that time, the user is
> discouraged a bit and inevitably finds our irc channel and whines that
> Gentoo is broken.
>
> Now, I have a few ideas for getting around this. Obviously whatever
> is decided should be added to the documentation, but here are some
> ideas:
>
> A) Do nothing...document in the handbook that if your machine is
> 64-bit, you *must* select the mips64 sub-profile. (I don't like this
> because some folks may be confused as to why everything still works
> just fine with the mips profile, and/or they will just skim over that
> and keep going)
>
> B) Similar to A, except ship stages without the profile set. That
> way, folks really are stuck until they set the proper profile. (I
> don't like this because they could still be confused and set the mips
> profile)
>
> C) Make default-linux/mips/ provide all the 64-bit stuff and get rid
> of the mips64 sub-profile, since all of the SGI machines we support
> can run 64-bit kernels if you so choose (ip22 is the only system that
> supports a 32-bit kernel at this time).
>
> D) (Kumba's idea here...) Have machine specific profiles, e.g.
> default-linux/mips/ip22, default-linux/mips/ip32, etc. (This could be
> really useful because it would allow us to do some other machine
> specific voodoo in the profile).
>
> Any thoughts?
>
> -Steve
> --
> gentoo-mips@gentoo.org mailing list
>
--
gentoo-mips@gentoo.org mailing list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-08-30 16:47 ` Curtis Phillips
@ 2005-09-01 1:49 ` Stuart Longland
2005-09-01 11:00 ` Stephen Bennett
0 siblings, 1 reply; 14+ messages in thread
From: Stuart Longland @ 2005-09-01 1:49 UTC (permalink / raw
To: gentoo-mips; +Cc: gentoo-mips
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Curtis Phillips _top posted_:
> I'd prefer Kumba's machine specific profiles. Of course, that's the one
> that's the biggest PITA to implement/update.
>
> Curtis Phillips
> Winemaker
> Salmon Leap Consulting
>
> On Aug 30, 2005, at 8:18 AM, Stephen P. Becker wrote:
>
>> D) (Kumba's idea here...) Have machine specific profiles, e.g.
>> default-linux/mips/ip22, default-linux/mips/ip32, etc. (This could be
>> really useful because it would allow us to do some other machine
>> specific voodoo in the profile).
>>
>> Any thoughts?
I was thinking that perhaps we could also split it into Endianness, for CHOST
voodoo, and anything else that's endianness-sensitive.
So the profiles would become;
> /usr/profiles/default-linux/mips:
> |- be -- Big Endian Systems
> | |- n32 \__ Profile for any 64-bit voodoo
> | |- n64 /
> | |- ip22 -- SGI Indy, Indigo2 (R4k), Challenge S w/ o32
> | | |= n32 -- importing the ../n32 voodoo
> | | |- n64 -- importing the ../n64 voodoo
> | | '- 2.4 -- with kernel 2.6 stuff masked (for R4600)
> | |
> | |- ip27 -- SGI Origin 200/2000 w/ o32
> | | |- n32 -- importing the ../n32 voodoo
> | | '- n64 -- importing the ../n64 voodoo
> | |
> | |- ip28 -- SGI Indigo2 Impact (R10000)
> | | |- n32 -- as above
> | | '- n64
> | |
> | |- ip30 -- SGI Octane/Octane 2
> | | |- n32
> | | '- n64
> | |
> | '- ip32 -- SGI O2
> | |- r10k -- For R10k-based O2s, if support existed.
> | | |- n32
> | | '- n64
> | |- n32
> | '- n64
> '- le -- Little Endian
> |- n32
> |- n64
> |- cobalt
> | |- n32
> | '- n64
> '- amdalchemy
The above is just an idea. The main reason for splitting 'le' and 'be' is so
that the CHOST can be set correctly (mips{,64}-unknown-linux-gnu on be,
mips{,64}el-unknown-linux-gnu on le). As for how to handle µClibc, not sure
there. I'm guessing it'd be another profile like n32, just to s/gnu/uclibc/
in the CHOST -- certainly it will be that way whilst it's o32 only.
Anyways, those are my thoughts. :-)
- --
: ____ _ Stuart Longland (a.k.a Redhatter)
:/ \ ___ ___ __| |__ __ __ Gentoo Linux/MIPS Cobalt and Docs
:- ( ) \ / \ ; \(__ __)/ \ / \ Developer
: \ // O _| / /\ \ | | | /\ | /\ |
: / / \ /__| / \ \ | | | \/ | \/ |
:(___/ \____/|_; |_| \_/ \__/ \__/ http://dev.gentoo.org/~redhatter
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
iD8DBQFDFl4ouarJ1mMmSrkRAiDCAJ42KOIXnKwRBvvojDdexE07NF9BIACePZVz
bwMsxOxp1aIv5jPfWyAsnV8=
=3zEt
-----END PGP SIGNATURE-----
--
gentoo-mips@gentoo.org mailing list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-09-01 1:49 ` Stuart Longland
@ 2005-09-01 11:00 ` Stephen Bennett
2005-09-01 14:22 ` Stuart Longland
0 siblings, 1 reply; 14+ messages in thread
From: Stephen Bennett @ 2005-09-01 11:00 UTC (permalink / raw
To: gentoo-mips
Stuart Longland wrote:
>So the profiles would become;
>
>
>>/usr/profiles/default-linux/mips:
>>|- be -- Big Endian Systems
>>| |- n32 \__ Profile for any 64-bit voodoo
>>| |- n64 /
>>| |- ip22 -- SGI Indy, Indigo2 (R4k), Challenge S w/ o32
>>| | |= n32 -- importing the ../n32 voodoo
>>| | |- n64 -- importing the ../n64 voodoo
>>| | '- 2.4 -- with kernel 2.6 stuff masked (for R4600)
>>| |
>>
Profiles don't do multiple inheritance. You'll either end up duplicating
n32/n64 in all the relevant subprofiles, in which case why bother with
be/n32, or the ip22/n32 profile won't inherit from ip22/, which kinda
defeats the point, no?
--
gentoo-mips@gentoo.org mailing list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-09-01 11:00 ` Stephen Bennett
@ 2005-09-01 14:22 ` Stuart Longland
2005-09-01 14:30 ` Stephen Bennett
0 siblings, 1 reply; 14+ messages in thread
From: Stuart Longland @ 2005-09-01 14:22 UTC (permalink / raw
To: gentoo-mips
[-- Attachment #1: Type: text/plain, Size: 1626 bytes --]
Stephen Bennett wrote:
> Stuart Longland wrote:
>
>> So the profiles would become;
>>
>>
>>> /usr/profiles/default-linux/mips:
>>> |- be -- Big Endian Systems
>>> | |- n32 \__ Profile for any 64-bit voodoo
>>> | |- n64 /
>>> | |- ip22 -- SGI Indy, Indigo2 (R4k), Challenge S w/ o32
>>> | | |= n32 -- importing the ../n32 voodoo
>>> | | |- n64 -- importing the ../n64 voodoo
>>> | | '- 2.4 -- with kernel 2.6 stuff masked (for R4600)
>>> | |
>>>
> Profiles don't do multiple inheritance. You'll either end up duplicating
> n32/n64 in all the relevant subprofiles, in which case why bother with
> be/n32, or the ip22/n32 profile won't inherit from ip22/, which kinda
> defeats the point, no?
That's a fly in the ointment, yes. I spose that means removing the
toplevel n32 and n64 profiles. This does mean duplication of files,
which is probably it's biggest downside -- but it gives us the greatest
flexibility IMHO.
In fact, there's an idea for profiles... why not have multiple
inheritance? It'd be something to bring up with the portage devs I
think, but it may have some useful features.
Certainly though, at the very least, we should split according to
endianness and userland. That way, CHOST and other vars can be set
correctly.
--
____ _ Stuart Longland (a.k.a Redhatter)
/ _ \ ___ ___ __| |__ __ __ Gentoo Linux/MIPS Cobalt and Docs
- (_) \ / \ ; \(__ __)/ \ / \ Developer
\ // O _| / /\ \ | | | /\ | /\ |
/ / \ /__| / \ \ | | | \/ | \/ |
(___/ \____/|_; |_| \_/ \__/ \__/ http://dev.gentoo.org/~redhatter
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 256 bytes --]
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-09-01 14:22 ` Stuart Longland
@ 2005-09-01 14:30 ` Stephen Bennett
0 siblings, 0 replies; 14+ messages in thread
From: Stephen Bennett @ 2005-09-01 14:30 UTC (permalink / raw
To: gentoo-mips
Stuart Longland wrote:
> In fact, there's an idea for profiles... why not have multiple
> inheritance? It'd be something to bring up with the portage devs I
> think, but it may have some useful features.
Not going to happen in the current round of development. AIUI
though, profiles are being redone for the rewrite, and multiple
inheritance will very likely be in that.
--
gentoo-mips@gentoo.org mailing list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-08-30 15:18 ` [gentoo-mips] profiles Stephen P. Becker
2005-08-30 16:47 ` Curtis Phillips
@ 2005-09-01 12:12 ` Stephen Bennett
2005-09-03 2:05 ` Kumba
2 siblings, 0 replies; 14+ messages in thread
From: Stephen Bennett @ 2005-09-01 12:12 UTC (permalink / raw
To: gentoo-mips
Stephen P. Becker wrote:
> A) Do nothing...document in the handbook that if your machine is
> 64-bit, you *must* select the mips64 sub-profile. (I don't like this
> because some folks may be confused as to why everything still works
> just fine with the mips profile, and/or they will just skim over that
> and keep going)
>
> B) Similar to A, except ship stages without the profile set. That
> way, folks really are stuck until they set the proper profile. (I
> don't like this because they could still be confused and set the mips
> profile)
>
> C) Make default-linux/mips/ provide all the 64-bit stuff and get rid
> of the mips64 sub-profile, since all of the SGI machines we support
> can run 64-bit kernels if you so choose (ip22 is the only system that
> supports a 32-bit kernel at this time).
>
> D) (Kumba's idea here...) Have machine specific profiles, e.g.
> default-linux/mips/ip22, default-linux/mips/ip32, etc. (This could
> be really useful because it would allow us to do some other machine
> specific voodoo in the profile).
I quite like D here. Removes any confusion as to what profile you want,
and could then be combined with B so that people don't end up with the
wrong profile set anyway.
--
gentoo-mips@gentoo.org mailing list
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [gentoo-mips] profiles
2005-08-30 15:18 ` [gentoo-mips] profiles Stephen P. Becker
2005-08-30 16:47 ` Curtis Phillips
2005-09-01 12:12 ` Stephen Bennett
@ 2005-09-03 2:05 ` Kumba
2 siblings, 0 replies; 14+ messages in thread
From: Kumba @ 2005-09-03 2:05 UTC (permalink / raw
To: gentoo-mips
[-- Attachment #1: Type: text/plain, Size: 3820 bytes --]
Stephen P. Becker wrote:
> Hi folks,
>
> With the somewhat recent introduction of support for a wide variety of
> SGI machines under gentoo, expanding to include all of Indy/Indigo2,
> Origin, Octane, Indigo2 Impact (ip28), and O2, I've noticed more than
> just a handful of new users have had problems when getting to the kernel
> compile phase of the install. The problem is that on systems that only
> run 64-bit kernels, you need a mips64-unknown-linux-gnu toolchain to
> build the kernel. Since the userland is all 32-bit, the native
> toolchain isn't good enough to compile the kernel. However, we do
> provide a proper toolchain via the gcc-mips64 ebuild. Furthermore,
> binutils supports mips64 by default, but symlinks must exist such that
> we have mips64-unknown-linux-gnu-ld -> ld, etc. Both of these are
> automatically provided during emerge system if you use the correct
> profile, which is default-linux/mips/mips64/2005.0 currently.
>
> The problem is that all of our stages ship with
> default-linux/mips/2005.0 as the default profile, which does *not*
> provide gcc-mips64 and the binutils symlinks. Therefore if a user
> didn't know any better and didn't change their profile appropriately,
> they would be stuck while trying to build their kernel because the
> native 32-bit toolchain in the userland will just spit out errors and
> die when compiling the kernel. Of course, this is easily fixed by
> emerging gcc-mips64 and running "binutils-config --mips", which will set
> up a proper toolchain. However, by that time, the user is discouraged a
> bit and inevitably finds our irc channel and whines that Gentoo is broken.
>
> Now, I have a few ideas for getting around this. Obviously whatever is
> decided should be added to the documentation, but here are some ideas:
>
> A) Do nothing...document in the handbook that if your machine is 64-bit,
> you *must* select the mips64 sub-profile. (I don't like this because
> some folks may be confused as to why everything still works just fine
> with the mips profile, and/or they will just skim over that and keep going)
>
> B) Similar to A, except ship stages without the profile set. That way,
> folks really are stuck until they set the proper profile. (I don't like
> this because they could still be confused and set the mips profile)
>
> C) Make default-linux/mips/ provide all the 64-bit stuff and get rid of
> the mips64 sub-profile, since all of the SGI machines we support can run
> 64-bit kernels if you so choose (ip22 is the only system that supports a
> 32-bit kernel at this time).
>
> D) (Kumba's idea here...) Have machine specific profiles, e.g.
> default-linux/mips/ip22, default-linux/mips/ip32, etc. (This could be
> really useful because it would allow us to do some other machine
> specific voodoo in the profile).
>
> Any thoughts?
>
> -Steve
So people have an idea of what's being proposed in regards to Item #D, Attached
to this message are two text files. The first shows the current profile setup
as of today. The second file shows the proposed reorganization, starting with
2005.1, of the profiles.
The upside to re-organizing under machine-specific categorization is better
control for us developers, and easier to follow layout for the users. Downside
is, it requires more upkeep on our end (although that upkeep should be
relatively trivial, and it's unoptimized; an optimized version will likely be
simpler.).
And as a sidenote, the proposed variant lacks the multilib layout until we
figure out where it goes.
--Kumba
--
Gentoo/MIPS Team Lead
Gentoo Foundation Board of Trustees
"Such is oft the course of deeds that move the wheels of the world: small hands
do them because they must, while the eyes of the great are elsewhere." --Elrond
[-- Attachment #2: gentoo-mips-profiles-current.txt --]
[-- Type: text/plain, Size: 1310 bytes --]
mips/
|
|-2004.2/
| |-make.defaults
| |-parent
|
|-2005.0/
| |-make.defaults
| |-parent
|
|-cobalt/
| |-2004.2/
| | |-make.defaults
| | |-parent
| |
| |-2005.0/
| | |-make.defaults
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-mips64/
| |-2004.2/
| | |-make.defaults
| | |-parent
| |
| |-2005.0/
| | |-make.defaults
| | |-parent
| |
| |-ip28/
| | |-2005.0/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-multilib/
| | |-2005.1/
| | | |-make.defaults
| | | |-parent
| | |
| | |-make.defaults
| | |-parent
| | |-profile.bashrc
| | |-use.mask
| |
| |-n32/
| | |-2004.2/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-2005.0/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-parent
|
|-packages
|-parent
|-use.mask
|-virtuals
[-- Attachment #3: gentoo-mips-profiles-proposed.txt --]
[-- Type: text/plain, Size: 1695 bytes --]
mips/
|
|-cobalt
| |-2005.1
| | |-make.defaults
| | |-parent
| |
| |-n32/
| | |-2005.1/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-ip22
| |-2005.1
| | |-make.defaults
| | |-parent
| |
| |-n32/
| | |-2005.1/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-ip27
| |-2005.1
| | |-make.defaults
| | |-parent
| |
| |-n32/
| | |-2005.1/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-ip28
| |-2005.1
| | |-make.defaults
| | |-parent
| |
| |-n32/
| | |-2005.1/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-ip30
| |-2005.1
| | |-make.defaults
| | |-parent
| |
| |-n32/
| | |-2005.1/
| | | |-make.defaults
| | | |-packages
| | | |-parent
| | |
| | |-parent
| |
| |-packages
| |-parent
| |-use.mask
| |-virtuals
|
|-ip32
^ permalink raw reply [flat|nested] 14+ messages in thread