Skip to content

Sdk.IL doesn't import Microsoft.Managed.props/targets which breaks multitargeting #34123

@ViktorHofer

Description

@ViktorHofer

Multitargeting supporting SDKs MUST implement the following properties and semantics:

  • InnerBuildProperty. It contains the property name that defines the multitargeting build dimension.
  • InnerBuildPropertyValues. It contains the property name that holds the possible values for the InnerBuildProperty.

from https://github.com/microsoft/msbuild/blob/d004974104fde202e633b3c97e0ece3287aa62f9/documentation/specs/static-graph.md.

The logic that reads those properties and by that identifies if a build is an outer- or innerbuild lives can be found here: https://github.com/microsoft/msbuild/blob/master/src/Build/Graph/ProjectInterpretation.cs#L118-L119.

https://github.com/dotnet/runtime/blob/master/src/coreclr/src/.nuget/Microsoft.NET.Sdk.IL/targets/Microsoft.NET.Sdk.IL.Common.targets is missing the import of Microsoft.Managed.Before.targets and Microsoft.Managed.After.targets which define the multitargeting properties: https://github.com/microsoft/msbuild/blob/master/src/Tasks/Microsoft.Managed.After.targets#L18-L19.

As we unfortunately don't consume the Sdk.IL live, this can't be fixed and consumed via a single PR.

cc @ericstj @Anipik

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions