Reviews

Review: OpenMake 6.3

Openmake 6.3
starting at $299 per client and $3900 per KB server Catalyst Systems Corporation
Glencoe, Illinois
(847) 835-6106
www.openmake.com

A few months ago I looked at OpenMake 6.2. Now they've pushed out a 6.3 version, and they're worth revisiting if you're in the market for a high-end build tool. As you may recall, OpenMake uses a distributed build architecture, tied together by SOAP messages. At the heart of the build process is the KB Server, which maintains its own knowledge base of how to build various types of software. Client workstations use the Openmake Browser to talk to the KB server, set things up, and kick off builds. Finally, one or more build servers handle the actual build tasks, receiving commands from the clients and using the Openmake KB to know how to build various types of software.

The KB server is one of the key strengths of Openmake. Rather than needing to script everything youself, you can depend on the KB Server to know how to compile dozens and dozens of types of software: .NET applications, Java Jar files, MSVC apps, VIsual Basic OCXs, InstallShiled and Wise installers, Delphi DLLs, and much else. The KB Server also manages build logs and impact analysis, making it easy to determine the effects of apparently-small changes on the system.

Openmake builds are normally handled by command-line tools, but one of the changes in 6.3 is much improved integration with popular IDEs. With either Eclipse or Visual Studio .NET, OpenMake now plugs into the IDE to monitor the project and file dependencies in the work you're doing. It takes over build chores directly in the IDE, and generates the necessary backend files to move your work into the automated build process as well.

Other 6.3 improvements include tighter integration with Ant for Java build tasks (you can think of OpenMake as an IDE for Ant in this case), a refactoring of build types into individual build tasks for easier customization, and the ability to use WebSphere as the Knowledge Base server (as a replacement for the OpenMake-supplied version of Tomcat. You'll also find enhanced reporting and an SDK that lets you write C or Java code to interact directly with the Knowledge Base.

Setting up Openmake is a non-trivial undertaking, and using it may take some getting used to. But then, so does any other process change. The real benefits of this approach should be most apparent in large enterprises building complex software that encompasses multiple vendors and technologies. In such a case, you can think of Openmake as a sort of referee, ensuring that builds are done repeatably regardless of which tools any individual developer prefers. Other features like online build logs let you use Openmake as a tracking tool as well, cluing everyone into how the build process is going. You'd likely find this overkill on a simple project, but as the complexity of your software increases you'll need to investigate this level of tool. You can sign up on the Web site to give Openmake a try if you're already outgrowing your current build system.

About the Author

Mike Gunderloy has been developing software for a quarter-century now, and writing about it for nearly as long. He walked away from a .NET development career in 2006 and has been a happy Rails user ever since. Mike blogs at A Fresh Cup.