Issue #26661: setup.py now detects system libffi with multiarch wrapper.
diff --git a/setup.py b/setup.py
index 174ce72..29ff1a8 100644
--- a/setup.py
+++ b/setup.py
@@ -1997,14 +1997,16 @@
ffi_inc = find_file('ffi.h', [], inc_dirs)
if ffi_inc is not None:
ffi_h = ffi_inc[0] + '/ffi.h'
- with open(ffi_h) as fp:
- while 1:
- line = fp.readline()
- if not line:
- ffi_inc = None
+ with open(ffi_h) as f:
+ for line in f:
+ line = line.strip()
+ if line.startswith(('#define LIBFFI_H',
+ '#define ffi_wrapper_h')):
break
- if line.startswith('#define LIBFFI_H'):
- break
+ else:
+ ffi_inc = None
+ 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'):