aeb0657dff
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
84 lines
4.0 KiB
XML
84 lines
4.0 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!--
|
|
SPDX-License-Identifier: GPL-2.0
|
|
|
|
Copyright (C) 2018-2019 WireGuard LLC. All Rights Reserved.
|
|
-->
|
|
<Project
|
|
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
|
|
ToolsVersion="4.0"
|
|
InitialTargets="EnsureWixToolsetInstalled"
|
|
DefaultTargets="Build">
|
|
<PropertyGroup>
|
|
<Configuration Condition="'$(Configuration)'==''">Release</Configuration>
|
|
<Platform Condition="'$(Platform)'==''">x64</Platform>
|
|
<ProjectGuid>{F95A1EBF-1E19-47D4-9D8C-4F0C41B9E3B8}</ProjectGuid>
|
|
<ProjectName>wintun</ProjectName>
|
|
<OutputType>Module</OutputType>
|
|
<DefineSolutionProperties>false</DefineSolutionProperties>
|
|
</PropertyGroup>
|
|
|
|
<Import Project="wintun.props"/>
|
|
|
|
<PropertyGroup>
|
|
<IntermediateOutputPath>$(WintunPlatform)\$(Configuration)\</IntermediateOutputPath>
|
|
<OutputPath>$(WintunPlatform)\$(Configuration)\</OutputPath>
|
|
<OutputName>$(ProjectName)</OutputName>
|
|
<DefineConstants>WINTUN_VERSION=$(WintunVersion);$(DefineConstants)</DefineConstants>
|
|
<SuppressSpecificWarnings>1006;1086;$(SuppressSpecificWarnings)</SuppressSpecificWarnings>
|
|
<LinkerSuppressSpecificWarnings>1103;$(LinkerSuppressSpecificWarnings)</LinkerSuppressSpecificWarnings>
|
|
<SuppressIces>ICE30;$(SuppressIces)</SuppressIces>
|
|
<LinkerAdditionalOptions>-b output_dir="$(IntermediateOutputPath.TrimEnd('\'))" -b whql_dir="$(WintunPlatform)\$(Configuration)\whql" $(LinkerAdditionalOptions)</LinkerAdditionalOptions>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(Configuration)'=='Release'">
|
|
<SuppressPdbOutput>true</SuppressPdbOutput>
|
|
<OutputPath>$(DistributionDir)</OutputPath>
|
|
<OutputName>$(ProjectName)-$(WintunPlatform)-$(WintunVersionStr)</OutputName>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<Compile Include="wintun.wxs"/>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<WixExtension Include="WixDifxAppExtension">
|
|
<HintPath>$(WixExtDir)\WixDifxAppExtension.dll</HintPath>
|
|
<Name>WixDifxAppExtension</Name>
|
|
</WixExtension>
|
|
<WixExtension Include="WixIIsExtension">
|
|
<HintPath>$(WixExtDir)\WixIIsExtension.dll</HintPath>
|
|
<Name>WixIIsExtension</Name>
|
|
</WixExtension>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<WixLibrary Include="difxapp_$(Platform).wixlib">
|
|
<HintPath>$(WixExtDir)\difxapp_$(Platform).wixlib</HintPath>
|
|
<Name>difxapp</Name>
|
|
</WixLibrary>
|
|
</ItemGroup>
|
|
|
|
<Import Project="$(MSBuildProjectName).user" Condition="exists('$(MSBuildProjectName).user')"/>
|
|
<Import Project="$(WixTargetsPath)" Condition="'$(WixTargetsPath)'!=''"/>
|
|
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets" Condition="'$(WixTargetsPath)'=='' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets')"/>
|
|
<Target Name="EnsureWixToolsetInstalled" Condition="'$(WixTargetsImported)'!='true'">
|
|
<Error Text="The WiX Toolset v3.11 (or newer) build tools must be installed to build this project. To download the WiX Toolset, see http://wixtoolset.org/releases/"/>
|
|
</Target>
|
|
|
|
<Import Project="wintun.vcxproj.user" Condition="exists('wintun.vcxproj.user')"/>
|
|
<PropertyGroup>
|
|
<SigningCertificate Condition="$(SignMode)=='TestSign' And '$(TestCertificate)'!=''">$(TestCertificate)</SigningCertificate>
|
|
<SigningCertificate Condition="$(SignMode)=='ProductionSign' And '$(ProductionCertificate)'!=''">$(ProductionCertificate)</SigningCertificate>
|
|
<BuildDependsOn Condition="'$(SigningCertificate)'!='' And '$(TimeStampServer)'!=''">$(BuildDependsOn);SignTarget</BuildDependsOn>
|
|
<CleanDependsOn>CleanSignTarget;$(CleanDependsOn)</CleanDependsOn>
|
|
</PropertyGroup>
|
|
<Target
|
|
Name="SignTarget"
|
|
Inputs="$(TargetPath)"
|
|
Outputs="$(IntermediateOutputPath)$(TargetName).sign">
|
|
<Exec Command="signtool.exe sign /sha1 "$(SigningCertificate)" /fd sha256 /tr "$(TimeStampServer)" /td sha256 "$(TargetPath)"" />
|
|
<Touch Files="$(IntermediateOutputPath)$(TargetName).sign" AlwaysCreate="true"/>
|
|
</Target>
|
|
<Target Name="CleanSignTarget">
|
|
<Delete Files="$(IntermediateOutputPath)$(TargetName).sign"/>
|
|
</Target>
|
|
</Project>
|