Skip to content

allow explicit target triple for clang-linux and clang-darwin#466

Merged
grafikrobot merged 2 commits into
bfgroup:mainfrom
grisumbras:feature/clang-triplets
Oct 1, 2025
Merged

allow explicit target triple for clang-linux and clang-darwin#466
grafikrobot merged 2 commits into
bfgroup:mainfrom
grisumbras:feature/clang-triplets

Conversation

@grisumbras

Copy link
Copy Markdown
Contributor

Proposed changes

Add an option to clang-linux and clang-darwin toolset modules that allows setting the target triple flag (--target=) explicitly rather than guessing it from the build requirements. Fix #449.

I didn't add anything to the other clang- modules as they do not pass the --target flag.

Types of changes

  • New feature (non-breaking change which adds functionality)
  • Documentation content changes

@grafikrobot grafikrobot merged commit 1adb209 into bfgroup:main Oct 1, 2025
142 checks passed
Ignition added a commit to memgraph/memgraph that referenced this pull request Apr 8, 2026
b2's clang.jam init-flags-cross generates --target=x86_64-pc-linux,
which doesn't match clang's per-target runtime directory layout
(x86_64-unknown-linux-gnu). This breaks any b2 link needing the
sanitizer runtime, including ac library detection for zlib/bzip2.

Vendor the Boost 1.88.0 CCI recipe with two changes:
- Require b2 >= 5.4 which includes <triple> support
  (bfgroup/b2#466: allow explicit target triple for clang-linux and clang-darwin)
- Set <triple>none in user-config.jam for clang to disable b2's
  target guessing, letting clang use its own default triple

This replaces the profile workaround that cleared sanitizer flags for
the Boost build. Boost is now built with full ASAN/UBSAN instrumentation.

See bfgroup/b2#584
Ignition added a commit to memgraph/memgraph that referenced this pull request Apr 8, 2026
b2's clang.jam init-flags-cross generates --target=x86_64-pc-linux,
which doesn't match clang's per-target runtime directory layout
(x86_64-unknown-linux-gnu). This breaks any b2 link needing the
sanitizer runtime, including ac library detection for zlib/bzip2.

Vendor the Boost 1.88.0 CCI recipe with two changes:
- Require b2 >= 5.4 which includes <triple> support
  (bfgroup/b2#466: allow explicit target triple for clang-linux and clang-darwin)
- Set <triple>none in user-config.jam for clang to disable b2's
  target guessing, letting clang use its own default triple

This replaces the profile workaround that cleared sanitizer flags for
the Boost build. Boost is now built with full ASAN/UBSAN instrumentation.

See bfgroup/b2#584
Ignition added a commit to memgraph/memgraph that referenced this pull request Apr 8, 2026
b2's clang.jam init-flags-cross generates --target=x86_64-pc-linux,
which doesn't match clang's per-target runtime directory layout
(x86_64-unknown-linux-gnu). This breaks any b2 link needing the
sanitizer runtime, including ac library detection for zlib/bzip2.

Vendor the Boost 1.88.0 CCI recipe with two changes:
- Require b2 >= 5.4 which includes <triple> support
  (bfgroup/b2#466: allow explicit target triple for clang-linux and clang-darwin)
- Set <triple>none in user-config.jam for clang to disable b2's
  target guessing, letting clang use its own default triple

This replaces the profile workaround that cleared sanitizer flags for
the Boost build. Boost is now built with full ASAN/UBSAN instrumentation.

See bfgroup/b2#584
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.

Invalid target triple selected with clang 20+

2 participants