From 6de2fd6ab5ce5301e840563d2898a82e18543bf0 Mon Sep 17 00:00:00 2001 From: Nicolas Schneider Date: Wed, 24 Feb 2016 00:40:14 +0100 Subject: vs2010: fix target_to_build_root method Python's os.path.split() does not split the path into its components. Instead, split the path with str.split() using the OS's file system separator. --- mesonbuild/backend/vs2010backend.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'mesonbuild/backend/vs2010backend.py') diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py index c9fe09f..a9567f4 100644 --- a/mesonbuild/backend/vs2010backend.py +++ b/mesonbuild/backend/vs2010backend.py @@ -217,10 +217,8 @@ class Vs2010Backend(backends.Backend): if target.subdir == '': return '' - directories = os.path.split(target.subdir) - directories = list(filter(bool,directories)) #Filter out empty strings - - return '/'.join(['..']*len(directories)) + directories = target.subdir.split(os.sep) + return os.sep.join(['..']*len(directories)) def special_quote(self, arr): return ['"%s"' % i for i in arr] -- cgit v1.1 From c5001a3a5a504661b473b9fc74321059de8021b6 Mon Sep 17 00:00:00 2001 From: Nicolas Schneider Date: Thu, 25 Feb 2016 21:36:57 +0100 Subject: call os.path.normpath before splitting a file path into its components This makes sure that any '/' are converted to native directory separators on Windows. --- mesonbuild/backend/vs2010backend.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'mesonbuild/backend/vs2010backend.py') diff --git a/mesonbuild/backend/vs2010backend.py b/mesonbuild/backend/vs2010backend.py index a9567f4..25124cc 100644 --- a/mesonbuild/backend/vs2010backend.py +++ b/mesonbuild/backend/vs2010backend.py @@ -217,7 +217,7 @@ class Vs2010Backend(backends.Backend): if target.subdir == '': return '' - directories = target.subdir.split(os.sep) + directories = os.path.normpath(target.subdir).split(os.sep) return os.sep.join(['..']*len(directories)) def special_quote(self, arr): -- cgit v1.1