summaryrefslogtreecommitdiffstats
path: root/tools/DotNetOpenAuth.automated.targets
blob: 1c4bc156d4c1cc0faf3cf92c99c16603f6af1d46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0" InitialTargets="_SetDropProperties">
	<Import Project="$(ProjectRoot)tools\$(ProductName).targets"/>
	<UsingTask AssemblyFile="$(ProjectRoot)lib\MSBuild.Community.Tasks.dll" TaskName="Zip"/>
	<UsingTask AssemblyFile="$(ProjectRoot)lib\MSBuild.Community.Tasks.dll" TaskName="NUnit" />

	<Target Name="Rebuild" DependsOnTargets="Clean;Build"/>

	<Target Name="Clean">
		<ItemGroup>
			<ProjectsToClean>
				<Targets Condition=" '%(ProjectsToClean.Targets)' == '' ">Clean</Targets>
			</ProjectsToClean>
		</ItemGroup>
		
		<Delete Files="@(FilesToClean)" />
		<RemoveDir Directories="@(DirectoriesToClean)" />
		<MSBuild Projects="@(ProjectsToClean)" Targets="%(ProjectsToClean.Targets)" BuildInParallel="$(BuildInParallel)" Properties="%(ProjectsToClean.Properties)" />
	</Target>

	<Target Name="_SetDropProperties" DependsOnTargets="GetBuildVersion">
		<!-- This target is necessary because PropertyGroups within the same Target as 
		     where CallTarget is fired do NOT affect those called targets. -->
		<!-- The rest of these are here so that other DependsOn targets have access to these properties. -->
		<PropertyGroup>
			<DropDirectoryNoSlash>$(DropsRoot)$(ProductName)-$(BuildVersion)</DropDirectoryNoSlash>
			<DropDirectory>$(DropDirectoryNoSlash)\</DropDirectory>
		</PropertyGroup>
	</Target>

	<Target Name="BuildProduct">
		<MSBuild BuildInParallel="$(BuildInParallel)" 
						 Projects="@(ProductProjects)" />
	</Target>
</Project>