Вместо непосредственного вызова компилятора, почему бы не использовать MSBuild? Он обрабатывает компиляцию, ссылки и т. Д., Поскольку он работает с файлом решения. Поэтому будут использованы настройки в решении и проектах, вам не нужно выписывать параметры, как в вашем примере.
NAnt не имеет прямой функциональности для MSBuild, как это имеет для компиляторов; тем не менее, NAntContrib имеет задачу msbuild
. Это то, что я использую, это делает процесс компиляции очень простым в моем скрипте сборки. Вот как выглядит моя задача компиляции:
<target name="compile" description="build the application">
<loadtasks assembly="${dir.tools}\nantcontrib\NAnt.Contrib.Tasks.dll" />
<msbuild project="${dir.src}\${file.solution}" verbosity="Minimal" failonerror="true" verbose="false">
<property name="Configuration" value="${project.config}" />
</msbuild>
</target>