Skip to content

Conversation

@GaspardKirira
Copy link
Member

πŸš€ v1.17.3 β€” Cross-compilation support for Vix CLI

This release introduces first-class cross-compilation support in the Vix CLI, making it easier to build projects for non-host targets such as ARM, embedded devices, and SBCs.

✨ Added

  • vix build --target <triple>

    • Enables cross-compilation using standard target triples (e.g. aarch64-linux-gnu)
    • Automatically generates a dedicated vix-toolchain.cmake
    • Passes CMAKE_TOOLCHAIN_FILE and VIX_TARGET_TRIPLE to CMake
    • Cache-safe: reuses build directories when configuration is unchanged
    • Fully compatible with:
      • --preset
      • --static
      • --clean
  • Optional --sysroot <path> support

    • Allows correct discovery of target libraries and headers (e.g. zlib, libc)
    • Designed for real cross environments:
      • ARM
      • Embedded Linux
      • SBCs

πŸ› οΈ Implementation Notes

  • Toolchain generation is automatic and reproducible
  • Cross-build configuration is isolated and deterministic
  • No impact on native builds

βœ… Why this matters

This unlocks portable, reproducible builds across architectures while keeping the Vix workflow simple and predictable.


Release process

  • Branch: dev β†’ main
  • Merge strategy: SQUASH or REBASE (no merge commit)
  • Tag to apply after merge: v1.17.3

@GaspardKirira GaspardKirira merged commit 884114b into main Dec 31, 2025
6 checks passed
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