Skip to content

Commit d302bd2

Browse files
committed
Simplify MFC deps install: let pip choose wheels vs source builds
Removed --no-binary :all: flag that was forcing ALL packages to compile from source, which caused failures for Rust-based packages like 'typos' that require Rust compiler. New approach: - Set LDFLAGS with -headerpad_max_install_names in environment - Let pip decide whether to use wheels or compile from source - Pip will use LDFLAGS when compiling C extensions (like orjson) - Most packages will use pre-built wheels (faster, no extra deps needed) - Only packages that need compilation will be built from source This is simpler, faster, and avoids requiring Rust/other compilers while still fixing the bottle relocation issues for packages with C extensions that need custom header padding.
1 parent 702166d commit d302bd2

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

packaging/homebrew/mfc.rb

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,10 @@ def install
3737
ENV.append "LDFLAGS", "-Wl,-headerpad_max_install_names"
3838

3939
# Install MFC Python package and dependencies into venv
40-
# Force compilation from source (--no-binary :all:) to ensure our LDFLAGS are applied
41-
# Pre-built wheels don't have proper header padding for bottle relocation
42-
# Keep toolchain in buildpath for now - mfc.sh needs it there
4340
# Use editable install (-e) to avoid RECORD file issues when venv is symlinked at runtime
44-
system venv/"bin/pip", "install", "--no-binary", ":all:", "-e", buildpath/"toolchain"
41+
# Most dependencies use pre-built wheels; only packages with C extensions will be compiled
42+
# Keep toolchain in buildpath for now - mfc.sh needs it there
43+
system venv/"bin/pip", "install", "-e", buildpath/"toolchain"
4544

4645
# Create symlink so mfc.sh uses our pre-installed venv
4746
mkdir_p "build"

0 commit comments

Comments
 (0)