I am +1 with this change as well. CMake is a good choice. My other
favorite project, KDE, uses CMake as well and it has worked great
there ever since 2007.

On Tue, May 22, 2012 at 8:40 AM, Eli Collins <e...@cloudera.com> wrote:
> +1   having a build tool that supports multiple platforms is worth the
> dependency. I've also had good experiences with cmake.
>
>
> On Mon, May 21, 2012 at 6:00 PM, Colin McCabe <cmcc...@alumni.cmu.edu> wrote:
>> Hi all,
>>
>> We'd like to use CMake instead of autotools to build native (C/C++) code in
>> Hadoop.  There are a lot of reasons to want to do this.  For one thing, it is
>> not feasible to use autotools on the Windows platform, because it depends on
>> UNIX shell scripts, the m4 macro processor, and some other pieces of
>> infrastructure which are not present on Windows.
>>
>> For another thing, CMake builds are substantially simpler and faster, because
>> there is only one layer of generated code.  With autotools, you have automake
>> generating m4 code which autoconf reads, which it uses to generate a UNIX 
>> shell
>> script, which then generates another UNIX shell script, which eventually
>> generates Makefiles.  CMake simply generates Makefiles out of CMakeLists.txt
>> files-- much simpler to understand and debug, and much faster.
>> CMake is a lot easier to learn.
>>
>> automake error messages can be very, very confusing.  This is because you are
>> essentially debugging a pile of shell scripts and macros, rather than a
>> coherent whole.  So you see error messages like "autoreconf: cannot empty
>> /tmp/ar0.4849: Is a directory" or "Can't locate object method "path" via
>> package "Autom4te... and so forth.  CMake error messages come from the CMake
>> application and they almost always immediately point you to the problem.
>>
>> From a build point of view, the net result of adopting CMake would be that 
>> you
>> would no longer need automake and related programs installed to build the
>> native parts of Hadoop.  Instead, you would need CMake installed.  CMake is
>> packaged by Red Hat, even in RHEL5, so it shouldn't be difficult to install
>> locally.  It's also available for Mac OS X and Windows, as I mentioned 
>> earlier.
>>
>> The JIRA for this work is at 
>> https://issues.apache.org/jira/browse/HADOOP-8368
>> Thanks for reading.
>>
>> sincerely,
>> Colin



-- 
Harsh J

Reply via email to