[PATCH] Make it easier to bootstrap llvm using cmake

Andy Gibbs andyg1001 at hotmail.co.uk
Mon Dec 9 23:17:59 PST 2013


On Tuesday, December 10, 2013 4:03 AM, NAKAMURA Takumi wrote:
> Andy, excuse me to comment an old topic.

Not a problem!

> I supposed we could use LLVM_EXTERNAL_*_BUILD=OFF in such purpose.

The purpose of the patch was to work around the fact that tools such as lld, 
lldb and polly make use of c++11 features and therefore cannot be built 
without a c++11 compiler.  Therefore one could use a bootstrap build to 
build clang and then build the entire toolchain from this.  That was the 
original purpose.  I understand however that following next release clang 
will require a c++11 compiler anyway so it could all become moot really 
since it now becomes necessary to build clang by building a 4.7 or 4.8 
version of gcc first!  (However, I still think it is useful, not least for 
testing, to build the tools with the "just-built" clang.)

However, in keeping with the initial premise of the patch, and until it 
becomes possible to build tools with the "just-built" version of clang 
within one build process, I'd think it easier to users to bootstrap using 
LLVM_INCLUDE_TOOLS=bootstrap-only rather than have to include a list of 
excluded external tools.  I think the intention is clearer and can be better 
supported by the build system.

> Practically, the patch has an issue. It is created as BOOL in 
> CMakeCache.txt.
> Please see also;
> http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130805/183955.html
>
> May I revert it?

I'd personally rather it was fixed than reverted.  I looked at the patch at 
http://lists.cs.uiuc.edu/pipermail/llvm-commits/attachments/20130810/5d152d1c/attachment.obj 
and it "looks good to me", but I haven't tested it personally since I'm away 
on business currently and unfortunately don't have a build machine to hand. 
If you're happy with the patch, please go ahead with it.

Cheers
Andy
 




More information about the llvm-commits mailing list