For build automation, I use Apache Ant, which is a software tool for automating software build processes. I use it for all my projects, from Delphi 6 to Delphi 2009, and Free Pascal.
Things it can do "out of the box" include MD5 checksum generation, ZIP file creation, text search/replace (useful for copyright header generation), execution of SQL statements, XSLT processing.
For example, to compile all projects with Delphi 6, this is (a part of) the script:
<!-- ============================================================== -->
<!-- Compile with Delphi 6 -->
<!-- ============================================================== -->
<target name="compile_d6" depends="clean">
<apply executable="${d6}\Bin\dcc32" failonerror="true"
output="build-d6.log" >
<arg value="-B"/>
<arg value="-Q"/>
<arg value="-I${source};${indy10}/Lib/System"/>
<arg value="-O${source};${indy10}/D6;${jcl}/d6"/>
<arg value="-U${source};${indy10}/D6;${jcl}/d6"/>
<fileset dir=".">
<patternset>
<include name="*.dpr"/>
</patternset>
</fileset>
</apply>
</target>