OSDN Git Service

configure: handle meson options that have changed type
authorPaolo Bonzini <pbonzini@redhat.com>
Tue, 16 Mar 2021 07:27:40 +0000 (08:27 +0100)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 4 May 2021 12:15:35 +0000 (14:15 +0200)
Usually Meson uses pre-serialized information in meson-private to
speed up re-runs.  This is not possible for version changes, where
Meson instead rebuilds the serialized information using cmd_line.txt.
In some cases cmd_line.txt can contain stale information, since it
is not rebuild except when "meson setup" is invoked.  Update it in
the configure script to allow upgrading our Meson version.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
configure

index 0b8283c..54f8475 100755 (executable)
--- a/configure
+++ b/configure
@@ -6458,6 +6458,15 @@ if test "$skip_meson" = no; then
   if test "$?" -ne 0 ; then
       error_exit "meson setup failed"
   fi
+else
+  if test -f meson-private/cmd_line.txt; then
+    # Adjust old command line options whose type was changed
+    # Avoids having to use "setup --wipe" when Meson is upgraded
+    perl -i -ne '
+      s/^gettext = true$/gettext = auto/;
+      s/^gettext = false$/gettext = disabled/;
+      print;' meson-private/cmd_line.txt
+  fi
 fi
 
 if test -n "${deprecated_features}"; then