summaryrefslogtreecommitdiff
path: root/aclocal.m4
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2000-09-21 20:17:43 +0000
committerPeter Eisentraut <peter_e@gmx.net>2000-09-21 20:17:43 +0000
commit353371874f3050bafa1a9f4d7ad7253d70165d81 (patch)
tree6163bfea2613a1978cf8678df7dbdf6f4b9d3fc8 /aclocal.m4
parentb4c8d47ab0c3c570e31c29696f74a204a33df647 (diff)
downloadpostgresql-353371874f3050bafa1a9f4d7ad7253d70165d81.tar.gz
Replace brain-dead Autoconf macros AC_ARG_{ENABLE,WITH} with something
that's actually useful, robust, consistent. Better plan to generate aclocal.m4 as well: use m4 include directives, rather than cat.
Diffstat (limited to 'aclocal.m4')
-rw-r--r--aclocal.m4461
1 files changed, 8 insertions, 453 deletions
diff --git a/aclocal.m4 b/aclocal.m4
index 1e9170805f..e03245ad21 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,453 +1,8 @@
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-# This comes from the official Autoconf macro archive at
-# <http://research.cys.de/autoconf-archive/>
-# (I removed the $ before the Id CVS keyword below.)
-
-
-dnl @synopsis AC_FUNC_ACCEPT_ARGTYPES
-dnl
-dnl Checks the data types of the three arguments to accept(). Results are
-dnl placed into the symbols ACCEPT_TYPE_ARG[123], consistent with the
-dnl following example:
-dnl
-dnl #define ACCEPT_TYPE_ARG1 int
-dnl #define ACCEPT_TYPE_ARG2 struct sockaddr *
-dnl #define ACCEPT_TYPE_ARG3 socklen_t
-dnl
-dnl This macro requires AC_CHECK_HEADERS to have already verified the
-dnl presence or absence of sys/types.h and sys/socket.h.
-dnl
-dnl NOTE: This is just a modified version of the AC_FUNC_SELECT_ARGTYPES
-dnl macro. Credit for that one goes to David MacKenzie et. al.
-dnl
-dnl @version Id: ac_func_accept_argtypes.m4,v 1.1 1999/12/03 11:29:29 simons Exp $
-dnl @author Daniel Richard G. <skunk@mit.edu>
-dnl
-
-# PostgreSQL local changes: In the original version ACCEPT_TYPE_ARG3
-# is a pointer type. That's kind of useless because then you can't
-# use the macro to define a corresponding variable. We also make the
-# reasonable(?) assumption that you can use arg3 for getsocktype etc.
-# as well (i.e., anywhere POSIX.2 has socklen_t).
-#
-# arg2 can also be `const' (e.g., RH 4.2). Change the order of tests
-# for arg3 so that `int' is first, in case there is no prototype at all.
-
-AC_DEFUN(AC_FUNC_ACCEPT_ARGTYPES,
-[AC_MSG_CHECKING([types of arguments for accept()])
- AC_CACHE_VAL(ac_cv_func_accept_arg1,dnl
- [AC_CACHE_VAL(ac_cv_func_accept_arg2,dnl
- [AC_CACHE_VAL(ac_cv_func_accept_arg3,dnl
- [for ac_cv_func_accept_arg1 in 'int' 'unsigned int'; do
- for ac_cv_func_accept_arg2 in 'struct sockaddr *' 'const struct sockaddr *' 'void *'; do
- for ac_cv_func_accept_arg3 in 'int' 'size_t' 'socklen_t' 'unsigned int'; do
- AC_TRY_COMPILE(
-[#ifdef HAVE_SYS_TYPES_H
-#include <sys/types.h>
-#endif
-#ifdef HAVE_SYS_SOCKET_H
-#include <sys/socket.h>
-#endif
-extern accept ($ac_cv_func_accept_arg1, $ac_cv_func_accept_arg2, $ac_cv_func_accept_arg3 *);],
- [], [ac_not_found=no; break 3], [ac_not_found=yes])
- done
- done
- done
- if test "$ac_not_found" = yes; then
- AC_MSG_ERROR([could not determine argument types])
- fi
- ])dnl AC_CACHE_VAL
- ])dnl AC_CACHE_VAL
- ])dnl AC_CACHE_VAL
- AC_MSG_RESULT([$ac_cv_func_accept_arg1, $ac_cv_func_accept_arg2, $ac_cv_func_accept_arg3 *])
- AC_DEFINE_UNQUOTED(ACCEPT_TYPE_ARG1,$ac_cv_func_accept_arg1)
- AC_DEFINE_UNQUOTED(ACCEPT_TYPE_ARG2,$ac_cv_func_accept_arg2)
- AC_DEFINE_UNQUOTED(ACCEPT_TYPE_ARG3,$ac_cv_func_accept_arg3)
-])
-# Macros to detect C compiler features
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-
-
-# PGAC_C_SIGNED
-# -------------
-# Check if the C compiler understands signed types.
-AC_DEFUN([PGAC_C_SIGNED],
-[AC_CACHE_CHECK(for signed types, pgac_cv_c_signed,
-[AC_TRY_COMPILE([],
-[signed char c; signed short s; signed int i;],
-[pgac_cv_c_signed=yes],
-[pgac_cv_c_signed=no])])
-if test x"$pgac_cv_c_signed" = xno ; then
- AC_DEFINE(signed,, [Define empty if the C compiler does not understand signed types])
-fi])# PGAC_C_SIGNED
-
-
-
-# PGAC_C_VOLATILE
-# ---------------
-# Check if the C compiler understands `volatile'. Note that if it doesn't
-# then this will potentially break the program semantics.
-AC_DEFUN([PGAC_C_VOLATILE],
-[AC_CACHE_CHECK(for volatile, pgac_cv_c_volatile,
-[AC_TRY_COMPILE([],
-[extern volatile int i;],
-[pgac_cv_c_volatile=yes],
-[pgac_cv_c_volatile=no])])
-if test x"$pgac_cv_c_volatile" = xno ; then
- AC_DEFINE(volatile,, [Define empty if the C compiler does not understand `volatile'])
-fi])# PGAC_C_VOLATILE
-
-
-
-# PGAC_TYPE_64BIT_INT(TYPE)
-# -------------------------
-# Check if TYPE is a working 64 bit integer type. Set HAVE_TYPE_64 to
-# yes or no respectively, and define HAVE_TYPE_64 if yes.
-AC_DEFUN([PGAC_TYPE_64BIT_INT],
-[define([Ac_define], [translit([have_$1_64], [a-z *], [A-Z_P])])dnl
-define([Ac_cachevar], [translit([pgac_cv_type_$1_64], [ *], [_p])])dnl
-AC_CACHE_CHECK([whether $1 is 64 bits], [Ac_cachevar],
-[AC_TRY_RUN(
-[typedef $1 int64;
-
-/*
- * These are globals to discourage the compiler from folding all the
- * arithmetic tests down to compile-time constants.
- */
-int64 a = 20000001;
-int64 b = 40000005;
-
-int does_int64_work()
-{
- int64 c,d;
-
- if (sizeof(int64) != 8)
- return 0; /* definitely not the right size */
-
- /* Do perfunctory checks to see if 64-bit arithmetic seems to work */
- c = a * b;
- d = (c + b) / b;
- if (d != a+1)
- return 0;
- return 1;
-}
-main() {
- exit(! does_int64_work());
-}],
-[Ac_cachevar=yes],
-[Ac_cachevar=no],
-[Ac_cachevar=no
-dnl We will do better here with Autoconf 2.50
-AC_MSG_WARN([64 bit arithmetic disabled when cross-compiling])])])
-
-Ac_define=$Ac_cachevar
-if test x"$Ac_cachevar" = xyes ; then
- AC_DEFINE(Ac_define,, [Set to 1 if `]$1[' is 64 bits])
-fi
-undefine([Ac_define])dnl
-undefine([Ac_cachevar])dnl
-])# PGAC_TYPE_64BIT_INT
-
-
-
-# PGAC_CHECK_ALIGNOF(TYPE)
-# ------------------------
-# Find the alignment requirement of the given type. Define the result
-# as ALIGNOF_TYPE. If cross-compiling, sizeof(type) is used as a
-# default assumption.
-#
-# This is modeled on the standard autoconf macro AC_CHECK_SIZEOF.
-# That macro never got any points for style.
-AC_DEFUN([PGAC_CHECK_ALIGNOF],
-[changequote(<<, >>)dnl
-dnl The name to #define.
-define(<<AC_TYPE_NAME>>, translit(alignof_$1, [a-z *], [A-Z_P]))dnl
-dnl The cache variable name.
-define(<<AC_CV_NAME>>, translit(pgac_cv_alignof_$1, [ *], [_p]))dnl
-changequote([, ])dnl
-AC_MSG_CHECKING(alignment of $1)
-AC_CACHE_VAL(AC_CV_NAME,
-[AC_TRY_RUN([#include <stdio.h>
-struct { char filler; $1 field; } mystruct;
-main()
-{
- FILE *f=fopen("conftestval", "w");
- if (!f) exit(1);
- fprintf(f, "%d\n", ((char*) & mystruct.field) - ((char*) & mystruct));
- exit(0);
-}], AC_CV_NAME=`cat conftestval`,
-AC_CV_NAME='sizeof($1)',
-AC_CV_NAME='sizeof($1)')])dnl
-AC_MSG_RESULT($AC_CV_NAME)
-AC_DEFINE_UNQUOTED(AC_TYPE_NAME, $AC_CV_NAME, [The alignment requirement of a `]$1['])
-undefine([AC_TYPE_NAME])dnl
-undefine([AC_CV_NAME])dnl
-])# PGAC_CHECK_ALIGNOF
-# Macros that test various C library quirks
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-
-
-# PGAC_VAR_INT_TIMEZONE
-# ---------------------
-# Check if the global variable `timezone' exists. If so, define
-# HAVE_INT_TIMEZONE.
-AC_DEFUN([PGAC_VAR_INT_TIMEZONE],
-[AC_CACHE_CHECK(for int timezone, pgac_cv_var_int_timezone,
-[AC_TRY_LINK([#include <time.h>],
- [int res = timezone / 60;],
- [pgac_cv_var_int_timezone=yes],
- [pgac_cv_var_int_timezone=no])])
-if test x"$pgac_cv_var_int_timezone" = xyes ; then
- AC_DEFINE(HAVE_INT_TIMEZONE,, [Set to 1 if you have the global variable timezone])
-fi])# PGAC_VAR_INT_TIMEZONE
-
-
-# PGAC_FUNC_GETTIMEOFDAY_1ARG
-# ---------------------------
-# Check if gettimeofday() has only one arguments. (Normal is two.)
-# If so, define GETTIMEOFDAY_1ARG.
-AC_DEFUN([PGAC_FUNC_GETTIMEOFDAY_1ARG],
-[AC_CACHE_CHECK(whether gettimeofday takes only one argument,
-pgac_cv_func_gettimeofday_1arg,
-[AC_TRY_COMPILE([#include <sys/time.h>],
-[struct timeval *tp;
-struct timezone *tzp;
-gettimeofday(tp,tzp);],
-[pgac_cv_func_gettimeofday_1arg=no],
-[pgac_cv_func_gettimeofday_1arg=yes])])
-if test x"$pgac_cv_func_gettimeofday_1arg" = xyes ; then
- AC_DEFINE(GETTIMEOFDAY_1ARG,, [Set to 1 if gettimeofday() takes only 1 argument])
-fi])# PGAC_FUNC_GETTIMEOFDAY_1ARG
-
-
-# PGAC_UNION_SEMUN
-# ----------------
-# Check if `union semun' exists. Define HAVE_UNION_SEMUN if so.
-# If it doesn't then one could define it as
-# union semun { int val; struct semid_ds *buf; unsigned short *array; }
-AC_DEFUN([PGAC_UNION_SEMUN],
-[AC_CACHE_CHECK(for union semun, pgac_cv_union_semun,
-[AC_TRY_COMPILE([#include <sys/types.h>
-#include <sys/ipc.h>
-#include <sys/sem.h>],
- [union semun semun;],
- [pgac_cv_union_semun=yes],
- [pgac_cv_union_semun=no])])
-if test x"$pgac_cv_union_semun" = xyes ; then
- AC_DEFINE(HAVE_UNION_SEMUN,, [Set to 1 if you have `union semun'])
-fi])# PGAC_UNION_SEMUN
-
-
-# PGAC_FUNC_POSIX_SIGNALS
-# -----------------------
-# Check to see if the machine has the POSIX signal interface. Define
-# HAVE_POSIX_SIGNALS if so. Also set the output variable HAVE_POSIX_SIGNALS
-# to yes or no.
-#
-# Note that this test only compiles a test program, it doesn't check
-# whether the routines actually work. If that becomes a problem, make
-# a fancier check.
-AC_DEFUN([PGAC_FUNC_POSIX_SIGNALS],
-[AC_CACHE_CHECK(for POSIX signal interface, pgac_cv_func_posix_signals,
-[AC_TRY_LINK([#include <signal.h>
-],
-[struct sigaction act, oact;
-sigemptyset(&act.sa_mask);
-act.sa_flags = SA_RESTART;
-sigaction(0, &act, &oact);],
-[pgac_cv_func_posix_signals=yes],
-[pgac_cv_func_posix_signals=no])])
-if test x"$pgac_cv_func_posix_signals" = xyes ; then
- AC_DEFINE(HAVE_POSIX_SIGNALS,, [Set to 1 if you have the POSIX signal interface])
-fi
-HAVE_POSIX_SIGNALS=$pgac_cv_func_posix_signals
-AC_SUBST(HAVE_POSIX_SIGNALS)])# PGAC_FUNC_POSIX_SIGNALS
-# Macros to detect certain C++ features
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-
-
-# PGAC_CLASS_STRING
-# -----------------
-# Look for class `string'. First look for the <string> header. If this
-# is found a <string> header then it's probably safe to assume that
-# class string exists. If not, check to make sure that <string.h>
-# defines class `string'.
-AC_DEFUN([PGAC_CLASS_STRING],
-[AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
-AC_CHECK_HEADER(string,
- [AC_DEFINE(HAVE_CXX_STRING_HEADER)])
-
-if test x"$ac_cv_header_string" != xyes ; then
- AC_CACHE_CHECK([for class string in <string.h>],
- [pgac_cv_class_string_in_string_h],
- [AC_TRY_COMPILE([#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-],
- [string foo = "test"],
- [pgac_cv_class_string_in_string_h=yes],
- [pgac_cv_class_string_in_string_h=no])])
-
- if test x"$pgac_cv_class_string_in_string_h" != xyes ; then
- AC_MSG_ERROR([neither <string> nor <string.h> seem to define the C++ class \`string\'])
- fi
-fi
-AC_LANG_RESTORE])# PGAC_CLASS_STRING
-
-
-# PGAC_CXX_NAMESPACE_STD
-# ----------------------
-# Check whether the C++ compiler understands `using namespace std'.
-#
-# Note 1: On at least some compilers, it will not work until you've
-# included a header that mentions namespace std. Thus, include the
-# usual suspects before trying it.
-#
-# Note 2: This test does not actually reveal whether the C++ compiler
-# properly understands namespaces in all generality. (GNU C++ 2.8.1
-# is one that doesn't.) However, we don't care.
-AC_DEFUN([PGAC_CXX_NAMESPACE_STD],
-[AC_REQUIRE([PGAC_CLASS_STRING])
-AC_CACHE_CHECK([for namespace std in C++],
-pgac_cv_cxx_namespace_std,
-[
-AC_LANG_SAVE
-AC_LANG_CPLUSPLUS
-AC_TRY_COMPILE(
-[#include <stdio.h>
-#include <stdlib.h>
-#ifdef HAVE_CXX_STRING_HEADER
-#include <string>
-#endif
-using namespace std;
-], [],
-[pgac_cv_cxx_namespace_std=yes],
-[pgac_cv_cxx_namespace_std=no])
-AC_LANG_RESTORE])
-
-if test $pgac_cv_cxx_namespace_std = yes ; then
- AC_DEFINE(HAVE_NAMESPACE_STD, 1, [Define to 1 if the C++ compiler understands `using namespace std'])
-fi])# PGAC_CXX_NAMESPACE_STD
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-
-
-# PGAC_PATH_FLEX
-# --------------
-# Look for Flex, set the output variable FLEX to its path if found.
-# Avoid the buggy version 2.5.3. Also find Flex if its installed
-# under `lex', but do not accept other Lex programs.
-
-AC_DEFUN([PGAC_PATH_FLEX],
-[AC_CACHE_CHECK([for flex], pgac_cv_path_flex,
-[# Let the user override the test
-if test -n "$FLEX"; then
- pgac_cv_path_flex=$FLEX
-else
- pgac_save_IFS=$IFS
- IFS=:
- for pgac_dir in $PATH; do
- if test -z "$pgac_dir" || test x"$pgac_dir" = x"."; then
- pgac_dir=`pwd`
- fi
- for pgac_prog in flex lex; do
- pgac_candidate="$pgac_dir/$pgac_prog"
- if test -f "$pgac_candidate" \
- && $pgac_candidate --version >/dev/null 2>&1
- then
- echo '%%' > conftest.l
- if $pgac_candidate -t conftest.l 2>/dev/null | grep FLEX_SCANNER >/dev/null 2>&1; then
- if $pgac_candidate --version | grep '2\.5\.3' >/dev/null 2>&1; then
- pgac_broken_flex=$pgac_candidate
- continue
- fi
-
- pgac_cv_path_flex=$pgac_candidate
- break 2
- fi
- fi
- done
- done
- IFS=$pgac_save_IFS
- rm -f conftest.l
- : ${pgac_cv_path_flex=no}
-fi
-])[]dnl AC_CACHE_CHECK
-
-if test x"$pgac_cv_path_flex" = x"no"; then
- if test -n "$pgac_broken_flex"; then
- AC_MSG_WARN([
-***
-The Flex version 2.5.3 you have at $pgac_broken_flex contains a bug. You
-should get version 2.5.4 or later.
-###])
- fi
-
- AC_MSG_WARN([
-***
-Without Flex you won't be able to build PostgreSQL from scratch, or change
-any of the scanner definition files. You can obtain Flex from a GNU mirror
-site. (If you are using the official distribution of PostgreSQL then you
-do not need to worry about this because the lexer files are pre-generated.)
-***])
-fi
-
-if test x"$pgac_cv_path_flex" = x"no"; then
- FLEX=
-else
- FLEX=$pgac_cv_path_flex
-fi
-
-AC_SUBST(FLEX)
-AC_SUBST(FLEXFLAGS)
-])# PGAC_PATH_FLEX
-#
-# Autoconf macros for configuring the build of Python extension modules
-#
-# $Header: /cvsroot/pgsql/aclocal.m4,v 1.7 2000/08/29 09:36:37 petere Exp $
-#
-
-# PGAC_PROG_PYTHON
-# ----------------
-# Look for Python and set the output variable `PYTHON'
-# to `python' if found, empty otherwise.
-AC_DEFUN([PGAC_PROG_PYTHON],
-[AC_CHECK_PROG(PYTHON, python, python)])
-
-
-# PGAC_PATH_PYTHONDIR
-# -------------------
-# Finds the names of various install dirs and helper files
-# necessary to build a Python extension module.
-#
-# It would be nice if we could check whether the current setup allows
-# the build of the shared module. Future project.
-AC_DEFUN([PGAC_PATH_PYTHONDIR],
-[AC_REQUIRE([PGAC_PROG_PYTHON])
-[if test "${PYTHON+set}" = set ; then
- python_version=`${PYTHON} -c "import sys; print sys.version[:3]"`
- python_prefix=`${PYTHON} -c "import sys; print sys.prefix"`
- python_execprefix=`${PYTHON} -c "import sys; print sys.exec_prefix"`
- python_configdir="${python_execprefix}/lib/python${python_version}/config"
- python_moduledir="${python_prefix}/lib/python${python_version}"
- python_extmakefile="${python_configdir}/Makefile.pre.in"]
-
- AC_MSG_CHECKING(for Python extension makefile)
- if test -f "${python_extmakefile}" ; then
- AC_MSG_RESULT(found)
- else
- AC_MSG_RESULT(no)
- AC_MSG_ERROR(
-[The Python extension makefile was expected at \`${python_extmakefile}\'
-but does not exist. This means the Python module cannot be built automatically.])
- fi
-
- AC_SUBST(python_version)
- AC_SUBST(python_prefix)
- AC_SUBST(python_execprefix)
- AC_SUBST(python_configdir)
- AC_SUBST(python_moduledir)
- AC_SUBST(python_extmakefile)
-else
- AC_MSG_ERROR([Python not found])
-fi])# PGAC_PATH_PYTHONDIR
+dnl $Header: /cvsroot/pgsql/aclocal.m4,v 1.8 2000/09/21 20:17:41 petere Exp $
+builtin([include], [config/ac_func_accept_argtypes.m4])
+builtin([include], [config/c-compiler.m4])
+builtin([include], [config/c-library.m4])
+builtin([include], [config/cxx.m4])
+builtin([include], [config/general.m4])
+builtin([include], [config/programs.m4])
+builtin([include], [config/python.m4])