[LLVMdev] [RFC] Raise minimum required CMake version to 3.0

Chris Bieneman beanz at apple.com
Tue Feb 24 09:33:20 PST 2015


> On Feb 24, 2015, at 8:45 AM, Tobias Grosser <tobias at grosser.es> wrote:
> 
> On 09.02.2015 20:12, Chris Bieneman wrote:
>> It came up on another thread that our current minimum required CMake version 2.8.8, has some bugs that cause issues when building with MSVC + Ninja, and one potential solution was to raise the minimum required version of CMake.
>> 
>> CMake 3.0 is now 6 months old and CMake 3.1 has been released. I would like to propose moving our minimum required CMake version to 3.0.
>> 
>> I’ve attached patches to enforce the change in case anyone wants to test it out.
>> 
>> Thoughts/comments/concerns/objections?
> 
> Hi Chris,
> 
> this update broke my cmake LLVM+Polly buildbot (to my knowledge most other bots use autoconf). I reverted this temporarily to avoid the buildbot noise (this comes a little late, as I was traveling the last days).

Actually at this point I think most bots are on CMake. The green dragon bots are all CMake, Galina and Takumi’s bots are at least partially on CMake.

> 
> The buildbot is based on the latest debian stable (wheezy), which comes with cmake 2.8.9. Is 2.8.9 enough to fix the bug?

No. The bug requires 2.8.12.1. I really wanted 3.0, but Chandler requested 2.8.12.2 because it was the version in the latest Ubuntu LTS.

I’m going to put on my “unpopular opinion” hat for a second. I don’t think it is reasonable for us to limit our CMake version to the lowest common denominator of all Linux distributions. I really think the Linux developers should just do what I do on OS X and build it from source. Building CMake is really simple and fast.

This is kinda a bit of a sore point for me because it turns out that our CMake goop for cross-compiling is pretty nasty, and there are features in CMake 3.x that make it a lot better. Unfortunately using the new features while supporting CMake 2.8.x would only make our goop goopier.

> 
> Also, could we just limit the cmake version on windows builds? In the end on linux cmake 2.8.9 works great.

I don’t use Windows, but I really don’t like this proposal because it will increase maintenance if we’re supporting different versions of CMake on different platforms (hence why I haven’t started using CMake 3.x features).

-Chris

> 
> Cheers,
> Tobias





More information about the llvm-dev mailing list