From b2d74870711f859ddc72c5756299d2c2f1659468 Mon Sep 17 00:00:00 2001 From: Peter Kjellerstedt Date: Thu, 27 May 2021 17:05:34 +0200 Subject: [PATCH] meson: Correctly validate that prefix is a child of rootprefix In commit d895e10a a test was introduced to validate that prefix is a child of rootprefix. However, it only works when rootprefix is "/". Since the test is ignored when rootprefix is equal to prefix, this is only noticed if specifying both -Drootprefix= and -Dprefix=, e.g.: $ meson foo -Drootprefix=/foo -Dprefix=/foo/bar meson.build:111:8: ERROR: Problem encountered: Prefix is not below root prefix (now rootprefix=/foo prefix=/foo/bar) --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson.build b/meson.build index 3ddae84c1e..0ce978f8e5 100644 --- a/meson.build +++ b/meson.build @@ -107,7 +107,7 @@ prefixdir = get_option('prefix') if not prefixdir.startswith('/') error('Prefix is not absolute: "@0@"'.format(prefixdir)) endif -if prefixdir != rootprefixdir and not prefixdir.startswith(rootprefixdir.strip('/') + '/') +if prefixdir != rootprefixdir and rootprefixdir != '/' and not prefixdir.strip('/').startswith(rootprefixdir.strip('/') + '/') error('Prefix is not below root prefix (now rootprefix=@0@ prefix=@1@)'.format( rootprefixdir, prefixdir)) endif -- 2.25.1