From owner-freebsd-arch@freebsd.org Mon Dec 18 23:15:19 2017 Return-Path: Delivered-To: freebsd-arch@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B6036E91033 for ; Mon, 18 Dec 2017 23:15:19 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from d.mail.sonic.net (d.mail.sonic.net [64.142.111.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A1AD2761BC for ; Mon, 18 Dec 2017 23:15:19 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from helicon.physics.ucla.edu (helicon.physics.ucla.edu [169.232.156.253]) (authenticated bits=0) by d.mail.sonic.net (8.15.1/8.15.1) with ESMTPSA id vBINFBgB010271 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NOT) for ; Mon, 18 Dec 2017 15:15:12 -0800 Subject: Re: Making C++11 a hard requirement for FreeBSD To: freebsd-arch@freebsd.org References: <577d3900-76f2-2c52-8ada-b8fb1fe881be@freebsd.org> <1723616.qgAo6xlX2y@ralph.baldwin.cx> <5d2efe50-62c4-d1af-db45-123d813f7acb@freebsd.org> From: Nathan Whitehorn Message-ID: Date: Mon, 18 Dec 2017 15:15:11 -0800 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:52.0) Gecko/20100101 Thunderbird/52.4.0 MIME-Version: 1.0 In-Reply-To: <5d2efe50-62c4-d1af-db45-123d813f7acb@freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-Sonic-CAuth: UmFuZG9tSVZSVSxnCzBXxBraGPVO7tze0zJIDnDGkldU/ND6lytavfIIp8INUQdkePgZE4e3gHwxgP8Pg/s+E9O8Ibrd80k9jjUMtC+a5o4= X-Sonic-ID: C;NsrnS0nk5xGceZdP6JRttw== M;LFY9TEnk5xGceZdP6JRttw== X-Spam-Flag: No X-Sonic-Spam-Details: 0.0/5.0 by cerberusd X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Dec 2017 23:15:19 -0000 On 10/20/17 21:38, Nathan Whitehorn wrote: > 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 > _______________________________________________ > freebsd-arch@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arch > To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org" > I eventually managed to get the ports to build. It would be great if a ports committer could look through this PR, which is enough to get base/binutils, base/gcc, and ports-mgmt/pkg to cross-compile: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224217 -Nathan