Integrate into latest v4.
Sean Hall committed
Jan 12, 2019 at 16:49 UTC
2a14c230453744ea896948ca0b4f6692f2962bee
29 files changed
+653
-86
.editorconfig
new
+37
@@ -0,0 +1,37 @@
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\.editorconfig
4
+# then update all of the repos.
5
+
6
+root = true
7
+
8
+[*]
9
+charset = utf-8
10
+indent_style = space
11
+indent_size = 4
12
+trim_trailing_whitespace = true
13
+
14
+[*.{cs,vb}]
15
+dotnet_sort_system_directives_first = true
16
+
17
+[*.cs]
18
+csharp_indent_case_contents = true : error
19
+csharp_indent_switch_labels = true : error
20
+csharp_new_line_before_open_brace = all
21
+csharp_prefer_braces = true : error
22
+csharp_style_expression_bodied_methods = when_on_single_line : suggestion
23
+csharp_style_expression_bodied_constructors = when_on_single_line : suggestion
24
+csharp_style_expression_bodied_operators = when_on_single_line : suggestion
25
+csharp_style_expression_bodied_properties = when_on_single_line : suggestion
26
+csharp_style_expression_bodied_indexers = when_on_single_line : suggestion
27
+csharp_style_expression_bodied_accessors = when_on_single_line : suggestion
28
+csharp_style_var_elsewhere = true : suggestion
29
+csharp_style_var_for_built_in_types = true : suggestion
30
+csharp_style_var_when_type_is_apparent = true : suggestion
31
+dotnet_style_qualification_for_event = true : error
32
+dotnet_style_qualification_for_field = true : error
33
+dotnet_style_qualification_for_method = true : error
34
+dotnet_style_qualification_for_property = true : error
35
+
36
+[*.targets]
37
+indent_size = 2
UI.wixext.sln
new
+75
@@ -0,0 +1,75 @@
1
+
2
+Microsoft Visual Studio Solution File, Format Version 12.00
3
+# Visual Studio 15
4
+VisualStudioVersion = 15.0.27130.2003
5
+MinimumVisualStudioVersion = 15.0.26124.0
6
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uica", "src\ca\uica.vcxproj", "{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}"
7
+EndProject
8
+Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "ui", "src\wixlib\ui.wixproj", "{2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}"
9
+EndProject
10
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.UI.wixext", "src\wixext\WixToolset.UI.wixext.csproj", "{33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}"
11
+EndProject
12
+Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.UI", "src\test\WixToolsetTest.UI\WixToolsetTest.UI.csproj", "{A37CC793-F659-4C77-A01C-D183023B6880}"
13
+EndProject
14
+Global
15
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
16
+ Debug|Any CPU = Debug|Any CPU
17
+ Debug|x64 = Debug|x64
18
+ Debug|x86 = Debug|x86
19
+ Release|Any CPU = Release|Any CPU
20
+ Release|x64 = Release|x64
21
+ Release|x86 = Release|x86
22
+ EndGlobalSection
23
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
24
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Debug|Any CPU.ActiveCfg = Debug|Win32
25
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Debug|Any CPU.Build.0 = Debug|Win32
26
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Debug|x64.ActiveCfg = Debug|Win32
27
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Debug|x86.ActiveCfg = Debug|Win32
28
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Debug|x86.Build.0 = Debug|Win32
29
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Release|Any CPU.ActiveCfg = Release|Win32
30
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Release|Any CPU.Build.0 = Release|Win32
31
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Release|x64.ActiveCfg = Release|Win32
32
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Release|x86.ActiveCfg = Release|Win32
33
+ {F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}.Release|x86.Build.0 = Release|Win32
34
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Debug|Any CPU.ActiveCfg = Debug|x86
35
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Debug|Any CPU.Build.0 = Debug|x86
36
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Debug|x64.ActiveCfg = Debug|x86
37
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Debug|x86.ActiveCfg = Debug|x86
38
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Debug|x86.Build.0 = Debug|x86
39
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Release|Any CPU.ActiveCfg = Release|x86
40
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Release|Any CPU.Build.0 = Release|x86
41
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Release|x64.ActiveCfg = Release|x86
42
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Release|x86.ActiveCfg = Release|x86
43
+ {2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}.Release|x86.Build.0 = Release|x86
44
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
45
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|Any CPU.Build.0 = Debug|Any CPU
46
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|x64.ActiveCfg = Debug|Any CPU
47
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|x64.Build.0 = Debug|Any CPU
48
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|x86.ActiveCfg = Debug|Any CPU
49
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Debug|x86.Build.0 = Debug|Any CPU
50
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|Any CPU.ActiveCfg = Release|Any CPU
51
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|Any CPU.Build.0 = Release|Any CPU
52
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|x64.ActiveCfg = Release|Any CPU
53
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|x64.Build.0 = Release|Any CPU
54
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|x86.ActiveCfg = Release|Any CPU
55
+ {33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}.Release|x86.Build.0 = Release|Any CPU
56
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
57
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|Any CPU.Build.0 = Debug|Any CPU
58
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|x64.ActiveCfg = Debug|Any CPU
59
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|x64.Build.0 = Debug|Any CPU
60
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|x86.ActiveCfg = Debug|Any CPU
61
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Debug|x86.Build.0 = Debug|Any CPU
62
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|Any CPU.ActiveCfg = Release|Any CPU
63
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|Any CPU.Build.0 = Release|Any CPU
64
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|x64.ActiveCfg = Release|Any CPU
65
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|x64.Build.0 = Release|Any CPU
66
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|x86.ActiveCfg = Release|Any CPU
67
+ {A37CC793-F659-4C77-A01C-D183023B6880}.Release|x86.Build.0 = Release|Any CPU
68
+ EndGlobalSection
69
+ GlobalSection(SolutionProperties) = preSolution
70
+ HideSolutionNode = FALSE
71
+ EndGlobalSection
72
+ GlobalSection(ExtensibilityGlobals) = postSolution
73
+ SolutionGuid = {1EB72678-984C-4F8F-9C3C-8D0FA2450E86}
74
+ EndGlobalSection
75
+EndGlobal
appveyor.cmd
new
+13
@@ -0,0 +1,13 @@
1
+@setlocal
2
+@pushd %~dp0
3
+
4
+nuget restore
5
+
6
+msbuild -p:Configuration=Release -t:Restore
7
+
8
+msbuild -p:Configuration=Release src\test\WixToolsetTest.UI\WixToolsetTest.UI.csproj
9
+
10
+msbuild -p:Configuration=Release -t:Pack src\wixext\WixToolset.UI.wixext.csproj
11
+
12
+@popd
13
+@endlocal
\ No newline at end of file
appveyor.yml
new
+40
@@ -0,0 +1,40 @@
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\appveyor.yml
4
+# then update all of the repos.
5
+
6
+branches:
7
+ only:
8
+ - master
9
+ - develop
10
+
11
+image: Visual Studio 2017
12
+
13
+version: 0.0.0.{build}
14
+configuration: Release
15
+
16
+environment:
17
+ DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
18
+ DOTNET_CLI_TELEMETRY_OPTOUT: 1
19
+ NUGET_XMLDOC_MODE: skip
20
+
21
+build_script:
22
+ - appveyor.cmd
23
+
24
+pull_requests:
25
+ do_not_increment_build_number: true
26
+
27
+nuget:
28
+ disable_publish_on_pr: true
29
+
30
+skip_branch_with_pr: true
31
+skip_tags: true
32
+
33
+artifacts:
34
+- path: build\Release\**\*.nupkg
35
+ name: nuget
36
+
37
+notifications:
38
+- provider: Slack
39
+ incoming_webhook:
40
+ secure: p5xuu+4x2JHfwGDMDe5KcG1k7gZxqYc4jWVwvyNZv5cvkubPD2waJs5yXMAXZNN7Z63/3PWHb7q4KoY/99AjauYa1nZ4c5qYqRPFRBKTHfA=
nuget.config
new
+16
@@ -0,0 +1,16 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<configuration>
3
+ <packageSources>
4
+ <clear />
5
+ <add key="wixtoolset-data" value="https://ci.appveyor.com/nuget/wixtoolset-data" />
6
+ <add key="wixtoolset-extensibility" value="https://ci.appveyor.com/nuget/wixtoolset-extensibility" />
7
+ <add key="wixtoolset-core" value="https://ci.appveyor.com/nuget/wixtoolset-core" />
8
+ <add key="wixtoolset-core-native" value="https://ci.appveyor.com/nuget/wixtoolset-core-native" />
9
+ <add key="wixtoolset-dtf" value="https://ci.appveyor.com/nuget/wixtoolset-dtf" />
10
+ <add key="wixtoolset-dutil" value="https://ci.appveyor.com/nuget/wixtoolset-dutil" />
11
+ <add key="wixtoolset-wcautil" value="https://ci.appveyor.com/nuget/wixtoolset-wcautil" />
12
+ <add key="wixtoolset-tools" value="https://ci.appveyor.com/nuget/wixtoolset-tools" />
13
+ <add key="wixbuildtools" value="https://ci.appveyor.com/nuget/wixbuildtools" />
14
+ <add key="api.nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
15
+ </packageSources>
16
+</configuration>
\ No newline at end of file
src/Cpp.Build.props
new
+100
@@ -0,0 +1,100 @@
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>
5
+ <PropertyGroup>
6
+ <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' ">Win32</Platform>
7
+ <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(Platform)\</IntDir>
8
+ <OutDir>$(OutputPath)$(Platform)\</OutDir>
9
+ </PropertyGroup>
10
+
11
+ <ItemDefinitionGroup>
12
+ <ClCompile>
13
+ <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings>
14
+ <WarningLevel>Level4</WarningLevel>
15
+ <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
16
+ <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
17
+ <PrecompiledHeader>Use</PrecompiledHeader>
18
+ <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile>
19
+ <CallingConvention>StdCall</CallingConvention>
20
+ <TreatWarningAsError>true</TreatWarningAsError>
21
+ <ExceptionHandling>false</ExceptionHandling>
22
+ <AdditionalOptions>-YlprecompDefine</AdditionalOptions>
23
+ <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
24
+ <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation>
25
+ </ClCompile>
26
+ <ResourceCompile>
27
+ <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
28
+ <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
29
+ </ResourceCompile>
30
+ <Lib>
31
+ <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
32
+ </Lib>
33
+ <Link>
34
+ <SubSystem>$(ProjectSubSystem)</SubSystem>
35
+ <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile>
36
+ <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint>
37
+ <GenerateDebugInformation>true</GenerateDebugInformation>
38
+ <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
39
+ <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
40
+ <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions>
41
+ </Link>
42
+ </ItemDefinitionGroup>
43
+
44
+ <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'">
45
+ <ClCompile>
46
+ <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet>
47
+ </ClCompile>
48
+ </ItemDefinitionGroup>
49
+ <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' ">
50
+ <ClCompile>
51
+ <CallingConvention>CDecl</CallingConvention>
52
+ </ClCompile>
53
+ </ItemDefinitionGroup>
54
+ <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' ">
55
+ <ClCompile>
56
+ <DebugInformationFormat>OldStyle</DebugInformationFormat>
57
+ <OmitDefaultLibName>true</OmitDefaultLibName>
58
+ <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
59
+ </ClCompile>
60
+ </ItemDefinitionGroup>
61
+ <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' ">
62
+ <ClCompile>
63
+ <Optimization>Disabled</Optimization>
64
+ <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
65
+ <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
66
+ <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
67
+ </ClCompile>
68
+ </ItemDefinitionGroup>
69
+ <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' ">
70
+ <ClCompile>
71
+ <BasicRuntimeChecks></BasicRuntimeChecks>
72
+ <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary>
73
+ </ClCompile>
74
+ </ItemDefinitionGroup>
75
+ <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' ">
76
+ <ClCompile>
77
+ <Optimization>MinSpace</Optimization>
78
+ <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
79
+ <FunctionLevelLinking>true</FunctionLevelLinking>
80
+ <IntrinsicFunctions>true</IntrinsicFunctions>
81
+ <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
82
+ </ClCompile>
83
+ <Link>
84
+ <EnableCOMDATFolding>true</EnableCOMDATFolding>
85
+ <OptimizeReferences>true</OptimizeReferences>
86
+ </Link>
87
+ </ItemDefinitionGroup>
88
+ <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' ">
89
+ <ClCompile>
90
+ <BasicRuntimeChecks></BasicRuntimeChecks>
91
+ <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary>
92
+ </ClCompile>
93
+ </ItemDefinitionGroup>
94
+ <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' ">
95
+ <Link>
96
+ <KeyFile>$(LinkKeyFile)</KeyFile>
97
+ <DelaySign>$(LinkDelaySign)</DelaySign>
98
+ </Link>
99
+ </ItemDefinitionGroup>
100
+</Project>
src/Directory.Build.props
new
+26
@@ -0,0 +1,26 @@
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
+ Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.props
5
+ then update all of the repos.
6
+-->
7
+<Project>
8
+ <PropertyGroup>
9
+ <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
10
+ <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink>
11
+
12
+ <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName>
13
+ <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath>
14
+ <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath>
15
+ <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath>
16
+
17
+ <Authors>WiX Toolset Team</Authors>
18
+ <Company>WiX Toolset</Company>
19
+ <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright>
20
+ <PackageLicenseExpression>MS-RL</PackageLicenseExpression>
21
+ <Product>WiX Toolset</Product>
22
+ </PropertyGroup>
23
+
24
+ <Import Project="Cpp.Build.props" Condition=" '$(MSBuildProjectExtension)'=='.vcxproj' " />
25
+ <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " />
26
+</Project>
src/Directory.Build.targets
new
+48
@@ -0,0 +1,48 @@
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
+ 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
+-->
11
+<Project>
12
+ <PropertyGroup>
13
+ <ReplacePackageReferences>true</ReplacePackageReferences>
14
+ <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath>
15
+ <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath>
16
+ </PropertyGroup>
17
+
18
+ <Choose>
19
+ <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')">
20
+
21
+ <PropertyGroup>
22
+ <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent>
23
+ <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir>
24
+ <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern>
25
+ </PropertyGroup>
26
+
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>
33
+
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>
39
+
40
+ <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/>
41
+
42
+ <!-- Remove the package references that are now referenced as projects -->
43
+ <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/>
44
+ </ItemGroup>
45
+
46
+ </When>
47
+ </Choose>
48
+</Project>
src/FindLocalWix.props
new
+8
@@ -0,0 +1,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. -->
3
+
4
+<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
+ <PropertyGroup>
6
+ <WixTargetsPath Condition=" '$(Configuration)' == 'Debug' And Exists('$(MSBuildThisFileDirectory)..\..\Tools\README.md') ">$(MSBuildThisFileDirectory)..\..\Tools\build\Debug\net461\wix.targets</WixTargetsPath>
7
+ </PropertyGroup>
8
+</Project>
src/ca/CustomMsiErrors.h
new
+10
@@ -0,0 +1,10 @@
1
+#pragma once
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
+#define msierrSQLFailedCreateDatabase 26201
5
+#define msierrSQLFailedDropDatabase 26202
6
+#define msierrSQLFailedConnectDatabase 26203
7
+#define msierrSQLFailedExecString 26204
8
+#define msierrSQLDatabaseAlreadyExists 26205
9
+
10
+//Last available is 26250
\ No newline at end of file
src/ca/packages.config
new
+5
@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<packages>
3
+ <package id="WixToolset.DUtil" version="4.0.13" targetFramework="native" />
4
+ <package id="WixToolset.WcaUtil" version="4.0.2" targetFramework="native" />
5
+</packages>
\ No newline at end of file
src/ca/precomp.h
-1
@@ -7,7 +7,6 @@
7
#include <richedit.h>
8
#include <shlwapi.h>
9
10
-#include "wixstrsafe.h"
10
#include "wcautil.h"
11
#include "aclutil.h"
12
#include "fileutil.h"
src/ca/uica.vcxproj
+21
-19
@@ -1,8 +1,10 @@
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 DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
5
+ <Import Project="..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props')" />
6
+ <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" />
7
5
-<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
8
<ItemGroup Label="ProjectConfigurations">
9
<ProjectConfiguration Include="Debug|Win32">
10
<Configuration>Debug</Configuration>
@@ -13,34 +15,28 @@
15
<Platform>Win32</Platform>
16
</ProjectConfiguration>
17
</ItemGroup>
16
- <ItemGroup Label="ProjectConfigurations">
17
- <ProjectConfiguration Include="Debug|ARM">
18
- <Configuration>Debug</Configuration>
19
- <Platform>ARM</Platform>
20
- </ProjectConfiguration>
21
- <ProjectConfiguration Include="Release|ARM">
22
- <Configuration>Release</Configuration>
23
- <Platform>ARM</Platform>
24
- </ProjectConfiguration>
25
- </ItemGroup>
18
19
<PropertyGroup Label="Globals">
20
<ProjectGuid>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</ProjectGuid>
21
<ConfigurationType>DynamicLibrary</ConfigurationType>
22
<CharacterSet>MultiByte</CharacterSet>
23
<TargetName>uica</TargetName>
24
+ <PlatformToolset>v141</PlatformToolset>
25
<ProjectModuleDefinitionFile>uica.def</ProjectModuleDefinitionFile>
26
+ <Description>WiX Toolset UI CustomAction</Description>
27
</PropertyGroup>
28
35
- <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.props" />
29
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
30
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
31
32
<PropertyGroup>
38
- <ProjectAdditionalIncludeDirectories>$(WixRoot)src\libs\dutil\inc;$(WixRoot)src\libs\wcautil</ProjectAdditionalIncludeDirectories>
39
- <ProjectAdditionalLinkLibraries>msi.lib;shlwapi.lib;dutil.lib;wcautil.lib</ProjectAdditionalLinkLibraries>
33
+ <ProjectAdditionalLinkLibraries>msi.lib;shlwapi.lib</ProjectAdditionalLinkLibraries>
34
</PropertyGroup>
35
36
<ItemGroup>
43
- <ClCompile Include="dllmain.cpp" />
37
+ <ClCompile Include="dllmain.cpp">
38
+ <PrecompiledHeader>Create</PrecompiledHeader>
39
+ </ClCompile>
40
<ClCompile Include="DriveCheck.cpp" />
41
<ClCompile Include="PrintEula.cpp" />
42
</ItemGroup>
@@ -49,11 +45,17 @@
45
<ClInclude Include="precomp.h" />
46
</ItemGroup>
47
<ItemGroup>
48
+ <None Include="packages.config" />
49
<None Include="uica.def" />
50
</ItemGroup>
54
- <ItemGroup>
55
- <ResourceCompile Include="uica.rc" />
56
- </ItemGroup>
51
58
- <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
52
+ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
53
+
54
+ <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
55
+ <PropertyGroup>
56
+ <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>
57
+ </PropertyGroup>
58
+ <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.13\build\WixToolset.DUtil.props'))" />
59
+ <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props'))" />
60
+ </Target>
61
</Project>
src/test/WixToolsetTest.UI/TestData/WixUI_Minimal/Package.en-us.wxl
new
+11
@@ -0,0 +1,11 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+
3
+<!--
4
+This file contains the declaration of all the localizable strings.
5
+-->
6
+<WixLocalization xmlns="http://wixtoolset.org/schemas/v4/wxl" Culture="en-US">
7
+
8
+ <String Id="DowngradeError">A newer version of [ProductName] is already installed.</String>
9
+ <String Id="FeatureTitle">MsiPackage</String>
10
+
11
+</WixLocalization>
src/test/WixToolsetTest.UI/TestData/WixUI_Minimal/Package.wxs
new
+22
@@ -0,0 +1,22 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
3
+ <Product Id="*" Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a">
4
+ <Package InstallerVersion="200" Compressed="no" InstallScope="perMachine" />
5
+
6
+ <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" />
7
+ <MediaTemplate />
8
+
9
+ <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)">
10
+ <ComponentGroupRef Id="ProductComponents" />
11
+ </Feature>
12
+
13
+ </Product>
14
+
15
+ <Fragment>
16
+ <Directory Id="TARGETDIR" Name="SourceDir">
17
+ <Directory Id="ProgramFilesFolder">
18
+ <Directory Id="INSTALLFOLDER" Name="MsiPackage" />
19
+ </Directory>
20
+ </Directory>
21
+ </Fragment>
22
+</Wix>
src/test/WixToolsetTest.UI/TestData/WixUI_Minimal/PackageComponents.wxs
new
+12
@@ -0,0 +1,12 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
3
+ <Fragment>
4
+ <UIRef Id="WixUI_Minimal" />
5
+
6
+ <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
7
+ <Component>
8
+ <File Source="example.txt" />
9
+ </Component>
10
+ </ComponentGroup>
11
+ </Fragment>
12
+</Wix>
src/test/WixToolsetTest.UI/TestData/WixUI_Minimal/example.txt
new
+1
@@ -0,0 +1 @@
1
+This is example.txt.
\ No newline at end of file
src/test/WixToolsetTest.UI/UIExtensionFixture.cs
new
+32
@@ -0,0 +1,32 @@
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
+namespace WixToolsetTest.UI
4
+{
5
+ using System.Linq;
6
+ using WixBuildTools.TestSupport;
7
+ using WixToolset.Core.TestPackage;
8
+ using WixToolset.UI;
9
+ using Xunit;
10
+
11
+ public class UIExtensionFixture
12
+ {
13
+ [Fact(Skip = "Currently fails")]
14
+ public void CanBuildUsingWixUIMinimal()
15
+ {
16
+ var folder = TestData.Get(@"TestData\WixUI_Minimal");
17
+ var build = new Builder(folder, typeof(UIExtensionFactory), new[] { folder });
18
+
19
+ var results = build.BuildAndQuery(Build, "Property");
20
+ Assert.Equal(new[]
21
+ {
22
+ "Property:",
23
+ }, results.OrderBy(s => s).ToArray());
24
+ }
25
+
26
+ private static void Build(string[] args)
27
+ {
28
+ var result = WixRunner.Execute(args)
29
+ .AssertSuccess();
30
+ }
31
+ }
32
+}
src/test/WixToolsetTest.UI/WixToolsetTest.UI.csproj
new
+38
@@ -0,0 +1,38 @@
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 Sdk="Microsoft.NET.Sdk">
5
+ <PropertyGroup>
6
+ <TargetFramework>netcoreapp2.1</TargetFramework>
7
+ <IsPackable>false</IsPackable>
8
+ </PropertyGroup>
9
+
10
+ <PropertyGroup>
11
+ <NoWarn>NU1701</NoWarn>
12
+ </PropertyGroup>
13
+
14
+ <ItemGroup>
15
+ <Content Include="TestData\WixUI_Minimal\example.txt" CopyToOutputDirectory="PreserveNewest" />
16
+ <Content Include="TestData\WixUI_Minimal\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" />
17
+ <Content Include="TestData\WixUI_Minimal\Package.wxs" CopyToOutputDirectory="PreserveNewest" />
18
+ <Content Include="TestData\WixUI_Minimal\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" />
19
+ </ItemGroup>
20
+
21
+ <ItemGroup>
22
+ <ProjectReference Include="..\..\wixext\WixToolset.UI.wixext.csproj" />
23
+ </ItemGroup>
24
+
25
+ <ItemGroup>
26
+ <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" PrivateAssets="all" />
27
+ </ItemGroup>
28
+
29
+ <ItemGroup>
30
+ <PackageReference Include="WixBuildTools.TestSupport" Version="4.0.*" />
31
+ </ItemGroup>
32
+
33
+ <ItemGroup>
34
+ <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
35
+ <PackageReference Include="xunit" Version="2.4.0" />
36
+ <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" />
37
+ </ItemGroup>
38
+</Project>
src/wixext/UIDecompiler.cs
+2
@@ -2,6 +2,7 @@
2
3
namespace WixToolset.Extensions
4
{
5
+#if TODO_CONSIDER_DECOMPILER
6
using System;
7
using System.Collections;
8
using System.Diagnostics;
@@ -54,4 +55,5 @@ namespace WixToolset.Extensions
55
}
56
}
57
}
58
+#endif
59
}
src/wixext/UIExtensionData.cs
+8
-28
@@ -1,43 +1,23 @@
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
-namespace WixToolset.Extensions
3
+namespace WixToolset.UI
4
{
5
- using System;
6
- using System.Reflection;
5
using WixToolset.Data;
6
using WixToolset.Extensibility;
7
10
- /// <summary>
11
- /// The WiX Toolset UI Extension.
12
- /// </summary>
13
- public sealed class UIExtensionData : ExtensionData
8
+ public sealed class UIExtensionData : BaseExtensionData
9
{
15
- /// <summary>
16
- /// Gets the default culture.
17
- /// </summary>
18
- /// <value>The default culture.</value>
19
- public override string DefaultCulture
20
- {
21
- get { return "en-us"; }
22
- }
10
+ public override string DefaultCulture => "en-US";
11
24
- /// <summary>
25
- /// Gets the library associated with this extension.
26
- /// </summary>
27
- /// <param name="tableDefinitions">The table definitions to use while loading the library.</param>
28
- /// <returns>The loaded library.</returns>
29
- public override Library GetLibrary(TableDefinitionCollection tableDefinitions)
12
+ public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition)
13
{
31
- return UIExtensionData.GetExtensionLibrary(tableDefinitions);
14
+ tupleDefinition = null;
15
+ return tupleDefinition != null;
16
}
17
34
- /// <summary>
35
- /// Internal mechanism to access the extension's library.
36
- /// </summary>
37
- /// <returns>Extension's library.</returns>
38
- internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions)
18
+ public override Intermediate GetLibrary(ITupleDefinitionCreator tupleDefinitions)
19
{
40
- return ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.ui.wixlib", tableDefinitions);
20
+ return Intermediate.Load(typeof(UIExtensionData).Assembly, "WixToolset.UI.ui.wixlib", tupleDefinitions);
21
}
22
}
23
}
src/wixext/UIExtensionFactory.cs
new
+16
@@ -0,0 +1,16 @@
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
+namespace WixToolset.UI
4
+{
5
+ using System;
6
+ using System.Collections.Generic;
7
+ using WixToolset.Extensibility;
8
+
9
+ public class UIExtensionFactory : BaseExtensionFactory
10
+ {
11
+ protected override IEnumerable<Type> ExtensionTypes => new[]
12
+ {
13
+ typeof(UIExtensionData),
14
+ };
15
+ }
16
+}
src/wixext/WixToolset.UI.wixext.csproj
new
+29
@@ -0,0 +1,29 @@
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 Sdk="Microsoft.NET.Sdk">
5
+ <PropertyGroup>
6
+ <TargetFramework>netstandard2.0</TargetFramework>
7
+ <RootNamespace>WixToolset.UI</RootNamespace>
8
+ <Description>WiX Toolset UI Extension</Description>
9
+ <Title>WiX Toolset UI Extension</Title>
10
+ <IsTool>true</IsTool>
11
+ <ContentTargetFolders>build</ContentTargetFolders>
12
+ </PropertyGroup>
13
+ <ItemGroup>
14
+ <Content Include="$(MSBuildThisFileName).targets" />
15
+ <EmbeddedResource Include="$(OutputPath)..\ui.wixlib" />
16
+ </ItemGroup>
17
+ <ItemGroup>
18
+ <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" />
19
+ <PackageReference Include="WixToolset.Extensibility" Version="4.0.*" PrivateAssets="all" />
20
+ </ItemGroup>
21
+
22
+ <ItemGroup>
23
+ <ProjectReference Include="..\wixlib\ui.wixproj" ReferenceOutputAssembly="false" Condition=" '$(NCrunch)'=='' " />
24
+ </ItemGroup>
25
+
26
+ <ItemGroup>
27
+ <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="All" />
28
+ </ItemGroup>
29
+</Project>
src/wixext/WixToolset.UI.wixext.targets
new
+11
@@ -0,0 +1,11 @@
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" ToolsVersion="4.0">
5
+ <PropertyGroup>
6
+ <WixToolsetUIWixextPath Condition=" '$(WixToolsetUIWixextPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\WixToolset.UI.wixext.dll</WixToolsetUIWixextPath>
7
+ </PropertyGroup>
8
+ <ItemGroup>
9
+ <WixExtension Include="$(WixToolsetUIWixextPath)" />
10
+ </ItemGroup>
11
+</Project>
src/wixext/WixUIExtension.csproj
deleted
-31
@@ -1,31 +0,0 @@
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
-
5
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
6
- <PropertyGroup>
7
- <ProjectGuid>{33F6ABF5-FA13-4B73-99FA-F9BBA894DD9A}</ProjectGuid>
8
- <AssemblyName>WixUIExtension</AssemblyName>
9
- <OutputType>Library</OutputType>
10
- <RootNamespace>WixToolset.Extensions</RootNamespace>
11
- </PropertyGroup>
12
- <ItemGroup>
13
- <Compile Include="AssemblyInfo.cs" />
14
- <Compile Include="UIDecompiler.cs" />
15
- <Compile Include="UIExtensionData.cs" />
16
- <EmbeddedResource Include="$(OutputPath)ui.wixlib">
17
- <Link>Data\ui.wixlib</Link>
18
- </EmbeddedResource>
19
- </ItemGroup>
20
- <ItemGroup>
21
- <Reference Include="System" />
22
- <Reference Include="System.Xml" />
23
- <ProjectReference Include="..\..\..\libs\WixToolset.Data\WixToolset.Data.csproj" />
24
- <ProjectReference Include="..\..\..\libs\WixToolset.Extensibility\WixToolset.Extensibility.csproj" />
25
- <ProjectReference Include="..\..\..\tools\wix\Wix.csproj" />
26
- <ProjectReference Include="..\wixlib\UIExtension.wixproj">
27
- <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
28
- </ProjectReference>
29
- </ItemGroup>
30
- <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
31
-</Project>
src/wixlib/caSuffix.wxi
new
+28
@@ -0,0 +1,28 @@
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
+<Include xmlns="http://wixtoolset.org/schemas/v4/wxs">
5
+ <?ifndef platform ?>
6
+ <?error Required value "platform" not defined in include caSuffix.wxi ?>
7
+ <?endif ?>
8
+
9
+ <?ifdef Suffix ?>
10
+ <?undef Suffix ?>
11
+ <?undef DeferredSuffix ?>
12
+ <?endif ?>
13
+
14
+ <?if $(var.platform)="x86" ?>
15
+ <?define Suffix="" ?>
16
+ <?define DeferredSuffix="" ?>
17
+ <?endif ?>
18
+
19
+ <?if $(var.platform)="x64" ?>
20
+ <?define Suffix="_x64" ?>
21
+ <?define DeferredSuffix="_64" ?>
22
+ <?endif ?>
23
+
24
+ <?if $(var.platform)="arm" ?>
25
+ <?define Suffix="_ARM" ?>
26
+ <?define DeferredSuffix="_ARM" ?>
27
+ <?endif ?>
28
+</Include>
src/wixlib/packages.config
new
+5
@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<packages>
3
+ <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" />
4
+ <package id="WixToolset.MSBuild" version="4.0.0-build-0035" developmentDependency="true" targetFramework="net40" />
5
+</packages>
\ No newline at end of file
src/wixlib/ui.wixproj
renamed
+28
-7
@@ -1,16 +1,14 @@
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
-
5
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
3
+<Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0">
4
+ <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0035\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0035\build\WixToolset.MSBuild.props')" />
5
+ <Import Project="..\FindLocalWix.props" />
6
<PropertyGroup>
7
<ProjectGuid>{2D4FF07B-26F8-4BEF-B41C-E4383F86DC32}</ProjectGuid>
8
<OutputName>ui</OutputName>
9
<OutputType>Library</OutputType>
10
<BindFiles>true</BindFiles>
11
<Pedantic>true</Pedantic>
12
- <!-- Suppress ICE45 until we get a new darice.cub drop that properly supports the ElevationShield control attribute bit -->
13
- <SuppressIces>ICE45</SuppressIces>
12
<Cultures>en-us</Cultures>
13
</PropertyGroup>
14
@@ -63,7 +61,12 @@
61
<Compile Include="AdvancedWelcomeEulaDlg.wxs" />
62
<Compile Include="FeaturesDlg.wxs" />
63
<Compile Include="InstallScopeDlg.wxs" />
64
+ <!-- TODO: Reenable when able to compile
65
<Compile Include="WixUI_Advanced.wxs" />
66
+ -->
67
+ </ItemGroup>
68
+
69
+ <ItemGroup>
70
<EmbeddedResource Include="WixUI_ar-SA.wxl" />
71
<EmbeddedResource Include="WixUI_bg-BG.wxl" />
72
<EmbeddedResource Include="WixUI_ca-ES.wxl" />
@@ -107,8 +110,26 @@
110
</ItemGroup>
111
112
<ItemGroup>
110
- <ProjectReference Include="..\ca\uica.vcxproj" />
113
+ <None Include="packages.config" />
114
</ItemGroup>
115
113
- <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
116
+ <ItemGroup>
117
+ <ProjectReference Include="..\ca\uica.vcxproj">
118
+ <Name>uica</Name>
119
+ <Project>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</Project>
120
+ </ProjectReference>
121
+ </ItemGroup>
122
+ <Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' AND Exists('$(WixTargetsPath)') " />
123
+ <Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets') " />
124
+ <Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' ">
125
+ <Error Text="WiX Toolset build tools (v4.0 or later) must be installed to build this project. To download the WiX Toolset, go to http://wixtoolset.org/releases/." />
126
+ </Target>
127
+ <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
128
+ <PropertyGroup>
129
+ <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>
130
+ </PropertyGroup>
131
+ <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" />
132
+ <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0035\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0035\build\WixToolset.MSBuild.props'))" />
133
+ </Target>
134
+ <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" />
135
</Project>
version.json
new
+11
@@ -0,0 +1,11 @@
1
+{
2
+ "version": "4.0",
3
+ "publicReleaseRefSpec": [
4
+ "^refs/heads/master$"
5
+ ],
6
+ "cloudBuild": {
7
+ "buildNumber": {
8
+ "enabled": true
9
+ }
10
+ }
11
+}