diff --git a/DotNetBuilder/Compiler.cs b/DotNetBuilder/Compiler.cs index 9b1878d..d487a01 100644 --- a/DotNetBuilder/Compiler.cs +++ b/DotNetBuilder/Compiler.cs @@ -6,6 +6,8 @@ using Microsoft.Build.Evaluation; using Microsoft.Build.Execution; using Microsoft.Build.Framework; using Microsoft.Build.Utilities; +using System.Reflection; +using System.IO; namespace MicroBuildServer.DotNetBuilder { @@ -65,6 +67,8 @@ namespace MicroBuildServer.DotNetBuilder } } + public static readonly string BuilderAssemblyDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); + public static Response Compile(CompileRequest request) { var logger = new CompilerLogger(); @@ -88,6 +92,8 @@ namespace MicroBuildServer.DotNetBuilder { globalProperty.Add("RunCodeAnalysis", "true"); globalProperty.Add("CodeAnalysisRuleSet", request.CodeAnalysisRuleSet); + globalProperty.Add("MBSBuilderPath", BuilderAssemblyDirectory); + globalProperty.Add("CustomBeforeMicrosoftCSharpTargets", Path.Combine(BuilderAssemblyDirectory, "ImportStyleCop.targets")); } var buildRequest = new BuildRequestData(request.SolutionPath, globalProperty, "14.0", new [] { request.Target }, null); diff --git a/DotNetBuilder/ImportStyleCop.targets b/DotNetBuilder/ImportStyleCop.targets new file mode 100644 index 0000000..055a6a7 --- /dev/null +++ b/DotNetBuilder/ImportStyleCop.targets @@ -0,0 +1,6 @@ + + + + + + diff --git a/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj b/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj index cc946a2..1c2e37d 100644 --- a/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj +++ b/DotNetBuilder/MicroBuildServer.DotNetBuilder.csproj @@ -83,6 +83,9 @@ ..\packages\NUnit.Runners.2.6.3\tools\lib\nunit.util.dll + + ..\packages\StyleCop.Analyzers.1.0.0-beta008\analyzers\dotnet\cs\StyleCop.Analyzers.dll + @@ -111,6 +114,9 @@ Designer + + Always + diff --git a/DotNetBuilder/packages.config b/DotNetBuilder/packages.config index f525b72..7eb9580 100644 --- a/DotNetBuilder/packages.config +++ b/DotNetBuilder/packages.config @@ -4,4 +4,5 @@ + \ No newline at end of file