Skip to content

Commit e3ad94b

Browse files
Chris Martinezcommonsensesoftware
Chris Martinez
authored andcommitted
Fix code signing for multi-target builds
1 parent f6e135e commit e3ad94b

File tree

2 files changed

+50
-31
lines changed

2 files changed

+50
-31
lines changed

after.apiversioning.sln.targets

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,34 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33

4-
<Import Project="build\signing.targets" />
4+
<Import Project="build\signing.targets" />
55

6-
<Target Name="AfterSolutionBuild" AfterTargets="Build">
6+
<Target Name="AfterSolutionBuild" AfterTargets="Build">
77

8-
<PropertyGroup>
9-
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
10-
<BuildProperties>Configuration=$(Configuration)</BuildProperties>
11-
<BuildProperties Condition=" ('$(Platform)' != '') AND ('$(Platform)' != 'AnyCPU') AND ('$(Platform)' != 'Any CPU') ">$(BuildProperties);Platform=$(Platform)</BuildProperties>
12-
</PropertyGroup>
8+
<PropertyGroup>
9+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
10+
<BuildProperties>Configuration=$(Configuration)</BuildProperties>
11+
<BuildProperties Condition=" ('$(Platform)' != '') AND ('$(Platform)' != 'AnyCPU') AND ('$(Platform)' != 'Any CPU') ">$(BuildProperties);Platform=$(Platform)</BuildProperties>
12+
</PropertyGroup>
1313

14-
<ItemGroup>
15-
<Projects Include="src\**\*.csproj" />
16-
</ItemGroup>
14+
<ItemGroup>
15+
<Projects Include="src\**\*.csproj" />
16+
</ItemGroup>
1717

18-
<MSBuild Projects="@(Projects)" Targets="GetTargetPath" Properties="$(BuildProperties)" UnloadProjectsOnCompletion="true">
19-
<Output TaskParameter="TargetOutputs" ItemName="TargetFiles" />
20-
</MSBuild>
18+
<MSBuild Projects="@(Projects)" Targets="GetTargetPaths" Properties="$(BuildProperties)" UnloadProjectsOnCompletion="true">
19+
<Output TaskParameter="TargetOutputs" ItemName="TargetFiles" />
20+
</MSBuild>
2121

22-
<PropertyGroup>
23-
<!-- transform list to pipe-separated values so we can forward it as a parameter using a build property -->
24-
<SigningProperties>
25-
SourceDir=$(MSBuildThisFileDirectory)\src;
26-
FilesToSign=@(TargetFiles->'%(Identity)','|')
27-
</SigningProperties>
28-
</PropertyGroup>
22+
<PropertyGroup>
23+
<!-- transform list to pipe-separated values so we can forward it as a parameter using a build property -->
24+
<SigningProperties>
25+
SourceDir=$(MSBuildThisFileDirectory)\src;
26+
FilesToSign=@(TargetFiles->'%(Identity)','|')
27+
</SigningProperties>
28+
</PropertyGroup>
2929

30-
<MSBuild Projects ="$(MSBuildThisFileFullPath)" Targets="WriteCodeSigningFileList" Properties="$(SigningProperties)" />
30+
<MSBuild Projects ="$(MSBuildThisFileFullPath)" Targets="WriteCodeSigningFileList" Properties="$(SigningProperties)" />
3131

32-
</Target>
32+
</Target>
3333

3434
</Project>

src/directory.build.targets

Lines changed: 28 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,36 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
33

4-
<PropertyGroup Label="Common">
5-
<GenerateDocumentationFile>true</GenerateDocumentationFile>
6-
<DocumentationFile Condition=" '$(DocumentationFile)' == '' " >bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml</DocumentationFile>
4+
<PropertyGroup Label="Common">
5+
<GenerateDocumentationFile>true</GenerateDocumentationFile>
6+
<DocumentationFile Condition=" '$(DocumentationFile)' == '' " >bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml</DocumentationFile>
7+
</PropertyGroup>
8+
9+
<ImportGroup Condition=" '$(MSBuildProjectExtension)' != '.shproj' ">
10+
<Import Project="..\build\resource.targets" />
11+
<Import Project="..\build\file-version.targets" />
12+
<Import Project="..\build\nuget.targets" />
13+
</ImportGroup>
14+
15+
<Target Name="GetTargetPath" Outputs="$(TargetPath)" />
16+
17+
<Target Name="GetTargetPaths" Outputs="@(TargetFiles)">
18+
19+
<PropertyGroup>
20+
<TargetFrameworks Condition=" '$(TargetFrameworks)' == '' " >$(TargetFramework)</TargetFrameworks>
21+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
22+
<BuildProperties>Configuration=$(Configuration)</BuildProperties>
23+
<BuildProperties Condition=" ('$(Platform)' != '') AND ('$(Platform)' != 'AnyCPU') AND ('$(Platform)' != 'Any CPU') ">$(BuildProperties);Platform=$(Platform)</BuildProperties>
724
</PropertyGroup>
825

9-
<ImportGroup Condition=" '$(MSBuildProjectExtension)' != '.shproj' ">
10-
<Import Project="..\build\resource.targets" />
11-
<Import Project="..\build\file-version.targets" />
12-
<Import Project="..\build\nuget.targets" />
13-
</ImportGroup>
26+
<ItemGroup>
27+
<_TargetFrameworks Include="$(TargetFrameworks.Split(';'))" />
28+
</ItemGroup>
29+
30+
<MSBuild Projects="$(MSBuildProjectFullPath)" Targets="GetTargetPath" Properties="$(BuildProperties);TargetFramework=%(_TargetFrameworks.Identity)" UnloadProjectsOnCompletion="true">
31+
<Output TaskParameter="TargetOutputs" ItemName="TargetFiles" />
32+
</MSBuild>
1433

15-
<Target Name="GetTargetPath" Outputs="$(TargetPath)" />
34+
</Target>
1635

1736
</Project>

0 commit comments

Comments
 (0)