CinePaint

Deep paint and other open source software tools for motion picture retouching and HDR photography with 8, 16 and 32-bit per channel color.

Thursday, December 04, 2008

More CinePaint Build Systems

<< Why is CinePaint adding another build system when you have autoconf and just added CMake? >>


Image courtesy U.S. Air Force

Autotools has always been troublesome for us. The autoconf-automake-make tool chain can be very time-consuming to debug and few find it easy to learn beyond the basics.

CMake is a popular alternative to autotools. CinePaint developer Michel Lesoinne has done a great job creating CMake build files for CinePaint. That's recently completed and now available in CVS for testing.

CinePaint is moving away from dependency on a single build system. With multiple build systems implemented, if one system gets wedged, as has happened several times to us with autotools, we can still build CinePaint using an alternate. Having a broken build system creates panic in an open source project. It's an emergency that must be handled before anyone can do anything. That's stress we can do without.

I've received a patch for CinePaint SCons build support, based on Python, from H. S. Teoh. I'll be committing that to CVS soon. It's half way there, not ready for testing yet. It builds CinePaint except for its plug-ins.

Cons is yet another build system. This one is based on Perl. We're just getting started on that.

Autoconf, CMake, SCons and Cons are all viable build systems. There are developers who love each system. Why pick only one? It's better for developers who join CinePaint that they can use their favorite build system tools, that they aren't forced to learn a tool they don't know or don't like.

Except maybe for autotools, that nobody seems to enjoy working on maintaining, we have the resources and the expertise to support multiple build systems. It's fun to have more choices. Isn't that what open source is about?

Love you guys!

Robin

0 Comments:

Post a Comment

Links to this post:

Create a Link

<< Home