xref: /netbsd-src/external/gpl2/xcvs/dist/m4/alloca.m4 (revision a7c918477dd5f12c1da816ba05caf44eab2d06d6)
1# alloca.m4 serial 5
2dnl Copyright (C) 2002, 2003, 2004 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_DEFUN([gl_FUNC_ALLOCA],
8[
9  dnl Work around a bug of AC_EGREP_CPP in autoconf-2.57.
10  AC_REQUIRE([AC_PROG_CPP])
11  AC_REQUIRE([AC_PROG_EGREP])
12
13  AC_REQUIRE([AC_FUNC_ALLOCA])
14  if test $ac_cv_func_alloca_works = no; then
15    gl_PREREQ_ALLOCA
16  fi
17
18  # Define an additional variable used in the Makefile substitution.
19  if test $ac_cv_working_alloca_h = yes; then
20    AC_EGREP_CPP([Need own alloca], [
21#if defined __GNUC__ || defined _AIX || defined _MSC_VER
22	Need own alloca
23#endif
24      ],
25      [AC_DEFINE(HAVE_ALLOCA, 1,
26	    [Define to 1 if you have `alloca' after including <alloca.h>,
27	     a header that may be supplied by this distribution.])
28       ALLOCA_H=alloca.h],
29      [ALLOCA_H=])
30  else
31    ALLOCA_H=alloca.h
32  fi
33  AC_SUBST([ALLOCA_H])
34
35  AC_DEFINE(HAVE_ALLOCA_H, 1,
36    [Define HAVE_ALLOCA_H for backward compatibility with older code
37     that includes <alloca.h> only if HAVE_ALLOCA_H is defined.])
38])
39
40# Prerequisites of lib/alloca.c.
41# STACK_DIRECTION is already handled by AC_FUNC_ALLOCA.
42AC_DEFUN([gl_PREREQ_ALLOCA], [:])
43