Commit 36bcc35f authored by Jason R. Coombs's avatar Jason R. Coombs

Update sdist_add_defaults to match CPython db8bb1bd6ac5

parent 57b4b845
......@@ -3,6 +3,8 @@ from glob import glob
from distutils.util import convert_path
from distutils.command import sdist
from setuptools.extern.six.moves import filter
class sdist_add_defaults:
"""
......@@ -32,6 +34,23 @@ class sdist_add_defaults:
self._add_defaults_c_libs()
self._add_defaults_scripts()
@staticmethod
def _cs_path_exists(fspath):
"""
Case-sensitive path existence check
>>> sdist._cs_path_exists(__file__)
True
>>> sdist._cs_path_exists(__file__.upper())
False
"""
if not os.path.exists(fspath):
return False
# make absolute so we always have a directory
abspath = os.path.abspath(fspath)
directory, filename = os.path.split(abspath)
return filename in os.listdir(directory)
def _add_defaults_standards(self):
standards = [self.READMES, self.distribution.script_name]
for fn in standards:
......@@ -39,7 +58,7 @@ class sdist_add_defaults:
alts = fn
got_it = False
for fn in alts:
if os.path.exists(fn):
if self._cs_path_exists(fn):
got_it = True
self.filelist.append(fn)
break
......@@ -48,7 +67,7 @@ class sdist_add_defaults:
self.warn("standard file not found: should have one of " +
', '.join(alts))
else:
if os.path.exists(fn):
if self._cs_path_exists(fn):
self.filelist.append(fn)
else:
self.warn("standard file '%s' not found" % fn)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment