MSBuild is a blatant clone of NAnt with the benefit of being the native project file format of VS2005.
Kathleen Dollard promotes the use of code generation (generated code = meta data + templates) using XSLT.
Kathleen has a complex code generation harness that provides configurable one touch code generation.
I feel that this would be more naturally implemented as a set of MsBuild/Nant extensions.
For example the Database Metadata extraction tool would be one task. Stored procedure generation would be another. Code to call the stored procedures would be a third. This would provide the one touch benefit of the generation framework yet allow the pieces to become far more flexible.