Update to latest build infrastructure
Rob Mensching committed
Apr 22, 2021 at 06:31 UTC
f39e7a3e164d0736e45049e5726d0da2013da3c9
10 files changed
+154
-70
.gitignore
+32
-11
@@ -13,6 +13,9 @@
13
# User-specific files (MonoDevelop/Xamarin Studio)
14
*.userprefs
15
16
+# Mono auto generated files
17
+mono_crash.*
18
+
19
# Build results
20
[Dd]ebug/
21
[Dd]ebugPublic/
@@ -20,12 +23,14 @@
23
[Rr]eleases/
24
x64/
25
x86/
26
+[Ww][Ii][Nn]32/
27
[Aa][Rr][Mm]/
28
[Aa][Rr][Mm]64/
29
bld/
30
[Bb]in/
31
[Oo]bj/
32
[Ll]og/
33
+[Ll]ogs/
34
35
# Visual Studio 2015/2017 cache/options directory
36
.vs/
@@ -39,9 +44,10 @@ Generated\ Files/
44
[Tt]est[Rr]esult*/
45
[Bb]uild[Ll]og.*
46
42
-# NUNIT
47
+# NUnit
48
*.VisualState.xml
49
TestResult.xml
50
+nunit-*.xml
51
52
# Build Results of an ATL Project
53
[Dd]ebugPS/
@@ -56,6 +62,9 @@ project.lock.json
62
project.fragment.lock.json
63
artifacts/
64
65
+# ASP.NET Scaffolding
66
+ScaffoldingReadMe.txt
67
+
68
# StyleCop
69
StyleCopReport.xml
70
@@ -122,9 +131,6 @@ _ReSharper*/
131
*.[Rr]e[Ss]harper
132
*.DotSettings.user
133
125
-# JustCode is a .NET coding add-in
126
-.JustCode
127
-
134
# TeamCity is a build add-in
135
_TeamCity*
136
@@ -135,6 +141,11 @@ _TeamCity*
141
.axoCover/*
142
!.axoCover/settings.json
143
144
+# Coverlet is a free, cross platform Code Coverage Tool
145
+coverage*.json
146
+coverage*.xml
147
+coverage*.info
148
+
149
# Visual Studio code coverage results
150
*.coverage
151
*.coveragexml
@@ -182,6 +193,8 @@ PublishScripts/
193
194
# NuGet Packages
195
*.nupkg
196
+# NuGet Symbol Packages
197
+*.snupkg
198
# The packages folder can be ignored because of Package Restore
199
**/[Pp]ackages/*
200
# except build/, which is used as an MSBuild target.
@@ -206,6 +219,8 @@ BundleArtifacts/
219
Package.StoreAssociation.xml
220
_pkginfo.txt
221
*.appx
222
+*.appxbundle
223
+*.appxupload
224
225
# Visual Studio cache files
226
# files ending in .cache can be ignored
@@ -231,8 +246,6 @@ orleans.codegen.cs
246
# Since there are multiple workflows, uncomment next line to ignore bower_components
247
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
248
#bower_components/
234
-# ASP.NET Core default setup: bower directory is configured as wwwroot/lib/ and bower restore is true
235
-**/wwwroot/lib/
249
250
# RIA/Silverlight projects
251
Generated_Code/
@@ -257,6 +270,9 @@ ServiceFabricBackup/
270
*.bim.layout
271
*.bim_*.settings
272
*.rptproj.rsuser
273
+*- [Bb]ackup.rdl
274
+*- [Bb]ackup ([0-9]).rdl
275
+*- [Bb]ackup ([0-9][0-9]).rdl
276
277
# Microsoft Fakes
278
FakesAssemblies/
@@ -292,10 +308,6 @@ paket-files/
308
# FAKE - F# Make
309
.fake/
310
295
-# JetBrains Rider
296
-.idea/
297
-*.sln.iml
298
-
311
# CodeRush personal settings
312
.cr/personal
313
@@ -337,5 +349,14 @@ ASALocalRun/
349
# Local History for Visual Studio
350
.localhistory/
351
340
-# BeatPulse healthcheck temp database
352
+# BeatPulse healthcheck temp database
353
healthchecksdb
354
+
355
+# Backup folder for Package Reference Convert tool in Visual Studio 2017
356
+MigrationBackup/
357
+
358
+# Ionide (cross platform F# VS Code tools) working folder
359
+.ionide/
360
+
361
+# Fody - auto-generated XML schema
362
+FodyWeavers.xsd
\ No newline at end of file
appveyor.cmd
+12
-10
@@ -1,22 +1,24 @@
1
@setlocal
2
@pushd %~dp0
3
+@set _C=Release
4
+@if /i "%1"=="debug" set _C=Debug
5
6
nuget restore || exit /b
7
6
-msbuild -t:Test -p:Configuration=Release src\test\DUtilUnitTest || exit /b
8
+msbuild -t:Test -p:Configuration=%_C% src\test\DUtilUnitTest || exit /b
9
8
-msbuild -p:Configuration=Release;Platform=x86;PlatformToolset=v140 || exit /b
9
-msbuild -p:Configuration=Release;Platform=x64;PlatformToolset=v140 || exit /b
10
+msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v140 || exit /b
11
+msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v140 || exit /b
12
11
-msbuild -p:Configuration=Release;Platform=x86;PlatformToolset=v141 || exit /b
12
-msbuild -p:Configuration=Release;Platform=x64;PlatformToolset=v141 || exit /b
13
-msbuild -p:Configuration=Release;Platform=ARM64;PlatformToolset=v141 || exit /b
13
+msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v141 || exit /b
14
+msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v141 || exit /b
15
+msbuild -p:Configuration=%_C%;Platform=ARM64;PlatformToolset=v141 || exit /b
16
15
-msbuild -p:Configuration=Release;Platform=x86;PlatformToolset=v142 || exit /b
16
-msbuild -p:Configuration=Release;Platform=x64;PlatformToolset=v142 || exit /b
17
-msbuild -p:Configuration=Release;Platform=ARM64;PlatformToolset=v142 || exit /b
17
+msbuild -p:Configuration=%_C%;Platform=x86;PlatformToolset=v142 || exit /b
18
+msbuild -p:Configuration=%_C%;Platform=x64;PlatformToolset=v142 || exit /b
19
+msbuild -p:Configuration=%_C%;Platform=ARM64;PlatformToolset=v142 || exit /b
20
19
-msbuild -p:Configuration=Release -t:PackNativeNuget src\dutil\dutil.vcxproj || exit /b
21
+msbuild -p:Configuration=%_C% -t:PackNative src\dutil\dutil.vcxproj || exit /b
22
23
@popd
24
@endlocal
\ No newline at end of file
signing.json
new
+13
@@ -0,0 +1,13 @@
1
+{
2
+ "SignClient": {
3
+ "AzureAd": {
4
+ "AADInstance": "https://login.microsoftonline.com/",
5
+ "ClientId": "c248d68a-ba6f-4aa9-8a68-71fe872063f8",
6
+ "TenantId": "16076fdc-fcc1-4a15-b1ca-32c9a255900e"
7
+ },
8
+ "Service": {
9
+ "Url": "https://codesign.dotnetfoundation.org/",
10
+ "ResourceId": "https://SignService/3c30251f-36f3-490b-a955-520addb85001"
11
+ }
12
+ }
13
+}
src/Directory.Build.props
+1
-1
@@ -21,6 +21,6 @@
21
<Product>WiX Toolset</Product>
22
</PropertyGroup>
23
24
- <Import Project="Cpp.Build.props" Condition=" '$(MSBuildProjectExtension)'=='.vcxproj' " />
24
+ <Import Project="Directory$(MSBuildProjectExtension).props" Condition=" Exists('Directory$(MSBuildProjectExtension).props') " />
25
<Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " />
26
</Project>
src/Directory.Build.targets
+56
-31
@@ -4,45 +4,70 @@
4
Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets
5
then update all of the repos.
6
-->
7
-<!--
8
- Replace PackageReferences with ProjectReferences when the projects can be found in .sln.
9
- See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284
10
--->
7
<Project>
8
<PropertyGroup>
13
- <ReplacePackageReferences>true</ReplacePackageReferences>
14
- <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath>
15
- <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath>
9
+ <SigningToolFolder>$(BaseOutputPath)obj\.tools</SigningToolFolder>
10
+ <SigningToolExe>$(SigningToolFolder)\SignClient.exe</SigningToolExe>
11
+ <SigningFilelist>$(SigningToolFolder)\empty-filelist.txt</SigningFilelist>
12
+ <SigningConfiguration>$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), signing.json))\signing.json</SigningConfiguration>
13
+ </PropertyGroup>
14
+
15
+ <PropertyGroup>
16
+ <CreateDocumentation Condition=" '$(CreateDocumentationFile)'!='true' ">false</CreateDocumentation>
17
+ <DocumentationFile Condition=" '$(CreateDocumentationFile)'=='true' ">$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
18
</PropertyGroup>
19
18
- <Choose>
19
- <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')">
20
+ <Target Name="SetNuspecProperties" DependsOnTargets="InitializeSourceControlInformation" AfterTargets="GetBuildVersion"
21
+ Condition=" Exists('$(MSBuildProjectName).nuspec') ">
22
+ <PropertyGroup>
23
+ <ProjectUrl Condition=" '$(ProjectUrl)'=='' and '$(PrivateRepositoryUrl)'!='' ">$(PrivateRepositoryUrl.Replace('.git',''))</ProjectUrl>
24
+
25
+ <NuspecFile>$(MSBuildProjectName).nuspec</NuspecFile>
26
+ <NuspecBasePath Condition=" '$(NuspecBasePath)'=='' ">$(MSBuildProjectDirectory)</NuspecBasePath>
27
+ <NuspecProperties>$(NuspecProperties);Id=$(PackageId);Authors="$(Authors)";Configuration=$(Configuration);Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"</NuspecProperties>
28
+ <NuspecProperties>$(NuspecProperties);Version=$(NPMPackageVersion);RepositoryCommit=$(SourceRevisionId);RepositoryType=$(RepositoryType);RepositoryUrl=$(PrivateRepositoryUrl);ProjectFolder=$(MSBuildProjectDirectory)\;ProjectUrl=$(ProjectUrl)</NuspecProperties>
29
+ <PublishRepositoryUrl>true</PublishRepositoryUrl>
30
+ <SymbolPackageFormat>snupkg</SymbolPackageFormat>
31
+ </PropertyGroup>
32
+ </Target>
33
+
34
+ <Target Name="PackNative" DependsOnTargets="GetBuildVersion;SetNuspecProperties"
35
+ Condition=" Exists('$(MSBuildProjectName).nuspec') ">
36
+
37
+ <Exec Command='nuget pack $(NuspecFile) -OutputDirectory "$(BaseOutputPath)$(Configuration)" -BasePath "$(NuspecBasePath)" -Properties $(NuspecProperties)'
38
+ WorkingDirectory="$(MSBuildProjectDirectory)" />
39
+
40
+ <ItemGroup>
41
+ <NuGetPackOutput Include="$(BaseOutputPath)$(Configuration)\**\$(PackageId)*.nupkg" />
42
+ </ItemGroup>
43
+ </Target>
44
+
45
+ <Target Name="_GetSignClient"
46
+ Condition=" !Exists('$(SigningToolExe)') ">
47
+
48
+ <WriteLinesToFile File='$(SigningFilelist)' Lines='do-not-sign-files-in-nupkg' Overwrite='true' />
49
21
- <PropertyGroup>
22
- <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent>
23
- <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir>
24
- <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern>
25
- </PropertyGroup>
50
+ <Exec Command='dotnet.exe tool install --tool-path "$(SigningToolFolder)" SignClient' />
51
+ </Target>
52
27
- <ItemGroup>
28
- <!-- Keep the identity of the PackageReference -->
29
- <SmartPackageReference Include="@(PackageReference)">
30
- <PackageName>%(Identity)</PackageName>
31
- <InSolution>$(SolutionFileContent.Contains('\%(Identity).csproj'))</InSolution>
32
- </SmartPackageReference>
53
+ <Target Name="SignOutput" DependsOnTargets="_GetSignClient" AfterTargets="AfterBuild"
54
+ Condition=" '$(SigningUser)'!='' and '$(SignOutput)'!='false' and
55
+ ('$(MSBuildProjectExtension)'=='.csproj' or ('$(MSBuildProjectExtension)'=='.vcxproj' and '$(ConfigurationType)'!='StaticLibrary'))">
56
34
- <!-- Filter them by mapping them to another ItemGroup using the WithMetadataValue item function -->
35
- <PackageInSolution Include="@(SmartPackageReference->WithMetadataValue('InSolution', True))">
36
- <Pattern>$(RegexPattern.Replace('[PackageName]','%(PackageName)') )</Pattern>
37
- <SmartPath>$([System.Text.RegularExpressions.Regex]::Match('$(SolutionFileContent)', '%(Pattern)'))</SmartPath>
38
- </PackageInSolution>
57
+ <Exec Command='"$(SigningToolExe)" sign -i $(TargetPath) -c "$(SigningConfiguration)" -n "WiX Toolset" -d "WiX Toolset" -u https://wixtoolset.org/ -r "$(SigningUser)" -s "$(SigningSecret)"'
58
+ WorkingDirectory="$(MSBuildProjectDirectory)" EchoOff="true" />
59
+ </Target>
60
40
- <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/>
61
+ <Target Name="SignNupkg" DependsOnTargets="_GetSignClient" AfterTargets="Pack;PackNative"
62
+ Condition=" '$(SigningUser)'!='' and '@(NuGetPackOutput)'!='' and '$(SignNupkg)'!='false' ">
63
+ <ItemGroup>
64
+ <SigningNupkgs Include="@(NuGetPackOutput)" Condition=" '%(Extension)'=='.nupkg' " />
65
+ </ItemGroup>
66
42
- <!-- Remove the package references that are now referenced as projects -->
43
- <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/>
44
- </ItemGroup>
67
+ <Exec Command='"$(SigningToolExe)" sign -i "@(SigningNupkgs->'%(Identity)')" -c "$(SigningConfiguration)" -f "$(SigningFilelist)" -n "WiX Toolset" -d "WiX Toolset" -u https://wixtoolset.org/ -r "$(SigningUser)" -s "$(SigningSecret)"'
68
+ WorkingDirectory="$(MSBuildProjectDirectory)" EchoOff="true" />
69
+ </Target>
70
46
- </When>
47
- </Choose>
71
+ <Import Project="Directory$(MSBuildProjectExtension).targets" Condition=" Exists('Directory$(MSBuildProjectExtension).targets') " />
72
+ <Import Project="Custom.Build.targets" Condition=" Exists('Custom.Build.targets') " />
73
</Project>
src/Directory.csproj.props
new
+13
@@ -0,0 +1,13 @@
1
+<!-- 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. -->
2
+<!--
3
+ Do NOT modify this file. Update the canonical version in Home\repo-template\src\CSharp.Build.props
4
+ then update all of the repos.
5
+-->
6
+<Project>
7
+ <PropertyGroup>
8
+ <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
9
+ <SignAssembly>true</SignAssembly>
10
+ <AssemblyOriginatorKeyFile>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)wix.snk))</AssemblyOriginatorKeyFile>
11
+ <NBGV_EmitThisAssemblyClass>false</NBGV_EmitThisAssemblyClass>
12
+ </PropertyGroup>
13
+</Project>
src/Directory.vcxproj.props
renamed
+8
-1
@@ -6,6 +6,13 @@
6
<Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform>
7
<IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir>
8
<OutDir>$(OutputPath)$(Platform)\</OutDir>
9
+
10
+ <!-- NBGV properties -->
11
+ <AssemblyCompany>$(Company)</AssemblyCompany>
12
+ <AssemblyCopyright>$(Copyright)</AssemblyCopyright>
13
+
14
+ <RuntimeIdentifiers>win-x86;win-x64;win-arm64</RuntimeIdentifiers>
15
+ <NuGetTargetMoniker>native,Version=v0.0</NuGetTargetMoniker>
16
</PropertyGroup>
17
18
<PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'>='15.0'">
@@ -13,7 +20,7 @@
20
</PropertyGroup>
21
22
<PropertyGroup>
16
- <CodeAnalysisRuleSet>$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset</CodeAnalysisRuleSet>
23
+ <CodeAnalysisRuleSet Condition=" Exists('$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset') ">$(MSBuildThisFileDirectory)CustomizedNativeRecommendedRules.ruleset</CodeAnalysisRuleSet>
24
</PropertyGroup>
25
26
<ItemDefinitionGroup>
src/dutil/dutil.vcxproj
+6
-15
@@ -37,15 +37,12 @@
37
<PlatformToolset>v142</PlatformToolset>
38
<CharacterSet>MultiByte</CharacterSet>
39
<Description>WiX Toolset native library foundation</Description>
40
+ <PackageId>WixToolset.DUtil</PackageId>
41
</PropertyGroup>
42
43
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
44
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
45
45
- <ImportGroup Label="Shared">
46
- <Import Project="..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets')" />
47
- </ImportGroup>
48
-
46
<Import Project="..\NativeMultiTargeting.Build.props" />
47
48
<ItemGroup>
@@ -177,16 +174,10 @@
174
<None Include="xsd\thmutil.xsd" />
175
</ItemGroup>
176
180
- <Target Name="PackNativeNuget"
181
- DependsOnTargets="GetBuildVersion">
182
- <Exec Command='nuget pack dutil.nuspec -OutputDirectory "$(BaseOutputPath)$(Configuration)" -Properties Configuration=$(Configuration);Id=WixToolset.DUtil;Version="$(BuildVersionSimple)";Authors="$(Authors)";Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"' />
183
- </Target>
177
+ <ItemGroup>
178
+ <PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0" />
179
+ <PackageReference Include="Nerdbank.GitVersioning" Version="3.3.37" />
180
+ </ItemGroup>
181
182
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
186
- <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
187
- <PropertyGroup>
188
- <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
189
- </PropertyGroup>
190
- <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.3.3.37\build\Nerdbank.GitVersioning.targets'))" />
191
- </Target>
192
-</Project>
\ No newline at end of file
183
+</Project>
src/dutil/packages.config
+3
@@ -1,4 +1,7 @@
1
<?xml version="1.0" encoding="utf-8"?>
2
<packages>
3
+ <package id="Microsoft.Build.Tasks.Git" version="1.0.0" targetFramework="native" developmentDependency="true" />
4
+ <package id="Microsoft.SourceLink.Common" version="1.0.0" targetFramework="native" developmentDependency="true" />
5
+ <package id="Microsoft.SourceLink.GitHub" version="1.0.0" targetFramework="native" developmentDependency="true" />
6
<package id="Nerdbank.GitVersioning" version="3.3.37" targetFramework="native" developmentDependency="true" />
7
</packages>
\ No newline at end of file
src/test/DUtilUnitTest/DUtilUnitTest.vcxproj
+10
-1
@@ -1,7 +1,6 @@
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
-
4
<Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
<Import Project="..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props" Condition="Exists('..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\build\WixBuildTools.TestSupport.Native.props')" />
6
<ItemGroup Label="ProjectConfigurations">
@@ -14,6 +13,7 @@
13
<Platform>Win32</Platform>
14
</ProjectConfiguration>
15
</ItemGroup>
16
+
17
<PropertyGroup Label="Globals">
18
<ProjectTypes>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}</ProjectTypes>
19
<ProjectGuid>{AB7EE608-E5FB-42A5-831F-0DEEEA141223}</ProjectGuid>
@@ -22,13 +22,17 @@
22
<ConfigurationType>DynamicLibrary</ConfigurationType>
23
<CharacterSet>Unicode</CharacterSet>
24
<CLRSupport>true</CLRSupport>
25
+ <SignOutput>false</SignOutput>
26
</PropertyGroup>
27
+
28
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
29
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
30
+
31
<PropertyGroup>
32
<ProjectAdditionalIncludeDirectories>..\..\dutil\inc</ProjectAdditionalIncludeDirectories>
33
<ProjectAdditionalLinkLibraries>rpcrt4.lib;Mpr.lib;Ws2_32.lib;urlmon.lib;wininet.lib</ProjectAdditionalLinkLibraries>
34
</PropertyGroup>
35
+
36
<ItemGroup>
37
<ClCompile Include="ApupUtilTests.cpp" />
38
<ClCompile Include="AssemblyInfo.cpp" />
@@ -52,17 +56,21 @@
56
<ClCompile Include="UriUtilTest.cpp" />
57
<ClCompile Include="VerUtilTests.cpp" />
58
</ItemGroup>
59
+
60
<ItemGroup>
61
<ClInclude Include="precomp.h" />
62
<ClInclude Include="error.h" />
63
</ItemGroup>
64
+
65
<ItemGroup>
66
<None Include="packages.config" />
67
<ResourceCompile Include="UnitTest.rc" />
68
</ItemGroup>
69
+
70
<ItemGroup>
71
<None Include="TestData\ApupUtilTests\FeedBv2.0.xml" CopyToOutputDirectory="PreserveNewest" />
72
</ItemGroup>
73
+
74
<ItemGroup>
75
<Reference Include="System" />
76
<Reference Include="System.Core" />
@@ -73,6 +81,7 @@
81
<HintPath>..\..\..\packages\WixBuildTools.TestSupport.Native.4.0.47\lib\net472\WixBuildTools.TestSupport.Native.dll</HintPath>
82
</Reference>
83
</ItemGroup>
84
+
85
<ItemGroup>
86
<ProjectReference Include="..\..\dutil\dutil.vcxproj">
87
<Project>{1244E671-F108-4334-BA52-8A7517F26ECD}</Project>