Skip to content

Conversation

@mmalohlava
Copy link
Contributor

feat: Add Linux ARM64 build support #2429.

Add comprehensive ARM64 (aarch64) build support across all build targets:

  • Linux ARM64 binaries for Wave server and WaveDB
  • Python wheels for manylinux_aarch64 platform
  • Multi-architecture Docker images (linux/amd64, linux/arm64)
  • CI/CD workflow updates for ARM64 artifact publishing

Changes:

  • Makefile: Add linux-arm64 targets for release and release-nightly
  • Makefile: Add wavedb linux-arm64 build target with proper GOOS/GOARCH
  • py/h2o_wave/Makefile: Add manylinux_aarch64 wheel build
  • py/h2o_wave/hatch_build.py: Add platform mapping for aarch64
  • GitHub workflows: Add ARM64 artifacts to release pipelines
  • Docker: Enable multi-arch builds for bundle and runtime images

Testing:

  • Verified ARM64 cross-compilation for waved and wavedb
  • Verified AMD64 cross-compilation still works

Ref: wave-u98

Co-Authored-By: Claude Sonnet 4.5 noreply@anthropic.com

The PR fulfills these requirements: (check all the apply)

  • It's submitted to the main branch.
  • When resolving a specific issue, it's referenced in the PR's title (e.g. feat: Add a button #xxx, where "xxx" is the issue number).
  • When resolving a specific issue, the PR description includes Closes #xxx, where "xxx" is the issue number.
  • If changes were made to ui folder, unit tests (make test) still pass.
  • New/updated tests are included

Add comprehensive ARM64 (aarch64) build support across all build targets:
- Linux ARM64 binaries for Wave server and WaveDB
- Python wheels for manylinux_aarch64 platform
- Multi-architecture Docker images (linux/amd64, linux/arm64)
- CI/CD workflow updates for ARM64 artifact publishing

Changes:
- Makefile: Add linux-arm64 targets for release and release-nightly
- Makefile: Add wavedb linux-arm64 build target with proper GOOS/GOARCH
- py/h2o_wave/Makefile: Add manylinux_aarch64 wheel build
- py/h2o_wave/hatch_build.py: Add platform mapping for aarch64
- GitHub workflows: Add ARM64 artifacts to release pipelines
- Docker: Enable multi-arch builds for bundle and runtime images

Testing:
- Verified ARM64 cross-compilation for waved and wavedb
- Verified AMD64 cross-compilation still works
- All Go tests pass (db, keychain, assert, parse)

Ref: wave-u98

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Copy link
Collaborator

@mturoci mturoci left a comment

Choose a reason for hiding this comment

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

Thanks @mmalohlava!

@mturoci mturoci merged commit 3c92539 into main Feb 5, 2026
6 checks passed
@mturoci mturoci deleted the mm/aaa_port branch February 5, 2026 13:41
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.

2 participants