diff options
author | Paul Eggert <[email protected]> | 2014-06-11 10:51:27 -0700 |
---|---|---|
committer | Paul Eggert <[email protected]> | 2014-06-11 10:51:27 -0700 |
commit | faded0b1394b3925f646d2b4905e49e0c130e37b (patch) | |
tree | ee2bbbe30c8044d49ac4b9831b3203fb6bb59d18 /configure.ac | |
parent | 6014484659f81b35f7e6340aaf5c71ffc1fca342 (diff) |
Use a shell function in configure.ac to cut down on code duplication.
* configure.ac (emacs_check_gnu_make): New shell function.
Use it to avoid duplication when checking for GNU Make.
It's OK for 'configure' to use shell functions these days,
as long as we follow the advice in the 'Shell Functions'
section of the Autoconf manual.
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 37 |
1 files changed, 20 insertions, 17 deletions
diff --git a/configure.ac b/configure.ac index 07221b0e23..0f7d858bd6 100644 --- a/configure.ac +++ b/configure.ac @@ -93,32 +93,35 @@ AC_DEFUN([AC_PROG_MAKE_SET], AC_SUBST([SET_MAKE])]) dnl Check for GNU Make and possibly set MAKE before running AM_INIT_AUTOMAKE. +[emacs_check_gnu_make () +{ + emacs_makeout=`($1 --version) 2>/dev/null` && + case $emacs_makeout in + 'GNU Make '3.8[1-9]* | 'GNU Make '3.9[0-9]* | \ + 'GNU Make '3.[1-9][0-9][0-9]* | 'GNU Make '[4-9]* | 'GNU Make '[1-9][0-9]* ) + ac_path_MAKE_found=:;; + esac +}] AC_CACHE_CHECK([for GNU Make], [ac_cv_path_MAKE], [ac_path_MAKE_found=false if test -n "$MAKE"; then - emacs_makeout=`($MAKE --version) 2>/dev/null` && - case $emacs_makeout in - 'GNU Make '[[1-3]][[0-9]]* | 'GNU Make '[[4-9]]* | 'GNU Make '3.8[[1-9]]* | 'GNU Make '3.9*) - ac_path_MAKE_found=:;; - esac + emacs_check_gnu_make "$MAKE" ac_cv_path_MAKE=$MAKE else emacs_tried_make=false emacs_tried_gmake=false emacs_tried_gnumake=false AC_PATH_PROGS_FEATURE_CHECK([MAKE], [make gmake gnumake], - [[emacs_makeout=`($ac_path_MAKE --version) 2>/dev/null` && - case $emacs_makeout in - 'GNU Make '[1-3][0-9]* | 'GNU Make '[4-9]* | 'GNU Make '3.8[1-9]* | 'GNU Make '3.9*) - # Use the fully-qualified program name only if the basename - # would not resolve to it. - if eval \$emacs_tried_$ac_prog; then - ac_cv_path_MAKE=$ac_path_MAKE - else - ac_cv_path_MAKE=$ac_prog - fi - ac_path_MAKE_found=:;; - esac + [[emacs_check_gnu_make "$ac_path_MAKE" + if $ac_path_MAKE_found; then + # Use the fully-qualified program name only if the basename + # would not resolve to it. + if eval \$emacs_tried_$ac_prog; then + ac_cv_path_MAKE=$ac_path_MAKE + else + ac_cv_path_MAKE=$ac_prog + fi + fi eval emacs_tried_$ac_prog=:]]) fi]) $ac_path_MAKE_found || { |