Looking at overriding the build toolchain from bash / grep / sed / awk / (auto) make / configure for something smarter (like boost.build, etc.)
I currently maintain several boxes that have a poorly connected cornucopia of coding projects, databases and repositories (ranging from homebrew * nix distro to my class notes) maintained by me and a few equally pasty red-haired friends (all of the said cornucopia is stored in SVN).
The vast majority of our code is in C / C ++ / assembly (several utilities are in python / perl / php, we're not big java fans) compiled in gcc. Our build chain is usually a jumble of make, bash, grep, sed, and awk. The recent discovery of the Makefile almost as long as the program it creates (as with all general concern with my cryptic sed and shrill) prompted me to look for a less painful build system.
Currently the strongest candidate I have come across is Boost Build / Bjam as a replacement for GNU make and python as a replacement for our build-related bash scripts. Are there any other C / C ++ / asm build systems worth looking out for? I've looked at a number of make alternatives, but I haven't found one that comes from the names I know besides Boost's.
(I should point out that the ability to easily fetch information from svn command line tools like svnversion is important, as well as enough flexibility to customize for asm projects as easily as c / C ++ projects).
a source to share
Both "cross-platform" - allow compilation on Windows and Linux.
Cmake is very popular now (like boost uses it). It creates its own build files for each platform - Makefile (for Linux), VC ++ (for Visual Studio) projects from custom files (CMakeList.txt). In can also create Eclipse projects, KDevelop projects, etc. Since it creates its own assembly files, you can continue to use all the functions you are using for. For example, ccache / colorgcc / distcc for Makefile or Visual Assist X for Visual Studio.
We use it in our project and are happy with it - automatic dependencies, lightweight syntax, reliable builds.
Scons is a basic python system that builds itself. This is IMHO less popular, and still slow for a large project. But for msmall for a medium project, there might be a good alternative.
a source to share