]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
build: fix shell detection bug
authorEric Blake <eblake@redhat.com>
Tue, 26 Oct 2010 16:37:06 +0000 (10:37 -0600)
committerEric Blake <eblake@redhat.com>
Tue, 26 Oct 2010 21:55:12 +0000 (15:55 -0600)
A missing shell was noisy, and the use of command to decipher a
shell's absolute path requires "" rather than ''.

* configure.ac (lv_cv_wrapper_shell): Fix logic errors if candidate
shell is not available.
* .gitignore: Ignore file created when /bin/sh is old dash.
Reported by Matthias Bolte.

.gitignore
configure.ac

index c62e8858cb9d852f1bf62c0435d97e4b55bece58..b7eae66a9221dc8f66254fa36b0f63ea203afb65 100644 (file)
@@ -33,6 +33,7 @@ config.rpath
 config.status
 config.sub
 configure
+configure.lineno
 coverage
 cscope.files
 cscope.out
index 86a864b596efda22a2b30b853821f3da5b198f2c..d942d3c380bd103c55a52fbee3cfbfa1dbb31bd3 100644 (file)
@@ -616,13 +616,13 @@ if test "$with_qemu" = yes; then
         test $lv_cv_wrapper_shell = none &&
           AC_MSG_ERROR([could not find decent shell])
         echo a > conftest.a
-        $lv_cv_wrapper_shell -c ': 1<>conftest.a'
+        ($lv_cv_wrapper_shell -c ': 1<>conftest.a') 2>/dev/null &&
         case `cat conftest.a`.$lv_cv_wrapper_shell in
           a./*) break;; dnl /bin/sh is good enough
           a.*) dnl bash, ksh, and zsh all understand 'command', use that
                dnl to determine the absolute path of the shell
             lv_cv_wrapper_shell=`$lv_cv_wrapper_shell -c \
-              'command -v $lv_cv_wrapper_shell'`
+              "command -v $lv_cv_wrapper_shell"`
             case $lv_cv_wrapper_shell in
               /*) break;;
             esac
@@ -636,7 +636,7 @@ if test "$with_qemu" = yes; then
     lv_wrapper_shell=$lv_cv_wrapper_shell
   fi
   if test "x$lv_wrapper_shell" != x; then
-    AC_DEFINE_UNQUOTED([VIR_WRAPPER_SHELL], [$lv_wrapper_shell],
+    AC_DEFINE_UNQUOTED([VIR_WRAPPER_SHELL], ["$lv_wrapper_shell"],
       [Define to the absolute path of a shell that does not truncate on
        <> redirection, if /bin/sh does not fit the bill])
   fi