2019-07-22 09:36:21 +02:00
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets= "Build" ToolsVersion= "15.0" xmlns= "http://schemas.microsoft.com/developer/msbuild/2003" >
<ItemGroup Label= "ProjectConfigurations" >
<ProjectConfiguration Include= "Debug|ARM64" >
<Configuration > Debug</Configuration>
<Platform > ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Debug|Win32" >
<Configuration > Debug</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Release|ARM64" >
<Configuration > Release</Configuration>
<Platform > ARM64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Release|Win32" >
<Configuration > Release</Configuration>
<Platform > Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Debug|x64" >
<Configuration > Debug</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include= "Release|x64" >
<Configuration > Release</Configuration>
<Platform > x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label= "Globals" >
<VCProjectVersion > 16.0</VCProjectVersion>
<ProjectGuid > {D19E6354-A643-4ACC-82D5-B2780BB83475}</ProjectGuid>
<Keyword > Win32Proj</Keyword>
<RootNamespace > installer</RootNamespace>
<WindowsTargetPlatformVersion > 10.0</WindowsTargetPlatformVersion>
<ProjectName > installer</ProjectName>
</PropertyGroup>
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|Win32'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
<UseDebugLibraries > true</UseDebugLibraries>
<SpectreMitigation > false</SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Release|Win32'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<WholeProgramOptimization > true</WholeProgramOptimization>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
<SpectreMitigation > false</SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|x64'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
<UseDebugLibraries > true</UseDebugLibraries>
<SpectreMitigation > false</SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
<UseDebugLibraries > true</UseDebugLibraries>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Release|x64'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<WholeProgramOptimization > true</WholeProgramOptimization>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
<SpectreMitigation > false</SpectreMitigation>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)|$(Platform)'=='Release|ARM64'" Label= "Configuration" >
<ConfigurationType > DynamicLibrary</ConfigurationType>
<WholeProgramOptimization > true</WholeProgramOptimization>
<CharacterSet > Unicode</CharacterSet>
<PlatformToolset > v142</PlatformToolset>
</PropertyGroup>
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label= "ExtensionSettings" >
</ImportGroup>
<ImportGroup Label= "Shared" >
</ImportGroup>
<ImportGroup Label= "PropertySheets" Condition= "'$(Configuration)|$(Platform)'=='Debug|Win32'" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<ImportGroup Label= "PropertySheets" Condition= "'$(Configuration)|$(Platform)'=='Release|Win32'" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<ImportGroup Label= "PropertySheets" Condition= "'$(Configuration)|$(Platform)'=='Debug|x64'" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<ImportGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label= "PropertySheets" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<ImportGroup Label= "PropertySheets" Condition= "'$(Configuration)|$(Platform)'=='Release|x64'" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<ImportGroup Condition= "'$(Configuration)|$(Platform)'=='Release|ARM64'" Label= "PropertySheets" >
<Import Project= "$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition= "exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label= "LocalAppDataPlatform" />
<Import Project= "..\wintun.props" />
</ImportGroup>
<PropertyGroup Label= "UserMacros" />
2020-05-05 13:14:36 +02:00
<PropertyGroup >
<InstallerVersionMin > 200</InstallerVersionMin>
<InstallerVersionMin Condition= "'$(Platform)'=='ARM64'" > 500</InstallerVersionMin>
</PropertyGroup>
2019-07-22 09:36:21 +02:00
<PropertyGroup >
<OutDir > ..\$(WintunPlatform)\$(Configuration)\</OutDir>
2020-07-03 12:26:06 +02:00
<IntDir > ..\$(WintunPlatform)\$(Configuration)\$(ProjectName)-intermediate\</IntDir>
2019-07-22 09:36:21 +02:00
<CodeAnalysisRuleSet > NativeRecommendedRules.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis > true</RunCodeAnalysis>
<LocalDebuggerCommand > rundll32.exe</LocalDebuggerCommand>
2019-08-05 13:32:03 +02:00
<LocalDebuggerCommandArguments > $(OutDir)$(TargetName)$(TargetExt),InstallWintun</LocalDebuggerCommandArguments>
2019-07-22 09:36:21 +02:00
<DebuggerFlavor > WindowsLocalDebugger</DebuggerFlavor>
2019-08-05 13:32:03 +02:00
<WixArch Condition= "'$(Platform)'=='Win32'" > x86</WixArch>
<WixArch Condition= "'$(Platform)'=='x64'" > x64</WixArch>
<WixArch Condition= "'$(Platform)'=='ARM64'" > arm64</WixArch>
2020-05-05 13:14:36 +02:00
<WixCandleFlags > $(WixCandleFlags) -nologo -arch $(WixArch) -dWINTUN_PLATFORM=$(WintunPlatform) -dWINTUN_VERSION=$(WintunVersion) -dINSTALLER_VERSION_MIN=$(InstallerVersionMin) -sw1086</WixCandleFlags>
2019-08-05 13:32:03 +02:00
<WixLightFlags > $(WixLightFlags) -nologo -b output_dir="$(OutDir.TrimEnd('\'))" -spdb -sw1076 -sw1079</WixLightFlags>
2020-07-24 09:39:02 +02:00
<WixLightFlags Condition= "'$(Platform)'=='x64'" > $(WixLightFlags) -b output_dir_wow64="..\x86\$(Configuration)"</WixLightFlags>
<WixLightFlags Condition= "'$(Platform)'=='ARM64'" > $(WixLightFlags) -b output_dir_wow64="..\arm\$(Configuration)"</WixLightFlags>
2019-08-05 13:32:03 +02:00
<WixOutputPath > $(OutDir)</WixOutputPath>
<WixOutputName > wintun</WixOutputName>
<WixOutputExt > .msm</WixOutputExt>
</PropertyGroup>
<PropertyGroup Condition= "'$(Configuration)'=='Release'" >
<WixOutputPath > ..\$(DistributionDir)</WixOutputPath>
<WixOutputName > wintun-$(WintunPlatform)-$(WintunVersionStr)</WixOutputName>
2019-07-22 09:36:21 +02:00
</PropertyGroup>
<ItemDefinitionGroup >
<ClCompile >
<PreprocessorDefinitions > _WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
2020-03-10 08:47:13 +01:00
<PreprocessorDefinitions Condition= "'$(Platform)'=='Win32' Or '$(Platform)'=='x64' Or '$(Configuration)'=='Debug'" > HAVE_EV;%(PreprocessorDefinitions)</PreprocessorDefinitions>
2019-07-22 09:36:21 +02:00
<PreprocessorDefinitions Condition= "Exists('..\$(WintunPlatform)\$(Configuration)\whql\')" > HAVE_WHQL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<ResourceCompile >
<AdditionalIncludeDirectories > ..\$(WintunPlatform)\$(Configuration);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
2020-03-10 08:47:13 +01:00
<PreprocessorDefinitions Condition= "'$(Platform)'=='Win32' Or '$(Platform)'=='x64' Or '$(Configuration)'=='Debug'" > HAVE_EV;%(PreprocessorDefinitions)</PreprocessorDefinitions>
2019-07-22 09:36:21 +02:00
<PreprocessorDefinitions Condition= "Exists('..\$(WintunPlatform)\$(Configuration)\whql\')" > HAVE_WHQL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
<Link >
<ModuleDefinitionFile > exports.def</ModuleDefinitionFile>
<AdditionalDependencies > newdev.lib;ntdll.lib;Crypt32.lib;Msi.lib;Setupapi.lib;shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<SubSystem > Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition= "'$(Configuration)'=='Debug'" >
<ClCompile >
<PreprocessorDefinitions > _DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary > MultiThreadedDebug</RuntimeLibrary>
</ClCompile>
<ResourceCompile >
<PreprocessorDefinitions > _DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition= "'$(Configuration)'=='Release'" >
<ClCompile >
<PreprocessorDefinitions > NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary > MultiThreaded</RuntimeLibrary>
</ClCompile>
<ResourceCompile >
<PreprocessorDefinitions > NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ResourceCompile>
<Link >
<EnableCOMDATFolding > true</EnableCOMDATFolding>
<OptimizeReferences > true</OptimizeReferences>
<LinkTimeCodeGeneration > UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|x64'" />
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Debug|ARM64'" />
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Release|Win32'" />
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Release|x64'" />
<ItemDefinitionGroup Condition= "'$(Configuration)|$(Platform)'=='Release|ARM64'" />
<ItemGroup >
<ClCompile Include= "installation.c" />
<ClCompile Include= "msi.c" />
<ClCompile Include= "rundll32.c" />
</ItemGroup>
<ItemGroup >
<ResourceCompile Include= "resources.rc" />
</ItemGroup>
<ItemGroup >
<ClInclude Include= "installation.h" />
</ItemGroup>
<ItemGroup >
<None Include= "exports.def" />
<None Include= "installer.wxs" />
</ItemGroup>
<Import Project= "$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label= "ExtensionTargets" >
</ImportGroup>
<Import Project= "..\wintun.vcxproj.user" Condition= "exists('..\wintun.vcxproj.user')" />
<PropertyGroup >
2019-08-28 09:32:26 +02:00
<BuildDependsOn > $(BuildDependsOn);TestSignTarget;ProductionSignTarget</BuildDependsOn>
<MSMDependsOn > $(MSMDependsOn);WixCompile;WixLink;WixTestSign;WixProductionSign</MSMDependsOn>
2019-08-05 13:32:03 +02:00
<CleanDependsOn > CleanSignTarget;WixClean;$(CleanDependsOn)</CleanDependsOn>
2019-07-22 09:36:21 +02:00
</PropertyGroup>
2019-08-28 09:32:26 +02:00
<Target Name= "TestSignTarget" Condition= "$(SignMode)=='TestSign'" Inputs= "$(TargetPath)" Outputs= "$(IntermediateOutputPath)$(TargetName).sign" >
<Exec Command= ""$(SignToolPath)" sign /sha1 "$(TestCertificate)" /fd sha256 "$(TargetPath)"" />
<Touch Files= "$(IntermediateOutputPath)$(TargetName).sign" AlwaysCreate= "true" />
</Target>
<Target Name= "ProductionSignTarget" Condition= "$(SignMode)=='ProductionSign'" Inputs= "$(TargetPath)" Outputs= "$(IntermediateOutputPath)$(TargetName).sign" >
<Exec Command= ""$(SignToolPath)" sign /sha1 "$(ProductionCertificate)" /fd sha256 /tr "$(TimeStampServer)" /td sha256 "$(TargetPath)"" />
2019-07-22 09:36:21 +02:00
<Touch Files= "$(IntermediateOutputPath)$(TargetName).sign" AlwaysCreate= "true" />
</Target>
<Target Name= "CleanSignTarget" >
<Delete Files= "$(IntermediateOutputPath)$(TargetName).sign" />
</Target>
2019-08-05 13:32:03 +02:00
<Target Name= "HashInstallerLibrary" DependsOnTargets= "Build" >
<GetFileHash Files= "$(OutDir)$(TargetName)$(TargetExt)" Algorithm= "SHA256" HashEncoding= "hex" >
<Output TaskParameter= "Items" ItemName= "InstallerLibraryHash" />
</GetFileHash>
<PropertyGroup >
<WixCandleFlags > $(WixCandleFlags) -dINSTALLER_LIBRARY_HASH=@(InstallerLibraryHash->Metadata('FileHash')) -dINSTALLER_LIBRARY_TIME=$([System.IO.File]::GetLastWriteTime('$(OutDir)$(TargetName)$(TargetExt)').Ticks)</WixCandleFlags>
</PropertyGroup>
</Target>
<Target Name= "WixCompile" DependsOnTargets= "HashInstallerLibrary" Inputs= "installer.wxs" Outputs= "$(IntDir)installer.wixobj" >
<Exec Command= ""$(WIX)bin\candle.exe" $(WixCandleFlags) -out "$(IntDir)installer.wixobj" installer.wxs" />
</Target>
<Target Name= "WixLink" DependsOnTargets= "Build;WixCompile" Inputs= "$(IntDir)installer.wixobj;$(OutDir)$(TargetName)$(TargetExt)" Outputs= "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)" >
2020-05-05 15:40:04 +02:00
<Exec Command= ""$(WIX)bin\light.exe" $(WixLightFlags) -out "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)" "$(IntDir)installer.wixobj"" IgnoreExitCode= "true" />
2019-08-05 13:32:03 +02:00
</Target>
2019-08-28 09:32:26 +02:00
<Target Name= "WixTestSign" Condition= "$(SignMode)=='TestSign'" DependsOnTargets= "WixLink" Inputs= "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)" Outputs= "$(IntDir)$(WixOutputName).sign" >
<Exec Command= ""$(SignToolPath)" sign /sha1 "$(TestCertificate)" /fd sha256 "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)"" />
<Touch Files= "$(IntDir)$(WixOutputName).sign" AlwaysCreate= "true" />
</Target>
<Target Name= "WixProductionSign" Condition= "$(SignMode)=='ProductionSign'" DependsOnTargets= "WixLink" Inputs= "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)" Outputs= "$(IntDir)$(WixOutputName).sign" >
<Exec Command= ""$(SignToolPath)" sign /sha1 "$(ProductionCertificate)" /fd sha256 /tr "$(TimeStampServer)" /td sha256 "$(WixOutputPath)$(WixOutputName)$(WixOutputExt)"" />
2019-08-05 13:32:03 +02:00
<Touch Files= "$(IntDir)$(WixOutputName).sign" AlwaysCreate= "true" />
</Target>
<Target Name= "WixClean" >
<Delete Files= "$(IntDir)installer.wixobj;$(WixOutputPath)$(WixOutputName)$(WixOutputExt);$(IntDir)$(WixOutputName).sign" />
</Target>
<Target Name= "MSM" DependsOnTargets= "$(MSMDependsOn)" />
2019-07-22 09:36:21 +02:00
</Project>