Skip to content

Harden ABI detection for cross-build wrappers#19

Merged
kristjanvalur merged 7 commits into
masterfrom
feat/abi-detection-hardening
Jun 6, 2026
Merged

Harden ABI detection for cross-build wrappers#19
kristjanvalur merged 7 commits into
masterfrom
feat/abi-detection-hardening

Conversation

@kristjanvalur
Copy link
Copy Markdown
Collaborator

Summary\n- add explicit STACKMAN_ABI override path for deterministic ABI selection\n- normalize Windows ARM64 ABI token to win_arm64 while preserving win_aarch64 compatibility alias\n- add compiler target-triple diagnostics and mismatch warnings in ABI probe\n- query target triple with CC+CFLAGS (with fallback) so clang cross-target flags are reflected\n- document these changes under Unreleased in CHANGELOG\n\n## Validation\n- make abiname\n- STACKMAN_ABI_DEBUG=1 make abiname\n- STACKMAN_ABI=win_aarch64 make abiname\n- make test (previously run on branch)\n\n## Notes\n- existing local generated artifact and analysis note file were intentionally not included in commits

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR hardens Stackman’s ABI detection and cross-build workflows by adding deterministic ABI override support, normalizing Windows ARM64 ABI naming, and improving ABI probe diagnostics to better surface toolchain/flag mismatches during packaging and CI.

Changes:

  • Added STACKMAN_ABI override support for deterministic ABI selection (Makefile + tools/abiname.sh).
  • Normalized Windows ARM64 ABI token to win_arm64 while preserving win_aarch64 as a compatibility alias.
  • Added target-triple probing and ABI mismatch warnings/diagnostics to the ABI probe script, and documented the behavior in CHANGELOG.md.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 2 comments.

File Description
tools/abiname.sh Adds ABI canonicalization, target-triple probing, override path, and mismatch diagnostics.
stackman/platforms/platform.h Normalizes MSVC ARM64 ABI macro to win_arm64.
Makefile Adds STACKMAN_ABI override path and win_aarch64win_arm64 compatibility mapping.
CHANGELOG.md Documents the ABI override and diagnostic changes under Unreleased.

Comment thread CHANGELOG.md
Comment thread Makefile Outdated
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 4 out of 4 changed files in this pull request and generated 1 comment.

Comment thread tools/abiname.sh
@kristjanvalur kristjanvalur merged commit e0052d1 into master Jun 6, 2026
12 checks passed
@kristjanvalur kristjanvalur deleted the feat/abi-detection-hardening branch June 6, 2026 15:18
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