aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2018-08-10 23:32:23 -0700
committerRob Mensching <rob@firegiant.com>2018-10-03 23:55:54 -0700
commit77b1c956e6037717f98ae01c2ff4e989c0252db8 (patch)
treef3682540cbfbe41780ec123d1d7f7df8674d3270
parent989686d2fdb3b46ed3c411f03ebdcdeeb9f42e15 (diff)
downloadwix-77b1c956e6037717f98ae01c2ff4e989c0252db8.tar.gz
wix-77b1c956e6037717f98ae01c2ff4e989c0252db8.tar.bz2
wix-77b1c956e6037717f98ae01c2ff4e989c0252db8.zip
Enable use of NCrunch
-rw-r--r--.gitignore58
-rw-r--r--src/Cpp.Build.props5
-rw-r--r--src/Directory.Build.props15
-rw-r--r--src/WixToolset.Core.Native/WixToolset.Core.Native.csproj27
-rw-r--r--src/WixToolset.Core.Native/WixToolset.Core.Native.v3.ncrunchproject10
-rw-r--r--src/wixnative/wixnative.vcxproj2
6 files changed, 98 insertions, 19 deletions
diff --git a/.gitignore b/.gitignore
index 3c6208a8..efc59600 100644
--- a/.gitignore
+++ b/.gitignore
@@ -19,16 +19,20 @@
19[Rr]eleases/ 19[Rr]eleases/
20x64/ 20x64/
21x86/ 21x86/
22[Ww]in32/
22bld/ 23bld/
23[Bb]in/ 24[Bb]in/
24[Oo]bj/ 25[Oo]bj/
25[Ll]og/ 26[Ll]og/
26 27
27# Visual Studio 2015 cache/options directory 28# Visual Studio 2015/2017 cache/options directory
28.vs/ 29.vs/
29# Uncomment if you have tasks that create the project's static files in wwwroot 30# Uncomment if you have tasks that create the project's static files in wwwroot
30#wwwroot/ 31#wwwroot/
31 32
33# Visual Studio 2017 auto generated files
34Generated\ Files/
35
32# MSTest test Results 36# MSTest test Results
33[Tt]est[Rr]esult*/ 37[Tt]est[Rr]esult*/
34[Bb]uild[Ll]og.* 38[Bb]uild[Ll]og.*
@@ -49,16 +53,21 @@ BenchmarkDotNet.Artifacts/
49project.lock.json 53project.lock.json
50project.fragment.lock.json 54project.fragment.lock.json
51artifacts/ 55artifacts/
52**/Properties/launchSettings.json
53 56
57# StyleCop
58StyleCopReport.xml
59
60# Files built by Visual Studio
54*_i.c 61*_i.c
55*_p.c 62*_p.c
56*_i.h 63*_h.h
57*.ilk 64*.ilk
58*.meta 65*.meta
59*.obj 66*.obj
67*.iobj
60*.pch 68*.pch
61*.pdb 69*.pdb
70*.ipdb
62*.pgc 71*.pgc
63*.pgd 72*.pgd
64*.rsp 73*.rsp
@@ -96,6 +105,9 @@ ipch/
96*.vspx 105*.vspx
97*.sap 106*.sap
98 107
108# Visual Studio Trace Files
109*.e2e
110
99# TFS 2012 Local Workspace 111# TFS 2012 Local Workspace
100$tf/ 112$tf/
101 113
@@ -116,6 +128,10 @@ _TeamCity*
116# DotCover is a Code Coverage Tool 128# DotCover is a Code Coverage Tool
117*.dotCover 129*.dotCover
118 130
131# AxoCover is a Code Coverage Tool
132.axoCover/*
133!.axoCover/settings.json
134
119# Visual Studio code coverage results 135# Visual Studio code coverage results
120*.coverage 136*.coverage
121*.coveragexml 137*.coveragexml
@@ -164,11 +180,11 @@ PublishScripts/
164# NuGet Packages 180# NuGet Packages
165*.nupkg 181*.nupkg
166# The packages folder can be ignored because of Package Restore 182# The packages folder can be ignored because of Package Restore
167**/packages/* 183**/[Pp]ackages/*
168# except build/, which is used as an MSBuild target. 184# except build/, which is used as an MSBuild target.
169!**/packages/build/ 185!**/[Pp]ackages/build/
170# Uncomment if necessary however generally it will be regenerated when needed 186# Uncomment if necessary however generally it will be regenerated when needed
171#!**/packages/repositories.config 187#!**/[Pp]ackages/repositories.config
172# NuGet v3's project.json files produces more ignorable files 188# NuGet v3's project.json files produces more ignorable files
173*.nuget.props 189*.nuget.props
174*.nuget.targets 190*.nuget.targets
@@ -205,6 +221,10 @@ ClientBin/
205*.publishsettings 221*.publishsettings
206orleans.codegen.cs 222orleans.codegen.cs
207 223
224# Including strong name files can present a security risk
225# (https://github.com/github/gitignore/pull/2483#issue-259490424)
226#*.snk
227
208# Since there are multiple workflows, uncomment next line to ignore bower_components 228# Since there are multiple workflows, uncomment next line to ignore bower_components
209# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) 229# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
210#bower_components/ 230#bower_components/
@@ -219,6 +239,8 @@ _UpgradeReport_Files/
219Backup*/ 239Backup*/
220UpgradeLog*.XML 240UpgradeLog*.XML
221UpgradeLog*.htm 241UpgradeLog*.htm
242ServiceFabricBackup/
243*.rptproj.bak
222 244
223# SQL Server files 245# SQL Server files
224*.mdf 246*.mdf
@@ -229,6 +251,7 @@ UpgradeLog*.htm
229*.rdl.data 251*.rdl.data
230*.bim.layout 252*.bim.layout
231*.bim_*.settings 253*.bim_*.settings
254*.rptproj.rsuser
232 255
233# Microsoft Fakes 256# Microsoft Fakes
234FakesAssemblies/ 257FakesAssemblies/
@@ -240,9 +263,6 @@ FakesAssemblies/
240.ntvs_analysis.dat 263.ntvs_analysis.dat
241node_modules/ 264node_modules/
242 265
243# Typescript v1 declaration files
244typings/
245
246# Visual Studio 6 build log 266# Visual Studio 6 build log
247*.plg 267*.plg
248 268
@@ -292,4 +312,22 @@ __pycache__/
292*.btp.cs 312*.btp.cs
293*.btm.cs 313*.btm.cs
294*.odx.cs 314*.odx.cs
295*.xsd.cs \ No newline at end of file 315*.xsd.cs
316
317# OpenCover UI analysis results
318OpenCover/
319
320# Azure Stream Analytics local run output
321ASALocalRun/
322
323# MSBuild Binary and Structured Log
324*.binlog
325
326# NVidia Nsight GPU debugger configuration file
327*.nvuser
328
329# MFractors (Xamarin productivity tool) working folder
330.mfractor/
331
332# Local History for Visual Studio
333.localhistory/
diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props
index 453aa442..296b36ca 100644
--- a/src/Cpp.Build.props
+++ b/src/Cpp.Build.props
@@ -3,9 +3,8 @@
3 3
4<Project> 4<Project>
5 <PropertyGroup> 5 <PropertyGroup>
6 <Platform Condition=" '$(Platform)' == 'AnyCPU' ">Win32</Platform> 6 <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform>
7 <BaseOutputPath>$(OutputPath)</BaseOutputPath> 7 <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir>
8 <IntDir>$(BaseIntermediateOutputPath)$(Platform)\</IntDir>
9 <OutDir>$(OutputPath)$(Platform)\</OutDir> 8 <OutDir>$(OutputPath)$(Platform)\</OutDir>
10 </PropertyGroup> 9 </PropertyGroup>
11 10
diff --git a/src/Directory.Build.props b/src/Directory.Build.props
index 63ad5d6e..9eacf3f5 100644
--- a/src/Directory.Build.props
+++ b/src/Directory.Build.props
@@ -1,16 +1,23 @@
1<?xml version="1.0" encoding="utf-8"?> 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. --> 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 3<!--
4 Do NOT modify this file. Update the canonical version in Home\src\Directory.Build.props
5 then update all of the repos.
6-->
4<Project> 7<Project>
5 <PropertyGroup> 8 <PropertyGroup>
6 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> 9 <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
7 <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> 10 <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink>
8 <BaseIntermediateOutputPath>$(MSBuildThisFileDirectory)..\build\obj\$(MSBuildProjectName)\</BaseIntermediateOutputPath> 11
9 <OutputPath>$(MSBuildThisFileDirectory)..\build\$(Configuration)\</OutputPath> 12 <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName>
13 <BaseOutputPath>$(MSBuildThisFileDirectory)..\build\</BaseOutputPath>
14 <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath>
15 <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath>
10 16
11 <Authors>WiX Toolset Team</Authors> 17 <Authors>WiX Toolset Team</Authors>
12 <Company>WiX Toolset</Company> 18 <Company>WiX Toolset</Company>
13 <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright> 19 <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright>
20 <Product>WiX Toolset</Product>
14 </PropertyGroup> 21 </PropertyGroup>
15 22
16 <PropertyGroup> 23 <PropertyGroup>
diff --git a/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj b/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
index b02c00ad..e2431fef 100644
--- a/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
+++ b/src/WixToolset.Core.Native/WixToolset.Core.Native.csproj
@@ -13,7 +13,12 @@
13 <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" /> 13 <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
14 </ItemGroup> 14 </ItemGroup>
15 15
16 <Target Name="BuildWixNative" BeforeTargets="GetCopyToOutputDirectoryItems"> 16 <PropertyGroup>
17 <NativeFileListPath Condition=" '$(NCrunch)'=='' ">$(MSBuildProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath>
18 <NativeFileListPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalProjectDir)..\..\build\obj\$(ProjectName)\$(Configuration)\NativeFileList.txt</NativeFileListPath>
19 </PropertyGroup>
20
21 <Target Name="BuildWixNative" BeforeTargets="GetCopyToOutputDirectoryItems" Condition=" '$(NCrunch)'=='' ">
17 <MSBuild Projects="..\wixnative\wixnative.vcxproj" Properties="Platform=Win32" Targets="Build;BuiltProjectOutputGroup;DebugSymbolsProjectOutputGroup"> 22 <MSBuild Projects="..\wixnative\wixnative.vcxproj" Properties="Platform=Win32" Targets="Build;BuiltProjectOutputGroup;DebugSymbolsProjectOutputGroup">
18 <Output TaskParameter="TargetOutputs" ItemName="_NativeProjectOutput" /> 23 <Output TaskParameter="TargetOutputs" ItemName="_NativeProjectOutput" />
19 </MSBuild> 24 </MSBuild>
@@ -21,7 +26,11 @@
21 <Output TaskParameter="TargetOutputs" ItemName="_NativeProjectOutput" /> 26 <Output TaskParameter="TargetOutputs" ItemName="_NativeProjectOutput" />
22 </MSBuild> 27 </MSBuild>
23 28
29 <WriteLinesToFile File="$(NativeFileListPath)" Lines="@(_NativeProjectOutput)" Overwrite="true" />
30
24 <ItemGroup> 31 <ItemGroup>
32 <FileWrites Include="$(NativeFileListPath)" />
33
25 <AllItemsFullPathWithTargetPath Include="@(_NativeProjectOutput->'%(FullPath)')"> 34 <AllItemsFullPathWithTargetPath Include="@(_NativeProjectOutput->'%(FullPath)')">
26 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> 35 <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
27 <TargetPath>%(Filename)%(Extension)</TargetPath> 36 <TargetPath>%(Filename)%(Extension)</TargetPath>
@@ -29,6 +38,22 @@
29 </ItemGroup> 38 </ItemGroup>
30 </Target> 39 </Target>
31 40
41 <Target Name="NCrunchCopyNative" AfterTargets="AfterBuild" Condition=" '$(NCrunch)'=='1' ">
42 <ReadLinesFromFile File="$(NativeFileListPath)">
43 <Output TaskParameter="Lines" ItemName="_NCrunchNativeProjectOutput" />
44 </ReadLinesFromFile>
45
46 <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)'=='' " />
47
48 <Copy SourceFiles="@(_NCrunchNativeProjectOutput)" DestinationFolder="$(OutputPath)" SkipUnchangedFiles="true">
49 <Output TaskParameter="CopiedFiles" ItemName="_NCrunchNativeCopied" />
50 </Copy>
51
52 <ItemGroup>
53 <FileWrites Include="@(_NCrunchNativeCopied)" />
54 </ItemGroup>
55 </Target>
56
32 <Target Name="SetNuspecProperties" AfterTargets="CoreBuild"> 57 <Target Name="SetNuspecProperties" AfterTargets="CoreBuild">
33 <PropertyGroup> 58 <PropertyGroup>
34 <NuspecBasePath>$(OutputPath)</NuspecBasePath> 59 <NuspecBasePath>$(OutputPath)</NuspecBasePath>
diff --git a/src/WixToolset.Core.Native/WixToolset.Core.Native.v3.ncrunchproject b/src/WixToolset.Core.Native/WixToolset.Core.Native.v3.ncrunchproject
new file mode 100644
index 00000000..0da1f42d
--- /dev/null
+++ b/src/WixToolset.Core.Native/WixToolset.Core.Native.v3.ncrunchproject
@@ -0,0 +1,10 @@
1<ProjectConfiguration>
2 <Settings>
3 <AdditionalFilesToIncludeForProject>
4 <Value>..\..\build\Debug\Win32\wixnative.x86.exe</Value>
5 <Value>..\..\build\Debug\Win32\wixnative.x86.pdb</Value>
6 <Value>..\..\build\Debug\x64\wixnative.amd64.exe</Value>
7 <Value>..\..\build\Debug\x64\wixnative.amd64.pdb</Value>
8 </AdditionalFilesToIncludeForProject>
9 </Settings>
10</ProjectConfiguration> \ No newline at end of file
diff --git a/src/wixnative/wixnative.vcxproj b/src/wixnative/wixnative.vcxproj
index d4b31fd8..420615ed 100644
--- a/src/wixnative/wixnative.vcxproj
+++ b/src/wixnative/wixnative.vcxproj
@@ -75,7 +75,7 @@
75 </ItemGroup> 75 </ItemGroup>
76 76
77 <Target Name="Pack" DependsOnTargets="GetBuildVersion"> 77 <Target Name="Pack" DependsOnTargets="GetBuildVersion">
78 <Exec Command="nuget pack runtime.win.WixToolset.Core.Native.nuspec -BasePath &quot;$(BaseOutputPath)\&quot; -OutputDirectory &quot;$(BaseOutputPath)\&quot; -NoPackageAnalysis -Properties Configuration=$(Configuration);Id=runtime.win.WixToolset.Core.Native;Version=&quot;$(BuildVersionSimple)&quot;;Platform=$(PlatformTarget);Authors=&quot;$(Authors)&quot;;Copyright=&quot;$(Copyright)&quot;;Description=&quot;$(Description)&quot;;Title=&quot;$(Title)&quot;" /> 78 <Exec Command='nuget pack runtime.win.WixToolset.Core.Native.nuspec -BasePath "$(BaseOutputPath)$(Configuration)" -OutputDirectory "$(BaseOutputPath)$(Configuration)" -NoPackageAnalysis -Properties Configuration=$(Configuration);Id=runtime.win.WixToolset.Core.Native;Version="$(BuildVersionSimple)";Platform=$(PlatformTarget);Authors="$(Authors)";Copyright="$(Copyright)";Description="$(Description)";Title="$(Title)"' />
79 </Target> 79 </Target>
80 80
81 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> 81 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />