On Sat, Nov 7, 2015 at 12:29 AM, Russel Winder <[email protected]> wrote:
> On Mon, 2015-10-26 at 22:16 -0700, Jeff Hammond wrote: > > Please do not use CMake. My experiences with it in HPC production > > use over > > the past 5 years are so bad that I fear I may need a trigger warning > > from > > now on. I tolerate CMake in one and only one project that I cannot > > live > > without*, but in any case where a software project adopts CMake and I > > can > > increase my overall happiness by never use that software again, I > > will do > > so. > > But what is it about CMake that you find so objectionable? > > 1) Search for "cmake infinite loop" online. 2) Extensive problems with trivial cross-compilation and static linking on Cray machines. 3) The lack of self-documentation of relevant options (i.e. no equivalent of ./configure --help) 4) That it took me an entire day to port CMake to Blue Gene/Q. 5) Search for "cmake" on http://suckless.org/sucks/ (I just found this tonight, FWIW) 6) The aggregate wisdom of brilliant Argonne colleagues, some of whom are prone to fits of rage at the mere mention of migrating to CMake. As for Scons, since I see on suckless.org that it is implemented in Python, that is a deal-breaker for me, because I need to be able to use machines where Python is not available. You probably live in a happy Linux production world all the time, but I frequently use pre-alpha HW and SW as well as environments where POSIX and shared libraries are at best a pleasant surprise. Because configure is a shell script, it runs on every functional computing system I have ever used (I guess it does not work on Windows, but this is not an exception to my thesis). As far as I can tell, nothing would stop Chapel from working in those environments, other than the build system, if it were CMake. You think I am joking, but the primary bottleneck in porting Elemental to a new machine is getting bloody CMake to work, at which point, assuming there is a C++11 compiler, Elemental builds trivially. Anyways, feel free to call me a troll or a luddite or flat-earth society whatever for my love of configure, but I think CMake is rubbish that doesn't solve a problem that doesn't exist. Jeff > I find the description language to be appalling, but CMake still beats > Autotools hands down. With JetBrains choosing it as the build framework > for CLion projects, and it allowing sane builds on OSX and Windows as > well as Linux, it is curently the least worst choice other than SCons. > > Obviously there is also Tup, and now Bazel, but neither of these are > yet mainstream. Though I suspect Bazel will bully its way to being so > simply because it is a Google product. > > -- > Russel. > > ============================================================================= > Dr Russel Winder t: +44 20 7585 2200 voip: > sip:[email protected] > 41 Buckmaster Road m: +44 7770 465 077 xmpp: [email protected] > London SW11 1EN, UK w: www.russel.org.uk skype: russel_winder > > -- Jeff Hammond [email protected] http://jeffhammond.github.io/
------------------------------------------------------------------------------
_______________________________________________ Chapel-developers mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/chapel-developers
