svn commit: r250659 - in head: . share/mk tools/build/options tools/tools/makeroot

Brooks Davis brooks at FreeBSD.org
Tue May 21 17:00:09 UTC 2013


On Mon, May 20, 2013 at 10:17:33PM +0200, Andreas Tobler wrote:
> On 20.05.13 22:10, Brooks Davis wrote:
> > On Mon, May 20, 2013 at 09:59:35PM +0200, Andreas Tobler wrote:
> >> On 20.05.13 21:51, Brooks Davis wrote:
> >>> On Fri, May 17, 2013 at 12:06:01AM +0200, Andreas Tobler wrote:
> >>>> On 15.05.13 16:30, Brooks Davis wrote:
> >>>>> Author: brooks
> >>>>> Date: Wed May 15 14:30:03 2013
> >>>>> New Revision: 250659
> >>>>> URL: http://svnweb.freebsd.org/changeset/base/250659
> >>>>>
> >>>>> Log:
> >>>>>   Add support for an external cross compiler.  The cross compiler is
> >>>>>   specified by passing the XCC, XCXX, and XCPP variables (corresponding to
> >>>>>   CC, CXX, and CPP) to buildworld/buildkernel.  The compiler must be clang
> >>>>>   or be configured to target the appropriate architecture.
> >>>>>   
> >>>>>   To speed build times, if XCC is an absolute path or
> >>>>>   WITHOUT_CROSS_COMPILER is defined then no cross compiler will be built
> >>>>>   during the cross-tools stage.
> >>>>>   
> >>>>>   Limited documentation of this feature can currently be found at:
> >>>>>   
> >>>>>   https://wiki.freebsd.org/ExternalToolchain
> >>>>>   
> >>>>>   This functionality should be considered experimental and is subject to
> >>>>>   change without notice.
> >>>>>   
> >>>>>   Sponsored by:	DARPA, AFRL
> >>>>>   Discussed with:	imp, sjg
> >>>>
> >>>> I had to revert this commit to be able to build world and kernel with
> >>>> WITHOUT_CLANG_IS_CC in /etc/src.conf
> >>>>
> >>>> It did not find the headers (like math.h) when building the 32-bit part
> >>>> on amd64.
> >>>
> >>> I'll need more information to do any useful debugging.  How is the host
> >>> configured?  If it's not 100% stock, I need to know what WITH/WITHOUT
> >>> options were set to build it.  Are you setting any options other than
> >>> WITHOUT_CLANG_IS_CC during this build?
> >>
> >> Source is svn -CURRENT. There is no other option set than
> >> WITHOUT_CLANG_IS_CC. Beside I use MALLOC_PRODUCTION=1
> > 
> > Is /usr/bin/cc gcc or clang?
> 
> /usr/bin/cc  -v
> Using built-in specs.
> Target: amd64-undermydesk-freebsd
> Configured with: FreeBSD/amd64 system compiler
> Thread model: posix
> gcc version 4.2.1 20070831 patched [FreeBSD]
> 
> > Just to be sure.  Are you setting CC anywhere?
> > 
> >> This happens on both 32-capable targets, amd64 and powerpc64.
> >>
> >> I figured that there are at least three headers 'missing' so far in
> >> src/lib32/usr/include:
> >> - math.h
> >> - fenv.h
> >> - libutil.h
> >>
> >> If I manually copy them to this location I can continue building until
> >> /usr/bin/ld complains about not being configured for sysroots.
> >> I just restarted the whole worldbuild again with the above mentionend
> >> headers in place.
> > 
> > Hmm, this is really weird.  /usr/bin/ld should never run after the
> > bootstrap phase unless you actually use the X* variables.
> 
> Well, it might be that I did something in a hurry, that's why I
> restarted the whole build.
> What I did, I cleaned the whole obj dir and did a 'make build32' in
> /usr/src (to save some time), then I got the exact same failures as when
> I started from scratch. Now I tried to find all the headers which the
> compiler was complaining about, copied them to
> /usr/obj/****/src/lib32/usr/include, finished the compilation stage and
> at the linker stage 'ld' complained.
> 
> Now I'm waiting for the build from beginning with copied headers to see
> what happens.

The problem seems to be that clang and gcc don't agree about the meaning
of -isystem and --sysroot.  I've committed a change that I belive
restores the status quo.

-- Brooks
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 188 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/svn-src-head/attachments/20130521/0569c341/attachment.sig>


More information about the svn-src-head mailing list