# HG changeset patch # User "Yann E. MORIN" # Date 1306428053 -7200 # Node ID bce8b2a4bf8f08334c08e106fe2f7f3ea09ea2de # Parent 91fb35743a44b014b1a4aa9e127c3d78858374b8 configure: move error message down to has_or_abort When has_or_warn will come, we do want to print the error message only in has_or_abort, so move it down there. Signed-off-by: "Yann E. MORIN" diff -r 91fb35743a44 -r bce8b2a4bf8f configure --- a/configure Wed May 25 21:21:03 2011 +0200 +++ b/configure Thu May 26 18:40:53 2011 +0200 @@ -97,13 +97,13 @@ # optional, defaults to: '${prog}: none found' # eg: err="'bash' 3.x or above was not found" check_for() { - local prog inc lib - local var ver err local val local item local where local status + # Note: prog/inc/lib and var/ver/err are set here, + # but declared by the caller (because it needs it) for item in "${@}"; do case "${item}" in prog=*|inc=*|lib=*|var=*|ver=*|err=*) @@ -170,13 +170,6 @@ esac if [ -z "${status}" ]; then - printf "\n${err:-${prog}${inc}${lib}: none found}\n\n" - printf "Either you are missing entirely the needed tool,\n" - printf "or the version you have is too old.\n" - if [ -n "${var}" ]; then - printf "You can give the path to this tool using: --with-${var}=PATH\n" - fi - printf "\n" return 1 fi @@ -191,10 +184,21 @@ # This function checks for a tool, and aborts if not found # See check_for(), above, for how to call has_or_abort has_or_abort() { + # We declare these 6 variables here, although they are + # set in check_for(), called below + local prog inc lib + local var ver err + if ! check_for "$@"; then - # FORCE can be set in the environment + printf "\n${err:-${prog}${inc}${lib}: none found}\n\n" + printf "Either you are missing entirely the needed tool,\n" + printf "or the version you have is too old.\n" + if [ -n "${var}" ]; then + printf "You can give the path to this tool using: --with-${var}=PATH\n" + fi + printf "\n" + # Bail out if --force is not specified [ -z "${FORCE}" ] && do_error "Bailing out..." - printf "\n" printf "<* *>\n" printf "<* FORCE in action: *>\n" printf "<* Continuing despite missing pre-requisite *>\n"