aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.Native/WixToolset.Core.Native.csproj')
-rw-r--r--src/WixToolset.Core.Native/WixToolset.Core.Native.csproj83
1 files changed, 18 insertions, 65 deletions
diff --git a/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj b/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
index 2c118d51..41e75f99 100644
--- a/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
+++ b/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
@@ -5,82 +5,35 @@
5 5
6 <PropertyGroup> 6 <PropertyGroup>
7 <TargetFramework>netstandard2.0</TargetFramework> 7 <TargetFramework>netstandard2.0</TargetFramework>
8 <NuspecFile>$(MSBuildThisFileName).nuspec</NuspecFile>
9 <Description>Core Native</Description>
10 <DebugType>embedded</DebugType> 8 <DebugType>embedded</DebugType>
9 <Description>WiX Toolset Native Processing</Description>
11 <IncludeSymbols>true</IncludeSymbols> 10 <IncludeSymbols>true</IncludeSymbols>
12 <CreateDocumentationFile>true</CreateDocumentationFile> 11 <CreateDocumentationFile>true</CreateDocumentationFile>
13 </PropertyGroup> 12 </PropertyGroup>
14 13
15 <ItemGroup> 14 <ItemGroup Condition=" '$(NCrunch)'=='' ">
16 <ProjectReference Include="..\wixnative\wixnative.vcxproj"> 15 <ProjectReference Include="..\wixnative\wixnative.vcxproj" ReferenceOutputAssembly="false" PrivateAssets="All" Properties="Platform=ARM64" />
17 <PrivateAssets>All</PrivateAssets> 16 <ProjectReference Include="..\wixnative\wixnative.vcxproj" ReferenceOutputAssembly="false" PrivateAssets="All" Properties="Platform=Win32" />
18 <Properties>Platform=ARM64</Properties> 17 <ProjectReference Include="..\wixnative\wixnative.vcxproj" ReferenceOutputAssembly="false" PrivateAssets="All" Properties="Platform=x64" />
19 </ProjectReference> 18 </ItemGroup>
20 <ProjectReference Include="..\wixnative\wixnative.vcxproj"> 19
21 <PrivateAssets>All</PrivateAssets> 20 <ItemGroup Condition=" '$(NCrunch)'=='' ">
22 <Properties>Platform=Win32</Properties> 21 <None Include="$(BaseOutputPath)$(Configuration)\x64\mergemod.dll" CopyToOutputDirectory="PreserveNewest" />
23 </ProjectReference> 22 <None Include="$(BaseOutputPath)$(Configuration)\x64\wixnative.exe" CopyToOutputDirectory="PreserveNewest" />
24 <ProjectReference Include="..\wixnative\wixnative.vcxproj"> 23 <None Include="$(BaseOutputPath)$(Configuration)\x64\wixnative.pdb" CopyToOutputDirectory="PreserveNewest" />
25 <PrivateAssets>All</PrivateAssets> 24 </ItemGroup>
26 <Properties>Platform=x64</Properties> 25 <ItemGroup Condition=" '$(NCrunch)'=='1' ">
27 </ProjectReference> 26 <None Include="$(NCrunchOriginalProjectDir)..\..\build\$(Configuration)\x64\mergemod.dll" CopyToOutputDirectory="PreserveNewest" />
27 <None Include="$(NCrunchOriginalProjectDir)..\..\build\$(Configuration)\x64\wixnative.exe" CopyToOutputDirectory="PreserveNewest" />
28 <None Include="$(NCrunchOriginalProjectDir)..\..\build\$(Configuration)\x64\wixnative.pdb" CopyToOutputDirectory="PreserveNewest" />
28 </ItemGroup> 29 </ItemGroup>
29 30
30 <ItemGroup> 31 <ItemGroup>
31 <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="All" /> 32 <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" />
32 </ItemGroup> 33 </ItemGroup>
33 34
34 <ItemGroup> 35 <ItemGroup>
35 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="All" /> 36 <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" PrivateAssets="all" />
36 <PackageReference Include="Nerdbank.GitVersioning" Version="3.3.37" PrivateAssets="all" /> 37 <PackageReference Include="Nerdbank.GitVersioning" Version="3.3.37" PrivateAssets="all" />
37 </ItemGroup> 38 </ItemGroup>
38
39 <PropertyGroup>
40 <NativeFileListPath Condition=" '$(NCrunch)'=='' ">$(MSBuildProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath>
41 <NativeFileListPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath>
42 <MergeModDirectory>$(MSBuildThisFileDirectory)..\wixnative\</MergeModDirectory>
43 </PropertyGroup>
44
45 <Target Name="BuildWixNative" BeforeTargets="GetCopyToOutputDirectoryItems" Condition=" '$(NCrunch)'=='' ">
46 <ItemGroup>
47 <_NativeProjectOutput Include="$(MergeModDirectory)x64\mergemod.dll" />
48 <_NativeProjectOutput Include="$(OutputPath)..\x64\wixnative.exe" />
49 <_NativeProjectOutput Include="$(OutputPath)..\x64\wixnative.pdb" />
50 </ItemGroup>
51
52 <WriteLinesToFile File="$(NativeFileListPath)" Lines="@(_NativeProjectOutput)" Overwrite="true" />
53
54 <ItemGroup>
55 <FileWrites Include="$(NativeFileListPath)" />
56
57 <AllItemsFullPathWithTargetPath Include="@(_NativeProjectOutput->'%(FullPath)')">
58 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
59 <TargetPath>%(Filename)%(Extension)</TargetPath>
60 </AllItemsFullPathWithTargetPath>
61 </ItemGroup>
62 </Target>
63
64 <Target Name="NCrunchCopyNative" AfterTargets="AfterBuild" Condition=" '$(NCrunch)'=='1' ">
65 <ReadLinesFromFile File="$(NativeFileListPath)">
66 <Output TaskParameter="Lines" ItemName="_NCrunchNativeProjectOutput" />
67 </ReadLinesFromFile>
68
69 <Error Text="You must build $(MSBuildProjectName) to create the referenced native projects. Once built, 'Reload and rebuild' the project in the NCrunch Tests. The $(NativeFileListPath) file must not be empty." Condition=" '@(_NCrunchNativeProjectOutput)'=='' " />
70
71 <Copy SourceFiles="@(_NCrunchNativeProjectOutput)" DestinationFolder="$(OutputPath)" SkipUnchangedFiles="true">
72 <Output TaskParameter="CopiedFiles" ItemName="_NCrunchNativeCopied" />
73 </Copy>
74
75 <ItemGroup>
76 <FileWrites Include="@(_NCrunchNativeCopied)" />
77 </ItemGroup>
78 </Target>
79
80 <Target Name="SetNuspecProperties" AfterTargets="CoreBuild">
81 <PropertyGroup>
82 <NuspecBasePath>$(OutputPath)..\</NuspecBasePath>
83 <NuspecProperties>Id=$(MSBuildThisFileName);Version=$(BuildVersionSimple);Authors=$(Authors);Copyright=$(Copyright);Description=$(Description);RepositoryCommit=$(SourceRevisionId);RepositoryType=$(RepositoryType);RepositoryUrl=$(PrivateRepositoryUrl);MergeModDir=$(MergeModDirectory)</NuspecProperties>
84 </PropertyGroup>
85 </Target>
86</Project> 39</Project>