Le 21 juin 2012 à 11:34, Manuel Klimek a écrit :> On Thu, Jun 21, 2012 at 10:43 AM, Charles Davis <cdavis at mymail.mines.edu> wrote: > > On Jun 20, 2012, at 6:19 PM, Chandler Carruth wrote: > >> On Wed, Jun 20, 2012 at 5:13 PM, Nick Lewycky <nlewycky at google.com> wrote: >> Is there anybody who is certain that our autoconf dependency needs to stay around? Are there developers stuck on systems that don't have a recent enough cmake in their most recent release, or maybe are using some features from configure+make that the cmake build system doesn't implement? >> >> If nobody pipes up, I might actually try actually removing it! >> >> There are definitely missing features in cmake. I'm actually working on adding one of them: support for compiler-rt. There are likely some others. >> >> That said, I actually agree -- I think that cmake, while ugly, can be made to support all of our use cases. There are some use cases that autoconf+make can't support, so I'd rather we just pick cmake and bang on it until it works the way we want. > Now hold on there. I thought Daniel was supposed to be working on a new build system, based almost entirely in Python, specifically because he thought CMake was, uh... inadequate (to say the least). I've CC'd him in the hopes of getting his opinion. > > I'd be interested what about CMake is inadequate. The way CMake is used in llvm seems somewhat suboptimal, but I don't see how doing the same thing in python would be better ... > > (not saying that cmake is perfect)It never was about writing a build system in python to replace existing one, it was about unifying the way (libraries) dependencies are expressed in LLVM by cmake and configure/make. -- Jean-Daniel -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120621/78f24b29/attachment.html>
Christophe Duvernois
2012-Jun-21 10:43 UTC
[LLVMdev] [cfe-dev] is configure+make dead yet?
Hi Speaking about a good existing build system in python, there is waf : http://code.google.com/p/waf/ It is in my opinion far more better than cmake on any point (performance, flexibility, easy to use, ...) ... 2012/6/21 Jean-Daniel Dupas <devlists at shadowlab.org>> > Le 21 juin 2012 à 11:34, Manuel Klimek a écrit : > > On Thu, Jun 21, 2012 at 10:43 AM, Charles Davis <cdavis at mymail.mines.edu>wrote: > >> >> On Jun 20, 2012, at 6:19 PM, Chandler Carruth wrote: >> >> On Wed, Jun 20, 2012 at 5:13 PM, Nick Lewycky <nlewycky at google.com>wrote: >> >>> Is there anybody who is certain that our autoconf dependency needs to >>> stay around? Are there developers stuck on systems that don't have a recent >>> enough cmake in their most recent release, or maybe are using some features >>> from configure+make that the cmake build system doesn't implement? >>> >>> If nobody pipes up, I might actually try actually removing it! >>> >> >> There are definitely missing features in cmake. I'm actually working on >> adding one of them: support for compiler-rt. There are likely some others. >> >> That said, I actually agree -- I think that cmake, while ugly, can be >> made to support all of our use cases. There are some use cases that >> autoconf+make can't support, so I'd rather we just pick cmake and bang on >> it until it works the way we want. >> >> Now hold on there. I thought Daniel was supposed to be working on a new >> build system, based almost entirely in Python, specifically because he >> thought CMake was, uh... inadequate (to say the least). I've CC'd him in >> the hopes of getting his opinion. >> > > I'd be interested what about CMake is inadequate. The way CMake is used in > llvm seems somewhat suboptimal, but I don't see how doing the same thing in > python would be better ... > > (not saying that cmake is perfect) > > > It never was about writing a build system in python to replace existing > one, it was about unifying the way (libraries) dependencies are expressed > in LLVM by cmake and configure/make. > > -- Jean-Daniel > > > > > > _______________________________________________ > 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/20120621/f8c6bb52/attachment.html>
On Jun 21, 2012, at 3:43 AM, Christophe Duvernois <christophe.duvernois at gmail.com> wrote:> Hi > > Speaking about a good existing build system in python, there is waf : http://code.google.com/p/waf/ > It is in my opinion far more better than cmake on any point (performance, flexibility, easy to use, ...) …Please don't bring up yet-another-build-system. The only build systems that are relevant to this discussion are CMake and autoconf+make, i.e., those that are already supported by LLVM/Clang and in active use by a significant portion of the LLVM/Clang community. - Doug> 2012/6/21 Jean-Daniel Dupas <devlists at shadowlab.org> > > Le 21 juin 2012 à 11:34, Manuel Klimek a écrit : > >> On Thu, Jun 21, 2012 at 10:43 AM, Charles Davis <cdavis at mymail.mines.edu> wrote: >> >> On Jun 20, 2012, at 6:19 PM, Chandler Carruth wrote: >> >>> On Wed, Jun 20, 2012 at 5:13 PM, Nick Lewycky <nlewycky at google.com> wrote: >>> Is there anybody who is certain that our autoconf dependency needs to stay around? Are there developers stuck on systems that don't have a recent enough cmake in their most recent release, or maybe are using some features from configure+make that the cmake build system doesn't implement? >>> >>> If nobody pipes up, I might actually try actually removing it! >>> >>> There are definitely missing features in cmake. I'm actually working on adding one of them: support for compiler-rt. There are likely some others. >>> >>> That said, I actually agree -- I think that cmake, while ugly, can be made to support all of our use cases. There are some use cases that autoconf+make can't support, so I'd rather we just pick cmake and bang on it until it works the way we want. >> Now hold on there. I thought Daniel was supposed to be working on a new build system, based almost entirely in Python, specifically because he thought CMake was, uh... inadequate (to say the least). I've CC'd him in the hopes of getting his opinion. >> >> I'd be interested what about CMake is inadequate. The way CMake is used in llvm seems somewhat suboptimal, but I don't see how doing the same thing in python would be better ... >> >> (not saying that cmake is perfect) > > It never was about writing a build system in python to replace existing one, it was about unifying the way (libraries) dependencies are expressed in LLVM by cmake and configure/make. > > -- Jean-Daniel > > > > > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > > _______________________________________________ > cfe-dev mailing list > cfe-dev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120621/75a325f1/attachment.html>
21.06.2012, 14:43, "Christophe Duvernois" <christophe.duvernois at gmail.com>:> Hi > > Speaking about a good existing build system in python, there is waf : http://code.google.com/p/waf/ > It is in my opinion far more better than cmake on any point (performance, flexibility, easy to use, ...) ...I propose premake [1]. It also has nice performance, flexibility, and ease of use,, but does not require Python and can produce machine-independent Makefiles. It also support generation of native projects for Visual Studio and Xcode (as compared to CMake which inserts calls to itself everywhere). [1] http://industriousone.com/premake -- Regards, Konstantin
Reasonably Related Threads
- [LLVMdev] [cfe-dev] is configure+make dead yet?
- [LLVMdev] [cfe-dev] is configure+make dead yet?
- [LLVMdev] [cfe-dev] is configure+make dead yet?
- [LLVMdev] Emit only one function of the module to native code
- [LLVMdev] Emit only one function of the module to native code