Files
spring-net/build-support/solutions.build.nant
2008-10-15 17:35:54 +00:00

120 lines
4.6 KiB
XML

<?xml version="1.0" ?>
<!--
Rebuilding Solutions using Nant and "solutions.build":
1) Move Spring.Calculator.snk -> $root/Spring.Calculator.snk
2) Create virtual directories in IIS
/Spring.Calculator.2003 -> $root\examples\Spring\Spring.Calculator\src\Spring.Calculator.Web.2003
/SpringAir.2003 -> $root\examples\Spring\SpringAir\src\SpringAir.Web.2003
3) Place solutions.build into $root/Solutions.build
4) execute "nant -f:solutions.build"
5) SpringAir.2003 unfort. doesn't work with this script :-(( - You need to check it manually (I'm working on it...)
-->
<project name="Spring.NET Examples" default="RebuildAllSolutions">
<property name="vs2003.install.dir.key" value="SOFTWARE\Microsoft\VisualStudio\7.1\InstallDir"/>
<readregistry property="vs2003.install.dir" key="${vs2003.install.dir.key}" hive="LocalMachine" failonerror="false"/>
<property name="devenv11.exe" value="${vs2003.install.dir}devenv.exe" />
<property name="msbuild.exe" value="C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe"/>
<property name="buildconfiguration" value="Debug" />
<target name="RebuildAllSolutions" description="Rebuild all Solutions">
<call target="RebuildAllSolutions-1.1" />
<call target="RebuildAllSolutions-2.0" />
</target>
<target name="Clean">
<delete>
<fileset basedir="examples">
<include name="**/bin/**/*.*" />
<include name="**/obj/**/*.*" />
<exclude name="**/bin/*.refresh" />
</fileset>
</delete>
</target>
<target name="RebuildAllSolutions-1.1" depends="Clean">
<!-- build examples -->
<foreach item="File" property="filename">
<in>
<items basedir="examples">
<include name="**/*.2003.sln" />
<exclude name="**/SpringAir.2003.sln" /> <!-- unfort. doesn't work -->
</items>
</in>
<do>
<property name="solutionfile" value="${filename}" />
<property name="solutionconfiguration" value="${buildconfiguration}" />
<call target="RebuildSolution-1.1" />
</do>
</foreach>
<!-- build "main" solution (extra call because of configuration 'debug-1.1') -->
<property name="solutionfile" value="Spring.NET.2003.sln" />
<property name="solutionconfiguration" value="${buildconfiguration}-1.1" />
<call target="RebuildSolution-1.1" />
</target>
<target name="RebuildAllSolutions-2.0" dependes="Clean">
<foreach item="File" property="filename">
<in>
<items basedir="examples/Spring">
<include name="**/*.2005.sln" />
<include name="Spring.Data.NHibernate/Spring.Northwind.sln" />
<include name="Spring.WcfQuickStart/Spring.WcfQuickStart.2008.sln" />
</items>
</in>
<do>
<property name="solutionfile" value="${filename}" />
<property name="solutionconfiguration" value="${buildconfiguration}" />
<call target="RebuildSolution-2.0" />
</do>
</foreach>
<!-- build "main" solution (extra call because of configuration 'debug-1.1') -->
<property name="solutionfile" value="Spring.NET.2005.sln" />
<property name="solutionconfiguration" value="${buildconfiguration}" />
<call target="RebuildSolution-2.0" />
</target>
<target name="RebuildSolution-1.1" description="rebuilds a given VS2003 solution file">
<!-- "c:\Program Files\Microsoft Visual Studio .NET 2003\Common7\IDE\devenv.exe" Spring.NET.2003.sln /rebuild Debug-1.1 /out solutions.build-1.1.log -->
<echo message="Rebuilding VS2003 Solution ${solutionfile}" />
<exec program="${devenv11.exe}" basedir="${devenv11.exe}">
<arg value="${solutionfile}" />
<arg line="/rebuild ${solutionconfiguration}" />
<arg line="/out solutions.build-1.1.log" />
</exec>
<!--
<solution configuration="${solutionconfiguration}" solutionfile="${solutionfile}">
<webmap>
<map url="http://localhost/Spring.Calculator.2003" path="examples\Spring\Spring.Calculator\src\Spring.Calculator.Web.2003" />
<map url="http://localhost/SpringAir.2003" path="examples\Spring\SpringAir\src\SpringAir.Web.2003" />
</webmap>
</solution>
-->
</target>
<target name="RebuildSolution-2.0" description="rebuilds a given VS2005 solution file">
<echo message="Rebuilding VS2005 Solution ${solutionfile}" />
<exec program="${msbuild.exe}">
<!--
<arg value="/property:OutDir=${output.dir}/"/>
-->
<arg value="${solutionfile}"/>
<arg line="/nologo" />
<arg line="/property:Configuration=${solutionconfiguration}"/>
</exec>
</target>
</project>