summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.com>2023-03-30 14:27:59 -0400
committerEli Schwartz <eschwartz93@gmail.com>2023-03-30 17:01:04 -0400
commitad151d9f1123e84fea055848867c33bc965307f8 (patch)
tree6554fdd984c598ad96fe825e57fbb806e0875583
parentb30cd5d2d587546eac8b560a8c311a52d69fb53e (diff)
downloadmeson-ad151d9f1123e84fea055848867c33bc965307f8.tar.gz
coredata: Fix changing prefix option
This is a regression from #11537.
-rw-r--r--mesonbuild/coredata.py4
-rw-r--r--unittests/allplatformstests.py8
2 files changed, 6 insertions, 6 deletions
diff --git a/mesonbuild/coredata.py b/mesonbuild/coredata.py
index bc8ee1995..e790a018f 100644
--- a/mesonbuild/coredata.py
+++ b/mesonbuild/coredata.py
@@ -837,10 +837,10 @@ class CoreData:
pfk = OptionKey('prefix')
if pfk in options:
prefix = self.sanitize_prefix(options[pfk])
- self.options[OptionKey('prefix')].set_value(prefix)
+ dirty |= self.options[OptionKey('prefix')].set_value(prefix)
for key in BULITIN_DIR_NOPREFIX_OPTIONS:
if key not in options:
- self.options[key].set_value(BUILTIN_OPTIONS[key].prefixed_default(key, prefix))
+ dirty |= self.options[key].set_value(BUILTIN_OPTIONS[key].prefixed_default(key, prefix))
unknown_options: T.List[OptionKey] = []
for k, v in options.items():
diff --git a/unittests/allplatformstests.py b/unittests/allplatformstests.py
index b9c3fe013..bb5012858 100644
--- a/unittests/allplatformstests.py
+++ b/unittests/allplatformstests.py
@@ -4601,21 +4601,21 @@ class AllPlatformTests(BasePlatformTests):
olddata = filename.read_bytes()
oldmtime = os.path.getmtime(filename)
- for opt in ('-Dstring=val', '--buildtype=plain', '-Dfeature=disabled'):
+ for opt in ('-Dstring=val', '--buildtype=plain', '-Dfeature=disabled', '-Dprefix=/abc'):
self.setconf([opt])
newdata = filename.read_bytes()
newmtime = os.path.getmtime(filename)
- self.assertEqual(olddata, newdata)
self.assertEqual(oldmtime, newmtime)
+ self.assertEqual(olddata, newdata)
olddata = newdata
oldmtime = newmtime
- for opt in ('-Dstring=abc', '--buildtype=release', '-Dfeature=enabled'):
+ for opt in ('-Dstring=abc', '--buildtype=release', '-Dfeature=enabled', '-Dprefix=/def'):
self.setconf([opt])
newdata = filename.read_bytes()
newmtime = os.path.getmtime(filename)
- self.assertNotEqual(olddata, newdata)
self.assertGreater(newmtime, oldmtime)
+ self.assertNotEqual(olddata, newdata)
olddata = newdata
oldmtime = newmtime