[PATCH] Make it easier to bootstrap llvm using cmake

Andy Gibbs andyg1001 at hotmail.co.uk
Mon Dec 9 23:26:49 PST 2013


On Tuesday, December 10, 2013 8:17 AM, Andy Gibbs wrote:
> 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.)

Just for interest, my internal build-bots run a build script along the lines 
of:

  -- create bootstrap directory
  -- configure using "best system compiler" (usually gcc) with 
"bootstrap-only" option
  -- make clang (only!)
  -- create final directory
  -- build libc++ and polly prerequisites using bootstrap clang
  -- build complete llvm toolchain using bootstrap clang and libc++

> 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