Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use live illink for trimming tests #88929

Merged
merged 12 commits into from
Aug 1, 2023
Merged

Use live illink for trimming tests #88929

merged 12 commits into from
Aug 1, 2023

Conversation

sbomer
Copy link
Member

@sbomer sbomer commented Jul 14, 2023

Fixes #88624

@ghost
Copy link

ghost commented Jul 14, 2023

Tagging subscribers to this area: @dotnet/area-infrastructure-libraries
See info in area-owners.md if you want to be subscribed.

Issue Details

null

Author: sbomer
Assignees: -
Labels:

area-Infrastructure-libraries

Milestone: -

@radical
Copy link
Member

radical commented Jul 14, 2023

I suggest running runtime-wasm also, which runs all the trimming, and AOT tests for wasm.

@sbomer
Copy link
Member Author

sbomer commented Jul 14, 2023

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Comment on lines 23 to 24
<!-- Place build output into a layout that matches the package layout. -->
<OutputPath>$(OutputPath)/tools</OutputPath>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The build and package output paths are intentionally not aligned. Why do you need the tools subdirectory for the output path?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm trying to set it up so that the tests can just import Microsoft.NET.ILLink.Tasks.props directly from the build output path, and have this logic work without further overrides:

<ILLinkTasksAssembly Condition="'$(MSBuildRuntimeType)' == 'Core'">$(MSBuildThisFileDirectory)..\tools\net8.0\ILLink.Tasks.dll</ILLinkTasksAssembly>

Let me know if you'd prefer another approach.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should keep the output path and package layout separate, otherwise we will hit other issues over time. Please revert the OutputPath change.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I reverted this change. It unfortunately means using live illink isn't as simple as a single import statement. I'm curious if you have specific concerns over the approach of matching the package layout in the output?

- Move props import to top of project file
- Leave IsGeneratorProject in Directory.Build.props
  Ignore Directory.Build.props in Content
TFM isn't set during GenerateNuspec, but we need
Content to be defined so that the props/targets
get added to the package.
@sbomer
Copy link
Member Author

sbomer commented Jul 20, 2023

/azp run runtime-wasm

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@sbomer sbomer requested a review from ViktorHofer July 27, 2023 23:04
@sbomer sbomer marked this pull request as ready for review July 27, 2023 23:05
eng/liveBuilds.targets Outdated Show resolved Hide resolved
eng/liveBuilds.targets Outdated Show resolved Hide resolved
eng/testing/linker/project.csproj.template Outdated Show resolved Hide resolved
@sbomer sbomer merged commit 429a5c3 into dotnet:main Aug 1, 2023
180 checks passed
@ghost ghost locked as resolved and limited conversation to collaborators Aug 31, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update trimming tests to use live-built ILLink.Targets logic
5 participants