+1, especially for support of Win native builds.

On Tue, May 22, 2012 at 5:07 AM, Harsh J <ha...@cloudera.com> wrote:

> 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