1*b1cdbd2cSJim Jagielskidiff -ur misc/Python-2.7.18/setup.py misc/build/Python-2.7.18/setup.py 2*b1cdbd2cSJim Jagielski--- misc/Python-2.7.18/setup.py 2016-06-25 16:49:32.000000000 -0500 3*b1cdbd2cSJim Jagielski+++ misc/build/Python-2.7.18/setup.py 2016-09-02 17:09:20.687419000 -0500 4*b1cdbd2cSJim Jagielski@@ -126,39 +126,41 @@ 5*b1cdbd2cSJim Jagielski # system, but with only header files and libraries. 6*b1cdbd2cSJim Jagielski sysroot = macosx_sdk_root() 7*b1cdbd2cSJim Jagielski 8*b1cdbd2cSJim Jagielski- # Check the standard locations 9*b1cdbd2cSJim Jagielski- for dir in std_dirs: 10*b1cdbd2cSJim Jagielski+ # Check the standard directories 11*b1cdbd2cSJim Jagielski+ for dir in paths: 12*b1cdbd2cSJim Jagielski f = os.path.join(dir, filename) 13*b1cdbd2cSJim Jagielski 14*b1cdbd2cSJim Jagielski if host_platform == 'darwin' and is_macosx_sdk_path(dir): 15*b1cdbd2cSJim Jagielski f = os.path.join(sysroot, dir[1:], filename) 16*b1cdbd2cSJim Jagielski 17*b1cdbd2cSJim Jagielski- if os.path.exists(f): return [] 18*b1cdbd2cSJim Jagielski+ if os.path.exists(f): 19*b1cdbd2cSJim Jagielski+ return [dir] 20*b1cdbd2cSJim Jagielski 21*b1cdbd2cSJim Jagielski- # Check the additional directories 22*b1cdbd2cSJim Jagielski- for dir in paths: 23*b1cdbd2cSJim Jagielski+ # Check the standard locations 24*b1cdbd2cSJim Jagielski+ for dir in std_dirs: 25*b1cdbd2cSJim Jagielski f = os.path.join(dir, filename) 26*b1cdbd2cSJim Jagielski 27*b1cdbd2cSJim Jagielski if host_platform == 'darwin' and is_macosx_sdk_path(dir): 28*b1cdbd2cSJim Jagielski f = os.path.join(sysroot, dir[1:], filename) 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim Jagielski if os.path.exists(f): 31*b1cdbd2cSJim Jagielski- return [dir] 32*b1cdbd2cSJim Jagielski+ return [] 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski # Not found anywhere 35*b1cdbd2cSJim Jagielski return None 36*b1cdbd2cSJim Jagielski 37*b1cdbd2cSJim Jagielski def find_library_file(compiler, libname, std_dirs, paths): 38*b1cdbd2cSJim Jagielski- result = compiler.find_library_file(std_dirs + paths, libname) 39*b1cdbd2cSJim Jagielski+ result = compiler.find_library_file(paths+std_dirs, libname) 40*b1cdbd2cSJim Jagielski if result is None: 41*b1cdbd2cSJim Jagielski return None 42*b1cdbd2cSJim Jagielski 43*b1cdbd2cSJim Jagielski if host_platform == 'darwin': 44*b1cdbd2cSJim Jagielski sysroot = macosx_sdk_root() 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielski- # Check whether the found file is in one of the standard directories 47*b1cdbd2cSJim Jagielski dirname = os.path.dirname(result) 48*b1cdbd2cSJim Jagielski- for p in std_dirs: 49*b1cdbd2cSJim Jagielski+ # Otherwise, it must have been in one of the additional directories, 50*b1cdbd2cSJim Jagielski+ # so we have to figure out which one. 51*b1cdbd2cSJim Jagielski+ for p in paths: 52*b1cdbd2cSJim Jagielski # Ensure path doesn't end with path separator 53*b1cdbd2cSJim Jagielski p = p.rstrip(os.sep) 54*b1cdbd2cSJim Jagielski 55*b1cdbd2cSJim Jagielski@@ -180,23 +180,22 @@ 56*b1cdbd2cSJim Jagielski # vs 57*b1cdbd2cSJim Jagielski # /usr/lib/libedit.dylib 58*b1cdbd2cSJim Jagielski if os.path.join(sysroot, p[1:]) == dirname: 59*b1cdbd2cSJim Jagielski- return [ ] 60*b1cdbd2cSJim Jagielski+ return [ p ] 61*b1cdbd2cSJim Jagielski 62*b1cdbd2cSJim Jagielski if p == dirname: 63*b1cdbd2cSJim Jagielski- return [ ] 64*b1cdbd2cSJim Jagielski+ return [ p ] 65*b1cdbd2cSJim Jagielski 66*b1cdbd2cSJim Jagielski- # Otherwise, it must have been in one of the additional directories, 67*b1cdbd2cSJim Jagielski- # so we have to figure out which one. 68*b1cdbd2cSJim Jagielski- for p in paths: 69*b1cdbd2cSJim Jagielski+ # Check whether the found file is in one of the standard directories 70*b1cdbd2cSJim Jagielski+ for p in std_dirs: 71*b1cdbd2cSJim Jagielski # Ensure path doesn't end with path separator 72*b1cdbd2cSJim Jagielski p = p.rstrip(os.sep) 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski if host_platform == 'darwin' and is_macosx_sdk_path(p): 75*b1cdbd2cSJim Jagielski if os.path.join(sysroot, p[1:]) == dirname: 76*b1cdbd2cSJim Jagielski- return [ p ] 77*b1cdbd2cSJim Jagielski+ return [ ] 78*b1cdbd2cSJim Jagielski 79*b1cdbd2cSJim Jagielski if p == dirname: 80*b1cdbd2cSJim Jagielski- return [p] 81*b1cdbd2cSJim Jagielski+ return [ ] 82*b1cdbd2cSJim Jagielski else: 83*b1cdbd2cSJim Jagielski assert False, "Internal error: Path not found in std_dirs or paths" 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski@@ -891,6 +892,7 @@ 86*b1cdbd2cSJim Jagielski exts.append( Extension('_ssl', ['_ssl.c'], 87*b1cdbd2cSJim Jagielski include_dirs = ssl_incs, 88*b1cdbd2cSJim Jagielski library_dirs = ssl_libs, 89*b1cdbd2cSJim Jagielski+ extra_link_args = ['-Wl,--exclude-libs,ALL'], 90*b1cdbd2cSJim Jagielski libraries = ['ssl', 'crypto'], 91*b1cdbd2cSJim Jagielski depends = ['socketmodule.h']), ) 92*b1cdbd2cSJim Jagielski else: 93*b1cdbd2cSJim Jagielski@@ -930,6 +931,7 @@ 94*b1cdbd2cSJim Jagielski exts.append( Extension('_hashlib', ['_hashopenssl.c'], 95*b1cdbd2cSJim Jagielski include_dirs = ssl_incs, 96*b1cdbd2cSJim Jagielski library_dirs = ssl_libs, 97*b1cdbd2cSJim Jagielski+ extra_link_args = ['-Wl,--exclude-libs,ALL'], 98*b1cdbd2cSJim Jagielski libraries = ['ssl', 'crypto']) ) 99*b1cdbd2cSJim Jagielski else: 100*b1cdbd2cSJim Jagielski print ("warning: openssl 0x%08x is too old for _hashlib" % 101