It is common that build hosts are isolated from outside world. They
don't necessarily have wget or ftp installed.

Turn the error into warning in configure. And point FETCHER to `false'
command if neither wget nor ftp is available, so any attempt to
download will result in error.

Signed-off-by: Wei Liu <wei.l...@citrix.com>
---
 m4/fetcher.m4     |  4 +++-
 stubdom/configure | 46 +++++++++++++++++++++++++++++++++++++++++++++-
 tools/configure   | 46 +++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 93 insertions(+), 3 deletions(-)

diff --git a/m4/fetcher.m4 b/m4/fetcher.m4
index 86f33b3937..c1a72c189c 100644
--- a/m4/fetcher.m4
+++ b/m4/fetcher.m4
@@ -1,5 +1,6 @@
 AC_DEFUN([AX_CHECK_FETCHER], [
 AC_PATH_PROG([WGET],[wget], [no])
+AC_PATH_PROG([FALSE],[false], [/bin/false])
 AS_IF([test x"$WGET" != x"no"], [
     FETCHER="$WGET -c -O"
 ], [
@@ -7,7 +8,8 @@ AS_IF([test x"$WGET" != x"no"], [
     AS_IF([test x"$FTP" != x"no"], [
         FETCHER="$FTP -o"
     ], [
-        AC_MSG_ERROR([cannot find wget or ftp])
+        FETCHER="$FALSE"
+        AC_MSG_WARN([cannot find wget or ftp])
     ])
 ])
 AC_SUBST(FETCHER)
diff --git a/stubdom/configure b/stubdom/configure
index df3f763a7b..beeb8db2e1 100755
--- a/stubdom/configure
+++ b/stubdom/configure
@@ -625,6 +625,7 @@ CFLAGS
 CC
 FETCHER
 FTP
+FALSE
 WGET
 CMAKE
 extfiles
@@ -2362,6 +2363,47 @@ $as_echo "no" >&6; }
 fi
 
 
+# Extract the first word of "false", so it can be a program name with args.
+set dummy false; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_FALSE+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $FALSE in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_FALSE="$FALSE" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_FALSE="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" 
>&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  test -z "$ac_cv_path_FALSE" && ac_cv_path_FALSE="/bin/false"
+  ;;
+esac
+fi
+FALSE=$ac_cv_path_FALSE
+if test -n "$FALSE"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FALSE" >&5
+$as_echo "$FALSE" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
 if test x"$WGET" != x"no"; then :
 
     FETCHER="$WGET -c -O"
@@ -2415,7 +2457,9 @@ fi
 
 else
 
-        as_fn_error $? "cannot find wget or ftp" "$LINENO" 5
+        FETCHER="$FALSE"
+        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot find wget or 
ftp" >&5
+$as_echo "$as_me: WARNING: cannot find wget or ftp" >&2;}
 
 fi
 
diff --git a/tools/configure b/tools/configure
index b66d3f6fba..92ead93335 100755
--- a/tools/configure
+++ b/tools/configure
@@ -644,6 +644,7 @@ system_aio
 zlib
 FETCHER
 FTP
+FALSE
 WGET
 pixman_LIBS
 pixman_CFLAGS
@@ -8219,6 +8220,47 @@ $as_echo "no" >&6; }
 fi
 
 
+# Extract the first word of "false", so it can be a program name with args.
+set dummy false; ac_word=$2
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+$as_echo_n "checking for $ac_word... " >&6; }
+if ${ac_cv_path_FALSE+:} false; then :
+  $as_echo_n "(cached) " >&6
+else
+  case $FALSE in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_FALSE="$FALSE" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  test -z "$as_dir" && as_dir=.
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+    ac_cv_path_FALSE="$as_dir/$ac_word$ac_exec_ext"
+    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" 
>&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  test -z "$ac_cv_path_FALSE" && ac_cv_path_FALSE="/bin/false"
+  ;;
+esac
+fi
+FALSE=$ac_cv_path_FALSE
+if test -n "$FALSE"; then
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FALSE" >&5
+$as_echo "$FALSE" >&6; }
+else
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+fi
+
+
 if test x"$WGET" != x"no"; then :
 
     FETCHER="$WGET -c -O"
@@ -8272,7 +8314,9 @@ fi
 
 else
 
-        as_fn_error $? "cannot find wget or ftp" "$LINENO" 5
+        FETCHER="$FALSE"
+        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot find wget or 
ftp" >&5
+$as_echo "$as_me: WARNING: cannot find wget or ftp" >&2;}
 
 fi
 
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

Reply via email to