aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/test/wix/TestData/WixprojPackageVcxprojWindowsApp/WixprojPackageVcxprojWindowsApp.wixproj5
-rw-r--r--src/test/wix/WixE2E/WixE2EFixture.cs8
-rw-r--r--src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj1
-rw-r--r--src/wix/WixToolset.Sdk/tools/WixToolset.Signing.props102
-rw-r--r--src/wix/WixToolset.Sdk/tools/WixToolset.Signing.targets96
-rw-r--r--src/wix/WixToolset.Sdk/tools/wix.props2
-rw-r--r--src/wix/WixToolset.Sdk/tools/wix.targets6
7 files changed, 122 insertions, 98 deletions
diff --git a/src/test/wix/TestData/WixprojPackageVcxprojWindowsApp/WixprojPackageVcxprojWindowsApp.wixproj b/src/test/wix/TestData/WixprojPackageVcxprojWindowsApp/WixprojPackageVcxprojWindowsApp.wixproj
index 63caf5c0..27affb11 100644
--- a/src/test/wix/TestData/WixprojPackageVcxprojWindowsApp/WixprojPackageVcxprojWindowsApp.wixproj
+++ b/src/test/wix/TestData/WixprojPackageVcxprojWindowsApp/WixprojPackageVcxprojWindowsApp.wixproj
@@ -3,6 +3,7 @@
3<Project Sdk='WixToolset.Sdk'> 3<Project Sdk='WixToolset.Sdk'>
4 <PropertyGroup> 4 <PropertyGroup>
5 <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally> 5 <ManagePackageVersionsCentrally>true</ManagePackageVersionsCentrally>
6 <SignOutput>true</SignOutput>
6 </PropertyGroup> 7 </PropertyGroup>
7 8
8 <ItemGroup> 9 <ItemGroup>
@@ -12,4 +13,8 @@
12 13
13 <PackageReference Include="Wixtoolset.UI.wixext" /> 14 <PackageReference Include="Wixtoolset.UI.wixext" />
14 </ItemGroup> 15 </ItemGroup>
16
17 <Target Name="SignMsi">
18 <Warning Text="SignMsi = @(SignMsi)" />
19 </Target>
15</Project> 20</Project>
diff --git a/src/test/wix/WixE2E/WixE2EFixture.cs b/src/test/wix/WixE2E/WixE2EFixture.cs
index f9094fb2..4a0b78d8 100644
--- a/src/test/wix/WixE2E/WixE2EFixture.cs
+++ b/src/test/wix/WixE2E/WixE2EFixture.cs
@@ -55,6 +55,14 @@ namespace WixE2E
55 55
56 var result = RestoreAndBuild(projectPath); 56 var result = RestoreAndBuild(projectPath);
57 result.AssertSuccess(); 57 result.AssertSuccess();
58
59 var signingStatement = result.Output.Where(s => s.Contains("warning :"))
60 .Select(s => s.Replace(Path.GetDirectoryName(projectPath), "<projectFolder>").Replace(@"\Debug\", @"\<configuration>\").Replace(@"\Release\", @"\<configuration>\"))
61 .ToArray();
62 WixAssert.CompareLineByLine(new[]
63 {
64 @"<projectFolder>\WixprojPackageVcxprojWindowsApp.wixproj(18,5): warning : SignMsi = obj\<configuration>\en-US\WixprojPackageVcxprojWindowsApp.msi;obj\<configuration>\ja-JP\WixprojPackageVcxprojWindowsApp.msi"
65 }, signingStatement);
58 } 66 }
59 67
60 [Fact] 68 [Fact]
diff --git a/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj b/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
index 4a5e6229..eca65bda 100644
--- a/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
+++ b/src/wix/WixToolset.Sdk/WixToolset.Sdk.csproj
@@ -13,6 +13,7 @@
13 <ItemGroup> 13 <ItemGroup>
14 <Content Include="build\$(MSBuildThisFileName).props" CopyToOutputDirectory="PreserveNewest" /> 14 <Content Include="build\$(MSBuildThisFileName).props" CopyToOutputDirectory="PreserveNewest" />
15 <Content Include="build\$(MSBuildThisFileName).targets" CopyToOutputDirectory="PreserveNewest" /> 15 <Content Include="build\$(MSBuildThisFileName).targets" CopyToOutputDirectory="PreserveNewest" />
16 <Content Include="tools\WixToolset.Signing.props" CopyToOutputDirectory="PreserveNewest" />
16 <Content Include="tools\WixToolset.Signing.targets" CopyToOutputDirectory="PreserveNewest" /> 17 <Content Include="tools\WixToolset.Signing.targets" CopyToOutputDirectory="PreserveNewest" />
17 <Content Include="tools\wix.props" CopyToOutputDirectory="PreserveNewest" /> 18 <Content Include="tools\wix.props" CopyToOutputDirectory="PreserveNewest" />
18 <Content Include="tools\wix.targets" CopyToOutputDirectory="PreserveNewest" /> 19 <Content Include="tools\wix.targets" CopyToOutputDirectory="PreserveNewest" />
diff --git a/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.props b/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.props
new file mode 100644
index 00000000..0b2522c8
--- /dev/null
+++ b/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.props
@@ -0,0 +1,102 @@
1<?xml version="1.0" encoding="utf-8"?>
2<!-- Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. -->
3
4<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5 <PropertyGroup>
6 <WixSigningPropsImported>true</WixSigningPropsImported>
7 </PropertyGroup>
8
9 <!--
10 ==================================================================================================
11 BeforeSigning
12
13 Redefine this target in your project in order to run tasks just before all signing tasks.
14 ==================================================================================================
15 -->
16 <Target Name="BeforeSigning" />
17
18 <!--
19 ==================================================================================================
20 SignMsm
21
22 Redefine this target in your project in order to sign merge modules.
23
24 [IN]
25 @(SignMsm) - merge module files to sign.
26 ==================================================================================================
27 -->
28 <Target Name="SignMsm" />
29
30 <!--
31 ==================================================================================================
32 SignCabs
33
34 Redefine this target in your project in order to sign the cabs of your database.
35
36 [IN]
37 @(SignCabs) - cabinet files to sign.
38 ==================================================================================================
39 -->
40 <Target Name="SignCabs" />
41
42 <!--
43 ==================================================================================================
44 SignMsi
45
46 Redefine this target in your project in order to sign your database, after it has been inscribed
47 with the signatures of your signed cabs.
48
49 [IN]
50 @(SignMsi) - database files to sign.
51 ==================================================================================================
52 -->
53 <Target Name="SignMsi" />
54
55 <!--
56 ==================================================================================================
57 SignContainers
58
59 Redefine this target in your project in order to sign your bundle's detached containers.
60
61 [IN]
62 @(SignContainers) - detached container files to sign.
63 ==================================================================================================
64 -->
65 <Target Name="SignContainers" />
66
67 <!--
68 ==================================================================================================
69 SignBundleEngine
70
71 Redefine this target in your project in order to sign your bundle, after it has been inscribed
72 with the signatures of your signed containers.
73
74 [IN]
75 @(SignBundleEngine) - bundle engine file to sign.
76 ==================================================================================================
77 -->
78 <Target Name="SignBundleEngine" />
79
80 <!--
81 ==================================================================================================
82 SignBundle
83
84 Redefine this target in your project in order to sign your bundle, after the attached container
85 is reattached.
86
87 [IN]
88 @(SignBundle) - bundle file to sign.
89 ==================================================================================================
90 -->
91 <Target Name="SignBundle" />
92
93 <!--
94 ==================================================================================================
95 AfterSigning
96
97 Redefine this target in your project in order to run tasks just after all signing tasks.
98 ==================================================================================================
99 -->
100 <Target Name="AfterSigning" />
101
102</Project>
diff --git a/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.targets b/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.targets
index 8b850fd7..c414bcf1 100644
--- a/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.targets
+++ b/src/wix/WixToolset.Sdk/tools/WixToolset.Signing.targets
@@ -3,10 +3,13 @@
3 3
4<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 4<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5 <PropertyGroup> 5 <PropertyGroup>
6 <WixSigningTargetsImported>true</WixSigningTargetsImported>
6 <SignedFileName Condition=" '$(SignedFileName)' == '' ">$(MSBuildProjectFile).Signed.txt</SignedFileName> 7 <SignedFileName Condition=" '$(SignedFileName)' == '' ">$(MSBuildProjectFile).Signed.txt</SignedFileName>
7 <SignedFilePath>$(IntermediateOutputPath)$(SignedFileName)</SignedFilePath> 8 <SignedFilePath>$(IntermediateOutputPath)$(SignedFileName)</SignedFilePath>
8 </PropertyGroup> 9 </PropertyGroup>
9 10
11 <Import Project="WixToolset.Signing.props" Condition=" '$(WixSigningPropsImported)' != 'true' " />
12
10 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' == '' " AssemblyFile="$(WixTasksPath)" /> 13 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' == '' " AssemblyFile="$(WixTasksPath)" />
11 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' != '' " AssemblyFile="$(WixTasksPath)" Architecture="x86" /> 14 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' != '' " AssemblyFile="$(WixTasksPath)" Architecture="x86" />
12 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' != '' " AssemblyFile="$(WixTasksPath64)" Architecture="x64" /> 15 <UsingTask TaskName="GetCabList" Condition=" '$(WixTasksPath64)' != '' " AssemblyFile="$(WixTasksPath64)" Architecture="x64" />
@@ -309,97 +312,4 @@
309 </ReattachSignedBundleEngine> 312 </ReattachSignedBundleEngine>
310 </Target> 313 </Target>
311 314
312 <!--
313 ==================================================================================================
314 BeforeSigning
315
316 Redefine this target in your project in order to run tasks just before all signing tasks.
317 ==================================================================================================
318 -->
319 <Target Name="BeforeSigning" />
320
321 <!--
322 ==================================================================================================
323 SignMsm
324
325 Redefine this target in your project in order to sign merge modules.
326
327 [IN]
328 @(SignMsm) - merge module files to sign.
329 ==================================================================================================
330 -->
331 <Target Name="SignMsm" />
332
333 <!--
334 ==================================================================================================
335 SignCabs
336
337 Redefine this target in your project in order to sign the cabs of your database.
338
339 [IN]
340 @(SignCabs) - cabinet files to sign.
341 ==================================================================================================
342 -->
343 <Target Name="SignCabs" />
344
345 <!--
346 ==================================================================================================
347 SignMsi
348
349 Redefine this target in your project in order to sign your database, after it has been inscribed
350 with the signatures of your signed cabs.
351
352 [IN]
353 @(SignMsi) - database files to sign.
354 ==================================================================================================
355 -->
356 <Target Name="SignMsi" />
357
358 <!--
359 ==================================================================================================
360 SignContainers
361
362 Redefine this target in your project in order to sign your bundle's detached containers.
363
364 [IN]
365 @(SignContainers) - detached container files to sign.
366 ==================================================================================================
367 -->
368 <Target Name="SignContainers" />
369
370 <!--
371 ==================================================================================================
372 SignBundleEngine
373
374 Redefine this target in your project in order to sign your bundle, after it has been inscribed
375 with the signatures of your signed containers.
376
377 [IN]
378 @(SignBundleEngine) - bundle engine file to sign.
379 ==================================================================================================
380 -->
381 <Target Name="SignBundleEngine" />
382
383 <!--
384 ==================================================================================================
385 SignBundle
386
387 Redefine this target in your project in order to sign your bundle, after the attached container
388 is reattached.
389
390 [IN]
391 @(SignBundle) - bundle file to sign.
392 ==================================================================================================
393 -->
394 <Target Name="SignBundle" />
395
396 <!--
397 ==================================================================================================
398 AfterSigning
399
400 Redefine this target in your project in order to run tasks just after all signing tasks.
401 ==================================================================================================
402 -->
403 <Target Name="AfterSigning" />
404
405</Project> 315</Project>
diff --git a/src/wix/WixToolset.Sdk/tools/wix.props b/src/wix/WixToolset.Sdk/tools/wix.props
index d3c202bf..c526d865 100644
--- a/src/wix/WixToolset.Sdk/tools/wix.props
+++ b/src/wix/WixToolset.Sdk/tools/wix.props
@@ -19,6 +19,8 @@
19 19
20 <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" /> 20 <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
21 21
22 <Import Project="WixToolset.Signing.props" Condition=" '$(WixSigningPropsImported)' != 'true' " />
23
22 <PropertyGroup> 24 <PropertyGroup>
23 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 25 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
24 </PropertyGroup> 26 </PropertyGroup>
diff --git a/src/wix/WixToolset.Sdk/tools/wix.targets b/src/wix/WixToolset.Sdk/tools/wix.targets
index e18eaf62..a4603c47 100644
--- a/src/wix/WixToolset.Sdk/tools/wix.targets
+++ b/src/wix/WixToolset.Sdk/tools/wix.targets
@@ -31,10 +31,6 @@
31 <WixTasksPath Condition=" '$(WixTasksPath)' == '' ">$(WixBinDir)WixToolset.BuildTasks.dll</WixTasksPath> 31 <WixTasksPath Condition=" '$(WixTasksPath)' == '' ">$(WixBinDir)WixToolset.BuildTasks.dll</WixTasksPath>
32 </PropertyGroup> 32 </PropertyGroup>
33 33
34 <PropertyGroup>
35 <WixSigningTargetsPath Condition=" '$(WixSigningTargetsPath)' == '' ">$(MSBuildThisFileDirectory)WixToolset.Signing.targets</WixSigningTargetsPath>
36 </PropertyGroup>
37
38 <ItemGroup Condition=" '$(EnableDefaultItems)' == 'true' "> 34 <ItemGroup Condition=" '$(EnableDefaultItems)' == 'true' ">
39 <Compile Include="**/*.wxs" Exclude="$(DefaultItemExcludes);$(DefaultExcludesInProjectFolder)" Condition=" '$(EnableDefaultCompileItems)' == 'true' " /> 35 <Compile Include="**/*.wxs" Exclude="$(DefaultItemExcludes);$(DefaultExcludesInProjectFolder)" Condition=" '$(EnableDefaultCompileItems)' == 'true' " />
40 <EmbeddedResource Include="**/*.wxl" Exclude="$(DefaultItemExcludes);$(DefaultExcludesInProjectFolder)" Condition=" '$(EnableDefaultEmbeddedResourceItems)' == 'true' " /> 36 <EmbeddedResource Include="**/*.wxl" Exclude="$(DefaultItemExcludes);$(DefaultExcludesInProjectFolder)" Condition=" '$(EnableDefaultEmbeddedResourceItems)' == 'true' " />
@@ -937,7 +933,7 @@
937 </Copy> 933 </Copy>
938 </Target> 934 </Target>
939 935
940 <Import Project="$(WixSigningTargetsPath)" /> 936 <Import Project="WixToolset.Signing.targets" Condition=" '$(WixSigningTargetsImported)' != 'true' " />
941 937
942 <!-- Extension point: Define CustomAfterWixTargets to a .targets file that you want to include after this file. --> 938 <!-- Extension point: Define CustomAfterWixTargets to a .targets file that you want to include after this file. -->
943 <Import Project="$(CustomAfterWixTargets)" Condition=" '$(CustomAfterWixTargets)' != '' and Exists('$(CustomAfterWixTargets)')" /> 939 <Import Project="$(CustomAfterWixTargets)" Condition=" '$(CustomAfterWixTargets)' != '' and Exists('$(CustomAfterWixTargets)')" />