Tom Stellard
2014-Oct-31 22:08 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
Hi, I would like to propose deprecating the autoconf build system at some point in the future. Maintaining two build systems is a hassle not only for this project, but also for other projects that use LLVM and have to deal with the slight differences in output between the two build systems. It seems like most people are using CMake at this point, so my questions to the community are: - Is there any technical reason why the remaining autoconf users can't switch to CMake? For example, I personally use automake, and the only reason I don't use CMake is because it doesn't produce a single shared object (e.g. libLLVM-3.6.0svn.so). - What is a reasonable timeframe to allow the remaining autoconf users a chance to migrate to CMake? Thanks, Tom
Eric Christopher
2014-Oct-31 23:19 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Fri Oct 31 2014 at 3:11:22 PM Tom Stellard <tom at stellard.net> wrote:> Hi, > > I would like to propose deprecating the autoconf build system at some > point in the future. Maintaining two build systems is a hassle not > only for this project, but also for other projects that use LLVM > and have to deal with the slight differences in output between the two > build systems. > > It seems like most people are using CMake at this point, so my questions > to the community are: > > - Is there any technical reason why the remaining autoconf users can't > switch > to CMake? > >I think Bob was the lead on keeping the autoconf system last year when this came up, there is a PR somewhere in the system about the blocking things that need to work in cmake to get it to happen. I don't know where we are on that list or what features people still need. Personally I still use the autoconf system, but am willing to remove it if we can get to a single system, but all of the requirements need to be handled first. -eric> For example, I personally use automake, and the only reason I don't > use CMake is because it doesn't produce a single shared object > (e.g. libLLVM-3.6.0svn.so). > > - What is a reasonable timeframe to allow the remaining autoconf users > a chance to migrate to CMake? > > Thanks, > Tom > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141031/e303dccc/attachment.html>
Bob Wilson
2014-Oct-31 23:31 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
> On Oct 31, 2014, at 4:19 PM, Eric Christopher <echristo at gmail.com> wrote: > > > > On Fri Oct 31 2014 at 3:11:22 PM Tom Stellard <tom at stellard.net <mailto:tom at stellard.net>> wrote: > Hi, > > I would like to propose deprecating the autoconf build system at some > point in the future. Maintaining two build systems is a hassle not > only for this project, but also for other projects that use LLVM > and have to deal with the slight differences in output between the two > build systems. > > It seems like most people are using CMake at this point, so my questions > to the community are: > > - Is there any technical reason why the remaining autoconf users can't switch > to CMake? > > > I think Bob was the lead on keeping the autoconf system last year when this came up, there is a PR somewhere in the system about the blocking things that need to work in cmake to get it to happen. I don't know where we are on that list or what features people still need.I’ve come around to the point of accepting the inevitability of moving to cmake, but I think there’s quite a bit of work to be done to get everything to work. The compiler-rt build in particular is problematic.> > Personally I still use the autoconf system, but am willing to remove it if we can get to a single system, but all of the requirements need to be handled first. > > -eric > > For example, I personally use automake, and the only reason I don't > use CMake is because it doesn't produce a single shared object > (e.g. libLLVM-3.6.0svn.so <http://libllvm-3.6.0svn.so/>). > > - What is a reasonable timeframe to allow the remaining autoconf users > a chance to migrate to CMake?I don’t know how to answer that. Someone will need to do the work to first identify all the problems and then to get them fixed. Converting everything to cmake will take quite a lot of work. In comparison, the minor hassle of keeping the makefiles working for a bit longer seems pretty insignificant. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141031/0158e582/attachment.html>
Pasi Parviainen
2014-Nov-01 00:26 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On 1.11.2014 0:08, Tom Stellard wrote:> Hi, > > I would like to propose deprecating the autoconf build system at some > point in the future. Maintaining two build systems is a hassle not > only for this project, but also for other projects that use LLVM > and have to deal with the slight differences in output between the two > build systems.Because of these differences between build systems, I decided to start my personal project recently to bring up each build system to equal grounds for a platform which I care (which is FreeBSD). Motivation for this has been to have identical test results (and builds) from each other, in the case autoconf build system is retired.> It seems like most people are using CMake at this point, so my questions > to the community are: > > - Is there any technical reason why the remaining autoconf users can't switch > to CMake?At least better job could be done for canonicalization of architectures within cmake configurations. For example at the moment some LLVM tests does not run with cmake builds for x86_64 FreeBSD, since it identifies itself as "amd64" for cmake, which cascades down to lit testing infrastructure. That's an easy example what I have faced at least so far. Pasi> For example, I personally use automake, and the only reason I don't > use CMake is because it doesn't produce a single shared object > (e.g. libLLVM-3.6.0svn.so). > > - What is a reasonable timeframe to allow the remaining autoconf users > a chance to migrate to CMake? > > Thanks, > Tom > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >
Steve King
2014-Nov-01 00:40 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Fri, Oct 31, 2014 at 3:08 PM, Tom Stellard <tom at stellard.net> wrote:> - Is there any technical reason why the remaining autoconf users can't switch > to CMake?Last time I tried, the CMake build was missing some pieces required for the Gold plugin. Specifically, the --with-binutils-include option.
Tim Northover
2014-Nov-01 01:04 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
> Last time I tried, the CMake build was missing some pieces required > for the Gold plugin. Specifically, the --with-binutils-include > option.Pretty sure that's been fixed (actually, I don't think it finds binutils without it now): LLVM_BINUTILS_INCDIR. Cheers. Tim.
Diego Novillo
2014-Nov-01 01:06 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Fri, Oct 31, 2014 at 8:40 PM, Steve King <steve at metrokings.com> wrote:> > On Fri, Oct 31, 2014 at 3:08 PM, Tom Stellard <tom at stellard.net> wrote: > > - Is there any technical reason why the remaining autoconf users can't switch > > to CMake? > > Last time I tried, the CMake build was missing some pieces required > for the Gold plugin. Specifically, the --with-binutils-include > option.Must've been fixed. I regularly build with -DLLVM_BINUTILS_INCDIR=... to build the gold plugin. Diego.
Rafael Avila de Espindola
2014-Nov-01 04:27 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
Sent from my iPhone> On Oct 31, 2014, at 17:40, Steve King <steve at metrokings.com> wrote: > >> On Fri, Oct 31, 2014 at 3:08 PM, Tom Stellard <tom at stellard.net> wrote: >> - Is there any technical reason why the remaining autoconf users can't switch >> to CMake? > > Last time I tried, the CMake build was missing some pieces required > for the Gold plugin. Specifically, the --with-binutils-include > option.It is there. I build the plugin and haven't used autoconf in years.> _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Joerg Sonnenberger
2014-Nov-02 14:17 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Fri, Oct 31, 2014 at 03:08:21PM -0700, Tom Stellard wrote:> - Is there any technical reason why the remaining autoconf users can't switch > to CMake?Requiring cmake for NetBSD is not acceptable as it is almost as heavy as a C++ compiler itself. That said, I don't really care about the Makefiles, just about configure and the associated loggic to craete Config.h and friends. I would expect FreeBSD to have similar concerns. Joerg
Tim Northover
2014-Nov-02 14:36 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
> Requiring cmake for NetBSD is not acceptable as it is almost as heavy as > a C++ compiler itself. That said, I don't really care about the > Makefiles, just about configure and the associated loggic to craete > Config.h and friends. I would expect FreeBSD to have similar concerns.I don't think the extra dependency is a compelling enough reason to hold back everyone else. Tim.
David Chisnall
2014-Nov-02 16:48 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On 2 Nov 2014, at 14:17, Joerg Sonnenberger <joerg at britannica.bec.de> wrote:> Requiring cmake for NetBSD is not acceptable as it is almost as heavy as > a C++ compiler itself. That said, I don't really care about the > Makefiles, just about configure and the associated loggic to craete > Config.h and friends. I would expect FreeBSD to have similar concerns.For the FreeBSD base system, we use a bmake-based build system for LLVM, but that is based on the Makefiles generated by CMake. I believe that we're now using CMake for the version of LLVM in ports. David
Tom Stellard
2014-Nov-03 17:36 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Fri, Oct 31, 2014 at 11:19:22PM +0000, Eric Christopher wrote:> On Fri Oct 31 2014 at 3:11:22 PM Tom Stellard <tom at stellard.net> wrote: > > > Hi, > > > > I would like to propose deprecating the autoconf build system at some > > point in the future. Maintaining two build systems is a hassle not > > only for this project, but also for other projects that use LLVM > > and have to deal with the slight differences in output between the two > > build systems. > > > > It seems like most people are using CMake at this point, so my questions > > to the community are: > > > > - Is there any technical reason why the remaining autoconf users can't > > switch > > to CMake? > > > > > I think Bob was the lead on keeping the autoconf system last year when this > came up, there is a PR somewhere in the system about the blocking things > that need to work in cmake to get it to happen. I don't know where we are > on that list or what features people still need.Was this the PR: http://www.llvm.org/bugs/show_bug.cgi?id=15732 ? -Tom> > Personally I still use the autoconf system, but am willing to remove it if > we can get to a single system, but all of the requirements need to be > handled first. > > -eric > > > > For example, I personally use automake, and the only reason I don't > > use CMake is because it doesn't produce a single shared object > > (e.g. libLLVM-3.6.0svn.so). > > > > - What is a reasonable timeframe to allow the remaining autoconf users > > a chance to migrate to CMake? > > > > Thanks, > > Tom > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >
Tom Stellard
2014-Nov-03 17:40 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Sat, Nov 01, 2014 at 02:26:08AM +0200, Pasi Parviainen wrote:> On 1.11.2014 0:08, Tom Stellard wrote: > > Hi, > > > > I would like to propose deprecating the autoconf build system at some > > point in the future. Maintaining two build systems is a hassle not > > only for this project, but also for other projects that use LLVM > > and have to deal with the slight differences in output between the two > > build systems. > > Because of these differences between build systems, I decided to start > my personal project recently to bring up each build system to equal > grounds for a platform which I care (which is FreeBSD). Motivation for > this has been to have identical test results (and builds) from each > other, in the case autoconf build system is retired. >This sounds like a good project, do you have a list of remaining differences? -Tom> > It seems like most people are using CMake at this point, so my questions > > to the community are: > > > > - Is there any technical reason why the remaining autoconf users can't switch > > to CMake? > > At least better job could be done for canonicalization of architectures > within cmake configurations. For example at the moment some LLVM tests > does not run with cmake builds for x86_64 FreeBSD, since it identifies > itself as "amd64" for cmake, which cascades down to lit testing > infrastructure. That's an easy example what I have faced at least so far. > > Pasi > > > For example, I personally use automake, and the only reason I don't > > use CMake is because it doesn't produce a single shared object > > (e.g. libLLVM-3.6.0svn.so). > > > > - What is a reasonable timeframe to allow the remaining autoconf users > > a chance to migrate to CMake? > > > > Thanks, > > Tom > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > >
Renato Golin
2014-Nov-04 21:59 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On 31 October 2014 22:08, Tom Stellard <tom at stellard.net> wrote:> - Is there any technical reason why the remaining autoconf users can't switch > to CMake?Hi Tom, One reason that wasn't mentioned is the buildbot infrastructure. Many bots still build on autoconf and they all need to be moved into a CMake builder. I have moved some ARM bots to my new ClangCMakeBuilder but that's far from enough. Compiler-RT and libc++ (and I believe lld) do use CMake, but the test suite is still dependent on autoconf and the Windows build uses a different CMake builder. We were trying to merge both, but didn't go very far.> - What is a reasonable timeframe to allow the remaining autoconf users > a chance to migrate to CMake?I'd say a few months and many engineer-hours from all over the place. We'd need a task force like we did for the C++11 move: someone with the will (you :) and representatives from the major groups (Linux, BSD, Darwin / ARM, Intel, MIPS, PPC, etc) moving the bots, fixing the issues, etc. The big unknown is what to do with bots to which no one has access to, or to which cannot be built with CMake. For example an old architecture that hasn't been migrated to CMake. Do we deprecate the bot? The architecture? Strongly encourage someone to migrate it? What are the costs of this unknown migration, if that's even possible? We may try to aim for the next release and see how far do we get... cheers, -renato
Tom Stellard
2014-Nov-13 14:57 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Sat, Nov 01, 2014 at 02:26:08AM +0200, Pasi Parviainen wrote:> On 1.11.2014 0:08, Tom Stellard wrote: > >Hi, > > > >I would like to propose deprecating the autoconf build system at some > >point in the future. Maintaining two build systems is a hassle not > >only for this project, but also for other projects that use LLVM > >and have to deal with the slight differences in output between the two > >build systems. > > Because of these differences between build systems, I decided to > start my personal project recently to bring up each build system to > equal grounds for a platform which I care (which is FreeBSD). > Motivation for this has been to have identical test results (and > builds) from each other, in the case autoconf build system is > retired. > > >It seems like most people are using CMake at this point, so my questions > >to the community are: > > > >- Is there any technical reason why the remaining autoconf users can't switch > > to CMake? > > At least better job could be done for canonicalization of > architectures within cmake configurations. For example at the moment > some LLVM tests does not run with cmake builds for x86_64 FreeBSD, > since it identifies itself as "amd64" for cmake, which cascades down > to lit testing infrastructure. That's an easy example what I have > faced at least so far. >Hi, I've filed a bug for this: http://www.llvm.org/bugs/show_bug.cgi?id=21559 Feel free to add additional information if needed. If your run into any more issues, it would be great if you could file bugs and mark them as blocking the meta cmake bug: 15732 so we can track it. Thanks, Tom> Pasi > > >For example, I personally use automake, and the only reason I don't > >use CMake is because it doesn't produce a single shared object > >(e.g. libLLVM-3.6.0svn.so). > > > >- What is a reasonable timeframe to allow the remaining autoconf users > > a chance to migrate to CMake? > > > >Thanks, > >Tom > >_______________________________________________ > >LLVM Developers mailing list > >LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > >
Patrik Hägglund H
2014-Dec-03 09:08 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
> - Is there any technical reason why the remaining autoconf users can't switch > to CMake?I can't see how to do 'configure --disable-assertions --disable-optimized', using CMake in LLVM. This is useful for example to build for coverage testing. (Also, it seems like CMake still don't take the CPPFLAGS environment variable (for example, for passing a custom -I path) : http://www.cmake.org/Bug/view.php?id=12928. It is inconvenient to set both CFLAGS and CXXFLAGS for this.) /Patrik Hägglund -----Original Message----- From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Tom Stellard Sent: den 31 oktober 2014 23:08 To: llvmdev at cs.uiuc.edu Subject: [LLVMdev] RFC: Timeline for deprecating the autoconf build system? Hi, I would like to propose deprecating the autoconf build system at some point in the future. Maintaining two build systems is a hassle not only for this project, but also for other projects that use LLVM and have to deal with the slight differences in output between the two build systems. It seems like most people are using CMake at this point, so my questions to the community are: - Is there any technical reason why the remaining autoconf users can't switch to CMake? For example, I personally use automake, and the only reason I don't use CMake is because it doesn't produce a single shared object (e.g. libLLVM-3.6.0svn.so). - What is a reasonable timeframe to allow the remaining autoconf users a chance to migrate to CMake? Thanks, Tom _______________________________________________ LLVM Developers mailing list LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
İsmail Dönmez
2014-Dec-03 09:24 UTC
[LLVMdev] RFC: Timeline for deprecating the autoconf build system?
On Wed, Dec 3, 2014 at 11:08 AM, Patrik Hägglund H < patrik.h.hagglund at ericsson.com> wrote:> > - Is there any technical reason why the remaining autoconf users can't > switch > > to CMake? > > I can't see how to do 'configure --disable-assertions > --disable-optimized', using CMake in LLVM. This is useful for example to > build for coverage testing. >Use cmake -DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_ASSERTIONS=OFF For more flags see http://llvm.org/docs/CMake.html Regards, ismail -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20141203/062cc144/attachment.html>
Apparently Analagous Threads
- [LLVMdev] RFC: Timeline for deprecating the autoconf build system?
- [LLVMdev] RFC: Timeline for deprecating the autoconf build system?
- [LLVMdev] MemorySanitizer, a tool that finds uninitialized reads and more
- [LLVMdev] MemorySanitizer, a tool that finds uninitialized reads and more
- [LLVMdev] MemorySanitizer, a tool that finds uninitialized reads and more