diff options
author | PJ Eby <distutils-sig@python.org> | 2008-03-10 17:02:32 +0000 |
---|---|---|
committer | PJ Eby <distutils-sig@python.org> | 2008-03-10 17:02:32 +0000 |
commit | 005e04d61453acbf4ce1b6c244bda2f4e97989ca (patch) | |
tree | c51fbd386c10d5cb1ef0feaa63363c7c486f96fe /setuptools/command | |
parent | 601add2805c394928b7dd9d2156d24508a9bddb6 (diff) | |
download | external_python_setuptools-005e04d61453acbf4ce1b6c244bda2f4e97989ca.tar.gz external_python_setuptools-005e04d61453acbf4ce1b6c244bda2f4e97989ca.tar.bz2 external_python_setuptools-005e04d61453acbf4ce1b6c244bda2f4e97989ca.zip |
Fixed ``win32.exe`` support for .pth files, so unnecessary directory
nesting is flattened out in the resulting egg. (There was a
case-sensitivity problem that affected some distributions, notably
``pywin32``.)
(backport from trunk)
--HG--
branch : setuptools-0.6
extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/branches/setuptools-0.6%4061342
Diffstat (limited to 'setuptools/command')
-rwxr-xr-x | setuptools/command/easy_install.py | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index acf4fda7..d972d829 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -744,8 +744,9 @@ Please make the appropriate changes for your system and try again. native_libs = [] top_level = {} def process(src,dst): + s = src.lower() for old,new in prefixes: - if src.startswith(old): + if s.startswith(old): src = new+src[len(old):] parts = src.split('/') dst = os.path.join(egg_tmp, *parts) @@ -761,7 +762,6 @@ Please make the appropriate changes for your system and try again. if not src.endswith('.pth'): log.warn("WARNING: can't process %s", src) return None - # extract, tracking .pyd/.dll->native_libs and .py -> to_compile unpack_archive(dist_filename, egg_tmp, process) stubs = [] @@ -1273,7 +1273,7 @@ def get_exe_prefixes(exe_filename): """Get exe->egg path translations for a given .exe file""" prefixes = [ - ('PURELIB/', ''), + ('PURELIB/', ''), ('PLATLIB/pywin32_system32', ''), ('PLATLIB/', ''), ('SCRIPTS/', 'EGG-INFO/scripts/') ] @@ -1290,14 +1290,14 @@ def get_exe_prefixes(exe_filename): continue if name.endswith('-nspkg.pth'): continue - if parts[0] in ('PURELIB','PLATLIB'): + if parts[0].upper() in ('PURELIB','PLATLIB'): for pth in yield_lines(z.read(name)): pth = pth.strip().replace('\\','/') if not pth.startswith('import'): prefixes.append((('%s/%s/' % (parts[0],pth)), '')) finally: z.close() - + prefixes = [(x.lower(),y) for x, y in prefixes] prefixes.sort(); prefixes.reverse() return prefixes |