MSM: Install driver files to C:\Program Files\Wintun

This is temporary until we figure out how to use WiX's Difx to install
driver without leaving staged driver files behind.

Signed-off-by: Simon Rozman <simon@rozman.si>
This commit is contained in:
Simon Rozman 2019-04-19 16:19:49 +02:00
parent 13183d8ac6
commit a979361217
2 changed files with 30 additions and 1 deletions

View File

@ -25,6 +25,7 @@
<OutputPath>$(WintunPlatform)\$(Configuration)\</OutputPath> <OutputPath>$(WintunPlatform)\$(Configuration)\</OutputPath>
<OutputName>$(ProjectName)</OutputName> <OutputName>$(ProjectName)</OutputName>
<DefineConstants>WINTUN_VERSION=$(WintunVersion);$(DefineConstants)</DefineConstants> <DefineConstants>WINTUN_VERSION=$(WintunVersion);$(DefineConstants)</DefineConstants>
<SuppressSpecificWarnings>1006;1086;$(SuppressSpecificWarnings)</SuppressSpecificWarnings>
<CompilerAdditionalOptions>-ext WixDifxAppExtension -ext WixIIsExtension $(CompilerAdditionalOptions)</CompilerAdditionalOptions> <CompilerAdditionalOptions>-ext WixDifxAppExtension -ext WixIIsExtension $(CompilerAdditionalOptions)</CompilerAdditionalOptions>
<LinkerSuppressSpecificWarnings>1103;$(LinkerSuppressSpecificWarnings)</LinkerSuppressSpecificWarnings> <LinkerSuppressSpecificWarnings>1103;$(LinkerSuppressSpecificWarnings)</LinkerSuppressSpecificWarnings>
<LinkerAdditionalOptions>-ext WixDifxAppExtension -ext WixIIsExtension -b output_dir="$(IntermediateOutputPath.TrimEnd('\'))" $(LinkerAdditionalOptions)</LinkerAdditionalOptions> <LinkerAdditionalOptions>-ext WixDifxAppExtension -ext WixIIsExtension -b output_dir="$(IntermediateOutputPath.TrimEnd('\'))" $(LinkerAdditionalOptions)</LinkerAdditionalOptions>

View File

@ -4,6 +4,11 @@
Copyright (C) 2018-2019 WireGuard LLC. All Rights Reserved. Copyright (C) 2018-2019 WireGuard LLC. All Rights Reserved.
--> -->
<?if $(var.Platform) = x86?>
<?define PlatformProgramFilesFolder = "ProgramFilesFolder"?>
<?else?>
<?define PlatformProgramFilesFolder = "ProgramFiles64Folder"?>
<?endif?>
<Wix <Wix
xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns="http://schemas.microsoft.com/wix/2006/wi"
xmlns:diffx="http://schemas.microsoft.com/wix/DifxAppExtension" xmlns:diffx="http://schemas.microsoft.com/wix/DifxAppExtension"
@ -21,7 +26,7 @@
<Binary Id="wintun.cer" SourceFile="!(bindpath.output_dir)wintun.cer"/> <Binary Id="wintun.cer" SourceFile="!(bindpath.output_dir)wintun.cer"/>
<Directory Id="TARGETDIR" Name="SourceDir"> <Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="MergeRedirectFolder"> <Directory Id="WintunFolder">
<Component Id="wintun.cat" Guid="41fbe711-a1af-4b83-8b5d-fc1b112969c1"> <Component Id="wintun.cat" Guid="41fbe711-a1af-4b83-8b5d-fc1b112969c1">
<File <File
Id="wintun.cat" Id="wintun.cat"
@ -58,5 +63,28 @@
</Component> </Component>
</Directory> </Directory>
</Directory> </Directory>
<!--
The WintunFolder is relocated inside product folder when our module is merged.
To avoid this, set WintunFolder property to [ProgramFilesFolder]\Wintun explicitly
in each installer sequence.
-->
<Property Id="$(var.PlatformProgramFilesFolder)" SuppressModularization="yes"/><!-- This will produce CNDL1006 and CNDL1086 warnings, but it prevents "[ProgramFiles(64)Folder]" from being modularized to "[ProgramFiles(64)Folder.C28309D9_1954_4F2D_A7D1_228850092460]". -->
<CustomAction Id="WintunFolder" Property="WintunFolder" Value="[$(var.PlatformProgramFilesFolder)]\Wintun"/>
<AdminExecuteSequence>
<Custom Action="WintunFolder" Before="CostInitialize"/>
</AdminExecuteSequence>
<AdminUISequence>
<Custom Action="WintunFolder" Before="CostInitialize"/>
</AdminUISequence>
<AdvertiseExecuteSequence>
<Custom Action="WintunFolder" Before="CostInitialize"/>
</AdvertiseExecuteSequence>
<InstallExecuteSequence>
<Custom Action="WintunFolder" Before="CostInitialize"/>
</InstallExecuteSequence>
<InstallUISequence>
<Custom Action="WintunFolder" Before="CostInitialize"/>
</InstallUISequence>
</Module> </Module>
</Wix> </Wix>