Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/cecil.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/rocks
diff options
context:
space:
mode:
authorDaniel Cazzulino <daniel@cazzulino.com>2015-05-27 18:24:23 +0300
committerDaniel Cazzulino <daniel@cazzulino.com>2015-05-27 20:09:28 +0300
commitdd1efeb9fab32076c03b62e2c72cc9ec8add52e6 (patch)
tree951dd36fd3819b302cda34a7e668fa2aad109772 /rocks
parente68c4baebd66b7827ccd9f24fa699a3c39ddb474 (diff)
Allow upstream consumers to override build settings.
Projects consuming and distributing Cecil in environments they don't control (i.e. an addin inside VS or XS) risk having the environment load an incompatible version of Cecil from another addin or location (depending on the process/domain configuration and the probing paths set up for the host). To shield from this issue, XS has forked Cecil, changed its assembly name and signing key, and now it has to maintain that fork in sync with upstream. Others with similar requirements (in particular, the Xamarin Visual Studio extension team now) will need to do the same, with the added maintainability burden. This commit provides a conditional import that allows products that distribute Cecil to tweak settings that will affect its build, without having to fork the project unnecessarily. The Mono.Cecil.overrides file is a plain MSBuild file with additional properties that can exist anywhere upwards from the current Cecil repo clone path, making it very flexible even if the project is submoduled. It's imported before the C# targets so that changes to the assembly name, signing key, etc. are properly overwritten before the C# targets process them. This involved moving the existing .settings files down in all .csproj files. Fixes #216
Diffstat (limited to 'rocks')
-rw-r--r--rocks/Mono.Cecil.Rocks.csproj2
-rw-r--r--rocks/Test/Mono.Cecil.Rocks.Tests.csproj2
2 files changed, 2 insertions, 2 deletions
diff --git a/rocks/Mono.Cecil.Rocks.csproj b/rocks/Mono.Cecil.Rocks.csproj
index 1fda5b0..79d3a49 100644
--- a/rocks/Mono.Cecil.Rocks.csproj
+++ b/rocks/Mono.Cecil.Rocks.csproj
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\Mono.Cecil.settings" />
<PropertyGroup>
<ProjectGuid>{FBC6DD59-D09D-499C-B03C-99C1C78FF2AC}</ProjectGuid>
<RootNamespace>Mono.Cecil.Rocks</RootNamespace>
@@ -25,5 +24,6 @@
<Name>Mono.Cecil</Name>
</ProjectReference>
</ItemGroup>
+ <Import Project="..\Mono.Cecil.settings" />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> \ No newline at end of file
diff --git a/rocks/Test/Mono.Cecil.Rocks.Tests.csproj b/rocks/Test/Mono.Cecil.Rocks.Tests.csproj
index 4c85ca7..bd03aa2 100644
--- a/rocks/Test/Mono.Cecil.Rocks.Tests.csproj
+++ b/rocks/Test/Mono.Cecil.Rocks.Tests.csproj
@@ -1,6 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\..\Mono.Cecil.Tests.settings" />
<PropertyGroup>
<ProjectGuid>{C6CFD7E1-B855-44DC-B4CE-9CD72984AF52}</ProjectGuid>
<RootNamespace>Mono.Cecil.Rocks.Tests</RootNamespace>
@@ -32,5 +31,6 @@
<Content Include="Resources\assemblies\decsec-att.dll" />
<Content Include="Resources\assemblies\decsec-xml.dll" />
</ItemGroup>
+ <Import Project="..\..\Mono.Cecil.Tests.settings" />
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project> \ No newline at end of file