<div dir="ltr">Could we have 3rd build system?<div><br></div><div>As you knew, CMake is not "a hacker's toy."</div></div><br><div class="gmail_quote"><div dir="ltr">On Sun, Apr 2, 2017 at 12:48 AM Chris Bieneman via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word" class="gmail_msg">LLVM-Dev,<div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">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.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">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.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">(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.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">(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!</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">(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.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">(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.</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">(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!</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">To swiftly rectify this problem I've provided a patch:</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><a href="https://reviews.llvm.org/D31570" class="gmail_msg" target="_blank">https://reviews.llvm.org/D31570</a></div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg">Sincerest apologies,</div><div class="gmail_msg">-Chris</div><div class="gmail_msg"><br class="gmail_msg"></div><div class="gmail_msg"><br class="gmail_msg"></div></div>_______________________________________________<br class="gmail_msg">
LLVM Developers mailing list<br class="gmail_msg">
<a href="mailto:llvm-dev@lists.llvm.org" class="gmail_msg" target="_blank">llvm-dev@lists.llvm.org</a><br class="gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" class="gmail_msg" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class="gmail_msg">
</blockquote></div>