forked from icsharpcode/ILSpy
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
21 changed files
with
840 additions
and
111 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,121 @@ | ||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="go"> | ||
<!-- This file is called by the build server. --> | ||
<!-- Expected properties: | ||
ArtefactsOutputDir : full path of directory to write the build artefacts to. | ||
TestReportsDir : full path of directory to write CC.net report files to | ||
--> | ||
|
||
<PropertyGroup> | ||
<ProjectDir Condition=" '$(ProjectDir)' == '' ">$(MSBuildProjectDirectory)\..</ProjectDir> | ||
|
||
<ILSpyBin>$(ProjectDir)\ILSpy\bin\Release</ILSpyBin> | ||
<MSBuildCommunityTasksPath>$(ProjectDir)\BuildTools\MSBuildCommunityTasks</MSBuildCommunityTasksPath> | ||
<ArtefactPrefix>ILSpy_</ArtefactPrefix> | ||
|
||
<!-- we cannot use <MSBuild> to build a solution because --> | ||
<!-- A) passing properties to a solution called with <MSBuild> doesn't make the | ||
properties available for the projects inside the solution | ||
(but this works using the command line) --> | ||
<!-- C) We need to use MSBuild 4.0, but the build server uses MSBuild 2.0 --> | ||
<MSBuildExecutable>"$(MSBuildBinPath)\..\v4.0.30319\msbuild.exe"</MSBuildExecutable> | ||
<BuildProperties>/p:Configuration=Release "/p:Platform=Any CPU"</BuildProperties> | ||
<BuildProperties>$(BuildProperties) "/p:BranchName=$(BranchName)"</BuildProperties> | ||
<BuildProperties>$(BuildProperties) $(AdditionalBuildProperties)</BuildProperties> | ||
</PropertyGroup> | ||
|
||
<Import Project="$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.Targets"/> | ||
|
||
<Target Name="go"> | ||
<Error Text="ArtefactsOutputDir not set" Condition="'$(ArtefactsOutputDir)' == ''"/> | ||
<Error Text="TestReportsDir not set" Condition="'$(TestReportsDir)' == ''"/> | ||
|
||
<Message Text="ArtefactPrefix=$(ArtefactPrefix)" Importance="high"/> | ||
<Message Text="ArtefactsOutputDir=$(ArtefactsOutputDir)" Importance="high"/> | ||
<Message Text="BuildProperties=$(BuildProperties)" Importance="high"/> | ||
|
||
<CallTarget Targets="clean1"/> | ||
|
||
<CallTarget Targets="build"/> | ||
|
||
<CallTarget Targets="createsetup"/> | ||
|
||
<!-- | ||
<CallTarget Targets="buildunittests"/> | ||
<CallTarget Targets="rununittests"/> | ||
--> | ||
|
||
<CallTarget Targets="clean2"/> | ||
<CallTarget Targets="zipsource"/> | ||
<CallTarget Targets="addnote" Condition=" '$(IsOfficialBuildServer)' == 'True' "/> | ||
</Target> | ||
|
||
<Target Name="build"> | ||
<MSBuild Projects="$(ProjectDir)\BuildTools\UpdateAssemblyInfo\UpdateAssemblyInfo.csproj" Targets="Build" Properties="Configuration=Debug" /> | ||
<Exec WorkingDirectory="$(ProjectDir)\BuildTools\UpdateAssemblyInfo\bin\Debug" Command="UpdateAssemblyInfo.exe --REVISION --branchname $(BranchName)" Timeout="60000" Condition=" '$(BranchName)' != '' " /> | ||
<Exec WorkingDirectory="$(ProjectDir)\BuildTools\UpdateAssemblyInfo\bin\Debug" Command="UpdateAssemblyInfo.exe --REVISION" Timeout="60000" Condition=" '$(BranchName)' == '' " /> | ||
|
||
<!-- read content of REVISION into $(BuildNumber) --> | ||
<XmlRead XPath="/versionInfo/version" | ||
XmlFileName="$(ProjectDir)\REVISION"> | ||
<Output TaskParameter="Value" PropertyName="BuildNumber" /> | ||
</XmlRead> | ||
<Message Importance="high" Text="BuildNumber=$(BuildNumber)"/> | ||
|
||
<Copy SourceFiles="$(ProjectDir)\REVISION" | ||
DestinationFolder="$(ArtefactsOutputDir)"/> | ||
|
||
<Exec WorkingDirectory="$(ProjectDir)" | ||
Command="$(MSBuildExecutable) ILSpy.sln $(BuildProperties)"/> | ||
</Target> | ||
|
||
<!-- Yes, apparently we really need two identical clean tasks. MSBuild won't run the same task twice. --> | ||
<Target Name="clean1"> | ||
<Exec WorkingDirectory="$(ProjectDir)" | ||
Command="$(MSBuildExecutable) ILSpy.sln /t:Clean /p:Configuration=Debug"/> | ||
<Exec WorkingDirectory="$(ProjectDir)" | ||
Command="$(MSBuildExecutable) ILSpy.sln /t:Clean /p:Configuration=Release"/> | ||
</Target> | ||
<Target Name="clean2"> | ||
<Exec WorkingDirectory="$(ProjectDir)" | ||
Command="$(MSBuildExecutable) ILSpy.sln /t:Clean /p:Configuration=Debug"/> | ||
<Exec WorkingDirectory="$(ProjectDir)" | ||
Command="$(MSBuildExecutable) ILSpy.sln /t:Clean /p:Configuration=Release"/> | ||
</Target> | ||
|
||
<Target Name="createsetup"> | ||
<CreateItem Include="$(ILSpyBin)\*.dll;$(ILSpyBin)\*.exe"> | ||
<Output TaskParameter="Include" ItemName="BinFileToZip"/> | ||
</CreateItem> | ||
<Message Importance="high" Text="Creating ZIP file $(ArtefactPrefix)$(BuildNumber)_Binaries.zip"/> | ||
<Zip Files="@(BinFileToZip)" | ||
ZipLevel="9" | ||
WorkingDirectory="$(ILSpyBin)" | ||
ZipFileName="$(ArtefactsOutputDir)\$(ArtefactPrefix)$(BuildNumber)_Binaries.zip"/> | ||
</Target> | ||
|
||
<Target Name="zipsource"> | ||
<CreateItem Include="$(ProjectDir)\**" | ||
Exclude="$(ProjectDir)\**\.svn\**;$(ProjectDir)\**\obj\**;$(ProjectDir)\**\bin\**;$(ProjectDir)\.git\**;$(ProjectDir)\.git*;$(ProjectDir)\BuildTools\build\**"> | ||
<Output TaskParameter="Include" ItemName="FileToZip"/> | ||
</CreateItem> | ||
<Message Importance="high" Text="Creating ZIP file $(ArtefactPrefix)$(BuildNumber)_Source.zip"/> | ||
<Zip Files="@(FileToZip)" | ||
ZipLevel="6" | ||
WorkingDirectory="$(ProjectDir)" | ||
ZipFileName="$(ArtefactsOutputDir)\$(ArtefactPrefix)$(BuildNumber)_Source.zip"/> | ||
</Target> | ||
|
||
<Target Name="addnote"> | ||
<XmlRead XPath="/versionInfo/version" | ||
XmlFileName="$(ProjectDir)\REVISION"> | ||
<Output TaskParameter="Value" PropertyName="BuildNumber" /> | ||
</XmlRead> | ||
<XmlRead XPath="/versionInfo/branchName" | ||
XmlFileName="$(ProjectDir)\REVISION"> | ||
<Output TaskParameter="Value" PropertyName="BranchName" /> | ||
</XmlRead> | ||
<Exec WorkingDirectory="$(ProjectDir)" Command='git fetch origin refs/notes/build:refs/notes/build -f' /> | ||
<Exec WorkingDirectory="$(ProjectDir)" Command='git notes --ref build add -m "Build $(BuildNumber) on $(BranchName) successful"' IgnoreExitCode="True" /> | ||
<Exec WorkingDirectory="$(ProjectDir)" Command='git push git@github.com:icsharpcode/ILSpy.git refs/notes/build:refs/notes/build' /> | ||
</Target> | ||
</Project> |
Binary file not shown.
73 changes: 73 additions & 0 deletions
73
BuildTools/MSBuildCommunityTasks/MSBuild.Community.Tasks.Targets
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
<?xml version="1.0" encoding="utf-8" ?> | ||
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
<!-- $Id: MSBuild.Community.Tasks.Targets 139 2006-03-26 13:34:13Z cmumford $ --> | ||
|
||
<PropertyGroup> | ||
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)' == ''">$(MSBuildExtensionsPath)\MSBuildCommunityTasks</MSBuildCommunityTasksPath> | ||
<MSBuildCommunityTasksLib>$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.dll</MSBuildCommunityTasksLib> | ||
</PropertyGroup> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.AssemblyInfo" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Attrib" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ExecuteSQL" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FileUpdate" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FtpUpload" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FxCop" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ILMerge" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Mail" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Move" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Add" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Divide" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Multiple" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Subtract" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NDoc" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NUnit" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegistryRead" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegistryWrite" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Script" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ServiceController" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ServiceQuery" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sleep" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Schema.TaskSchema" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssAdd" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssCheckin" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssCheckout" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssClean" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssDiff" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssGet" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssHistory" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssLabel" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssUndoCheckout" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnCheckout" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnClient" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnCommit" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnExport" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnInfo" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnUpdate" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnVersion" /> | ||
|
||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Time" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Unzip" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Version" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.WebDownload" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.XmlRead" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.XmlUpdate" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Xslt" /> | ||
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Zip" /> | ||
|
||
<ItemGroup> | ||
<FxCopRuleAssemblies Include="UsageRules.dll"/> | ||
<FxCopRuleAssemblies Include="SecurityRules.dll"/> | ||
<FxCopRuleAssemblies Include="PortabilityRules.dll"/> | ||
<FxCopRuleAssemblies Include="PerformanceRules.dll"/> | ||
<FxCopRuleAssemblies Include="MobilityRules.dll"/> | ||
<FxCopRuleAssemblies Include="InteroperabilityRules.dll"/> | ||
<FxCopRuleAssemblies Include="GlobalizationRules.dll"/> | ||
<FxCopRuleAssemblies Include="DesignRules.dll"/> | ||
</ItemGroup> | ||
</Project> |
Binary file not shown.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,153 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<Project DefaultTargets="All" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
<!-- Required Import to use MSBuild Community Tasks --> | ||
<Import Project="$(MSBuildExtensionsPath)\MSBuildCommunityTasks\MSBuild.Community.Tasks.Targets"/> | ||
|
||
<!-- These are sample targets the demonstrate the use of MSBuild Community Tasks --> | ||
<Target Name="AssemblyInfo"> | ||
<AssemblyInfo CodeLanguage="CS" | ||
OutputFile="AssemblyInfo.cs" | ||
AssemblyTitle="AssemblyInfoTask" | ||
AssemblyDescription="AssemblyInfo Description" | ||
AssemblyConfiguration="" | ||
AssemblyCompany="Company Name, LLC" | ||
AssemblyProduct="AssemblyInfoTask" | ||
AssemblyCopyright="Copyright (c) Company Name, LLC 2005" | ||
AssemblyTrademark="" | ||
ComVisible="false" | ||
CLSCompliant="true" | ||
Guid="d038566a-1937-478a-b5c5-b79c4afb253d" | ||
AssemblyVersion="1.0.0.0" | ||
AssemblyFileVersion="1.0.0.0" /> | ||
</Target> | ||
|
||
<Target Name="Math"> | ||
<Add Numbers="4;3"> | ||
<Output TaskParameter="Result" PropertyName="Result" /> | ||
</Add> | ||
<Message Text="Add 4+3= $(Result)"/> | ||
|
||
<Add Numbers="4;3;7"> | ||
<Output TaskParameter="Result" PropertyName="Result" /> | ||
</Add> | ||
<Message Text="Add 4+3+7= $(Result)"/> | ||
|
||
<Subtract Numbers="10;3"> | ||
<Output TaskParameter="Result" PropertyName="Result" /> | ||
</Subtract> | ||
<Message Text="Subtract 10-3= $(Result)"/> | ||
|
||
<Multiple Numbers="10;3"> | ||
<Output TaskParameter="Result" PropertyName="Result" /> | ||
</Multiple> | ||
<Message Text="Multiple 10*3= $(Result)"/> | ||
|
||
<Divide Numbers="1;2"> | ||
<Output TaskParameter="Result" PropertyName="Result" /> | ||
</Divide> | ||
<Message Text="Divide 1/2= $(Result)"/> | ||
|
||
</Target> | ||
|
||
<Target Name="Version"> | ||
<Version VersionFile="version.txt" RevisionType="Increment"> | ||
<Output TaskParameter="Major" PropertyName="Major" /> | ||
<Output TaskParameter="Minor" PropertyName="Minor" /> | ||
<Output TaskParameter="Build" PropertyName="Build" /> | ||
<Output TaskParameter="Revision" PropertyName="Revision" /> | ||
</Version> | ||
|
||
<Message Text="Version: $(Major).$(Minor).$(Build).$(Revision)"/> | ||
</Target> | ||
|
||
<Target Name="Registry"> | ||
<RegistryRead | ||
KeyName="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework" | ||
ValueName="InstallRoot"> | ||
<Output TaskParameter="Value" PropertyName="InstallRoot" /> | ||
</RegistryRead> | ||
<Message Text="InstallRoot: $(InstallRoot)"/> | ||
|
||
<RegistryWrite | ||
KeyName="HKEY_CURRENT_USER\SOFTWARE\MSBuildTasks" | ||
ValueName="RegistryWrite" | ||
Value="Test Write" /> | ||
|
||
</Target> | ||
|
||
<Target Name="Service"> | ||
<ServiceQuery ServiceName="w3svc"> | ||
<Output TaskParameter="Status" PropertyName="Status" /> | ||
</ServiceQuery> | ||
<Message Text="Web Server: $(Status)"/> | ||
|
||
<ServiceController ServiceName="w3svc" Action="Restart" /> | ||
|
||
</Target> | ||
|
||
<Target Name="WebDownload"> | ||
<WebDownload FileUri="http://www.microsoft.com/default.aspx" | ||
FileName="microsoft.html" /> | ||
</Target> | ||
|
||
<Target Name="Attrib" DependsOnTargets="Version"> | ||
<Attrib Files="version.txt" | ||
ReadOnly="true" Hidden="true" System="true"/> | ||
|
||
<Attrib Files="version.txt" | ||
Hidden="false" System="false"/> | ||
|
||
<Attrib Files="version.txt" | ||
Normal="true"/> | ||
|
||
</Target> | ||
|
||
<PropertyGroup> | ||
<Code> | ||
<![CDATA[ | ||
public static void ScriptMain() { | ||
List<string> list = new List<string>(); | ||
list.Add("Happy"); | ||
list.Add("New"); | ||
list.Add("Year"); | ||
Console.WriteLine("Hello MSBuild Community Scripting World."); | ||
foreach(string s in list) | ||
{ | ||
Console.WriteLine(s); | ||
} | ||
} | ||
]]> | ||
</Code> | ||
</PropertyGroup> | ||
|
||
<Target Name="Script"> | ||
<Script Language="C#" Code="$(Code)" /> | ||
</Target> | ||
|
||
<Target Name="Sleep"> | ||
<Message Text="Sleep: 200"/> | ||
<Sleep Milliseconds="200" /> | ||
</Target> | ||
|
||
<ItemGroup> | ||
<ZipFiles Include="**\*.*" Exclude="" /> | ||
</ItemGroup> | ||
|
||
<Target Name="Zip"> | ||
<Zip Files="@(ZipFiles)" | ||
ZipFileName="Sample.zip" /> | ||
</Target> | ||
|
||
<Target Name="All"> | ||
<CallTarget Targets="AssemblyInfo" /> | ||
<CallTarget Targets="Math" /> | ||
<CallTarget Targets="Version" /> | ||
<CallTarget Targets="Registry" /> | ||
<CallTarget Targets="Service" /> | ||
<CallTarget Targets="WebDownload" /> | ||
<CallTarget Targets="Attrib" /> | ||
<CallTarget Targets="Script" /> | ||
<CallTarget Targets="Sleep" /> | ||
<CallTarget Targets="Zip" /> | ||
</Target> | ||
</Project> |
Oops, something went wrong.