mirror of
https://github.com/python/cpython.git
synced 2025-10-21 14:12:27 +00:00
Patch by Mark Favas to ensure that the zlib we find is 1.1.3 or
later. This assumes that zlib.h has a line of the form #define ZLIB_VERSION "1.1.3" This solves the problem where a zlib installation is found but it is an older version -- this would break the build, while a better solution is to simply ignore that zlib installation.
This commit is contained in:
parent
2b5ff073ab
commit
e697091c45
1 changed files with 17 additions and 3 deletions
20
setup.py
20
setup.py
|
@ -449,9 +449,23 @@ class PyBuildExt(build_ext):
|
|||
# Andrew Kuchling's zlib module.
|
||||
# This require zlib 1.1.3 (or later).
|
||||
# See http://www.cdrom.com/pub/infozip/zlib/
|
||||
if (self.compiler.find_library_file(lib_dirs, 'z')):
|
||||
exts.append( Extension('zlib', ['zlibmodule.c'],
|
||||
libraries = ['z']) )
|
||||
zlib_inc = find_file('zlib.h', [], inc_dirs)
|
||||
if zlib_inc is not None:
|
||||
zlib_h = zlib_inc[0] + '/zlib.h'
|
||||
version = '"0.0.0"'
|
||||
version_req = '"1.1.3"'
|
||||
fp = open(zlib_h)
|
||||
while 1:
|
||||
line = fp.readline()
|
||||
if not line:
|
||||
break
|
||||
if line.find('#define ZLIB_VERSION', 0) == 0:
|
||||
version = line.split()[2]
|
||||
break
|
||||
if version >= version_req:
|
||||
if (self.compiler.find_library_file(lib_dirs, 'z')):
|
||||
exts.append( Extension('zlib', ['zlibmodule.c'],
|
||||
libraries = ['z']) )
|
||||
|
||||
# Interface to the Expat XML parser
|
||||
#
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue