Commit a44cc3cc authored by Christian Heimes's avatar Christian Heimes

Issue #26661: setup.py now detects system libffi with multiarch wrapper.

parent ec34a4da
...@@ -364,6 +364,8 @@ Windows ...@@ -364,6 +364,8 @@ Windows
Build Build
----- -----
- Issue #26661: setup.py now detects system libffi with multiarch wrapper.
- Issue #28066: Fix the logic that searches build directories for generated - Issue #28066: Fix the logic that searches build directories for generated
include files when building outside the source tree. include files when building outside the source tree.
......
...@@ -1997,14 +1997,16 @@ class PyBuildExt(build_ext): ...@@ -1997,14 +1997,16 @@ class PyBuildExt(build_ext):
ffi_inc = find_file('ffi.h', [], inc_dirs) ffi_inc = find_file('ffi.h', [], inc_dirs)
if ffi_inc is not None: if ffi_inc is not None:
ffi_h = ffi_inc[0] + '/ffi.h' ffi_h = ffi_inc[0] + '/ffi.h'
with open(ffi_h) as fp: with open(ffi_h) as f:
while 1: for line in f:
line = fp.readline() line = line.strip()
if not line: if line.startswith(('#define LIBFFI_H',
ffi_inc = None '#define ffi_wrapper_h')):
break
if line.startswith('#define LIBFFI_H'):
break break
else:
ffi_inc = None
print('Header file {} does not define LIBFFI_H or '
'ffi_wrapper_h'.format(ffi_h))
ffi_lib = None ffi_lib = None
if ffi_inc is not None: if ffi_inc is not None:
for lib_name in ('ffi_convenience', 'ffi_pic', 'ffi'): for lib_name in ('ffi_convenience', 'ffi_pic', 'ffi'):
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment