This is an old revision of the document!


FreeBSD needs support for external toolchains to ease testing of new compiler versions, support compilers that don't make sense to integrate into the base, and speed builds (by avoiding building of bootstrap compilers). This page documents efforts towards this.

The XCC approach works with top level build targets (buildworld, buildkernel, etc) and overrides common make variables such as CC, CXX, and AS during the cross building portions of the build with values specified by the XCC, XCPP, XAS, etc variables. This method touches few files and is relatively easy to understand, but has drawbacks including the inability to build individual programs easily.

How to use

XXX: document more

Caveats

To use XCC, you must not set any of the variables that can be overridden by X* variables in /etc/make.conf or /etc/src.conf as Makefile.inc1 will be unable to change them.

Status

The latest patch for XCC support can be found at http://people.freebsd.org/~brooks/patches/xcc3.diff

  • externaltoolchain.1367373821.txt.gz
  • Last modified: 2013/05/01 02:03
  • by BrooksDavis