I\'m trying to get NAnt 0.86b1 running with VS2008 SP1 and x64 XP.
I have a basic build file (below) which gives the error Solution format of file \'Solution.sln\'
See Building the platform code with nant and VS2008
This is here on Stack overflow. Basically you only have a couple of options, control all the builds yourself with project build files, common build files, and a master build file. Or run the Exec task to exectue the correct version of MSBuild for each solution you want compiled.
You'll notice that the docs indicate that NAnt's <solution> task doesn't support solution files newer than VS2003.
I recommend using the <msbuild> task from nantcontrib for all projects newer than VS2003.
Also, the .85 version of NAnt only supports framework versions up to 2.0. The purest way to get things working against the 3.5 framework is to use the .86-beta1 versions of NAnt. You'll then be able to use the <msbuild>
task against the 3.5 solution.
nant-0.86-beta1 supports 3.5 but not in the solution node how nice. I ended up using this from the nantcontrib:
<target name="build" description="Compiles using the AutomatedDebug Configuration">
<!-- <loadtasks assembly="C:\Dev\nant-0.86-beta1\bin\NAnt.Contrib.Tasks.dll" /> -->
<msbuild project="${Solution.Filename}">
<property name="Configuration" value="Release"/>
</msbuild>
</target>