Chris Bieneman via llvm-dev
2017-Apr-01 15:48 UTC
[llvm-dev] [RFC] I've made a huge mistake
LLVM-Dev, I'm sorry to be the bearer of bad news. I've spent the last several months in severe denial of the problem and I just can't keep denying it to myself anymore. I've made a huge mistake. We never should have removed autoconf support. I've come to this conclusion after a great deal of thoughtful reflection on the impact of our CMake build system over the last year. Below I've listed the primary reasons that have weighed on my conscience. (1) CMake's Windows support has led more Windows users to LLVM, and as a Unix user, I just can't relate to them. Call me old fashioned, but if you aren't writing code in a vt100 terminal you're just not in a world I understand. I can even set aside the age-old Emacs vs Vim debate, but not writing code in a terminal is something completely different. (2) CMake's scripting language has made our build system support all these crazy use cases that I never dreamed of, and they're kinda scary. Did you know that people are cross-compiling arm-Linux toolchains from Darwin? Blasphemy! (3) The CMake open source community is too responsive! I file bugs and they fix them. This is unacceptable. Since they fix my bug reports I can't claim to my boss that I'm blocked on someone outside the company fixing something anymore. This is a really big problem detracting from my foam sword fighting practice time. (4) People expect it to work. With the autoconf build everyone kinda expected it to fall over in anything other than non-basic uses, and we were all ok with it. With CMake people expect things like 3-stage clang builds to just work out of the box. It is completely exhausting to have the burden of a build system that works. (5) We don't have Eric Christopher to save us all. With autoconf Eric ensured that everything was in tip-top shape. Now we don't have Eric watching all our build system commits. What has the world come to! To swiftly rectify this problem I've provided a patch: https://reviews.llvm.org/D31570 <https://reviews.llvm.org/D31570> Sincerest apologies, -Chris -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170401/982e47d8/attachment.html>
NAKAMURA Takumi via llvm-dev
2017-Apr-01 15:54 UTC
[llvm-dev] [RFC] I've made a huge mistake
Could we have 3rd build system? As you knew, CMake is not "a hacker's toy." On Sun, Apr 2, 2017 at 12:48 AM Chris Bieneman via llvm-dev < llvm-dev at lists.llvm.org> wrote:> LLVM-Dev, > > I'm sorry to be the bearer of bad news. I've spent the last several months > in severe denial of the problem and I just can't keep denying it to myself > anymore. I've made a huge mistake. We never should have removed autoconf > support. > > I've come to this conclusion after a great deal of thoughtful reflection > on the impact of our CMake build system over the last year. Below I've > listed the primary reasons that have weighed on my conscience. > > (1) CMake's Windows support has led more Windows users to LLVM, and as a > Unix user, I just can't relate to them. Call me old fashioned, but if you > aren't writing code in a vt100 terminal you're just not in a world I > understand. I can even set aside the age-old Emacs vs Vim debate, but not > writing code in a terminal is something completely different. > > (2) CMake's scripting language has made our build system support all these > crazy use cases that I never dreamed of, and they're kinda scary. Did you > know that people are cross-compiling arm-Linux toolchains from Darwin? > Blasphemy! > > (3) The CMake open source community is too responsive! I file bugs and > they fix them. This is unacceptable. Since they fix my bug reports I can't > claim to my boss that I'm blocked on someone outside the company fixing > something anymore. This is a really big problem detracting from my foam > sword fighting practice time. > > (4) People expect it to work. With the autoconf build everyone kinda > expected it to fall over in anything other than non-basic uses, and we were > all ok with it. With CMake people expect things like 3-stage clang builds > to just work out of the box. It is completely exhausting to have the burden > of a build system that works. > > (5) We don't have Eric Christopher to save us all. With autoconf Eric > ensured that everything was in tip-top shape. Now we don't have Eric > watching all our build system commits. What has the world come to! > > To swiftly rectify this problem I've provided a patch: > > https://reviews.llvm.org/D31570 > > Sincerest apologies, > -Chris > > > _______________________________________________ > 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/20170401/0b1f3602/attachment.html>
Someone is feeling the pressure of April 1st.. Umm... it would have been more funny if the link pointed to a rick roll video.. On Sat, Apr 1, 2017 at 11:54 PM, NAKAMURA Takumi via llvm-dev <llvm-dev at lists.llvm.org> wrote:> Could we have 3rd build system? > > As you knew, CMake is not "a hacker's toy." > > On Sun, Apr 2, 2017 at 12:48 AM Chris Bieneman via llvm-dev > <llvm-dev at lists.llvm.org> wrote: >> >> LLVM-Dev, >> >> I'm sorry to be the bearer of bad news. I've spent the last several months >> in severe denial of the problem and I just can't keep denying it to myself >> anymore. I've made a huge mistake. We never should have removed autoconf >> support. >> >> I've come to this conclusion after a great deal of thoughtful reflection >> on the impact of our CMake build system over the last year. Below I've >> listed the primary reasons that have weighed on my conscience. >> >> (1) CMake's Windows support has led more Windows users to LLVM, and as a >> Unix user, I just can't relate to them. Call me old fashioned, but if you >> aren't writing code in a vt100 terminal you're just not in a world I >> understand. I can even set aside the age-old Emacs vs Vim debate, but not >> writing code in a terminal is something completely different. >> >> (2) CMake's scripting language has made our build system support all these >> crazy use cases that I never dreamed of, and they're kinda scary. Did you >> know that people are cross-compiling arm-Linux toolchains from Darwin? >> Blasphemy! >> >> (3) The CMake open source community is too responsive! I file bugs and >> they fix them. This is unacceptable. Since they fix my bug reports I can't >> claim to my boss that I'm blocked on someone outside the company fixing >> something anymore. This is a really big problem detracting from my foam >> sword fighting practice time. >> >> (4) People expect it to work. With the autoconf build everyone kinda >> expected it to fall over in anything other than non-basic uses, and we were >> all ok with it. With CMake people expect things like 3-stage clang builds to >> just work out of the box. It is completely exhausting to have the burden of >> a build system that works. >> >> (5) We don't have Eric Christopher to save us all. With autoconf Eric >> ensured that everything was in tip-top shape. Now we don't have Eric >> watching all our build system commits. What has the world come to! >> >> To swiftly rectify this problem I've provided a patch: >> >> https://reviews.llvm.org/D31570 >> >> Sincerest apologies, >> -Chris >> >> >> _______________________________________________ >> LLVM Developers mailing list >> llvm-dev at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev > > > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev >