From 3d58cec62b41ab05117c2996406e0af65accd6e1 Mon Sep 17 00:00:00 2001
From: "Atkins, Oliver" <oliverg_atkins@hotmail.com>
Date: Wed, 30 Sep 2015 08:43:12 -0400
Subject: [PATCH 1/3] Added custom .targets and .props file with code to make
 it easy to set the item group for stylecop.json to StyleCopSettings. Include
 StyleCopSettings in AdditionalFileItemNames group.

---
 .../StyleCop.Analyzers/StyleCop.Analyzers.nuspec         | 4 ++++
 .../StyleCop.Analyzers/build/StyleCop.Analyzers.props    | 8 ++++++++
 .../StyleCop.Analyzers/build/StyleCop.Analyzers.targets  | 9 +++++++++
 3 files changed, 21 insertions(+)
 create mode 100644 StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props
 create mode 100644 StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets

diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec b/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
index 3d60f4354..3d20e850f 100644
--- a/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
+++ b/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
@@ -25,6 +25,10 @@
     <!-- Scripts -->
     <file src="tools\install.ps1" target="tools\" />
     <file src="tools\uninstall.ps1" target="tools\" />
+    
+    <!-- MSBuild imports -->
+    <file src="build\StyleCop.Analyzers.props" target="build\" />
+    <file src="build\StyleCop.Analyzers.targets" target="build\" />
 
     <!-- Source code -->
     <file src="**\*.cs" exclude="obj\**\*.cs" target="src"/>
diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props
new file mode 100644
index 000000000..060447ded
--- /dev/null
+++ b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+
+  <PropertyGroup>
+    <AdditionalFileItemNames>$(AdditionalFileItemNames);StyleCopSettings</AdditionalFileItemNames>
+  </PropertyGroup>
+
+</Project>
\ No newline at end of file
diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets
new file mode 100644
index 000000000..45babfefa
--- /dev/null
+++ b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+
+  <ItemGroup Condition="'$(BuildingInsideVisualStudio)' == 'true'">
+    <!-- Add items to the Item Type menu in VS. -->
+    <AvailableItemName Include="StyleCopSettings" />
+  </ItemGroup>
+
+</Project>
\ No newline at end of file

From c538c489774c95749a51ffe5363b9f0a8318a27b Mon Sep 17 00:00:00 2001
From: "Atkins, Oliver" <oliverg_atkins@hotmail.com>
Date: Thu, 15 Oct 2015 12:00:38 -0400
Subject: [PATCH 2/3] Updated so as not to require explicitly setting item name
 of stylecop.json file.

---
 .../build/StyleCop.Analyzers.props                   |  8 --------
 .../build/StyleCop.Analyzers.targets                 | 12 ++++++++----
 2 files changed, 8 insertions(+), 12 deletions(-)
 delete mode 100644 StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props

diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props
deleted file mode 100644
index 060447ded..000000000
--- a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.props
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-
-  <PropertyGroup>
-    <AdditionalFileItemNames>$(AdditionalFileItemNames);StyleCopSettings</AdditionalFileItemNames>
-  </PropertyGroup>
-
-</Project>
\ No newline at end of file
diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets
index 45babfefa..2b42f03f3 100644
--- a/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets
+++ b/StyleCop.Analyzers/StyleCop.Analyzers/build/StyleCop.Analyzers.targets
@@ -1,9 +1,13 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
 
-  <ItemGroup Condition="'$(BuildingInsideVisualStudio)' == 'true'">
-    <!-- Add items to the Item Type menu in VS. -->
-    <AvailableItemName Include="StyleCopSettings" />
-  </ItemGroup>
+  <Target Name="InjectStyleCopSettings"
+          BeforeTargets="CoreCompile">
+    <ItemGroup>
+      <StyleCopSettings Include="@(None)"
+                        Condition="'%(Filename)%(Extension)' == 'stylecop.json'"/>
+      <AdditionalFiles Include="%(StyleCopSettings.Identity)" />
+    </ItemGroup>
+  </Target>
 
 </Project>
\ No newline at end of file

From 5e4d166c0a7d280035630981708fc578ed4eeda6 Mon Sep 17 00:00:00 2001
From: "Atkins, Oliver" <oliverg_atkins@hotmail.com>
Date: Thu, 15 Oct 2015 13:08:26 -0400
Subject: [PATCH 3/3] Fixed .nuspec file.

---
 StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec | 1 -
 1 file changed, 1 deletion(-)

diff --git a/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec b/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
index 3d20e850f..6eb33a414 100644
--- a/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
+++ b/StyleCop.Analyzers/StyleCop.Analyzers/StyleCop.Analyzers.nuspec
@@ -27,7 +27,6 @@
     <file src="tools\uninstall.ps1" target="tools\" />
     
     <!-- MSBuild imports -->
-    <file src="build\StyleCop.Analyzers.props" target="build\" />
     <file src="build\StyleCop.Analyzers.targets" target="build\" />
 
     <!-- Source code -->