One of the projects that I started working on a while ago was butter. The aim is to produce a tool that essentially replaces make. Why? Well, as people who have worked on projects will know make and Makefiles can be a bit repetitive. While Makefiles can have more than one target, they are difficult to use when the objects produced need different settings. Look at a complex Makefile and it’s a nightmare of variables. I started working on butter while still working on Sequel which required a high degree of flexability.
Right now butter exists in CVS though I’ll move it to SVN during this iteration of work and hopefully, as with all these projects, the design will become simpler and more capable. My C++ is better now than it was when I started butter all those months ago, so that should help.
Why now? Well another (large) project I’ve been working on has started running into issues with it’s build system that annoy me and are the sort of thing that butter was intended to fix! Trying to use the current code showed some problems, so it’s time to start reviewing and fixing the bugs again!