Skip to content

Commit

Permalink
Try fixing frameworkRef
Browse files Browse the repository at this point in the history
  • Loading branch information
wtgodbe committed Apr 24, 2024
1 parent 277ecba commit 3472997
Showing 1 changed file with 73 additions and 0 deletions.
73 changes: 73 additions & 0 deletions eng/tools/RepoTasks/RepoTasks.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,77 @@
<HintPath>$(WiXSdkPath)\Microsoft.Deployment.WindowsInstaller.Package.dll</HintPath>
</Reference>
</ItemGroup>

<ItemGroup>
<!--
Reference base shared framework at incoming dependency flow version, not bundled sdk version.
Apply this to all projects that target the default tfm (e.g. net8.0) or a rid-based variant of it (e.g. net8.0-windows)
-->
<FrameworkReference
Update="Microsoft.NETCore.App"
Condition=" (('$(ProjectTargetFrameworkIdentifier)' == '$(DefaultNetCoreTargetFramework)') AND '$(DefaultNetCoreTargetFramework)' == '$(ProjectTargetFrameworkVersion)') AND '$(TargetLatestDotNetRuntime)' != 'false' "
RuntimeFrameworkVersion="$(MicrosoftNETCoreAppRuntimeVersion)"
TargetingPackVersion="$(MicrosoftNETCoreAppRefVersion)" />

<PackageReference Include="Microsoft.DotNet.ILCompiler"
Condition=" '$(PublishAot)' == 'true' "
Version="$(MicrosoftNETCoreAppRuntimeVersion)" />
</ItemGroup>

<ItemGroup>
<!-- Use the same NETCore shared framework as repo built against except when building product code in servicing. -->
<KnownFrameworkReference Update="Microsoft.NETCore.App">
<LatestRuntimeFrameworkVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRuntimeVersion)</LatestRuntimeFrameworkVersion>
<TargetingPackVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRefVersion)</TargetingPackVersion>
<!--
Change the default shared framework version only when _not_ servicing. Avoid bumping version used in most
projects. When servicing, projects (Microsoft.AspNetCore.App.Runtime in particular) can use
$(TargetLatestRuntimePatch) to explicitly control whether assemblies build against default (false) or
latest (true). When that property is not set, SDK uses default metadata in most cases but published apps
e.g. tool projects (again, property not set) use latest.
On the other hand, $(TargetLatestDotNetRuntime) is specific to this repo and controls only the update below.
-->
<DefaultRuntimeFrameworkVersion Condition=" '$(IsServicingBuild)' != 'true' AND
'%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' AND
'$(TargetLatestDotNetRuntime)' != 'false' ">$(MicrosoftNETCoreAppRuntimeVersion)</DefaultRuntimeFrameworkVersion>
<RuntimePackRuntimeIdentifiers Condition=" '$(DotNetBuildSourceOnly)' == 'true' ">$(TargetRuntimeIdentifier)</RuntimePackRuntimeIdentifiers>
</KnownFrameworkReference>

<KnownAppHostPack Update="Microsoft.NETCore.App">
<AppHostPackVersion Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRuntimeVersion)</AppHostPackVersion>
<AppHostRuntimeIdentifiers Condition=" '$(DotNetBuildSourceOnly)' == 'true' ">$(TargetRuntimeIdentifier)</AppHostRuntimeIdentifiers>
</KnownAppHostPack>

<KnownRuntimePack Update="Microsoft.NETCore.App">
<LatestRuntimeFrameworkVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRuntimeVersion)</LatestRuntimeFrameworkVersion>
<AppHostRuntimeIdentifiers Condition=" '$(DotNetBuildSourceOnly)' == 'true' ">$(TargetRuntimeIdentifier)</AppHostRuntimeIdentifiers>
</KnownRuntimePack>

<KnownWebAssemblySdkPack Update="Microsoft.NET.Sdk.WebAssembly.Pack">
<WebAssemblySdkPackVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRuntimeVersion)</WebAssemblySdkPackVersion>
</KnownWebAssemblySdkPack>

<KnownCrossgen2Pack Update="Microsoft.NETCore.App.Crossgen2" Condition=" '$(DotNetBuildSourceOnly)' == 'true' ">
<Crossgen2PackVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftNETCoreAppRuntimeVersion)</Crossgen2PackVersion>
<Crossgen2RuntimeIdentifiers>$(TargetRuntimeIdentifier)</Crossgen2RuntimeIdentifiers>
</KnownCrossgen2Pack>

<!-- Use the just-built ASP.NET Core shared framework if available except when building product code in servicing. -->
<KnownFrameworkReference Update="Microsoft.AspNetCore.App" Condition=" $(UpdateAspNetCoreKnownFramework) ">
<LatestRuntimeFrameworkVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftAspNetCoreAppRuntimeVersion)</LatestRuntimeFrameworkVersion>
<RuntimePackRuntimeIdentifiers
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(SupportedRuntimeIdentifiers)</RuntimePackRuntimeIdentifiers>
<!-- Do not update %(TargetingPackVersion) until X.Y.0 versions have been released. -->
<TargetingPackVersion
Condition=" '%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' AND '$(AspNetCorePatchVersion)' != '1' ">$(MicrosoftAspNetCoreAppRefVersion)</TargetingPackVersion>
<DefaultRuntimeFrameworkVersion Condition=" '$(IsServicingBuild)' != 'true' AND
'%(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' ">$(MicrosoftAspNetCoreAppRuntimeVersion)</DefaultRuntimeFrameworkVersion>
</KnownFrameworkReference>
</ItemGroup>
</Project>

0 comments on commit 3472997

Please sign in to comment.