[cfe-dev] Clang going into FreeBSD's base system

Ed Schouten ed at 80386.nl
Fri May 14 10:14:21 PDT 2010


Hello Clang folks,

You folks probably want to be informed about this as well.

Greetings,
-- 
 Ed Schouten <ed at 80386.nl>
 WWW: http://80386.nl/


----- Forwarded message from Ed Schouten <ed at 80386.nl> -----
> Date: Fri, 14 May 2010 17:24:08 +0200
> From: Ed Schouten <ed at 80386.nl>
> To: FreeBSD Arch <arch at freebsd.org>
> Subject: Request for review: build infrastructure for Clang
> 
> Hello all,
> 
> At BSDCan there has been a general agreement that in order to make Clang
> a viable replacement for GCC 4.2.1, it should be integrated into FreeBSD
> HEAD and installed by default as soon as possible. This does not mean
> that the system will be bootstrapped using Clang, nor does it mean that
> Ports are built using it. Clang is just installed as /usr/bin/clang and
> /usr/bin/clang++. It can be built and installed on any architecture, but
> it will only be enabled on amd64, i386 and pc98 for now.
> 
> As requested by several people, I am hereby sending a patch which adds
> the build infrastructure for Clang. It includes all modifications that
> are present in the projects/clangbsd-import branch, except the
> LLVM/Clang source tree stored at contrib/llvm.
> 
> Below are random remarks about the patch:
> 
> - Clang depends on many LLVM libraries. The Makefiles for these
>   libraries are stored in usr.bin/clang/lib. All binaries (clang and
>   tblgen) have their Makefiles in usr.bin/clang/bin respectively.
> 
> - Clang requires a bootstrapping tool called tblgen, which generates
>   large portions of internal interfaces. Even though this tool is only
>   needed when MK_CLANG is set, it is always built. Because the default
>   value of MK_CLANG depends on the architecture used, we cannot reliably
>   determine whether tblgen should be built during bootstrap when
>   cross-compiling. Because tblgen doesn't blow up the build time
>   significantly, it will always be built.
> 
> - LLVM source code includes some generated header files. Not all these
>   generated headers use .h extensions. This isn't a problem, except that
>   it confuses <bsd.*.mk>. This is why all headers generated by tblgen
>   have the .h extension and wrappers are in place in
>   usr.bin/clang/include.
> 
> If everything goes according to plan, this patch will be committed to
> HEAD in 2 weeks from now (May 28). Depending on whether interesting bugs
> are fixed upstream, a newer snapshot may be integrated than the one used
> right now.
> 
> The entire source tree can be checked out as follows. Be sure to give it
> a try!
> 
> 	svn co svn://svn.freebsd.org/base/projects/clangbsd-import/
> 
> In case you find problems, be sure to drop by #freebsd-clang on EFnet.
> 
> Greetings from Ottawa,
> -- 
>  Ed Schouten <ed at 80386.nl>
>  WWW: http://80386.nl/
----- End forwarded message -----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20100514/f83597e2/attachment.sig>


More information about the cfe-dev mailing list