Skip to content

Strip Linux hosts from release bundles#429

Merged
lukewilliamboswell merged 1 commit into
roc-lang:mainfrom
lukewilliamboswell:strip-release-hosts
Jul 15, 2026
Merged

Strip Linux hosts from release bundles#429
lukewilliamboswell merged 1 commit into
roc-lang:mainfrom
lukewilliamboswell:strip-release-hosts

Conversation

@lukewilliamboswell

Copy link
Copy Markdown
Collaborator

Summary

  • strip debug data and relocation-unneeded symbols from x64musl and arm64musl libhost.a files
  • install llvm-tools-preview in CI and release jobs that build Linux hosts
  • fail bundling before publication if unpacked platform inputs exceed the Roc default 100 MiB dependency limit

macOS and Windows archives are unchanged. Only the oversized Linux hosts need trimming, and avoiding Mach-O rewriting preserves Roc linker compatibility.

Size impact

  • x64musl libhost.a: 27.0 MB to 9.1 MB
  • arm64musl libhost.a: 28.3 MB to 9.1 MB
  • projected complete platform: 101.4 MiB to approximately 65.9 MiB

Validation

  • rebuilt and linked every example for x64musl using the stripped archive
  • Python syntax checks passed
  • workflow YAML parsing passed
  • git diff --check passed

@lukewilliamboswell
lukewilliamboswell merged commit 0a17e16 into roc-lang:main Jul 15, 2026
20 checks passed
@lukewilliamboswell
lukewilliamboswell deleted the strip-release-hosts branch July 15, 2026 07:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant