[LLVMdev] compiler-rt CMake build
Tobias Grosser
tobias at grosser.es
Mon Feb 10 05:52:51 PST 2014
On 02/10/2014 06:08 AM, Chandler Carruth wrote:
> Just to try and share some perspective of developers on Clang and LLVM...
>
> On Thu, Feb 6, 2014 at 7:20 AM, Brad King <brad.king at kitware.com> wrote:
>
>> IIUC there is a desire for Clang to be able to be built externally to
>> LLVM rather than subsumed into its build process. The top-level
>> CMakeLists.txt file of Clang already has code to do that, though it
>> can be much cleaner after my patches to LLVM to provide LLVMConfig.cmake
>> are integrated.
>>
>
> While there is a strong desire to do this by some developers, it is purely
> for pragmatic reasons: it makes their builds *significantly* faster because
> xcode doesn't load the entire project, etc.
>
> I don't believe there is *any* interest in breaking the hard version lock
> between LLVM and Clang. We rely on that heavily, and it's likely never
> going away.
>
> I think the default and expected build mode should still be a merged tree
> where the bits and pieces desired are checked out into an LLVM checkout,
> and the build system can handle whatever partial build there is provided
> the dependencies are in place.
>
>
>> Then it will even be possible to build Clang using
>> CMake against a LLVM that was built and installed using configure+make.
>>
>
> I actually doubt that this is a particularly interesting build
> configuration. Perhaps it is for distributions or packagers, but frankly, I
> expect it to bitrot immediately. I don't think any devs will realistically
> use it. Maybe I'm wrong though...
At best, we would have some buildbots using this configuration (we could
switch existing onces to this scheme).
I don't think we need it for clang, but many external projects would
like to use cmake to build against LLVM as installed by debian e.g. In
this case, it is great if even an autoconf installation of LLVM provides
the relevant cmake pieces.
Cheers,
Tobias
More information about the llvm-dev
mailing list