@joebigelow / wix / commits / 73e6559b

Integrate into latest v4.

Sean Hall committed Feb 2, 2019 at 14:07 UTC 73e6559b809f5f5ae2041d22ec81479df0fe91f9
32 files changed +761 -126
.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
DirectX.wixext.sln new
+61
@@ -0,0 +1,61 @@
1 +
2 +Microsoft Visual Studio Solution File, Format Version 12.00
3 +# Visual Studio 15
4 +VisualStudioVersion = 15.0.28010.2016
5 +MinimumVisualStudioVersion = 10.0.40219.1
6 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "directxca", "src\ca\directxca.vcxproj", "{76542B28-0FFD-47D3-AD6A-D0F20FA875AC}"
7 +EndProject
8 +Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "directx", "src\wixlib\directx.wixproj", "{4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}"
9 +EndProject
10 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolset.DirectX.wixext", "src\wixext\WixToolset.DirectX.wixext.csproj", "{6182DBCA-146A-4F37-8406-3139BBE04636}"
11 +EndProject
12 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WixToolsetTest.DirectX", "src\test\WixToolsetTest.DirectX\WixToolsetTest.DirectX.csproj", "{508A3DD0-FE58-4150-A1F6-A803A377012A}"
13 +EndProject
14 +Global
15 + GlobalSection(SolutionConfigurationPlatforms) = preSolution
16 + Debug|Any CPU = Debug|Any CPU
17 + Debug|x86 = Debug|x86
18 + Release|Any CPU = Release|Any CPU
19 + Release|x86 = Release|x86
20 + EndGlobalSection
21 + GlobalSection(ProjectConfigurationPlatforms) = postSolution
22 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Debug|Any CPU.ActiveCfg = Debug|Win32
23 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Debug|Any CPU.Build.0 = Debug|Win32
24 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Debug|x86.ActiveCfg = Debug|Win32
25 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Debug|x86.Build.0 = Debug|Win32
26 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Release|Any CPU.ActiveCfg = Release|Win32
27 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Release|Any CPU.Build.0 = Release|Win32
28 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Release|x86.ActiveCfg = Release|Win32
29 + {76542B28-0FFD-47D3-AD6A-D0F20FA875AC}.Release|x86.Build.0 = Release|Win32
30 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Debug|Any CPU.ActiveCfg = Debug|x86
31 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Debug|Any CPU.Build.0 = Debug|x86
32 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Debug|x86.ActiveCfg = Debug|x86
33 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Debug|x86.Build.0 = Debug|x86
34 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Release|Any CPU.ActiveCfg = Release|x86
35 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Release|Any CPU.Build.0 = Release|x86
36 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Release|x86.ActiveCfg = Release|x86
37 + {4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}.Release|x86.Build.0 = Release|x86
38 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
39 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Debug|Any CPU.Build.0 = Debug|Any CPU
40 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Debug|x86.ActiveCfg = Debug|Any CPU
41 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Debug|x86.Build.0 = Debug|Any CPU
42 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Release|Any CPU.ActiveCfg = Release|Any CPU
43 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Release|Any CPU.Build.0 = Release|Any CPU
44 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Release|x86.ActiveCfg = Release|Any CPU
45 + {6182DBCA-146A-4F37-8406-3139BBE04636}.Release|x86.Build.0 = Release|Any CPU
46 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
47 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Debug|Any CPU.Build.0 = Debug|Any CPU
48 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Debug|x86.ActiveCfg = Debug|Any CPU
49 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Debug|x86.Build.0 = Debug|Any CPU
50 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Release|Any CPU.ActiveCfg = Release|Any CPU
51 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Release|Any CPU.Build.0 = Release|Any CPU
52 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Release|x86.ActiveCfg = Release|Any CPU
53 + {508A3DD0-FE58-4150-A1F6-A803A377012A}.Release|x86.Build.0 = Release|Any CPU
54 + EndGlobalSection
55 + GlobalSection(SolutionProperties) = preSolution
56 + HideSolutionNode = FALSE
57 + EndGlobalSection
58 + GlobalSection(ExtensibilityGlobals) = postSolution
59 + SolutionGuid = {A32D323A-3843-410E-BB3A-A97ABA6E4107}
60 + EndGlobalSection
61 +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.DirectX\WixToolsetTest.DirectX.csproj
9 +
10 +msbuild -p:Configuration=Release -t:Pack src\wixext\WixToolset.DirectX.wixext.csproj
11 +
12 +@popd
13 +@endlocal
\ No newline at end of file
appveyor.yml new
+42
@@ -0,0 +1,42 @@
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 +- path: build\Release\**\*.msi
37 + name: msi
38 +
39 +notifications:
40 +- provider: Slack
41 + incoming_webhook:
42 + 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
+104
@@ -0,0 +1,104 @@
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 + <PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'=='15.0'">
12 + <WindowsTargetPlatformVersion>$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))</WindowsTargetPlatformVersion>
13 + </PropertyGroup>
14 +
15 + <ItemDefinitionGroup>
16 + <ClCompile>
17 + <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings>
18 + <WarningLevel>Level4</WarningLevel>
19 + <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
20 + <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
21 + <PrecompiledHeader>Use</PrecompiledHeader>
22 + <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile>
23 + <CallingConvention Condition="'$(Platform)'=='Win32'">StdCall</CallingConvention>
24 + <TreatWarningAsError>true</TreatWarningAsError>
25 + <ExceptionHandling>false</ExceptionHandling>
26 + <AdditionalOptions>-YlprecompDefine</AdditionalOptions>
27 + <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions>
28 + <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) &gt; 4 ">true</MultiProcessorCompilation>
29 + </ClCompile>
30 + <ResourceCompile>
31 + <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions>
32 + <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
33 + </ResourceCompile>
34 + <Lib>
35 + <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
36 + </Lib>
37 + <Link>
38 + <SubSystem>$(ProjectSubSystem)</SubSystem>
39 + <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile>
40 + <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint>
41 + <GenerateDebugInformation>true</GenerateDebugInformation>
42 + <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies>
43 + <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
44 + <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions>
45 + </Link>
46 + </ItemDefinitionGroup>
47 +
48 + <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'">
49 + <ClCompile>
50 + <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet>
51 + </ClCompile>
52 + </ItemDefinitionGroup>
53 + <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' ">
54 + <ClCompile>
55 + <CallingConvention>CDecl</CallingConvention>
56 + </ClCompile>
57 + </ItemDefinitionGroup>
58 + <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' ">
59 + <ClCompile>
60 + <DebugInformationFormat>OldStyle</DebugInformationFormat>
61 + <OmitDefaultLibName>true</OmitDefaultLibName>
62 + <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries>
63 + </ClCompile>
64 + </ItemDefinitionGroup>
65 + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' ">
66 + <ClCompile>
67 + <Optimization>Disabled</Optimization>
68 + <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
69 + <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
70 + <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
71 + </ClCompile>
72 + </ItemDefinitionGroup>
73 + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' ">
74 + <ClCompile>
75 + <BasicRuntimeChecks></BasicRuntimeChecks>
76 + <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary>
77 + </ClCompile>
78 + </ItemDefinitionGroup>
79 + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' ">
80 + <ClCompile>
81 + <Optimization>MinSpace</Optimization>
82 + <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
83 + <FunctionLevelLinking>true</FunctionLevelLinking>
84 + <IntrinsicFunctions>true</IntrinsicFunctions>
85 + <RuntimeLibrary>MultiThreaded</RuntimeLibrary>
86 + </ClCompile>
87 + <Link>
88 + <EnableCOMDATFolding>true</EnableCOMDATFolding>
89 + <OptimizeReferences>true</OptimizeReferences>
90 + </Link>
91 + </ItemDefinitionGroup>
92 + <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' ">
93 + <ClCompile>
94 + <BasicRuntimeChecks></BasicRuntimeChecks>
95 + <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary>
96 + </ClCompile>
97 + </ItemDefinitionGroup>
98 + <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' ">
99 + <Link>
100 + <KeyFile>$(LinkKeyFile)</KeyFile>
101 + <DelaySign>$(LinkDelaySign)</DelaySign>
102 + </Link>
103 + </ItemDefinitionGroup>
104 +</Project>
src/Directory.Build.props 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 + 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 + <MSBuildWarningsAsMessages>MSB3246</MSBuildWarningsAsMessages>
12 +
13 + <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName>
14 + <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath>
15 + <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath>
16 + <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath>
17 +
18 + <Authors>WiX Toolset Team</Authors>
19 + <Company>WiX Toolset</Company>
20 + <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright>
21 + <PackageLicenseExpression>MS-RL</PackageLicenseExpression>
22 + <Product>WiX Toolset</Product>
23 + </PropertyGroup>
24 +
25 + <Import Project="Cpp.Build.props" Condition=" Exists('Cpp.Build.props') And '$(MSBuildProjectExtension)'=='.vcxproj' " />
26 + <Import Project="Wix.Build.props" Condition=" Exists('Wix.Build.props') And '$(MSBuildProjectExtension)'=='.wixproj' " />
27 + <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " />
28 +</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>(?&lt;="[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/directx.def
+1 -1
@@ -1,7 +1,7 @@
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
4 -LIBRARY "directx"
4 +LIBRARY "directxca"
5
6 EXPORTS
7 WixQueryDirectXCaps
src/ca/directx.vcxproj deleted
-47
@@ -1,47 +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" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
6 - <ItemGroup Label="ProjectConfigurations">
7 - <ProjectConfiguration Include="Debug|Win32">
8 - <Configuration>Debug</Configuration>
9 - <Platform>Win32</Platform>
10 - </ProjectConfiguration>
11 - <ProjectConfiguration Include="Release|Win32">
12 - <Configuration>Release</Configuration>
13 - <Platform>Win32</Platform>
14 - </ProjectConfiguration>
15 - </ItemGroup>
16 -
17 - <PropertyGroup Label="Globals">
18 - <ProjectGuid>{F72D34CA-48DA-4DFD-91A9-A0C78BEF6981}</ProjectGuid>
19 - <ConfigurationType>DynamicLibrary</ConfigurationType>
20 - <CharacterSet>Unicode</CharacterSet>
21 - <TargetName>directx</TargetName>
22 - <ProjectModuleDefinitionFile>directx.def</ProjectModuleDefinitionFile>
23 - </PropertyGroup>
24 -
25 - <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.props" />
26 -
27 - <PropertyGroup>
28 - <ProjectAdditionalIncludeDirectories>$(WixRoot)src\libs\dutil\inc;$(WixRoot)src\libs\wcautil</ProjectAdditionalIncludeDirectories>
29 - <ProjectAdditionalLinkLibraries>d3d9.lib;msi.lib;dutil.lib;wcautil.lib</ProjectAdditionalLinkLibraries>
30 - </PropertyGroup>
31 -
32 - <ItemGroup>
33 - <ClCompile Include="directx.cpp" />
34 - <ClCompile Include="dllmain.cpp" />
35 - </ItemGroup>
36 - <ItemGroup>
37 - <ClInclude Include="precomp.h" />
38 - </ItemGroup>
39 - <ItemGroup>
40 - <None Include="directx.def" />
41 - </ItemGroup>
42 - <ItemGroup>
43 - <ResourceCompile Include="directx.rc" />
44 - </ItemGroup>
45 -
46 - <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
47 -</Project>
src/ca/directxca.vcxproj new
+61
@@ -0,0 +1,61 @@
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.6\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.6\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 +
8 + <ItemGroup Label="ProjectConfigurations">
9 + <ProjectConfiguration Include="Debug|Win32">
10 + <Configuration>Debug</Configuration>
11 + <Platform>Win32</Platform>
12 + </ProjectConfiguration>
13 + <ProjectConfiguration Include="Release|Win32">
14 + <Configuration>Release</Configuration>
15 + <Platform>Win32</Platform>
16 + </ProjectConfiguration>
17 + </ItemGroup>
18 +
19 + <PropertyGroup Label="Globals">
20 + <ProjectGuid>{76542B28-0FFD-47D3-AD6A-D0F20FA875AC}</ProjectGuid>
21 + <ConfigurationType>DynamicLibrary</ConfigurationType>
22 + <PlatformToolset>v141</PlatformToolset>
23 + <CharacterSet>Unicode</CharacterSet>
24 + <TargetName>directxca</TargetName>
25 + <ProjectModuleDefinitionFile>directx.def</ProjectModuleDefinitionFile>
26 + <Description>WiX Toolset DirectX CustomAction</Description>
27 + </PropertyGroup>
28 +
29 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
30 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
31 +
32 + <PropertyGroup>
33 + <ProjectAdditionalLinkLibraries>d3d9.lib;msi.lib</ProjectAdditionalLinkLibraries>
34 + </PropertyGroup>
35 +
36 + <ItemGroup>
37 + <ClCompile Include="directx.cpp" />
38 + <ClCompile Include="dllmain.cpp">
39 + <PrecompiledHeader>Create</PrecompiledHeader>
40 + </ClCompile>
41 + </ItemGroup>
42 +
43 + <ItemGroup>
44 + <ClInclude Include="precomp.h" />
45 + </ItemGroup>
46 +
47 + <ItemGroup>
48 + <None Include="directx.def" />
49 + <None Include="packages.config" />
50 + </ItemGroup>
51 +
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.6\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.6\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/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.6" 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
-3
@@ -7,8 +7,5 @@
7 #include <msiquery.h>
8 #include <D3D9.h>
9
10 -#include "wixstrsafe.h"
10 #include "wcautil.h"
11 #include "strutil.h"
13 -
14 -#include "CustomMsiErrors.h"
src/test/WixToolsetTest.DirectX/DirectXExtensionFixture.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.DirectX
4 +{
5 + using System.Linq;
6 + using WixBuildTools.TestSupport;
7 + using WixToolset.Core.TestPackage;
8 + using WixToolset.DirectX;
9 + using Xunit;
10 +
11 + public class DirectXExtensionFixture
12 + {
13 + [Fact]
14 + public void CanBuildUsingPixelShaderVersion()
15 + {
16 + var folder = TestData.Get(@"TestData\UsingPixelShaderVersion");
17 + var build = new Builder(folder, typeof(DirectXExtensionFactory), new[] { folder });
18 +
19 + var results = build.BuildAndQuery(Build, "CustomAction");
20 + Assert.Equal(new[]
21 + {
22 + "CustomAction:WixQueryDirectXCaps\t65\tDirectXCA\tWixQueryDirectXCaps\t0",
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.DirectX/TestData/UsingPixelShaderVersion/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.DirectX/TestData/UsingPixelShaderVersion/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.DirectX/TestData/UsingPixelShaderVersion/PackageComponents.wxs new
+11
@@ -0,0 +1,11 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<Wix xmlns="http://wixtoolset.org/schemas/v4/wxs">
3 + <Fragment>
4 + <PropertyRef Id="WIX_DIRECTX_PIXELSHADERVERSION" />
5 + <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER">
6 + <Component>
7 + <File Source="example.txt" />
8 + </Component>
9 + </ComponentGroup>
10 + </Fragment>
11 +</Wix>
src/test/WixToolsetTest.DirectX/TestData/UsingPixelShaderVersion/example.txt new
+1
@@ -0,0 +1 @@
1 +This is example.txt.
\ No newline at end of file
src/test/WixToolsetTest.DirectX/WixToolsetTest.DirectX.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\UsingPixelShaderVersion\example.txt" CopyToOutputDirectory="PreserveNewest" />
16 + <Content Include="TestData\UsingPixelShaderVersion\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" />
17 + <Content Include="TestData\UsingPixelShaderVersion\Package.wxs" CopyToOutputDirectory="PreserveNewest" />
18 + <Content Include="TestData\UsingPixelShaderVersion\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" />
19 + </ItemGroup>
20 +
21 + <ItemGroup>
22 + <ProjectReference Include="..\..\wixext\WixToolset.DirectX.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.8.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/DirectXDecompiler.cs
+3 -1
@@ -1,7 +1,8 @@
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.DirectX
4 {
5 +#if TODO_CONSIDER_DECOMPILER
6 using System;
7 using System.Text;
8 using WixToolset.Data;
@@ -67,4 +68,5 @@ namespace WixToolset.Extensions
68 }
69 }
70 }
71 +#endif
72 }
src/wixext/DirectXExtensionData.cs
+7 -17
@@ -1,34 +1,24 @@
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.DirectX
4 {
5 - using System;
6 - using System.Reflection;
5 using WixToolset.Data;
6 using WixToolset.Extensibility;
7
8 /// <summary>
9 /// The WiX Toolset DirectX Extension.
10 /// </summary>
13 - public sealed class DirectXExtensionData : ExtensionData
11 + public sealed class DirectXExtensionData : BaseExtensionData
12 {
13 /// <summary>
16 - /// Gets the library associated with this extension.
14 + /// Gets the default culture.
15 /// </summary>
18 - /// <param name="tableDefinitions">The table definitions to use while loading the library.</param>
19 - /// <returns>The loaded library.</returns>
20 - public override Library GetLibrary(TableDefinitionCollection tableDefinitions)
21 - {
22 - return DirectXExtensionData.GetExtensionLibrary(tableDefinitions);
23 - }
16 + /// <value>The default culture.</value>
17 + public override string DefaultCulture => "en-US";
18
25 - /// <summary>
26 - /// Internal mechanism to access the extension's library.
27 - /// </summary>
28 - /// <returns>Extension's library.</returns>
29 - internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions)
19 + public override Intermediate GetLibrary(ITupleDefinitionCreator tupleDefinitions)
20 {
31 - return ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.DirectX.wixlib", tableDefinitions);
21 + return Intermediate.Load(typeof(DirectXExtensionData).Assembly, "WixToolset.DirectX.directx.wixlib", tupleDefinitions);
22 }
23 }
24 }
src/wixext/DirectXExtensionFactory.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.DirectX
4 +{
5 + using System;
6 + using System.Collections.Generic;
7 + using WixToolset.Extensibility;
8 +
9 + public class DirectXExtensionFactory : BaseExtensionFactory
10 + {
11 + protected override IEnumerable<Type> ExtensionTypes => new[]
12 + {
13 + typeof(DirectXExtensionData),
14 + };
15 + }
16 +}
src/wixext/WixDirectXExtension.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>{6182DBCA-146A-4F37-8406-3139BBE04636}</ProjectGuid>
8 - <AssemblyName>WixDirectXExtension</AssemblyName>
9 - <OutputType>Library</OutputType>
10 - <RootNamespace>WixToolset.Extensions</RootNamespace>
11 - </PropertyGroup>
12 - <ItemGroup>
13 - <Compile Include="AssemblyInfo.cs" />
14 - <Compile Include="DirectXDecompiler.cs" />
15 - <Compile Include="DirectXExtensionData.cs" />
16 - <EmbeddedResource Include="$(OutputPath)\DirectX.wixlib">
17 - <Link>Data\DirectX.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\DirectXExtension.wixproj">
27 - <ReferenceOutputAssembly>false</ReferenceOutputAssembly>
28 - </ProjectReference>
29 - </ItemGroup>
30 - <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
31 -</Project>
src/wixext/WixToolset.DirectX.wixext.csproj new
+31
@@ -0,0 +1,31 @@
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.DirectX</RootNamespace>
8 + <Description>WiX Toolset DirectX Extension</Description>
9 + <Title>WiX Toolset DirectX Extension</Title>
10 + <IsTool>true</IsTool>
11 + <ContentTargetFolders>build</ContentTargetFolders>
12 + </PropertyGroup>
13 +
14 + <ItemGroup>
15 + <Content Include="$(MSBuildThisFileName).targets" />
16 + <EmbeddedResource Include="$(OutputPath)..\directx.wixlib" />
17 + </ItemGroup>
18 +
19 + <ItemGroup>
20 + <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" />
21 + <PackageReference Include="WixToolset.Extensibility" Version="4.0.*" PrivateAssets="all" />
22 + </ItemGroup>
23 +
24 + <ItemGroup>
25 + <ProjectReference Include="..\wixlib\directx.wixproj" ReferenceOutputAssembly="false" Condition=" '$(NCrunch)'=='' " />
26 + </ItemGroup>
27 +
28 + <ItemGroup>
29 + <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" />
30 + </ItemGroup>
31 +</Project>
src/wixext/WixToolset.DirectX.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 + <WixToolsetDirectXWixextPath Condition=" '$(WixToolsetDirectXWixextPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\WixToolset.DirectX.wixext.dll</WixToolsetDirectXWixextPath>
7 + </PropertyGroup>
8 + <ItemGroup>
9 + <WixExtension Include="$(WixToolsetDirectXWixextPath)" />
10 + </ItemGroup>
11 +</Project>
src/wixlib/DirectXExtension.wixproj deleted
-24
@@ -1,24 +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>{4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}</ProjectGuid>
8 - <OutputName>directx</OutputName>
9 - <OutputType>Library</OutputType>
10 - <BindFiles>true</BindFiles>
11 - <Pedantic>true</Pedantic>
12 - <Cultures>en-us</Cultures>
13 - </PropertyGroup>
14 -
15 - <ItemGroup>
16 - <Compile Include="DirectXExtension.wxs" />
17 - </ItemGroup>
18 -
19 - <ItemGroup>
20 - <ProjectReference Include="..\ca\directx.vcxproj" />
21 - </ItemGroup>
22 -
23 - <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" />
24 -</Project>
src/wixlib/DirectXExtension.wxs
+2 -2
@@ -7,11 +7,11 @@
7
8 <!-- DirectX Custom Action DLL Definitions -->
9 <Fragment>
10 - <Binary Id="WixDirectXCA" SourceFile="directx.dll" />
10 + <Binary Id="DirectXCA" SourceFile="directxca.dll" />
11 </Fragment>
12
13 <Fragment>
14 - <CustomAction Id="WixQueryDirectXCaps" BinaryKey="WixDirectXCA" DllEntry="WixQueryDirectXCaps" Return="ignore" />
14 + <CustomAction Id="WixQueryDirectXCaps" BinaryKey="DirectXCA" DllEntry="WixQueryDirectXCaps" Return="ignore" />
15
16 <InstallUISequence>
17 <Custom Action="WixQueryDirectXCaps" Before="LaunchConditions" Overridable="yes">VersionNT &gt; 400</Custom>
src/wixlib/caerr.wxi new
+96
@@ -0,0 +1,96 @@
1 +<Include>
2 + <?define msierrSecureObjectsFailedCreateSD = 25520?>
3 + <?define msierrSecureObjectsFailedSet = 25521?>
4 + <?define msierrSecureObjectsUnknownType = 25522?>
5 + <?define msierrXmlFileFailedRead = 25530?>
6 + <?define msierrXmlFileFailedOpen = 25531?>
7 + <?define msierrXmlFileFailedSelect = 25532?>
8 + <?define msierrXmlFileFailedSave = 25533?>
9 + <?define msierrXmlConfigFailedRead = 25540?>
10 + <?define msierrXmlConfigFailedOpen = 25541?>
11 + <?define msierrXmlConfigFailedSelect = 25542?>
12 + <?define msierrXmlConfigFailedSave = 25543?>
13 + <?define msierrFirewallCannotConnect = 25580?>
14 + <?define msierrIISCannotConnect = 26001?>
15 + <?define msierrIISFailedReadWebSite = 26002?>
16 + <?define msierrIISFailedReadWebDirs = 26003?>
17 + <?define msierrIISFailedReadVDirs = 26004?>
18 + <?define msierrIISFailedReadFilters = 26005?>
19 + <?define msierrIISFailedReadAppPool = 26006?>
20 + <?define msierrIISFailedReadMimeMap = 26007?>
21 + <?define msierrIISFailedReadProp = 26008?>
22 + <?define msierrIISFailedReadWebSvcExt = 26009?>
23 + <?define msierrIISFailedReadWebError = 26010?>
24 + <?define msierrIISFailedReadHttpHeader = 26011?>
25 + <?define msierrIISFailedSchedTransaction = 26031?>
26 + <?define msierrIISFailedSchedInstallWebs = 26032?>
27 + <?define msierrIISFailedSchedInstallWebDirs = 26033?>
28 + <?define msierrIISFailedSchedInstallVDirs = 26034?>
29 + <?define msierrIISFailedSchedInstallFilters = 26035?>
30 + <?define msierrIISFailedSchedInstallAppPool = 26036?>
31 + <?define msierrIISFailedSchedInstallProp = 26037?>
32 + <?define msierrIISFailedSchedInstallWebSvcExt = 26038?>
33 + <?define msierrIISFailedSchedUninstallWebs = 26051?>
34 + <?define msierrIISFailedSchedUninstallWebDirs = 26052?>
35 + <?define msierrIISFailedSchedUninstallVDirs = 26053?>
36 + <?define msierrIISFailedSchedUninstallFilters = 26054?>
37 + <?define msierrIISFailedSchedUninstallAppPool = 26055?>
38 + <?define msierrIISFailedSchedUninstallProp = 26056?>
39 + <?define msierrIISFailedSchedUninstallWebSvcExt = 26057?>
40 + <?define msierrIISFailedStartTransaction = 26101?>
41 + <?define msierrIISFailedOpenKey = 26102?>
42 + <?define msierrIISFailedCreateKey = 26103?>
43 + <?define msierrIISFailedWriteData = 26104?>
44 + <?define msierrIISFailedCreateApp = 26105?>
45 + <?define msierrIISFailedDeleteKey = 26106?>
46 + <?define msierrIISFailedDeleteApp = 26107?>
47 + <?define msierrIISFailedDeleteValue = 26108?>
48 + <?define msierrIISFailedCommitInUse = 26109?>
49 + <?define msierrSQLFailedCreateDatabase = 26201?>
50 + <?define msierrSQLFailedDropDatabase = 26202?>
51 + <?define msierrSQLFailedConnectDatabase = 26203?>
52 + <?define msierrSQLFailedExecString = 26204?>
53 + <?define msierrSQLDatabaseAlreadyExists = 26205?>
54 + <?define msierrPERFMONFailedRegisterDLL = 26251?>
55 + <?define msierrPERFMONFailedUnregisterDLL = 26252?>
56 + <?define msierrInstallPerfCounterData = 26253?>
57 + <?define msierrUninstallPerfCounterData = 26254?>
58 + <?define msierrSMBFailedCreate = 26301?>
59 + <?define msierrSMBFailedDrop = 26302?>
60 + <?define msierrCERTFailedOpen = 26351?>
61 + <?define msierrCERTFailedAdd = 26352?>
62 + <?define msierrUSRFailedUserCreate = 26401?>
63 + <?define msierrUSRFailedUserCreatePswd = 26402?>
64 + <?define msierrUSRFailedUserGroupAdd = 26403?>
65 + <?define msierrUSRFailedUserCreateExists = 26404?>
66 + <?define msierrUSRFailedGrantLogonAsService = 26405?>
67 + <?define msierrDependencyMissingDependencies = 26451?>
68 + <?define msierrDependencyHasDependents = 26452?>
69 + <?define msierrDotNetRuntimeRequired = 27000?>
70 + <?define msierrComPlusCannotConnect = 28001?>
71 + <?define msierrComPlusPartitionReadFailed = 28002?>
72 + <?define msierrComPlusPartitionRoleReadFailed = 28003?>
73 + <?define msierrComPlusUserInPartitionRoleReadFailed = 28004?>
74 + <?define msierrComPlusPartitionUserReadFailed = 28005?>
75 + <?define msierrComPlusApplicationReadFailed = 28006?>
76 + <?define msierrComPlusApplicationRoleReadFailed = 28007?>
77 + <?define msierrComPlusUserInApplicationRoleReadFailed = 28008?>
78 + <?define msierrComPlusAssembliesReadFailed = 28009?>
79 + <?define msierrComPlusSubscriptionReadFailed = 28010?>
80 + <?define msierrComPlusPartitionDependency = 28011?>
81 + <?define msierrComPlusPartitionNotFound = 28012?>
82 + <?define msierrComPlusPartitionIdConflict = 28013?>
83 + <?define msierrComPlusPartitionNameConflict = 28014?>
84 + <?define msierrComPlusApplicationDependency = 28015?>
85 + <?define msierrComPlusApplicationNotFound = 28016?>
86 + <?define msierrComPlusApplicationIdConflict = 28017?>
87 + <?define msierrComPlusApplicationNameConflict = 28018?>
88 + <?define msierrComPlusApplicationRoleDependency = 28019?>
89 + <?define msierrComPlusApplicationRoleNotFound = 28020?>
90 + <?define msierrComPlusApplicationRoleConflict = 28021?>
91 + <?define msierrComPlusAssemblyDependency = 28022?>
92 + <?define msierrComPlusSubscriptionIdConflict = 28023?>
93 + <?define msierrComPlusSubscriptionNameConflict = 28024?>
94 + <?define msierrComPlusFailedLookupNames = 28025?>
95 + <?define msierrMsmqCannotConnect = 28101?>
96 +</Include>
\ No newline at end of file
src/wixlib/directx.wixproj new
+40
@@ -0,0 +1,40 @@
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 +<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-0005\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props')" />
5 + <Import Project="..\FindLocalWix.props" />
6 + <PropertyGroup>
7 + <ProjectGuid>{4D8DDEC7-AAAC-4A32-87D0-5992FE382ED9}</ProjectGuid>
8 + <OutputName>directx</OutputName>
9 + <OutputType>Library</OutputType>
10 + <BindFiles>true</BindFiles>
11 + <Pedantic>true</Pedantic>
12 + <Cultures>en-us</Cultures>
13 + </PropertyGroup>
14 +
15 + <ItemGroup>
16 + <Compile Include="DirectXExtension.wxs" />
17 + </ItemGroup>
18 + <ItemGroup>
19 + <None Include="packages.config" />
20 + </ItemGroup>
21 + <ItemGroup>
22 + <ProjectReference Include="..\ca\directxca.vcxproj">
23 + <Name>directxca</Name>
24 + <Project>{76542B28-0FFD-47D3-AD6A-D0F20FA875AC}</Project>
25 + </ProjectReference>
26 + </ItemGroup>
27 + <Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' AND Exists('$(WixTargetsPath)') " />
28 + <Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets') " />
29 + <Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' ">
30 + <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/." />
31 + </Target>
32 + <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
33 + <PropertyGroup>
34 + <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>
35 + </PropertyGroup>
36 + <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'))" />
37 + <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0005\build\WixToolset.MSBuild.props'))" />
38 + </Target>
39 + <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" />
40 +</Project>
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-0005" developmentDependency="true" targetFramework="net40" />
5 +</packages>
\ No newline at end of file
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 +}