The other day I came across 2 people on the same day who told me that they believe that part of the build system's job is to do software configuration management. :blink:
Having spent nearly all of my professional life in SCM this came as surprise to me because I've tried to avoid using the build system to manage software configurations, and whenever I've come across these build systems these were highly complex solutions with lots of gotchas and usually created in part from a legacy environment that used 'simple' version control tools.
Both of these people happened to be Subversion advocates and it got me wondering whether this has anything to do with the fact that Subversion was built as a replacement for CVS and doesn't have the notion of configurations.
What do you say? Is Software Configuration Management the build system's job? Or is it a shared responsibility between the SCM/VC system and the build system?