Skip to content

Conversation

kotlarmilos
Copy link
Member

Description

This PR adds a static linking build configuration for the CoreCLR JIT on Android, to track its on-disk size.

@kotlarmilos kotlarmilos added this to the 10.0.0 milestone May 29, 2025
@kotlarmilos kotlarmilos requested a review from matouskozak May 29, 2025 12:23
@kotlarmilos kotlarmilos self-assigned this May 29, 2025
@Copilot Copilot AI review requested due to automatic review settings May 29, 2025 12:23
@kotlarmilos kotlarmilos added tenet-performance Performance related issue os-android labels May 29, 2025
@github-actions github-actions bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label May 29, 2025
@dotnet-policy-service
Copy link
Contributor

Tagging subscribers to 'arch-android': @vitek-karas, @simonrozsival, @steveisok, @akoeplinger
See info in area-owners.md if you want to be subscribed.

Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new static linking build configuration for the CoreCLR JIT on Android to help track on-disk size. Key changes include:

  • Adding a new build step to run a static linking build for the Android sample app.
  • Publishing and archiving the resulting build logs and artifacts.
  • Cleaning up the bindir after processing the artifacts.
Comments suppressed due to low confidence (1)

eng/pipelines/performance/templates/build-perf-sample-apps.yml:100

  • Ensure that this cleanup command targets only directories dedicated to build outputs to avoid accidental deletion if the Build.SourcesDirectory variable is misconfigured.
      - script: rm -r -f $(Build.SourcesDirectory)/artifacts/bin/AndroidSampleApp

displayName: clean bindir

# CoreCLR JIT static linking build
- script: make run TARGET_ARCH=arm64 DEPLOY_AND_RUN=false RUNTIME_FLAVOR=CoreCLR STATIC_LINKING=true
Copy link

Copilot AI May 29, 2025

Choose a reason for hiding this comment

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

[nitpick] Consider externalizing build configuration options (such as TARGET_ARCH, RUNTIME_FLAVOR, and STATIC_LINKING) into variables or a template to improve reusability and clarity for similar build steps.

Suggested change
- script: make run TARGET_ARCH=arm64 DEPLOY_AND_RUN=false RUNTIME_FLAVOR=CoreCLR STATIC_LINKING=true
- script: make run TARGET_ARCH=${{ parameters.targetArch }} DEPLOY_AND_RUN=${{ parameters.deployAndRun }} RUNTIME_FLAVOR=${{ parameters.runtimeFlavor }} STATIC_LINKING=${{ parameters.staticLinking }}

Copilot uses AI. Check for mistakes.

Copy link
Member

@LoopedBard3 LoopedBard3 left a comment

Choose a reason for hiding this comment

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

This looks good to me.

@LoopedBard3 LoopedBard3 requested a review from caaavik-msft May 29, 2025 18:13
@kotlarmilos kotlarmilos merged commit 321868b into dotnet:main May 30, 2025
26 checks passed
@teo-tsirpanis teo-tsirpanis added area-Infrastructure-coreclr and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels May 31, 2025
@github-actions github-actions bot locked and limited conversation to collaborators Jul 1, 2025
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.

3 participants