summaryrefslogtreecommitdiff
path: root/setup.py
diff options
context:
space:
mode:
authorChristian Heimes <christian@python.org>2016-09-18 14:40:15 +0200
committerChristian Heimes <christian@python.org>2016-09-18 14:40:15 +0200
commit37471dc6f9911b0f36aafdf4c130ce608e0443d1 (patch)
tree4f4131c06a51b82ba7307a0745b43d7e53032d12 /setup.py
parentdb01b3e069085b3d24f65eec051f13ba1e392fb7 (diff)
downloadcpython-git-37471dc6f9911b0f36aafdf4c130ce608e0443d1.tar.gz
Issue #26661: setup.py now detects system libffi with multiarch wrapper.
Diffstat (limited to 'setup.py')
-rw-r--r--setup.py16
1 files changed, 9 insertions, 7 deletions
diff --git a/setup.py b/setup.py
index e15350c56e..54054c208a 100644
--- a/setup.py
+++ b/setup.py
@@ -2132,14 +2132,16 @@ class PyBuildExt(build_ext):
ffi_inc = find_file('ffi.h', [], inc_dirs)
if ffi_inc is not None:
ffi_h = ffi_inc[0] + '/ffi.h'
- fp = open(ffi_h)
- while 1:
- line = fp.readline()
- if not line:
+ with open(ffi_h) as f:
+ for line in f:
+ line = line.strip()
+ if line.startswith(('#define LIBFFI_H',
+ '#define ffi_wrapper_h')):
+ break
+ else:
ffi_inc = None
- break
- if line.startswith('#define LIBFFI_H'):
- break
+ print('Header file {} does not define LIBFFI_H or '
+ 'ffi_wrapper_h'.format(ffi_h))
ffi_lib = None
if ffi_inc is not None:
for lib_name in ('ffi_convenience', 'ffi_pic', 'ffi'):