Skip to content

Commit

Permalink
Make the intermediate output path OS-specific for CoreCLR/Mono (#95797)
Browse files Browse the repository at this point in the history
* Make the intermediate output path OS-specific

CoreLib is an OS-specific library. Using the same intermediate output path for
different OSes will lead to using stale artifacts such as ILLink descriptors.

* Set IntermediateOutputPath for Mono

---------

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
  • Loading branch information
SingleAccretion and akoeplinger committed Dec 11, 2023
1 parent c28bec4 commit 6a94e2a
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 2 deletions.
2 changes: 1 addition & 1 deletion src/coreclr/Directory.Build.props
Expand Up @@ -18,7 +18,7 @@
<BaseIntermediateOutputPath Condition="'$(IsNativeAotProject)' != 'true'">$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'coreclr', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
<BaseIntermediateOutputPath Condition="'$(IsNativeAotProject)' == 'true'">$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'coreclr', 'nativeaot', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' == 'AnyCPU'">$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(PlatformName)\$(Configuration)\</IntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(TargetOS).$(TargetArchitecture).$(Configuration)\</IntermediateOutputPath>
<ProjectDir>$(MSBuildThisFileDirectory)</ProjectDir>
<RuntimeBinDir>$([MSBuild]::NormalizeDirectory('$(ArtifactsBinDir)', 'coreclr', '$(TargetOS).$(TargetArchitecture).$(Configuration)'))</RuntimeBinDir>

Expand Down
2 changes: 1 addition & 1 deletion src/mono/Directory.Build.props
Expand Up @@ -8,7 +8,7 @@
<PropertyGroup>
<BaseIntermediateOutputPath>$([MSBuild]::NormalizeDirectory('$(ArtifactsObjDir)', 'mono', '$(MSBuildProjectName)'))</BaseIntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' == 'AnyCPU'">$(BaseIntermediateOutputPath)$(Configuration)\</IntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(PlatformName)\$(Configuration)\</IntermediateOutputPath>
<IntermediateOutputPath Condition="'$(PlatformName)' != 'AnyCPU'">$(BaseIntermediateOutputPath)$(TargetOS).$(TargetArchitecture).$(Configuration)\</IntermediateOutputPath>
</PropertyGroup>

<PropertyGroup>
Expand Down

0 comments on commit 6a94e2a

Please sign in to comment.