Skip to content

Commit 378cc16

Browse files
committed
Fix SIMD compiler flags
1 parent 166ef4c commit 378cc16

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

mypyc/test/librt_cache.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020

2121
import hashlib
2222
import os
23+
import shutil
2324
import subprocess
2425
import sys
2526
import sysconfig
@@ -90,6 +91,7 @@ def _generate_setup_py(build_dir: str, experimental: bool) -> str:
9091
return f"""\
9192
import os
9293
from setuptools import setup, Extension
94+
import build_setup # noqa: F401 # Monkey-patches compiler for per-file SIMD flags
9395
9496
build_dir = {build_dir!r}
9597
lib_rt_dir = {lib_rt_dir!r}
@@ -169,8 +171,6 @@ def get_librt_path(experimental: bool = True) -> str:
169171

170172
# Clean up any partial build
171173
if os.path.exists(build_dir):
172-
import shutil
173-
174174
shutil.rmtree(build_dir)
175175

176176
os.makedirs(build_dir)
@@ -181,6 +181,13 @@ def get_librt_path(experimental: bool = True) -> str:
181181
with open(os.path.join(librt_pkg, "__init__.py"), "w") as f:
182182
pass
183183

184+
# Copy build_setup.py for per-file SIMD compiler flags
185+
build_setup_src = os.path.join(
186+
os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "build_setup.py"
187+
)
188+
build_setup_dst = os.path.join(build_dir, "build_setup.py")
189+
shutil.copy(build_setup_src, build_setup_dst)
190+
184191
# Write setup.py
185192
setup_py = os.path.join(build_dir, "setup.py")
186193
with open(setup_py, "w") as f:

0 commit comments

Comments
 (0)