Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Oct 2017 21:38:25 -0700
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        freebsd-arch@freebsd.org
Subject:   Re: Making C++11 a hard requirement for FreeBSD
Message-ID:  <5d2efe50-62c4-d1af-db45-123d813f7acb@freebsd.org>
In-Reply-To: <1723616.qgAo6xlX2y@ralph.baldwin.cx>
References:  <CANCZdfq5=KRp4NYKsc15gyS9C7CxrBFxcKQLPwnb_0oPb15vJw@mail.gmail.com> <CANCZdfrqoHh2_knYrmNZF5d=VFt5csuFu%2BkT5XpKKnH%2B0-Xbig@mail.gmail.com> <577d3900-76f2-2c52-8ada-b8fb1fe881be@freebsd.org> <1723616.qgAo6xlX2y@ralph.baldwin.cx>

next in thread | previous in thread | raw e-mail | index | archive | help
On 10/10/17 06:49, John Baldwin wrote:
[...]
>>> Let's focus on #1, the largest if not the only major problem. If I build,
>>> say, a ppc64 system with an external toolchain right now, it boots and runs
>>> fine. But the system is completely unusable since:
>>> - There are no binary packages built for PPC64, because of project policy
>>> preventing the use of native build systems
>>>
>>>
>>> System is still usable w/o packages. People can still fire up custom
>>> poudrier repos. We could also change project policy. This is is a specific
>>> wrinkle for powerpc64 it seems.
>> How would I do that? We can't run these natively, because the system
>> ships without a compiler. And we can't cross-compile, because the ports
>> tree does not support that.
> The base/ ports _do_ cross-compile.  See /usr/ports/base/README.  You have to
> build a world image using the external toolchain that can then be used as a
> --sysroot with the external toolchain to build binutils and gcc packages.
> These packages should then be able to be installed.  To be clear, you would
> build a world on an amd64 host with the foo-xtoolchain-gcc toolchain, install
> it to some 'rootfs' directory, then build the base/ packages on the same
> amd64 host but the generated packages can be installed on the target via
> pkg install.  In particular, we could automate building of the base/ packages
> in the cluster and publish repositories that contain just binutils and gcc.
>

Has anyone managed to have this work recently? GCC seems to play quite 
poorly with our libc++ and I haven't managed to get base/gcc to build at 
all despite trying for a few days. I did get base/binutils and pkg to 
cross-compile after some tweaks, but base/gcc just won't go.
-Nathan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5d2efe50-62c4-d1af-db45-123d813f7acb>