Tobias Grosser
2015-Feb-24 17:32 UTC
[LLVMdev] [RFC] Raise minimum required CMake version to 3.0
On 24.02.2015 17:45, Tobias Grosser 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). > > 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? > > Also, could we just limit the cmake version on windows builds? In the > end on linux cmake 2.8.9 works great.Rafael asked if updating the bot is not an option. It indeed is an option, but requires cmake to be manually downloaded and installed instead of using the available packages. This is OK for one bot, but it will add complications for everybody who uses debian and wants to install LLVM. It also will make it more complicated to move to a fully cmake based build as all such debian based buildbots would require a manual installation of cmake (I have 12 more of these). Before doing so I wanted to understand if it is indeed intended to require debian-stable users to *manually* install and manage cmake or if there is not a lower overhead version. Can this bug not be fixed for windows without complicating live for debian users? Cheers, Tobias
Chris Bieneman
2015-Feb-24 17:41 UTC
[LLVMdev] [RFC] Raise minimum required CMake version to 3.0
> On Feb 24, 2015, at 9:32 AM, Tobias Grosser <tobias at grosser.es> wrote: > > On 24.02.2015 17:45, Tobias Grosser 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). >> >> 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? >> >> Also, could we just limit the cmake version on windows builds? In the >> end on linux cmake 2.8.9 works great. > > Rafael asked if updating the bot is not an option. It indeed is an option, but requires cmake to be manually downloaded and installed instead of using the available packages.Building CMake from source is really easy: (1) git clone git://cmake.org/cmake.git <git://cmake.org/cmake.git> && cd cmake (2) ./bootstrap --prefix=$PWD/bootstrap (3) mkdir build && cd build (4) ../bootstrap/bin/cmake -G Ninja .. (5) ninja install Since you already have CMake you can probably skip bootstrapping in step 2.> > This is OK for one bot, but it will add complications for everybody who uses debian and wants to install LLVM. It also will make it more complicated to move to a fully cmake based build as all such debian based buildbots would require a manual installation of cmake (I have 12 more of these).I really don’t think we should hold back moving to newer CMake versions because people don’t want to update their bots. The OS X and Windows bots don’t come with CMake at all, and people managing those bots aren’t complaining about having to update their bots.> > Before doing so I wanted to understand if it is indeed intended to require debian-stable users to *manually* install and manage cmake or if there is not a lower overhead version. Can this bug not be fixed for windows without complicating live for debian users?I don’t really care that much about this specific bug because I’m not a Windows user, but we could probably put some hacks into our CMake configs to work around it. My big point here is that we shouldn’t have to. We shouldn’t be stuck on a 2 year old version of a tool just because some version of Linux hasn’t updated. -Chris> > Cheers, > Tobias-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150224/b6eed1b3/attachment.html>
Mehdi Amini
2015-Mar-10 17:38 UTC
[LLVMdev] [RFC] Raise minimum required CMake version to 3.0
Hi Tobias,> On Feb 24, 2015, at 9:32 AM, Tobias Grosser <tobias at grosser.es> wrote: > > On 24.02.2015 17:45, Tobias Grosser 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). >> >> 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? >> >> Also, could we just limit the cmake version on windows builds? In the >> end on linux cmake 2.8.9 works great. > > Rafael asked if updating the bot is not an option. It indeed is an option, but requires cmake to be manually downloaded and installed instead of using the available packages. > > This is OK for one bot, but it will add complications for everybody who uses debian and wants to install LLVM. It also will make it more complicated to move to a fully cmake based build as all such debian based buildbots would require a manual installation of cmake (I have 12 more of these). > > Before doing so I wanted to understand if it is indeed intended to require debian-stable users to *manually* install and manage cmake or if there is not a lower overhead version. Can this bug not be fixed for windows without complicating live for debian users?In light of the list of new features that Chris listed, and considering that Debian 8 is frozen (RC1 already shipped in January) and should be released before the next LLVM version (but who knows with Debian…), do you have a plan to update CMake on all your bots? Or do you still have strong other concerns? Thanks, Mehdi
Chris Bieneman
2015-Mar-10 18:26 UTC
[LLVMdev] [RFC] Raise minimum required CMake version to 3.0
I should also point out that CMAKE_SYSROOT and CMAKE_<LANG>_COMPILER_TARGET (both CMake 3.0 features) would make fixing compiler-rt's CMake (Bugs 14109 & 21562) a lot easier. Both of those bugs are currently blockers to depreciating the autotools build system. Also, while Debian may release a stable build with CMake 3.x later this year, Ubuntu probably won’t have a LTS release with CMake 3.x until sometime in 2016. If deprecating autotools is a priority to the community we may want to consider a strategy for updating CMake more rapidly than waiting for stable releases from Linux distributions. -Chris> On Mar 10, 2015, at 10:38 AM, Mehdi Amini <mehdi.amini at apple.com> wrote: > > Hi Tobias, > >> On Feb 24, 2015, at 9:32 AM, Tobias Grosser <tobias at grosser.es> wrote: >> >> On 24.02.2015 17:45, Tobias Grosser 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). >>> >>> 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? >>> >>> Also, could we just limit the cmake version on windows builds? In the >>> end on linux cmake 2.8.9 works great. >> >> Rafael asked if updating the bot is not an option. It indeed is an option, but requires cmake to be manually downloaded and installed instead of using the available packages. >> >> This is OK for one bot, but it will add complications for everybody who uses debian and wants to install LLVM. It also will make it more complicated to move to a fully cmake based build as all such debian based buildbots would require a manual installation of cmake (I have 12 more of these). >> >> Before doing so I wanted to understand if it is indeed intended to require debian-stable users to *manually* install and manage cmake or if there is not a lower overhead version. Can this bug not be fixed for windows without complicating live for debian users? > > In light of the list of new features that Chris listed, and considering that Debian 8 is frozen (RC1 already shipped in January) and should be released before the next LLVM version (but who knows with Debian…), do you have a plan to update CMake on all your bots? Or do you still have strong other concerns? > > Thanks, > > Mehdi > > > >
Tobias Grosser
2015-Mar-10 19:29 UTC
[LLVMdev] [RFC] Raise minimum required CMake version to 3.0
On 03/10/2015 06:38 PM, Mehdi Amini wrote:> Hi Tobias,[...]>>> Also, could we just limit the cmake version on windows builds? In the >>> end on linux cmake 2.8.9 works great. >> >> Rafael asked if updating the bot is not an option. It indeed is an option, but requires cmake to be manually downloaded and installed instead of using the available packages. >> >> This is OK for one bot, but it will add complications for everybody who uses debian and wants to install LLVM. It also will make it more complicated to move to a fully cmake based build as all such debian based buildbots would require a manual installation of cmake (I have 12 more of these). >> >> Before doing so I wanted to understand if it is indeed intended to require debian-stable users to *manually* install and manage cmake or if there is not a lower overhead version. Can this bug not be fixed for windows without complicating live for debian users? > > In light of the list of new features that Chris listed, and considering that Debian 8 is frozen (RC1 already shipped in January) and should be released before the next LLVM version (but who knows with Debian…), do you have a plan to update CMake on all your bots? Or do you still have strong other concerns?The cmake based systems I am running are updated to 3.0. No need to worry about my buildbots. Chandler previously asked to ensure we stay with a cmake version that is available in the Ubuntu packages. If you want to drop this requirement, you probably want to cross-check with him. I personally also believe being a little bit more conservative here would be nice, if possible, as it keeps the barrier of entry to LLVM lower and also makes moving away from autoconf easier. I suggest that we check with Sylvestre if his apt-get builds for ubuntu LTS will keep working with cmake 3.0 (after autoconf support has dropped). Maybe I am over careful here. If I am the only one that conservative, feel free to move ahead. Cheers, Tobias