summaryrefslogtreecommitdiff
path: root/numpy/distutils/misc_util.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/distutils/misc_util.py')
-rw-r--r--numpy/distutils/misc_util.py18
1 files changed, 13 insertions, 5 deletions
diff --git a/numpy/distutils/misc_util.py b/numpy/distutils/misc_util.py
index f2f4f6b5d..4057eff71 100644
--- a/numpy/distutils/misc_util.py
+++ b/numpy/distutils/misc_util.py
@@ -776,12 +776,21 @@ class Configuration(object):
return self.add_data_dir((data_path, data_path))
paths = self.paths(data_path, include_non_existing=False)
if is_glob_pattern(data_path):
- pp = self.path_in_package.split(os.sep)
if is_glob_pattern(d):
- pattern_list = pp + d.split(os.sep)
+ pattern_list = d.split(os.sep)
pattern_list.reverse()
+ # /a/*//b/ -> /a/*/b
+ rl = range(len(pattern_list)-1); rl.reverse()
+ for i in rl:
+ if not pattern_list[i]:
+ del pattern_list[i]
+ #
for path in paths:
- path_list = path.split(os.sep)
+ if not os.path.isdir(path):
+ print 'Not a directory, skipping',path
+ continue
+ rpath = rel_path(path, self.local_path)
+ path_list = rpath.split(os.sep)
path_list.reverse()
target_list = []
i = 0
@@ -792,14 +801,13 @@ class Configuration(object):
% (d, path)
target_list.append(path_list[i])
else:
- assert s==path_list[i],`s,path_list[i],data_path,d`
+ assert s==path_list[i],`s,path_list[i],data_path,d,path,rpath`
target_list.append(s)
i += 1
if path_list[i:]:
self.warn('mismatch of pattern_list=%s and path_list=%s'\
% (pattern_list,path_list))
target_list.reverse()
- target_list = target_list[len(pp):]
self.add_data_dir((os.sep.join(target_list),path))
else:
for path in paths: