Date: Wed, 7 Jan 2015 18:06:32 +0000 (UTC) From: Brad Davis <brd@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r46155 - head/en_US.ISO8859-1/htdocs/news/status Message-ID: <201501071806.t07I6WNQ022623@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: brd Date: Wed Jan 7 18:06:31 2015 New Revision: 46155 URL: https://svnweb.freebsd.org/changeset/doc/46155 Log: Add bapt's External Toolchain report Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml ============================================================================== --- head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Wed Jan 7 11:09:00 2015 (r46154) +++ head/en_US.ISO8859-1/htdocs/news/status/report-2014-10-2014-12.xml Wed Jan 7 18:06:31 2015 (r46155) @@ -379,4 +379,91 @@ </help> </project> + <project cat='proj'> + <title>External toolchain</title> + + <contact> + <person> + <name> + <given>Baptiste</given> + <common>Daroussin</common> + </name> + <email>bapt@FreeBSD.org</email> + </person> + <person> + <name> + <given>Warner</given> + <common>Losh</common> + </name> + <email>imp@FreeBSD.org</email> + </person> + <person> + <name> + <given>Brooks</given> + <common>Davis</common> + </name> + <email>brooks@FreeBSD.org</email> + </person> + </contact> + + <links> + <url href="https://wiki.freebsd.org/ExternalToolchain" /> + </links> + + <body> + <p>The main goal of the external toolchain project is to be able + to build world and kernel with non default toolchain. It can be + helpful to: + <ul> + <li>Prepare a migration to a newer version of the components like compilers, binutils, and elftoolchain.</li> + <li>Port &os; to newer architecture</li> + <li>Upgrade from a &os; that ships with GCC 4.2 to a version that ship with clang 3.5+ (which need a more modern toolchain than GCC 4.2 to bootstrap.</li> + </ul> + </p> + + <p>The initial support for external toolchain only supported + clang. It has been extended to support recent GCC (4.9.1 has + been tested) and recent binutils (2.24 and 2.25).</p> + + <p>A large number of fixes have been committed to HEAD to support + incompatible behaviour changes between <tt>ld(1)</tt> from + binutils 2.17.50 (the version in base) and binutils 2.24+.</p> + + <p>A large number of warnings have been deactivated when building + the kernel to make sure it is possible to build the kernel with + recent GCC (first 4.6 and then 4.9.1)</p> + + <p>The build system has been changed to build libc++ as a C++ + stack when a recent enough GCC (4.6+) is used to build world. + </p> + + <p>To simplify using an external toolchain, the following + pre-seeded configurations have been added to the ports tree: + <ul> + <li>amd64-xtoolchain-gcc</li> + <li>powerpc64-xtoolchain-gcc</li> + <li>sparc64-xtoolchain-gcc</li> + </ul> + </p> + + <p>Those packages will depend on special version of GCC + (minimalistic cross-built ready GCC) and on binutils. To use + them run: <tt>make CROSS_TOOLCHAIN=powerpc64-gcc TARGET=powerpc + TARGET_ARCH=powerpc64</tt></p> + + <p>As a result of this effort, it has been possible to + successfully build and run a kernel and world built with GCC + 4.9.1 and binutils 2.24 on sparc64, amd64 (with minor tweaks for + amd64), powerpc and powerpc64.</p> + </body> + + <help> + <task>Patch and upstream GCC 4.9 to support &os; mips, arm and + aarch64</task> + <task>Adapt and upstream the aarch64 patches for binutils 2.25 + </task> + <task>Add more pre seeded configurations</task> + </help> + </project> + </report>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201501071806.t07I6WNQ022623>