aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/no-ldconfig.patch
blob: 2a6b2a20dd19d81923a938405b8fd8009b3d3492 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
From 6b0f329a9f37110020ca02b35c8125391ef282b7 Mon Sep 17 00:00:00 2001
From: Frederik Rietdijk <fridh@fridh.nl>
Date: Sat, 24 Dec 2016 15:56:10 +0100
Subject: [PATCH] no ldconfig

---
 Lib/ctypes/util.py | 35 +----------------------------------
 Lib/uuid.py        | 47 -----------------------------------------------
 2 files changed, 1 insertion(+), 81 deletions(-)

diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py
index ab10ec5..f253e34 100644
--- a/Lib/ctypes/util.py
+++ b/Lib/ctypes/util.py
@@ -235,40 +235,7 @@ elif os.name == "posix":
     else:
 
         def _findSoname_ldconfig(name):
-            import struct
-            if struct.calcsize('l') == 4:
-                machine = os.uname()[4] + '-32'
-            else:
-                machine = os.uname()[4] + '-64'
-            mach_map = {
-                'x86_64-64': 'libc6,x86-64',
-                'ppc64-64': 'libc6,64bit',
-                'sparc64-64': 'libc6,64bit',
-                's390x-64': 'libc6,64bit',
-                'ia64-64': 'libc6,IA-64',
-                }
-            abi_type = mach_map.get(machine, 'libc6')
-
-            # XXX assuming GLIBC's ldconfig (with option -p)
-            expr = r'\s+(lib%s\.[^\s]+)\s+\(%s' % (re.escape(name), abi_type)
-
-            env = dict(os.environ)
-            env['LC_ALL'] = 'C'
-            env['LANG'] = 'C'
-            null = open(os.devnull, 'wb')
-            try:
-                with null:
-                    p = subprocess.Popen(['/sbin/ldconfig', '-p'],
-                                          stderr=null,
-                                          stdout=subprocess.PIPE,
-                                          env=env)
-            except OSError:  # E.g. command not found
-                return None
-            [data, _] = p.communicate()
-            res = re.search(expr, data)
-            if not res:
-                return None
-            return res.group(1)
+            return None
 
         def find_library(name):
             return _findSoname_ldconfig(name) or _get_soname(_findLib_gcc(name))
diff --git a/Lib/uuid.py b/Lib/uuid.py
index 7432032..05eeee5 100644
--- a/Lib/uuid.py
+++ b/Lib/uuid.py
@@ -441,53 +441,6 @@ def _netbios_getnode():
 
 # If ctypes is available, use it to find system routines for UUID generation.
 _uuid_generate_time = _UuidCreate = None
-try:
-    import ctypes, ctypes.util
-    import sys
-
-    # The uuid_generate_* routines are provided by libuuid on at least
-    # Linux and FreeBSD, and provided by libc on Mac OS X.
-    _libnames = ['uuid']
-    if not sys.platform.startswith('win'):
-        _libnames.append('c')
-    for libname in _libnames:
-        try:
-            lib = ctypes.CDLL(ctypes.util.find_library(libname))
-        except:
-            continue
-        if hasattr(lib, 'uuid_generate_time'):
-            _uuid_generate_time = lib.uuid_generate_time
-            break
-    del _libnames
-
-    # The uuid_generate_* functions are broken on MacOS X 10.5, as noted
-    # in issue #8621 the function generates the same sequence of values
-    # in the parent process and all children created using fork (unless
-    # those children use exec as well).
-    #
-    # Assume that the uuid_generate functions are broken from 10.5 onward,
-    # the test can be adjusted when a later version is fixed.
-    if sys.platform == 'darwin':
-        import os
-        if int(os.uname()[2].split('.')[0]) >= 9:
-            _uuid_generate_time = None
-
-    # On Windows prior to 2000, UuidCreate gives a UUID containing the
-    # hardware address.  On Windows 2000 and later, UuidCreate makes a
-    # random UUID and UuidCreateSequential gives a UUID containing the
-    # hardware address.  These routines are provided by the RPC runtime.
-    # NOTE:  at least on Tim's WinXP Pro SP2 desktop box, while the last
-    # 6 bytes returned by UuidCreateSequential are fixed, they don't appear
-    # to bear any relationship to the MAC address of any network device
-    # on the box.
-    try:
-        lib = ctypes.windll.rpcrt4
-    except:
-        lib = None
-    _UuidCreate = getattr(lib, 'UuidCreateSequential',
-                          getattr(lib, 'UuidCreate', None))
-except:
-    pass
 
 def _unixdll_getnode():
     """Get the hardware address on Unix using ctypes."""
-- 
2.11.0