|
253 | 253 | Category="clr" />
|
254 | 254 | </ItemGroup>
|
255 | 255 |
|
256 |
| - <!-- Build the CoreCLR cross tools when we're doing a cross build and either we're building any CoreCLR native tools for platforms CoreCLR fully supports or when someone explicitly requests them --> |
257 |
| - <ItemGroup Condition="(('$(ClrRuntimeBuildSubsets)' != '' and '$(PrimaryRuntimeFlavor)' == 'CoreCLR') or $(_subset.Contains('+clr.crossarchtools+'))) and ('$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)')"> |
| 256 | + <!-- |
| 257 | + Build the CoreCLR cross tools when we're doing a cross build and either we're building any CoreCLR native tools for platforms CoreCLR fully supports or when someone explicitly requests them. |
| 258 | + The cross tools are used as part of the build process with the downloaded build tools, so we need to build them for the host architecture and build them as unsanitized binaries. |
| 259 | + --> |
| 260 | + <ItemGroup Condition="(('$(ClrRuntimeBuildSubsets)' != '' and '$(PrimaryRuntimeFlavor)' == 'CoreCLR') or $(_subset.Contains('+clr.crossarchtools+'))) and ('$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)' or '$(EnableNativeSanitizers)' != '')"> |
258 | 261 | <ProjectToBuild
|
259 | 262 | Include="$(CoreClrProjectRoot)runtime.proj"
|
260 | 263 | AdditionalProperties="%(AdditionalProperties);
|
|
265 | 268 | NoPgoOptimize=true;
|
266 | 269 | CrossBuild=false;
|
267 | 270 | CMakeArgs=$(CMakeArgs) -DCLR_CROSS_COMPONENTS_BUILD=1"
|
| 271 | + UndefineProperties="EnableNativeSanitizers" |
| 272 | + Category="clr" /> |
| 273 | + </ItemGroup> |
| 274 | + |
| 275 | + <!-- |
| 276 | + Build the debugging components of CoreCLR for the same target architecture as an unsanitized build whenever we build a sanitized coreclr build. |
| 277 | + These components are loaded into a debugger process, which generally is not a sanitized executable. |
| 278 | + --> |
| 279 | + <ItemGroup Condition="'$(ClrRuntimeBuildSubsets)' != '' and '$(EnableNativeSanitizers)' != ''"> |
| 280 | + <ProjectToBuild |
| 281 | + Include="$(CoreClrProjectRoot)runtime.proj" |
| 282 | + AdditionalProperties="%(AdditionalProperties); |
| 283 | + ClrDebugSubset=true; |
| 284 | + PgoInstrument=false; |
| 285 | + NoPgoOptimize=true; |
| 286 | + CrossBuild=$(CrossBuild); |
| 287 | + BuildSubdirectory=unsanitized" |
| 288 | + UndefineProperties="EnableNativeSanitizers" |
268 | 289 | Category="clr" />
|
269 | 290 | </ItemGroup>
|
270 | 291 |
|
|
317 | 338 | <ProjectToBuild Include="$(CoreClrProjectRoot)tools\aot\ILCompiler\ILCompiler.csproj" Category="clr" Condition="'$(NativeAotSupported)' == 'true'" />
|
318 | 339 | <ProjectToBuild Include="$(CoreClrProjectRoot)nativeaot\BuildIntegration\BuildIntegration.proj" Category="clr" Condition="'$(NativeAotSupported)' == 'true'" />
|
319 | 340 |
|
320 |
| - <ProjectToBuild Condition="'$(NativeAotSupported)' == 'true' and ('$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)' or '$(HostOS)' != '$(TargetOS)')" Include="$(CoreClrProjectRoot)tools\aot\ILCompiler\ILCompiler_crossarch.csproj" Category="clr" /> |
321 |
| - <ProjectToBuild Condition="'$(TargetArchitecture)' != '$(BuildArchitecture)' or '$(HostOS)' != '$(TargetOS)'" Include="$(CoreClrProjectRoot)tools\aot\crossgen2\crossgen2_crossarch.csproj" Category="clr" /> |
| 341 | + <ProjectToBuild Condition="'$(NativeAotSupported)' == 'true' and ('$(CrossBuild)' == 'true' or '$(BuildArchitecture)' != '$(TargetArchitecture)' or '$(HostOS)' != '$(TargetOS)' or '$(EnableNativeSanitizers)' != '')" Include="$(CoreClrProjectRoot)tools\aot\ILCompiler\ILCompiler_crossarch.csproj" Category="clr" /> |
| 342 | + <ProjectToBuild Condition="'$(TargetArchitecture)' != '$(BuildArchitecture)' or '$(HostOS)' != '$(TargetOS)' or '$(EnableNativeSanitizers)' != ''" Include="$(CoreClrProjectRoot)tools\aot\crossgen2\crossgen2_crossarch.csproj" Category="clr" /> |
322 | 343 |
|
323 | 344 | <ProjectToBuild Condition="'$(TargetOS)' == 'windows' or ('$(TargetOS)' == 'linux' and ('$(TargetArchitecture)' == 'x64' or '$(TargetArchitecture)' == 'arm64')) or '$(TargetOS)' == 'osx'" Include="$(CoreClrProjectRoot)tools\SuperFileCheck\SuperFileCheck.csproj" Category="clr" />
|
324 | 345 | </ItemGroup>
|
|
0 commit comments