diff options
Diffstat (limited to 'mesonbuild')
-rw-r--r-- | mesonbuild/coredata.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py index 7b4059e..954e497 100644 --- a/mesonbuild/coredata.py +++ b/mesonbuild/coredata.py @@ -13,6 +13,7 @@ # limitations under the License. import pickle, os, uuid +from pathlib import PurePath from .mesonlib import MesonException, commonpath from .mesonlib import default_libdir, default_libexecdir, default_prefix @@ -159,7 +160,10 @@ class CoreData: if option.endswith('dir') and os.path.isabs(value) and \ option not in builtin_dir_noprefix_options: # Value must be a subdir of the prefix - if commonpath([value, prefix]) != prefix: + # commonpath will always return a path in the native format, so we + # must use pathlib.PurePath to do the same conversion before + # comparing. + if commonpath([value, prefix]) != str(PurePath(prefix)): m = 'The value of the {!r} option is {!r} which must be a ' \ 'subdir of the prefix {!r}.\nNote that if you pass a ' \ 'relative path, it is assumed to be a subdir of prefix.' |