From: Peter Kjellerstedt Date: Thu, 27 May 2021 15:05:34 +0000 (+0200) Subject: meson: Correctly validate that prefix is a child of rootprefix X-Git-Tag: v249-rc1~133 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b2d74870711f859ddc72c5756299d2c2f1659468;p=thirdparty%2Fsystemd.git 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) --- diff --git a/meson.build b/meson.build index 3ddae84c1e4..0ce978f8e52 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