Re: Building world with clang ToT

From: Edward Meewis <ed_at_extraordinarymachine.nl>
Date: Thu, 13 Sep 2012 11:27:35 +0200
Hi Brook,

On 12-09-12 18:34, Brooks Davis wrote:
> <snip>
> Note that some people have been working on external toolchain support.
>
> This would aim to make it possible to do what you were trying, e.g.
> building world using WITHOUT_TOOLCHAIN, which sets both WITHOUT_CLANG
> and WITHOUT_GCC, among others.
>
> However, I am not sure how far these efforts have come by now. :-)
> I've got some patches that aren't quite ready for prime-time that
> allow me to cross build world with an external CLANG.  I'll post them to
> the toolchain_at_ list when they are closer to ready (hopefully quite soon).
>
> -- Brooks
I'd be interested in those, even if there are some rough edges. (I don't 
mind sub-prime, this time ;)

FWIW: The clang build finished too, but with two hick-ups:
1. - kdump: build reports 4 errors:

===> usr.bin/kdump (depend)
sh /usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/mksubr 
/usr/obj/usr/home/emeewis/contrib/FreeBSD-HEAD/tmp/usr/include >kdump_subr.c
env MACHINE=amd64 CPP="cpp"  sh 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/mkioctls print 
/usr/obj/usr/home/emeewis/contrib/FreeBSD-HEAD/tmp/usr/include > ioctl.c
<stdin>:8:31: error: cam/scsi/scsi_enc.h: No such file or directory
<stdin>:17:33: error: dev/filemon/filemon.h: No such file or directory
<stdin>:35:33: error: fs/nandfs/nandfs_fs.h: No such file or directory
<stdin>:46:24: error: net/netmap.h: No such file or directory

(As a consequence ?) clang doesn't pick up 2 symbols: MFI_CMD32 and 
MFIIO_PASSTHRU32 which are defined if COMPAT_FREEBSD32 is set in 
sys/dev/mfi/mfi_ioctl.h

2. lint calls tmp/usr/cc directly:

buildworld-clang.log:===> usr.bin/xlint/llib (all)
buildworld-clang.log:lint -cghapbx -Cposix 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/xlint/llib/llib-lposix
buildworld-clang.log:lint: cannot exec 
/usr/obj/usr/home/emeewis/contrib/FreeBSD-HEAD/tmp/usr/bin/cc: No such 
file or directory
buildworld-clang.log:Stop in 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/xlint/llib.

A link from cc to clang in the same directory fixes that.

Regards, Ed.

ps: re. 1: the gcc build calls:

===> usr.bin/kdump (depend)
/bin/sh 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/../../sys/kern/makesyscalls.sh 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/../../sys/amd64/linux32/syscalls.master 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/linux_syscalls.conf
sh /usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/mksubr 
/usr/obj/usr/home/emeewis/contrib/FreeBSD-HEAD/tmp/usr/include | sed -n 
's/^\([a-z].*)\)$/void \1;/p' >kdump_subr.h
echo "int nlinux_syscalls = sizeof(linux_syscallnames) / 
sizeof(linux_syscallnames[0]);"  >> linux_syscalls.c
env MACHINE=amd64 CPP="cpp"  sh 
/usr/home/emeewis/contrib/FreeBSD-HEAD/usr.bin/kdump/mkioctls print 
/usr/obj/usr/home/emeewis/contrib/FreeBSD-HEAD/tmp/usr/include > ioctl.c
Received on Thu Sep 13 2012 - 07:28:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:30 UTC