Several times in my career, I have worked in a software group that determined that
a) We needed a build/test system
b) We should write our own
c) We can have a
I've researched, but never used, AntHill. There's an open source version and a commercial version. I think it will do what you want, but it would be helpful if you gave more requirements, like does it need to do automated overnight builds, what you use for source control, etc.
In my current company, I wrote my own. The way mine works is exactly what you say; it has no idea how to build the software. You give it a bunch of command lines to run (stored in a database), it captures the exit value and stdout and stderr, and if the exit value is non-zero, it marks the build as broken. We have about 8 projects in there that can build and run unit tests. All of them start out by wiping the directory and getting the source fresh out of subversion.