@joebigelow / wix-1 / commits / d74e3dd4

Add initial WixUtilBundleExtension.

Sean Hall committed Mar 28, 2020 at 17:03 UTC d74e3dd4bcc573d0c4b1fb5c36c8bf0115cc21a1
10 files changed +143 -3
Util.wixext.sln
+11
@@ -3,6 +3,8 @@ 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}") = "utilbe", "src\be\utilbe.vcxproj", "{630C1EE7-2517-4A8C-83E3-DA1150308B58}"
7 +EndProject
8 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "utilca", "src\ca\utilca.vcxproj", "{076018F7-19BD-423A-ABBF-229273DA08D8}"
9 EndProject
10 Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "util", "src\wixlib\util.wixproj", "{1ACFFEFD-505A-41A5-ACBF-A02B7B473AA2}"
@@ -21,6 +23,15 @@ Global
23 Release|x86 = Release|x86
24 EndGlobalSection
25 GlobalSection(ProjectConfigurationPlatforms) = postSolution
26 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Debug|Any CPU.ActiveCfg = Debug|Win32
27 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Debug|Any CPU.Build.0 = Debug|Win32
28 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Debug|x64.ActiveCfg = Debug|Win32
29 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Debug|x86.ActiveCfg = Debug|Win32
30 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Debug|x86.Build.0 = Debug|Win32
31 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Release|Any CPU.ActiveCfg = Release|Win32
32 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Release|x64.ActiveCfg = Release|Win32
33 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Release|x86.ActiveCfg = Release|Win32
34 + {630C1EE7-2517-4A8C-83E3-DA1150308B58}.Release|x86.Build.0 = Release|Win32
35 {076018F7-19BD-423A-ABBF-229273DA08D8}.Debug|Any CPU.ActiveCfg = Debug|Win32
36 {076018F7-19BD-423A-ABBF-229273DA08D8}.Debug|Any CPU.Build.0 = Debug|Win32
37 {076018F7-19BD-423A-ABBF-229273DA08D8}.Debug|x64.ActiveCfg = Debug|Win32
src/be/packages.config new
+5
@@ -0,0 +1,5 @@
1 +<?xml version="1.0" encoding="utf-8"?>
2 +<packages>
3 + <package id="WixToolset.BootstrapperCore.Native" version="4.0.13" targetFramework="native" />
4 + <package id="WixToolset.DUtil" version="4.0.18" targetFramework="native" />
5 +</packages>
\ No newline at end of file
src/be/precomp.cpp new
+3
@@ -0,0 +1,3 @@
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 +#include "precomp.h"
src/be/precomp.h new
+25
@@ -0,0 +1,25 @@
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 +
5 +#if _WIN32_MSI < 150
6 +#define _WIN32_MSI 150
7 +#endif
8 +
9 +#include <windows.h>
10 +#include <msiquery.h>
11 +#include <msidefs.h>
12 +#include <stierr.h>
13 +
14 +#include <strsafe.h>
15 +
16 +#include <msxml2.h>
17 +
18 +#define MAXUINT USHRT_MAX
19 +
20 +#include "dutil.h"
21 +#include "memutil.h"
22 +
23 +#include "BootstrapperEngine.h"
24 +#include "BundleExtensionEngine.h"
25 +#include "BundleExtension.h"
src/be/utilbe.cpp new
+19
@@ -0,0 +1,19 @@
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 +#include "precomp.h"
4 +
5 +// function definitions
6 +
7 +extern "C" HRESULT WINAPI BundleExtensionCreate(
8 + __in const BUNDLE_EXTENSION_CREATE_ARGS* /*pArgs*/,
9 + __inout BUNDLE_EXTENSION_CREATE_RESULTS* /*pResults*/
10 + )
11 +{
12 + HRESULT hr = S_OK;
13 +
14 + return hr;
15 +}
16 +
17 +extern "C" void WINAPI BundleExtensionDestroy()
18 +{
19 +}
\ No newline at end of file
src/be/utilbe.def new
+8
@@ -0,0 +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 +
4 +LIBRARY "utilbe"
5 +
6 +EXPORTS
7 + BundleExtensionCreate
8 + BundleExtensionDestroy
src/be/utilbe.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.BootstrapperCore.Native.4.0.13\build\WixToolset.BootstrapperCore.Native.props" Condition="Exists('..\..\packages\WixToolset.BootstrapperCore.Native.4.0.13\build\WixToolset.BootstrapperCore.Native.props')" />
6 + <Import Project="..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.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>{630C1EE7-2517-4A8C-83E3-DA1150308B58}</ProjectGuid>
21 + <ConfigurationType>DynamicLibrary</ConfigurationType>
22 + <TargetName>utilbe</TargetName>
23 + <PlatformToolset>v141</PlatformToolset>
24 + <CharacterSet>Unicode</CharacterSet>
25 + <ProjectModuleDefinitionFile>utilbe.def</ProjectModuleDefinitionFile>
26 + <Description>WiX Toolset Util BundleExtension</Description>
27 + </PropertyGroup>
28 +
29 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
30 + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
31 +
32 + <PropertyGroup>
33 + <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries>
34 + </PropertyGroup>
35 +
36 + <ItemGroup>
37 + <ClCompile Include="precomp.cpp">
38 + <PrecompiledHeader>Create</PrecompiledHeader>
39 + </ClCompile>
40 + <ClCompile Include="utilbe.cpp" />
41 + </ItemGroup>
42 +
43 + <ItemGroup>
44 + <ClInclude Include="precomp.h" />
45 + </ItemGroup>
46 +
47 + <ItemGroup>
48 + <None Include="packages.config" />
49 + <None Include="utilbe.def" />
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.BootstrapperCore.Native.4.0.13\build\WixToolset.BootstrapperCore.Native.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.BootstrapperCore.Native.4.0.13\build\WixToolset.BootstrapperCore.Native.props'))" />
59 + <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.18\build\WixToolset.DUtil.props'))" />
60 + </Target>
61 +</Project>
src/wixlib/UtilExtension.wxs
+4
@@ -418,4 +418,8 @@
418 <PropertyRef Id="WixSilentExec64CmdLine" />
419 <CustomAction Id="$(var.Prefix)SilentExec64$(var.Suffix)" BinaryKey="$(var.Prefix)UtilCA$(var.Suffix)" DllEntry="WixSilentExec64" Execute="immediate" Return="check" Impersonate="yes" />
420 </Fragment>
421 +
422 + <Fragment>
423 + <BundleExtension Id="WixUtilBundleExtension" SourceFile="utilbe.dll" Name="WixUtilBundleExtension\utilbe.dll" />
424 + </Fragment>
425 </Wix>
src/wixlib/packages.config
+1 -1
@@ -1,5 +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-0063" developmentDependency="true" targetFramework="net40" />
4 + <package id="WixToolset.MSBuild" version="4.0.0-build-0080" developmentDependency="true" targetFramework="net40" />
5 </packages>
\ No newline at end of file
src/wixlib/util.wixproj
+6 -2
@@ -1,7 +1,7 @@
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-0063\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0063\build\WixToolset.MSBuild.props')" />
4 + <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props')" />
5 <Import Project="..\FindLocalWix.props" />
6 <PropertyGroup>
7 <ProjectGuid>{1ACFFEFD-505A-41A5-ACBF-A02B7B473AA2}</ProjectGuid>
@@ -26,6 +26,10 @@
26 <None Include="packages.config" />
27 </ItemGroup>
28 <ItemGroup>
29 + <ProjectReference Include="..\be\utilbe.vcxproj">
30 + <Name>utilbe</Name>
31 + <Project>{630C1EE7-2517-4A8C-83E3-DA1150308B58}</Project>
32 + </ProjectReference>
33 <ProjectReference Include="..\ca\utilca.vcxproj">
34 <Name>utilca</Name>
35 <Project>{076018F7-19BD-423A-ABBF-229273DA08D8}</Project>
@@ -46,7 +50,7 @@
50 <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>
51 </PropertyGroup>
52 <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'))" />
49 - <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0063\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0063\build\WixToolset.MSBuild.props'))" />
53 + <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0080\build\WixToolset.MSBuild.props'))" />
54 </Target>
55 <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" />
56 </Project>