diff --git a/.github/workflows/build-binaries.yml b/.github/workflows/build-binaries.yml index 3e31ffe144ff..4b581102c256 100644 --- a/.github/workflows/build-binaries.yml +++ b/.github/workflows/build-binaries.yml @@ -276,6 +276,11 @@ jobs: strategy: matrix: platform: + - target: aarch64-unknown-linux-gnu + arch: aarch64 + # see https://github.com/astral-sh/ruff/issues/3791 + # and https://github.com/gnzlbg/jemallocator/issues/170#issuecomment-1503228963 + maturin_docker_options: -e JEMALLOC_SYS_WITH_LG_PAGE=16 - target: armv7-unknown-linux-gnueabihf arch: armv7 - target: arm-unknown-linux-musleabihf @@ -294,6 +299,8 @@ jobs: uses: PyO3/maturin-action@v1 with: target: ${{ matrix.platform.target }} + # On `aarch64`, use `manylinux: 2_28`; otherwise, use `manylinux: auto`. + manylinux: ${{ matrix.platform.arch == 'aarch64' && '2_28' || 'auto' }} docker-options: ${{ matrix.platform.maturin_docker_options }} args: --release --locked --out dist --features self-update - uses: uraimo/run-on-arch-action@v2 diff --git a/Cargo.toml b/Cargo.toml index e65ccd6d6a72..3eb57ed555fb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -214,6 +214,7 @@ unix-archive = ".tar.gz" # Target platforms to build apps for (Rust target-triple syntax) targets = [ "aarch64-apple-darwin", + "aarch64-unknown-linux-gnu", "aarch64-unknown-linux-musl", "arm-unknown-linux-musleabihf", "armv7-unknown-linux-gnueabihf",