[Mesa-dev] [PATCH 09/12] configure.ac: Use autoconf macro for GNU make.
Emil Velikov
emil.l.velikov at gmail.com
Tue Sep 23 12:06:04 PDT 2014
Hi Matt,
Is there any particular reason for this patch ? Afaics the macro sets
ifGNUmake which we are not really using.
-Emil
On 22/09/14 19:51, Matt Turner wrote:
> ---
> configure.ac | 2 +-
> m4/ax_check_gnu_make.m4 | 78 +++++++++++++++++++++++++++++++++++++++++++++++++
> 2 files changed, 79 insertions(+), 1 deletion(-)
> create mode 100644 m4/ax_check_gnu_make.m4
>
> diff --git a/configure.ac b/configure.ac
> index fe96e7a..ebe329b 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -53,7 +53,7 @@ AC_PROG_CC
> AC_PROG_CXX
> AM_PROG_CC_C_O
> AM_PROG_AS
> -AC_CHECK_PROGS([MAKE], [gmake make])
> +AX_CHECK_GNU_MAKE
> AC_CHECK_PROGS([PYTHON2], [python2 python])
> AC_PROG_SED
> AC_PROG_MKDIR_P
> diff --git a/m4/ax_check_gnu_make.m4 b/m4/ax_check_gnu_make.m4
> new file mode 100644
> index 0000000..938aad7
> --- /dev/null
> +++ b/m4/ax_check_gnu_make.m4
> @@ -0,0 +1,78 @@
> +# ===========================================================================
> +# http://www.gnu.org/software/autoconf-archive/ax_check_gnu_make.html
> +# ===========================================================================
> +#
> +# SYNOPSIS
> +#
> +# AX_CHECK_GNU_MAKE()
> +#
> +# DESCRIPTION
> +#
> +# This macro searches for a GNU version of make. If a match is found, the
> +# makefile variable `ifGNUmake' is set to the empty string, otherwise it
> +# is set to "#". This is useful for including a special features in a
> +# Makefile, which cannot be handled by other versions of make. The
> +# variable _cv_gnu_make_command is set to the command to invoke GNU make
> +# if it exists, the empty string otherwise.
> +#
> +# Here is an example of its use:
> +#
> +# Makefile.in might contain:
> +#
> +# # A failsafe way of putting a dependency rule into a makefile
> +# $(DEPEND):
> +# $(CC) -MM $(srcdir)/*.c > $(DEPEND)
> +#
> +# @ifGNUmake@ ifeq ($(DEPEND),$(wildcard $(DEPEND)))
> +# @ifGNUmake@ include $(DEPEND)
> +# @ifGNUmake@ endif
> +#
> +# Then configure.in would normally contain:
> +#
> +# AX_CHECK_GNU_MAKE()
> +# AC_OUTPUT(Makefile)
> +#
> +# Then perhaps to cause gnu make to override any other make, we could do
> +# something like this (note that GNU make always looks for GNUmakefile
> +# first):
> +#
> +# if ! test x$_cv_gnu_make_command = x ; then
> +# mv Makefile GNUmakefile
> +# echo .DEFAULT: > Makefile ;
> +# echo \ $_cv_gnu_make_command \$@ >> Makefile;
> +# fi
> +#
> +# Then, if any (well almost any) other make is called, and GNU make also
> +# exists, then the other make wraps the GNU make.
> +#
> +# LICENSE
> +#
> +# Copyright (c) 2008 John Darrington <j.darrington at elvis.murdoch.edu.au>
> +#
> +# Copying and distribution of this file, with or without modification, are
> +# permitted in any medium without royalty provided the copyright notice
> +# and this notice are preserved. This file is offered as-is, without any
> +# warranty.
> +
> +#serial 7
> +
> +AC_DEFUN([AX_CHECK_GNU_MAKE], [ AC_CACHE_CHECK( for GNU make,_cv_gnu_make_command,
> + _cv_gnu_make_command='' ;
> +dnl Search all the common names for GNU make
> + for a in "$MAKE" make gmake gnumake ; do
> + if test -z "$a" ; then continue ; fi ;
> + if ( sh -c "$a --version" 2> /dev/null | grep GNU 2>&1 > /dev/null ) ; then
> + _cv_gnu_make_command=$a ;
> + break;
> + fi
> + done ;
> + ) ;
> +dnl If there was a GNU version, then set @ifGNUmake@ to the empty string, '#' otherwise
> + if test "x$_cv_gnu_make_command" != "x" ; then
> + ifGNUmake='' ;
> + else
> + ifGNUmake='#' ;
> + AC_MSG_RESULT("Not found");
> + fi
> + AC_SUBST(ifGNUmake)
> +] )
>
More information about the mesa-dev
mailing list