Skip to content

v1.2.2

Latest

Choose a tag to compare

@phruut phruut released this 13 Oct 08:18
build: vendor a relocatable, re-signed macOS OpenVINO runtime

The pinned openvino==2026.4.1 macos-arm64 pip wheel ships libtbbbind
recording its hwloc dependency as the absolute build-machine path
/usr/local/lib/libhwloc.15.dylib, and gives these dylibs code signatures
that Apple's tools refuse to edit or replace ("link edit information does
not fill the __LINKEDIT segment" from install_name_tool; "internal error
in Code Signing subsystem" from codesign, even for --remove-signature:
the signature region ends 16 bytes short of EOF, which the tools treat as
malformed).

Repair without cctools: parse the thin 64-bit Mach-O load commands and
overwrite the NUL-terminated dylib name strings in place. Replacements
must not outgrow the originals, so every command size and offset stays
byte-identical. Each patched file is then stripped byte-wise in Rust
(delete the LC_CODE_SIGNATURE load command, truncate at the old signature start, shrink
__LINKEDIT to match) and signed ad-hoc fresh (fatal on failure): arm64
refuses to load stale-signed dylibs, and the wheel must be
self-contained. The otool-based verifier is the post-condition proof and
now also rejects an absolute own install name; the Mach-O rewriter and
stripper are unit-tested with synthetic fixtures.

CI: pushes to main are a smoke gate (tests + version-check only); the
full wheel matrix runs on PRs, manual dispatch, and tag pushes. Drop a
stale README maintainer line.