Build.Windows.ProjectConfiguration.props (9556B)
1 <?xml version="1.0" encoding="utf-8"?> 2 <!-- Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html --> 3 <Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> 4 <!-- This file is used to set default configuration options for all non-UWP Visual Studio projects. --> 5 <!-- The following import will set the ICU Major Version number. --> 6 <Import Project="Build.Windows.IcuVersion.props" /> 7 <!-- These are the default project configurations for building. --> 8 <ItemGroup Label="ProjectConfigurations"> 9 <ProjectConfiguration Include="Debug|Win32"> 10 <Configuration>Debug</Configuration> 11 <Platform>Win32</Platform> 12 </ProjectConfiguration> 13 <ProjectConfiguration Include="Debug|x64"> 14 <Configuration>Debug</Configuration> 15 <Platform>x64</Platform> 16 </ProjectConfiguration> 17 <ProjectConfiguration Include="Debug|ARM"> 18 <Configuration>Debug</Configuration> 19 <Platform>ARM</Platform> 20 </ProjectConfiguration> 21 <ProjectConfiguration Include="Debug|ARM64"> 22 <Configuration>Debug</Configuration> 23 <Platform>ARM64</Platform> 24 </ProjectConfiguration> 25 <ProjectConfiguration Include="Release|Win32"> 26 <Configuration>Release</Configuration> 27 <Platform>Win32</Platform> 28 </ProjectConfiguration> 29 <ProjectConfiguration Include="Release|x64"> 30 <Configuration>Release</Configuration> 31 <Platform>x64</Platform> 32 </ProjectConfiguration> 33 <ProjectConfiguration Include="Release|ARM"> 34 <Configuration>Release</Configuration> 35 <Platform>ARM</Platform> 36 </ProjectConfiguration> 37 <ProjectConfiguration Include="Release|ARM64"> 38 <Configuration>Release</Configuration> 39 <Platform>ARM64</Platform> 40 </ProjectConfiguration> 41 </ItemGroup> 42 <!-- The following import will set the PlatformToolset configuration. --> 43 <Import Project="Build.Windows.PlatformToolset.props" /> 44 <!-- The following PropertyGroups are used to set the binary and lib output locations --> 45 <PropertyGroup Condition="'$(Platform)'=='Win32'"> 46 <IcuBinOutputDir>bin</IcuBinOutputDir> 47 <IcuLibOutputDir>lib</IcuLibOutputDir> 48 </PropertyGroup> 49 <PropertyGroup Condition="'$(Platform)'=='x64'"> 50 <IcuBinOutputDir>bin64</IcuBinOutputDir> 51 <IcuLibOutputDir>lib64</IcuLibOutputDir> 52 </PropertyGroup> 53 <PropertyGroup Condition="'$(Platform)'=='ARM'"> 54 <IcuBinOutputDir>binARM</IcuBinOutputDir> 55 <IcuLibOutputDir>libARM</IcuLibOutputDir> 56 </PropertyGroup> 57 <PropertyGroup Condition="'$(Platform)'=='ARM64'"> 58 <IcuBinOutputDir>binARM64</IcuBinOutputDir> 59 <IcuLibOutputDir>libARM64</IcuLibOutputDir> 60 </PropertyGroup> 61 <!-- Desktop ARM/ARM64 support requires a different version of the Windows SDK --> 62 <!-- 63 Note: This version must match the version below in the ARM64 section for AdditionalLibraryDirectories 64 --> 65 <PropertyGroup Condition="'$(Platform)'=='ARM'"> 66 <WindowsTargetPlatformVersion>10.0.22621.0</WindowsTargetPlatformVersion> 67 <WindowsSDKDesktopARMSupport>true</WindowsSDKDesktopARMSupport> 68 </PropertyGroup> 69 <PropertyGroup Condition="'$(Platform)'=='ARM64'"> 70 <WindowsTargetPlatformVersion>10.0.22621.0</WindowsTargetPlatformVersion> 71 <WindowsSDKDesktopARM64Support>true</WindowsSDKDesktopARM64Support> 72 </PropertyGroup> 73 <PropertyGroup> 74 <!-- We need to explicitly set the target version to Windows 7. --> 75 <Win32_WinNTVersion>0x0601</Win32_WinNTVersion> 76 </PropertyGroup> 77 <!-- Options that are common to *all* configurations for *all* projects. --> 78 <ItemDefinitionGroup> 79 <Midl> 80 <MkTypLibCompatible>true</MkTypLibCompatible> 81 <SuppressStartupBanner>true</SuppressStartupBanner> 82 </Midl> 83 <ClCompile> 84 <!-- Note: These preprocessor defines are for *all* configurations for *all* projects. --> 85 <!-- Note: See ticket #5750 for the macro '_CRT_SECURE_NO_DEPRECATE'. --> 86 <PreprocessorDefinitions> 87 WINVER=$(Win32_WinNTVersion); 88 _WIN32_WINNT=$(Win32_WinNTVersion); 89 _CRT_SECURE_NO_DEPRECATE; 90 %(PreprocessorDefinitions) 91 </PreprocessorDefinitions> 92 <!-- We always want to treat wchar_t as a "real" C++ type, instead of a typedef. --> 93 <TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType> 94 <SuppressStartupBanner>true</SuppressStartupBanner> 95 <!-- Set the source encoding and runtime encoding to UTF-8 by default. --> 96 <AdditionalOptions>/utf-8 %(AdditionalOptions)</AdditionalOptions> 97 <!-- Enable parallel compilation for faster builds. --> 98 <MultiProcessorCompilation>true</MultiProcessorCompilation> 99 <!-- Set the C/C++ versions supported. --> 100 <LanguageStandard Condition="'$(OverrideLanguageStandard)'==''">stdcpp17</LanguageStandard> 101 <LanguageStandard Condition="'$(OverrideLanguageStandard)'!=''">$(OverrideLanguageStandard)</LanguageStandard> 102 <LanguageStandard_C>stdc11</LanguageStandard_C> 103 </ClCompile> 104 <ResourceCompile> 105 <Culture>0x0409</Culture> 106 </ResourceCompile> 107 <Link> 108 <SuppressStartupBanner>true</SuppressStartupBanner> 109 <RandomizedBaseAddress>true</RandomizedBaseAddress> 110 </Link> 111 </ItemDefinitionGroup> 112 <!-- Options that are common to all 'Release' configurations for *all* projects. --> 113 <ItemDefinitionGroup Condition="'$(Configuration)'=='Release'"> 114 <Midl> 115 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 116 </Midl> 117 <ClCompile> 118 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 119 <StringPooling>true</StringPooling> 120 <WholeProgramOptimization>true</WholeProgramOptimization> 121 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> 122 </ClCompile> 123 <ResourceCompile> 124 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 125 </ResourceCompile> 126 <Link> 127 <EnableCOMDATFolding>true</EnableCOMDATFolding> 128 <LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration> 129 </Link> 130 </ItemDefinitionGroup> 131 <!-- Options that are common to all 'Debug' configurations for *all* projects. --> 132 <ItemDefinitionGroup Condition="'$(Configuration)'=='Debug'"> 133 <Midl> 134 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 135 </Midl> 136 <ClCompile> 137 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 138 <Optimization>Disabled</Optimization> 139 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> 140 <BufferSecurityCheck>true</BufferSecurityCheck> 141 </ClCompile> 142 <ResourceCompile> 143 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> 144 </ResourceCompile> 145 <Link> 146 <GenerateDebugInformation>true</GenerateDebugInformation> 147 <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> 148 </Link> 149 </ItemDefinitionGroup> 150 <!-- Options that are common to all 32-bit configurations for *all* projects. --> 151 <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'"> 152 <Midl> 153 <TargetEnvironment>Win32</TargetEnvironment> 154 </Midl> 155 <ClCompile> 156 <PreprocessorDefinitions>WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> 157 </ClCompile> 158 <Link> 159 <TargetMachine>MachineX86</TargetMachine> 160 </Link> 161 </ItemDefinitionGroup> 162 <!-- Options that are common to all 64-bit configurations for *all* projects. --> 163 <ItemDefinitionGroup Condition="'$(Platform)'=='x64'"> 164 <Midl> 165 <TargetEnvironment>X64</TargetEnvironment> 166 </Midl> 167 <ClCompile> 168 <PreprocessorDefinitions>WIN64;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> 169 </ClCompile> 170 <Link> 171 <TargetMachine>MachineX64</TargetMachine> 172 </Link> 173 </ItemDefinitionGroup> 174 <!-- Options that are common to all ARM 32-bit configurations for *all* projects. --> 175 <ItemDefinitionGroup Condition="'$(Platform)'=='ARM'"> 176 <Midl> 177 <TargetEnvironment>ARM</TargetEnvironment> 178 </Midl> 179 <ClCompile> 180 <PreprocessorDefinitions>ARM;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> 181 </ClCompile> 182 <Link> 183 <TargetMachine>MachineARM</TargetMachine> 184 <!-- The ARM64 Desktop SDK doesn't include this by default --> 185 <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> 186 <!-- Note: This needs to match the same version as WindowsTargetPlatformVersion for ARM --> 187 <AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm</AdditionalLibraryDirectories> 188 </Link> 189 </ItemDefinitionGroup> 190 <!-- Options that are common to all ARM 64-bit configurations for *all* projects. --> 191 <ItemDefinitionGroup Condition="'$(Platform)'=='ARM64'"> 192 <Midl> 193 <TargetEnvironment>ARM64</TargetEnvironment> 194 </Midl> 195 <ClCompile> 196 <PreprocessorDefinitions>ARM64;WIN32;%(PreprocessorDefinitions)</PreprocessorDefinitions> 197 </ClCompile> 198 <Link> 199 <TargetMachine>MachineARM64</TargetMachine> 200 <!-- The ARM64 Desktop SDK doesn't include this by default --> 201 <AdditionalDependencies>kernel32.lib;%(AdditionalDependencies)</AdditionalDependencies> 202 <!-- Note: This needs to match the same version as WindowsTargetPlatformVersion for ARM64 --> 203 <AdditionalLibraryDirectories>C:\Program Files (x86)\Windows Kits\10\Lib\10.0.22621.0\um\arm64</AdditionalLibraryDirectories> 204 </Link> 205 </ItemDefinitionGroup> 206 </Project>