-
Notifications
You must be signed in to change notification settings - Fork 697
/
environment.props
95 lines (90 loc) · 5.92 KB
/
environment.props
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT License. See LICENSE in the project root for license information. -->
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<MUXCProjectRoot>$(MSBuildThisFileDirectory)</MUXCProjectRoot>
<MUXProjectRoot>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)..'))\</MUXProjectRoot>
<ProjectRoot>$(MUXProjectRoot)</ProjectRoot>
<NuGetPackageRoot Condition="'$(NuGetPackageRoot)' == ''">$(MUXProjectRoot)packages</NuGetPackageRoot>
<NugetPackageDirectory>$(NuGetPackageRoot)</NugetPackageDirectory>
</PropertyGroup>
<PropertyGroup>
<PlatformToolset>v142</PlatformToolset>
<PlatformToolset Condition="'$(VisualStudioVersion)' >= '17.0'">v143</PlatformToolset>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<GenerateDebugInformation>DebugFull</GenerateDebugInformation>
<CppTargetsFilePath>$(VCTargetsPath)\Microsoft.Cpp.targets</CppTargetsFilePath>
<CSharpTargetsFilePath>$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets</CSharpTargetsFilePath>
<MUXNamespace>Microsoft.UI.Xaml</MUXNamespace>
<MUXTargetName>Microsoft.UI.Xaml.Controls</MUXTargetName>
<PlatformTarget Condition="'$(PlatformTarget)' == '' and '$(Platform)' == 'Win32'">x86</PlatformTarget>
<PlatformTarget Condition="'$(PlatformTarget)' == ''">$(Platform)</PlatformTarget>
<EnableTypeInfoReflection>false</EnableTypeInfoReflection>
<!-- Use 64-bit compilers because 32-bit compilers run out of heap space -->
<PreferredToolArchitecture>x64</PreferredToolArchitecture>
<!-- We're generating our own AppX manifest files, so we don't care that we're referencing WinMDs without providing reference DLLs. -->
<MSBuildWarningsAsMessages>APPX1707</MSBuildWarningsAsMessages>
<MEUXNamespace>Microsoft.Experimental.UI.Xaml</MEUXNamespace>
<MEUXTargetName>Microsoft.Experimental.UI.Xaml</MEUXTargetName>
</PropertyGroup>
<PropertyGroup Condition="$(UseInsiderSDK) == 'true'">
<DefineConstants>$(DefineConstants);USE_INSIDER_SDK</DefineConstants>
</PropertyGroup>
<ItemDefinitionGroup Condition="$(UseInsiderSDK) == 'true'">
<ClCompile>
<PreprocessorDefinitions>%(PreprocessorDefinitions);USE_INSIDER_SDK</PreprocessorDefinitions>
</ClCompile>
<Midl>
<PreprocessorDefinitions>%(PreprocessorDefinitions);USE_INSIDER_SDK</PreprocessorDefinitions>
</Midl>
</ItemDefinitionGroup>
<PropertyGroup Condition="'$(_MSDeployUserAgent)'!=''">
<DefineConstants>$(DefineConstants);IS_LAB_BUILD</DefineConstants>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(_MSDeployUserAgent)'!=''">
<ClCompile>
<PreprocessorDefinitions>%(PreprocessorDefinitions);IS_LAB_BUILD</PreprocessorDefinitions>
</ClCompile>
<Midl>
<PreprocessorDefinitions>%(PreprocessorDefinitions);IS_LAB_BUILD</PreprocessorDefinitions>
</Midl>
</ItemDefinitionGroup>
<!-- When building within Visual Studio, we may not have access to the _BuildArch property set by init.cmd.
In that case, we'll get our native projects to output their built architecture to a temp file,
since all our managed projects depend on them being built first, and have any AnyCPU projects pick up their
values for _BuildArch from that. -->
<PropertyGroup Condition="'$(_BuildArch)' == ''">
<HasArchitectureSpecificPlatform Condition="'$(Platform)' != '' and '$(Platform)' != 'AnyCPU'">true</HasArchitectureSpecificPlatform>
<ShouldReadBuildArchAndType Condition="'$(HasArchitectureSpecificPlatform)' == 'true'">true</ShouldReadBuildArchAndType>
<ShouldWriteBuildArchAndType Condition="'$(HasArchitectureSpecificPlatform)' != 'true'">true</ShouldWriteBuildArchAndType>
<BuildArchFilePath>$(TEMP)\MUXControlsBuildArch.txt</BuildArchFilePath>
<BuildTypeFilePath>$(TEMP)\MUXControlsBuildType.txt</BuildTypeFilePath>
</PropertyGroup>
<Target Name="WriteBuildArchAndType" Condition="'$(ShouldWriteBuildArchAndType)' == 'true'" BeforeTargets="Build">
<PropertyGroup>
<_BuildArch Condition="'$(Platform)' == 'x64'">amd64</_BuildArch>
<_BuildArch Condition="'$(Platform)' == 'Win32'">x86</_BuildArch>
<_BuildArch Condition="'$(_BuildArch)' == ''">$(Platform)</_BuildArch>
<_BuildType Condition="'$(Configuration)' == 'Debug' or '$(Configuration)' == 'Debug_test'">chk</_BuildType>
<_BuildType Condition="'$(_BuildType)' == ''">fre</_BuildType>
</PropertyGroup>
<!-- In order to avoid conflict between reading and writing, we'll only write when we detect that the build arch
or type has changed, which indicates that a new build has started. -->
<ReadLinesFromFile File="$(BuildArchFilePath)" Condition="Exists('$(BuildArchFilePath)')">
<Output TaskParameter="Lines" PropertyName="_BuildArchExisting"/>
</ReadLinesFromFile>
<ReadLinesFromFile File="$(BuildTypeFilePath)" Condition="Exists('$(BuildTypeFilePath)')">
<Output TaskParameter="Lines" PropertyName="_BuildTypeExisting"/>
</ReadLinesFromFile>
<WriteLinesToFile File="$(BuildArchFilePath)" Lines="$(_BuildArch)" Overwrite="True" Condition="'$(_BuildArch)' != '$(_BuildArchExisting)'" />
<WriteLinesToFile File="$(BuildTypeFilePath)" Lines="$(_BuildType)" Overwrite="True" Condition="'$(_BuildType)' != '$(_BuildTypeExisting)'" />
</Target>
<Target Name="ReadBuildArchAndType" Condition="'$(ShouldReadBuildArchAndType)' == 'true'" BeforeTargets="Build">
<ReadLinesFromFile File="$(BuildArchFilePath)" Condition="Exists('$(BuildArchFilePath)')">
<Output TaskParameter="Lines" PropertyName="_BuildArch"/>
</ReadLinesFromFile>
<ReadLinesFromFile File="$(BuildTypeFilePath)" Condition="Exists('$(BuildTypeFilePath)')">
<Output TaskParameter="Lines" PropertyName="_BuildType"/>
</ReadLinesFromFile>
</Target>
</Project>