[PATCH] Make it easier to bootstrap llvm using cmake
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
-- create bootstrap directory
-- configure using "best system compiler" (usually gcc) with
-- 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
>> Please see also;
>> May I revert it?
> I'd personally rather it was fixed than reverted. I looked at the patch
> 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.
More information about the llvm-commits