[webkit-dev] CMake vs. Apple's build farm

Adam Treat treat at kde.org
Wed Apr 21 09:45:29 PDT 2010


Can someone from Apple comment on whether it is possible to include the 
sources to CMake and then the CMake could bootstrap itself with only 
dependency on the compiler?  This would seem an acceptable solution, no?

Adam

On Tuesday 20 April 2010 01:06:43 pm Bradley Nelson wrote:
> Would prebuilt checked-in binaries be an option? Can cmake run out of an
> arbitrary directory?
> 
> -BradN
> 
> On Tue, Apr 20, 2010 at 5:25 AM, Bill Hoffman <bill.hoffman at kitware.com>wrote:
> > On 4/20/2010 5:13 AM, Maciej Stachowiak wrote:
> >  1) None of the Mac builders have CMake installed.
> >  
> >> 2) The organization that maintains the Mac builders is not willing to
> >> let teams use any build systems to build that do not come with the OS,
> >> or to install any custom binaries on the builders, because builds need
> >> to be reproducible.
> > 
> > So, long term is there a way for CMake to come with the OS?  I mean gmake
> > is part of the OS, python seems to be OK, how does a tool get promoted to
> > such a level?
> > 
> >  3) CMake is not part of the standard Mac OS X install for any shipping
> >  
> >> version of Mac OS X.
> >> 4) LLVM compiles using a separate Makefile-based (and apparently
> >> autoconf and autogen based) build system in OS builds.
> >> 5) LLVM uses CMake to build on Windows.
> >> 6) The build organization is more willing to install custom tools on
> >> Windows builders.
> >> 
> >> I think this rules out using CMake to build the mac port. Even if we got
> >> it set up, we'd need to maintain some kind of parallel build system for
> >> production builds via the build farm, which would negate the benefit. It
> >> might be possible to use CMake for Apple's Windows port, but if we
> >> switch away from native project formats at all, ideally we'd like to
> >> switch both ports to the same build system.
> > 
> > I am wondering if you could include the sources to CMake inside the
> > source tree for the Mac build farms.  CMake really only depends on the
> > C++ compiler, and that is part of the OS.  You could use CMake's
> > bootstrap script to build it.   Then run that CMake to generate the
> > build.  I could help you create a lean CMake that would only build the
> > features used for the build of WebKit.
> > 
> >> Since gyp does not require any special software to be installed merely
> >> to build, it seems like a more plausible option at the moment.
> >> 
> >  Note: this is not to hate on CMake, I just don't want to end up in a
> >  
> >> position where we have to maintain two parallel build systems for the
> >> Mac port, or fight with other organizations about the operation of the
> >> build farm. Requiring CMake to be installed at build time seems like a
> >> showstopper from that point of view.
> >> 
> >>  So, rather than install one program, Apple would rather have one of its
> > 
> > developers maintain a forked build system.  I would of course like to see
> > this change.   I would think it would be possible to change this. I
> > suppose if enough tools that Apple uses move to CMake, it would become
> > OK.  Anyway, what do think about building CMake with the project?
> > 
> > -Bill
> > 
> > _______________________________________________
> > webkit-dev mailing list
> > webkit-dev at lists.webkit.org
> > http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev


More information about the webkit-dev mailing list