Skip to content

feat: add musl Linux targets to release workflow#58

Open
bmorcos wants to merge 1 commit intodaulet:mainfrom
bmorcos:add-musl-linux-targets
Open

feat: add musl Linux targets to release workflow#58
bmorcos wants to merge 1 commit intodaulet:mainfrom
bmorcos:add-musl-linux-targets

Conversation

@bmorcos
Copy link

@bmorcos bmorcos commented Mar 3, 2026

Add x86_64-unknown-linux-musl and aarch64-unknown-linux-musl targets to the release CI matrix.

New release artifacts:

  • libtokenizers.linux-musl-x86_64.tar.gz (alias: linux-musl-amd64)
  • libtokenizers.linux-musl-arm64.tar.gz (alias: linux-musl-aarch64)

Motivation

musl-linked static libraries enable fully static Go binaries that run in distroless containers without any dependencies.

The default cross musl images lack g++ needed, so new Dockerfiles in cross/ extend the base images with the appropriate cross-compilation C++ toolchain. (or would it be better to just extend the base image?)

Benchmarks

Didn't run benchmarks since this is just updating artifacts and not changing implementation at all.

Add x86_64-unknown-linux-musl and aarch64-unknown-linux-musl targets
to the release CI matrix.

musl-linked static libraries enable fully static Go binaries that run
in distroless containers without any dependencies.

The default cross musl images lack g++ needed by the esaxx-rs transitive
dependency, so custom Dockerfiles in cross/ extend the base images with
the appropriate cross-compilation C++ toolchain.

New release artifacts:
- libtokenizers.linux-musl-x86_64.tar.gz (alias: linux-musl-amd64)
- libtokenizers.linux-musl-arm64.tar.gz (alias: linux-musl-aarch64)
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