1# minmax.m4 serial 4 2dnl Copyright (C) 2005, 2009-2020 Free Software Foundation, Inc. 3dnl This file is free software; the Free Software Foundation 4dnl gives unlimited permission to copy and/or distribute it, 5dnl with or without modifications, as long as this notice is preserved. 6 7AC_PREREQ([2.53]) 8 9AC_DEFUN([gl_MINMAX], 10[ 11 AC_REQUIRE([gl_PREREQ_MINMAX]) 12]) 13 14# Prerequisites of lib/minmax.h. 15AC_DEFUN([gl_PREREQ_MINMAX], 16[ 17 gl_MINMAX_IN_HEADER([limits.h]) 18 gl_MINMAX_IN_HEADER([sys/param.h]) 19]) 20 21dnl gl_MINMAX_IN_HEADER(HEADER) 22dnl The parameter has to be a literal header name; it cannot be macro, 23dnl nor a shell variable. (Because autoheader collects only AC_DEFINE 24dnl invocations with a literal macro name.) 25AC_DEFUN([gl_MINMAX_IN_HEADER], 26[ 27 m4_pushdef([header], AS_TR_SH([$1])) 28 m4_pushdef([HEADER], AS_TR_CPP([$1])) 29 AC_CACHE_CHECK([whether <$1> defines MIN and MAX], 30 [gl_cv_minmax_in_]header, 31 [AC_COMPILE_IFELSE( 32 [AC_LANG_PROGRAM( 33 [[#include <$1> 34 int x = MIN (42, 17);]], 35 [[]])], 36 [gl_cv_minmax_in_]header[=yes], 37 [gl_cv_minmax_in_]header[=no])]) 38 if test $gl_cv_minmax_in_[]header = yes; then 39 AC_DEFINE([HAVE_MINMAX_IN_]HEADER, 1, 40 [Define to 1 if <$1> defines the MIN and MAX macros.]) 41 fi 42 m4_popdef([HEADER]) 43 m4_popdef([header]) 44]) 45