All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] configure: warn if not using a separate build directory
@ 2020-03-31 15:51 Daniel P. Berrangé
  2020-03-31 16:05 ` Eric Blake
  2020-03-31 16:16 ` Markus Armbruster
  0 siblings, 2 replies; 6+ messages in thread
From: Daniel P. Berrangé @ 2020-03-31 15:51 UTC (permalink / raw)
  To: qemu-devel
  Cc: Kevin Wolf, Peter Maydell, Daniel P. Berrangé,
	Stefan Hajnoczi, Markus Armbruster, Liviu Ionescu, Paolo Bonzini,
	Michal Suchánek, Philippe Mathieu-Daudé,
	Aleksandar Markovic

Running configure directly from the source directory is a build
configuration that will go away in future. It is also not currently
covered by any automated testing. Display a deprecation warning if
the user attempts to use an in-srcdir build setup, so that they are
aware that they're building QEMU in an undesirable manner.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---

Changed in v2:

 - Use existing $source_path variable (Eric)
 - Remove bash-ism in comparison (Eric)
 - Safe quoting of directory paths (Eric)
 - Rename variables to reflect that we're applying canonicalization (Eric)

 configure | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/configure b/configure
index e225a1e3ff..5991e0e6e5 100755
--- a/configure
+++ b/configure
@@ -285,6 +285,16 @@ then
   error_exit "main directory cannot contain spaces nor colons"
 fi
 
+canon_build_path=$(realpath -- "$PWD")
+canon_source_path=$(realpath -- "$source_path")
+
+in_srcdir=no
+if [ "$canon_build_path" = "$canon_source_path" ]
+then
+    in_srcdir=yes
+fi
+
+
 # default parameters
 cpu=""
 iasl="iasl"
@@ -6799,6 +6809,23 @@ if test "$supported_os" = "no"; then
     echo "us upstream at qemu-devel@nongnu.org."
 fi
 
+if test "$in_srcdir" = "yes"; then
+    echo
+    echo "WARNING: SUPPORT FOR IN SOURCE DIR BUILDS IS DEPRECATED"
+    echo
+    echo "Support for running the 'configure' script directly from the"
+    echo "source directory is deprecated and will go away in a future"
+    echo "release. In source dir builds are not covered by automated"
+    echo "testing and are liable to break without warning. Users are"
+    echo "strongly recommended to switch to a separate build directory:"
+    echo
+    echo "  $ mkdir build"
+    echo "  $ cd build"
+    echo "  $ ../configure"
+    echo "  $ make"
+    echo
+fi
+
 config_host_mak="config-host.mak"
 
 echo "# Automatically generated by configure - do not modify" >config-all-disas.mak
-- 
2.24.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2020-03-31 17:13 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-31 15:51 [PATCH v2] configure: warn if not using a separate build directory Daniel P. Berrangé
2020-03-31 16:05 ` Eric Blake
2020-03-31 16:12   ` Peter Maydell
2020-03-31 16:18     ` Daniel P. Berrangé
2020-03-31 16:16 ` Markus Armbruster
2020-03-31 17:12   ` Eric Blake

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.