Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 9 Aug 2015 23:03:23 -0700
From:      Adrian Chadd <adrian.chadd@gmail.com>
To:        Jordan Hubbard <jordanhubbard@me.com>, Dimitry Andric <dim@freebsd.org>
Cc:        Bill Sorenson <instructionset@gmail.com>,  "freebsd-hackers@freebsd.org" <freebsd-hackers@freebsd.org>, Kevin Bowling <kevin.bowling@kev009.com>, "K. Macy" <kmacy@freebsd.org>
Subject:   Re: Sparc64 support
Message-ID:  <CAJ-VmonZvFc24NcOdSK8SbpDa8Zt3xjA%2BbLQ6QnKH%2Bc-JmAmpw@mail.gmail.com>
In-Reply-To: <A8AE31ED-CD22-4FE1-B888-3371502B634E@me.com>
References:  <CACcTwYmS1c5uoO-WiJQDwgqYAevX7WZ7ZrP297hnOu7cNET3CA@mail.gmail.com> <mq3sg1$bno$1@ger.gmane.org> <CACcTwYnU=E-6sV3yLh3yKUSPZOg7967XV5ToXoSVPuNfOjF7hQ@mail.gmail.com> <CAHM0Q_NEYWxpHCwEdytfY6i9%2BRO2BebezzmenfQ_1c4u7zGrgg@mail.gmail.com> <CACcTwY=DcUREt5nJWo_eJfrB=3sQXBaS6nc%2B07fpZhxARD0zTQ@mail.gmail.com> <20150809215403.GC20238@server.rulingia.com> <6C12EBFE-EAA9-4C12-9F03-1CB2C28C4A6E@me.com> <CACcTwYktQRTqVSr7PRr5huwbVXVu6oCy26TKiAxzf2NiGAcocA@mail.gmail.com> <51EEBC6E-5D85-439D-874D-D223EE045515@me.com> <CAJ-VmomzV0YKQwenwSZv6fMAOUP8TmPs-oyQaM8KTF7Ndhv_%2Bw@mail.gmail.com> <926DDA42-8883-4AB4-B229-D44387FF5C6B@me.com> <CAJ-VmokHCW8MawfVC_1z2SZ7hfX4wXBqNoGPHQQxya2rV%2B1QMw@mail.gmail.com> <A8AE31ED-CD22-4FE1-B888-3371502B634E@me.com>

next in thread | previous in thread | raw e-mail | index | archive | help
poke dim and the other compiler-y people. They have a plan, and it's
about time we started the deorbit. :)


-a

On 9 August 2015 at 22:54, Jordan Hubbard <jordanhubbard@me.com> wrote:
>
>> On Aug 9, 2015, at 10:11 PM, Adrian Chadd <adrian.chadd@gmail.com> wrote=
:
>>
>> It's supposed to be (for mips):
>>
>> pkg install mips-gcc mips-xtoolchain
>> make ... CROSS_TOOLCHAIN=3Dmips-gcc ...
>>
>> .. however there are loose ends to fix that prevent that from working
>> out of the box.
>
> OK, so here=E2=80=99s what I would propose (and I would even, gulp, be wi=
lling to toss a little engineering resources at it if it makes it actually =
happen):
>
> 1. We add some sort of arch-bootstrap rule to /usr/src/Makefile which doe=
s the following:
>
>         1a. If TARGET_ARCH is one of the =E2=80=9Cclang supported=E2=80=
=9D architectures, it sets some =E2=80=9Cuse internal compiler=E2=80=9D fla=
gs and declares an early victory.  Go to step 1d.
>
>         1b. If TARGET_ARCH is one of those =E2=80=9CNo one can explain to=
 Adrian just how this even works=E2=80=9D then it just falls out of -curren=
t until someone can do steps 1b and 1d.
>
>         1c. If TARGET_ARCH is one of the =E2=80=9Cexternal toolchain=E2=
=80=9D supported architectures then it does the appropriate ``pkg info blah=
'' introspection to see if the appropriate toolchain is already installed, =
and if so, we go to step 1d.  Otherwise, it goes =E2=80=9CBleah!  You must:=
 pkg install 6502-weird-ancient-gcc 6502-apple][-runtime=E2=80=9D and abort=
s, so the user can then make the determination about whether to cruft up th=
eir build machine with those packages and retry the operation.
>
>         1d. All of the appropriate COMPILER_FOO variables are set to comp=
ile for TARGET_ARCH and away we go.
>
> 2. Having done #1, we de-orbit the base version of gcc and let clang take=
 its rightful place as the only =E2=80=9Cinternal compiler=E2=80=9D support=
ed in base.  None of the weird architecture folks can complain that we just=
 broke -current for them because the arch-bootstrap rule will do all the ri=
ght things for their architecture (or if it doesn=E2=80=99t, they know what=
 to hack until it does) and steer the user in the direction of the appropri=
ate package(s).
>
> Am I missing anything?  Is it really that obvious?  It seems I must be mi=
ssing something if this is truly just a 2 step process. :)
>
> - Jordan
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAJ-VmonZvFc24NcOdSK8SbpDa8Zt3xjA%2BbLQ6QnKH%2Bc-JmAmpw>