[llvm-dev] [cfe-dev] Fwd: Raising CMake minimum version to 3.4.3

Bruce Hoult via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 27 05:42:43 PDT 2016


cmake is a big dependency, but it doesn't seem to have many dependencies
itself. They say it's just a C++ compiler and a make (not necessarily gnu).
Probably there are one or two more than that :-)  A shell, for a start; git
or tar/gzip etc.

The current *nix source tarball is 6.4 MB gzipped. Just for fun I grabbed
it and tried building on four machines:

- 3.4 GHz i7 3770 with Ubuntu 14.04
- 2.2 GHz 2011 i7 MacBook Pro with Yosemite
- Odroid XU4 with Ubuntu Mate 15.10 (Exynos5422 4x A15 @2GHz, 4x A7 @1.4
GHz)
- Raspberry Pi 3 with Raspbian (4x A53 @1.2 GHz)

I used --parallel=4 on the Pi, 8 on the others

./bootstrap
- 1m10s linux
- 2m05s mbp
- 3m18s xu4
- 7m28s pi3

make
- 1m07s linux
- 1m18s mbp
- 5m14s xu4
- 16m31s Pi3


On Wed, Apr 27, 2016 at 10:08 AM, Renato Golin via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> We can't assume every Linux is Ubuntu, nor that every platform has
> packages for this or that release.
>
> You are asking for a move to built CMake support, from packages, and
> that's a big move. We can't control CMake's progress nor its repository.
>
> This is bigger than a simple version upgrade, regardless of which version
> the new Ubuntu or freebsd ships, or the fact that other systems already
> need to build it.
>
> Cheers,
> Renato
> On 26 Apr 2016 11:33 p.m., "Chris Bieneman via cfe-dev" <
> cfe-dev at lists.llvm.org> wrote:
>
>> Actually forward to LLVM-dev because I obviously don’t know how email
>> works…
>>
>> -Chris
>>
>> Begin forwarded message:
>>
>> *From: *Chris Bieneman via cfe-dev <cfe-dev at lists.llvm.org>
>> *Subject: **[cfe-dev] Raising CMake minimum version to 3.4.3*
>> *Date: *April 26, 2016 at 3:01:23 PM PDT
>> *To: *cfe-dev <cfe-dev at lists.llvm.org>, llvm-dev at lists.apple.com
>> *Cc: *Galina Kistanova <gkistanova at gmail.com>
>> *Reply-To: *Chris Bieneman <beanz at apple.com>
>>
>> Hello llvm-dev and cfe-dev,
>>
>> I want open up the discussion of upgrading our minimum required CMake
>> version.
>>
>> In the past when we’ve discussed this one of the major reasons for not
>> moving forward was that the Ubuntu LTS release was on CMake 2.8.12.x. A few
>> days ago Ubuntu 16.04, the new LTS, was released, and it contains CMake
>> 3.5.1.
>>
>> I have a couple of motivations for this, the biggest of which is that
>> I’ve hit a wall trying to overcome some limitations in the CMake
>> ExternalProject module which I can’t get past without being on CMake 3.4 or
>> newer. These limitations make using ExternalProject to build the LLVM
>> test-suite and runtime libraries (compiler-rt, libcxx, etc) difficult.
>>
>> The other big motivation that I have for this is the ability to cleanup
>> code. We have a lot of CMake code that checks CMAKE_VERSION and enables and
>> disables features used on the version. None of the places where we
>> currently have CMAKE_VERSION checks should impact build correctness, but
>> most people don’t realize that if you’re using Ninja your build will be
>> faster on a newer CMake than on an older one. It would be nice if we just
>> pushed the bar up and could remove a bunch of those conditionals.
>>
>> To do this we need bot maintainers to update their CMake installations,
>> so we need some consensus that (1) we want to do this and (2) what a
>> reasonable timeline for doing it is.
>>
>> What I’d like to do is raise the minimum version for all LLVM projects to
>> CMake 3.4.3 at the end of May. Setting the date at the end of May gives bot
>> maintainers and developers lots of time to update, and CMake 3.4.3 is the
>> last CMake 3.4 release and it is widely available. For reference here’s a
>> list of linux distributions and their CMake versions:
>>
>> Ubuntu Wily -> 3.2.2
>> Ubuntu Xenial -> 3.5.1
>> Ubuntu Yakkety -> 3.5.1
>> Debian jessie -> 3.0.2
>> Debian stretch -> 3.5.1
>> Debian sid -> 3.5.2
>> FreeBSD 10.2 -> 3.5.0
>> FreeBSD HEAD -> 3.5.2
>>
>> Feedback?
>>
>> Thanks,
>> -Chris
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>>
>>
>> _______________________________________________
>> cfe-dev mailing list
>> cfe-dev at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
>>
>>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160427/87e4a4d4/attachment.html>


More information about the llvm-dev mailing list