X7ROOT File Manager
Current Path:
/lib/python2.7/site-packages/setuptools
lib
/
python2.7
/
site-packages
/
setuptools
/
??
..
??
__init__.py
(5.57 KB)
??
__init__.pyc
(7.45 KB)
??
__init__.pyo
(7.45 KB)
??
_vendor
??
archive_util.py
(6.44 KB)
??
archive_util.pyc
(6 KB)
??
archive_util.pyo
(6 KB)
??
build_meta.py
(5.54 KB)
??
build_meta.pyc
(6.48 KB)
??
build_meta.pyo
(6.37 KB)
??
command
??
config.py
(16 KB)
??
config.pyc
(16.49 KB)
??
config.pyo
(16.49 KB)
??
dep_util.py
(935 B)
??
dep_util.pyc
(965 B)
??
dep_util.pyo
(965 B)
??
depends.py
(5.7 KB)
??
depends.pyc
(6.33 KB)
??
depends.pyo
(6.33 KB)
??
dist.py
(41.52 KB)
??
dist.pyc
(40.53 KB)
??
dist.pyo
(40.47 KB)
??
extension.py
(1.69 KB)
??
extension.pyc
(2.36 KB)
??
extension.pyo
(2.36 KB)
??
extern
??
glibc.py
(3.07 KB)
??
glibc.pyc
(1.91 KB)
??
glibc.pyo
(1.91 KB)
??
glob.py
(5.08 KB)
??
glob.pyc
(4.71 KB)
??
glob.pyo
(4.64 KB)
??
launch.py
(787 B)
??
launch.pyc
(1000 B)
??
launch.pyo
(1000 B)
??
lib2to3_ex.py
(1.97 KB)
??
lib2to3_ex.pyc
(2.93 KB)
??
lib2to3_ex.pyo
(2.93 KB)
??
monkey.py
(5.65 KB)
??
monkey.pyc
(6.19 KB)
??
monkey.pyo
(6.19 KB)
??
msvc.py
(39.92 KB)
??
msvc.pyc
(39.41 KB)
??
msvc.pyo
(39.41 KB)
??
namespaces.py
(3.12 KB)
??
namespaces.pyc
(4.92 KB)
??
namespaces.pyo
(4.92 KB)
??
package_index.py
(39.21 KB)
??
package_index.pyc
(38.81 KB)
??
package_index.pyo
(38.81 KB)
??
pep425tags.py
(10.63 KB)
??
pep425tags.pyc
(9.12 KB)
??
pep425tags.pyo
(9.12 KB)
??
py27compat.py
(536 B)
??
py27compat.pyc
(1.02 KB)
??
py27compat.pyo
(1.02 KB)
??
py31compat.py
(1.16 KB)
??
py31compat.pyc
(1.85 KB)
??
py31compat.pyo
(1.85 KB)
??
py33compat.py
(1.15 KB)
??
py33compat.pyc
(1.68 KB)
??
py33compat.pyo
(1.68 KB)
??
py36compat.py
(2.82 KB)
??
py36compat.pyc
(2.79 KB)
??
py36compat.pyo
(2.79 KB)
??
sandbox.py
(13.94 KB)
??
sandbox.pyc
(18.46 KB)
??
sandbox.pyo
(18.46 KB)
??
script (dev).tmpl
(201 B)
??
script.tmpl
(138 B)
??
site-patch.py
(2.25 KB)
??
site-patch.pyc
(1.7 KB)
??
site-patch.pyo
(1.7 KB)
??
ssl_support.py
(8.29 KB)
??
ssl_support.pyc
(8.32 KB)
??
ssl_support.pyo
(8.32 KB)
??
unicode_utils.py
(996 B)
??
unicode_utils.pyc
(1.44 KB)
??
unicode_utils.pyo
(1.44 KB)
??
version.py
(144 B)
??
version.pyc
(322 B)
??
version.pyo
(322 B)
??
wheel.py
(7.06 KB)
??
wheel.pyc
(7.17 KB)
??
wheel.pyo
(7.14 KB)
??
windows_support.py
(714 B)
??
windows_support.pyc
(1.24 KB)
??
windows_support.pyo
(1.24 KB)
Editing: glibc.py
# This file originally from pip: # https://github.com/pypa/pip/blob/8f4f15a5a95d7d5b511ceaee9ed261176c181970/src/pip/_internal/utils/glibc.py from __future__ import absolute_import import ctypes import re import warnings def glibc_version_string(): "Returns glibc version string, or None if not using glibc." # ctypes.CDLL(None) internally calls dlopen(NULL), and as the dlopen # manpage says, "If filename is NULL, then the returned handle is for the # main program". This way we can let the linker do the work to figure out # which libc our process is actually using. process_namespace = ctypes.CDLL(None) try: gnu_get_libc_version = process_namespace.gnu_get_libc_version except AttributeError: # Symbol doesn't exist -> therefore, we are not linked to # glibc. return None # Call gnu_get_libc_version, which returns a string like "2.5" gnu_get_libc_version.restype = ctypes.c_char_p version_str = gnu_get_libc_version() # py2 / py3 compatibility: if not isinstance(version_str, str): version_str = version_str.decode("ascii") return version_str # Separated out from have_compatible_glibc for easier unit testing def check_glibc_version(version_str, required_major, minimum_minor): # Parse string and check against requested version. # # We use a regexp instead of str.split because we want to discard any # random junk that might come after the minor version -- this might happen # in patched/forked versions of glibc (e.g. Linaro's version of glibc # uses version strings like "2.20-2014.11"). See gh-3588. m = re.match(r"(?P<major>[0-9]+)\.(?P<minor>[0-9]+)", version_str) if not m: warnings.warn("Expected glibc version with 2 components major.minor," " got: %s" % version_str, RuntimeWarning) return False return (int(m.group("major")) == required_major and int(m.group("minor")) >= minimum_minor) def have_compatible_glibc(required_major, minimum_minor): version_str = glibc_version_string() if version_str is None: return False return check_glibc_version(version_str, required_major, minimum_minor) # platform.libc_ver regularly returns completely nonsensical glibc # versions. E.g. on my computer, platform says: # # ~$ python2.7 -c 'import platform; print(platform.libc_ver())' # ('glibc', '2.7') # ~$ python3.5 -c 'import platform; print(platform.libc_ver())' # ('glibc', '2.9') # # But the truth is: # # ~$ ldd --version # ldd (Debian GLIBC 2.22-11) 2.22 # # This is unfortunate, because it means that the linehaul data on libc # versions that was generated by pip 8.1.2 and earlier is useless and # misleading. Solution: instead of using platform, use our code that actually # works. def libc_ver(): """Try to determine the glibc version Returns a tuple of strings (lib, version) which default to empty strings in case the lookup fails. """ glibc_version = glibc_version_string() if glibc_version is None: return ("", "") else: return ("glibc", glibc_version)
Upload File
Create Folder