mirror of
git://git.sv.gnu.org/autoconf
synced 2025-03-19 14:40:24 +08:00
Add AC_CACHE_CHECK.
This commit is contained in:
parent
d3ed0f9c0c
commit
3e669c2118
@ -2,6 +2,8 @@ Wed Jun 28 13:45:16 1995 David J. MacKenzie <djm@catapult.va.pubnix.com>
|
||||
|
||||
* acgeneral.m4 (AC_ARG_ENABLE, AC_ARG_WITH): Allow an empty value
|
||||
for --enable and --with args.
|
||||
(AC_CACHE_CHECK): New macro.
|
||||
* acspecific.m4: Use it where possible.
|
||||
|
||||
Tue Jun 27 13:29:54 1995 David J. MacKenzie <djm@catapult.va.pubnix.com>
|
||||
|
||||
|
1
NEWS
1
NEWS
@ -2,6 +2,7 @@ Major changes in release 2.5:
|
||||
|
||||
* New configure options --bindir, --libdir, --datadir, etc., with
|
||||
corresponding output variables.
|
||||
* New macro: AC_CACHE_CHECK.
|
||||
* config.log contains the command being run as well as any output from it.
|
||||
* AC_CHECK_LIB can check for libraries with "." or "/" in their name.
|
||||
* AC_PROG_INSTALL doesn't cache a path to install-sh, for sharing caches.
|
||||
|
15
TODO
15
TODO
@ -338,18 +338,3 @@ From: tom@vlsivie.tuwien.ac.AT (Thomas Winder)
|
||||
and so does AC_CONFIG_HEADER when autoconf is run.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
On Sun, 18 Jun 1995 12:59:01 -0400, Richard Stallman <rms@gnu.ai.mit.edu> said:
|
||||
|
||||
> When a configure script includes nonstandard tests,
|
||||
> is there an easy way to arrange to cache the result?
|
||||
|
||||
Yes, such a shorthand macro is possible. Here's a definition for it.
|
||||
|
||||
dnl AC_CHECK_CACHE(cache-var, message, check)
|
||||
AC_DEFUN([AC_CHECK_CACHE],
|
||||
[AC_MSG_CHECKING($2)
|
||||
AC_CACHE_VAL($1, $3)
|
||||
AC_MSG_RESULT([$]$1)])
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
|
@ -1062,6 +1062,12 @@ else
|
||||
fi
|
||||
])
|
||||
|
||||
dnl AC_CACHE_CHECK(MESSAGE, CACHE-ID, COMMANDS)
|
||||
define(AC_CACHE_CHECK,
|
||||
[AC_MSG_CHECKING([$1])
|
||||
AC_CACHE_VAL([$2], [$3])
|
||||
AC_MSG_RESULT([$]$2)])
|
||||
|
||||
|
||||
dnl ### Defining symbols
|
||||
|
||||
|
291
acspecific.m4
291
acspecific.m4
@ -73,8 +73,7 @@ AC_DEFUN(AC_PROG_CC,
|
||||
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
|
||||
AC_CHECK_PROG(CC, gcc, gcc, cc)
|
||||
|
||||
AC_MSG_CHECKING(whether we are using GNU C)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc,
|
||||
AC_CACHE_CHECK(whether we are using GNU C, ac_cv_prog_gcc,
|
||||
[dnl The semicolon is to pacify NeXT's syntax-checking cpp.
|
||||
cat > conftest.c <<EOF
|
||||
#ifdef __GNUC__
|
||||
@ -85,13 +84,11 @@ if ${CC-cc} -E conftest.c 2>&AC_FD_CC | egrep yes >/dev/null 2>&1; then
|
||||
ac_cv_prog_gcc=yes
|
||||
else
|
||||
ac_cv_prog_gcc=no
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc)
|
||||
fi])
|
||||
if test $ac_cv_prog_gcc = yes; then
|
||||
GCC=yes
|
||||
if test "${CFLAGS+set}" != set; then
|
||||
AC_MSG_CHECKING(whether ${CC-cc} accepts -g)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc_g,
|
||||
AC_CACHE_CHECK(whether ${CC-cc} accepts -g, ac_cv_prog_gcc_g,
|
||||
[echo 'void f(){}' > conftest.c
|
||||
if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
|
||||
ac_cv_prog_gcc_g=yes
|
||||
@ -99,8 +96,7 @@ else
|
||||
ac_cv_prog_gcc_g=no
|
||||
fi
|
||||
rm -f conftest*
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc_g)
|
||||
])
|
||||
if test $ac_cv_prog_gcc_g = yes; then
|
||||
CFLAGS="-g -O"
|
||||
else
|
||||
@ -117,8 +113,7 @@ AC_DEFUN(AC_PROG_CXX,
|
||||
[AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl
|
||||
AC_CHECK_PROGS(CXX, $CCC c++ g++ gcc CC cxx, gcc)
|
||||
|
||||
AC_MSG_CHECKING(whether we are using GNU C++)
|
||||
AC_CACHE_VAL(ac_cv_prog_gxx,
|
||||
AC_CACHE_CHECK(whether we are using GNU C++, ac_cv_prog_gxx,
|
||||
[dnl The semicolon is to pacify NeXT's syntax-checking cpp.
|
||||
cat > conftest.C <<EOF
|
||||
#ifdef __GNUC__
|
||||
@ -129,13 +124,11 @@ if ${CXX-g++} -E conftest.C 2>&AC_FD_CC | egrep yes >/dev/null 2>&1; then
|
||||
ac_cv_prog_gxx=yes
|
||||
else
|
||||
ac_cv_prog_gxx=no
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gxx)
|
||||
fi])
|
||||
if test $ac_cv_prog_gxx = yes; then
|
||||
GXX=yes
|
||||
if test "${CXXFLAGS+set}" != set; then
|
||||
AC_MSG_CHECKING(whether ${CXX-g++} accepts -g)
|
||||
AC_CACHE_VAL(ac_cv_prog_gxx_g,
|
||||
AC_CACHE_CHECK(whether ${CXX-g++} accepts -g, ac_cv_prog_gxx_g,
|
||||
[echo 'void f(){}' > conftest.cc
|
||||
if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then
|
||||
ac_cv_prog_gxx_g=yes
|
||||
@ -144,7 +137,6 @@ else
|
||||
fi
|
||||
rm -f conftest*
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gxx_g)
|
||||
if test $ac_cv_prog_gxx_g = yes; then
|
||||
CXXFLAGS="-g -O"
|
||||
else
|
||||
@ -161,8 +153,8 @@ AC_DEFUN(AC_PROG_GCC_TRADITIONAL,
|
||||
[AC_REQUIRE([AC_PROG_CC])dnl
|
||||
AC_REQUIRE([AC_PROG_CPP])dnl
|
||||
if test $ac_cv_prog_gcc = yes; then
|
||||
AC_MSG_CHECKING(whether ${CC-cc} needs -traditional)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc_traditional,
|
||||
AC_CACHE_CHECK(whether ${CC-cc} needs -traditional,
|
||||
ac_cv_prog_gcc_traditional,
|
||||
[ ac_pattern="Autoconf.*'x'"
|
||||
AC_EGREP_CPP($ac_pattern, [#include <sgtty.h>
|
||||
Autoconf TIOCGETP],
|
||||
@ -172,8 +164,7 @@ Autoconf TIOCGETP],
|
||||
AC_EGREP_CPP($ac_pattern, [#include <termio.h>
|
||||
Autoconf TCGETA],
|
||||
ac_cv_prog_gcc_traditional=yes)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc_traditional)
|
||||
fi])
|
||||
if test $ac_cv_prog_gcc_traditional = yes; then
|
||||
CC="$CC -traditional"
|
||||
fi
|
||||
@ -327,8 +318,7 @@ undefine([AC_DECL_YYTEXT])
|
||||
AC_DEFUN(AC_DECL_YYTEXT,
|
||||
[AC_REQUIRE_CPP()dnl
|
||||
AC_REQUIRE([AC_PROG_LEX])dnl
|
||||
AC_MSG_CHECKING(lex output file root)
|
||||
AC_CACHE_VAL(ac_cv_prog_lex_root,
|
||||
AC_CACHE_CHECK(lex output file root, ac_cv_prog_lex_root,
|
||||
[# The minimal lex program is just a single line: %%. But some broken lexes
|
||||
# (Solaris, I think it was) want two %% lines, so accommodate them.
|
||||
echo '%%
|
||||
@ -339,13 +329,11 @@ elif test -f lexyy.c; then
|
||||
ac_cv_prog_lex_root=lexyy
|
||||
else
|
||||
AC_MSG_ERROR(cannot find output from $LEX; giving up)
|
||||
fi])dnl
|
||||
fi])
|
||||
LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
|
||||
AC_MSG_RESULT($ac_cv_prog_lex_root)
|
||||
AC_SUBST(LEX_OUTPUT_ROOT)dnl
|
||||
|
||||
AC_MSG_CHECKING(whether yytext is a pointer)
|
||||
AC_CACHE_VAL(ac_cv_prog_lex_yytext_pointer,
|
||||
AC_CACHE_CHECK(whether yytext is a pointer, ac_cv_prog_lex_yytext_pointer,
|
||||
[# POSIX says lex can declare yytext either as a pointer or an array; the
|
||||
# default is implementation-dependent. Figure out which it is, since
|
||||
# not all implementations provide the %pointer and %array declarations.
|
||||
@ -356,7 +344,6 @@ LIBS="$LIBS $LEXLIB"
|
||||
AC_TRY_LINK(`cat $LEX_OUTPUT_ROOT.c`, , ac_cv_prog_lex_yytext_pointer=yes)
|
||||
LIBS="$ac_save_LIBS"
|
||||
rm -f "${LEX_OUTPUT_ROOT}.c"])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_lex_yytext_pointer)
|
||||
if test $ac_cv_prog_lex_yytext_pointer = yes; then
|
||||
AC_DEFINE(YYTEXT_POINTER)
|
||||
fi
|
||||
@ -455,8 +442,7 @@ dnl ### Checks for header files
|
||||
|
||||
AC_DEFUN(AC_HEADER_STDC,
|
||||
[AC_REQUIRE_CPP()dnl
|
||||
AC_MSG_CHECKING(for ANSI C header files)
|
||||
AC_CACHE_VAL(ac_cv_header_stdc,
|
||||
AC_CACHE_CHECK(for ANSI C header files, ac_cv_header_stdc,
|
||||
[AC_TRY_CPP([#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
@ -482,8 +468,7 @@ int main () { int i; for (i = 0; i < 256; i++)
|
||||
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
|
||||
exit (0); }
|
||||
], , ac_cv_header_stdc=no, ac_cv_header_stdc=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_stdc)
|
||||
fi])
|
||||
if test $ac_cv_header_stdc = yes; then
|
||||
AC_DEFINE(STDC_HEADERS)
|
||||
fi
|
||||
@ -514,12 +499,11 @@ fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_MAJOR,
|
||||
[AC_MSG_CHECKING(whether sys/types.h defines makedev)
|
||||
AC_CACHE_VAL(ac_cv_header_sys_types_h_makedev,
|
||||
[AC_CACHE_CHECK(whether sys/types.h defines makedev,
|
||||
ac_cv_header_sys_types_h_makedev,
|
||||
[AC_TRY_LINK([#include <sys/types.h>], [return makedev(0, 0);],
|
||||
ac_cv_header_sys_types_h_makedev=yes, ac_cv_header_sys_types_h_makedev=no)
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_sys_types_h_makedev)
|
||||
])
|
||||
|
||||
if test $ac_cv_header_sys_types_h_makedev = no; then
|
||||
AC_CHECK_HEADER(sys/mkdev.h, [AC_DEFINE(MAJOR_IN_MKDEV)])
|
||||
@ -588,21 +572,19 @@ sys/dir.h) AC_DEFINE(SYSDIR) ;;
|
||||
ndir.h) AC_DEFINE(NDIR) ;;
|
||||
esac
|
||||
|
||||
AC_MSG_CHECKING(whether closedir returns void)
|
||||
AC_CACHE_VAL(ac_cv_func_closedir_void,
|
||||
AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <$ac_header_dirent>
|
||||
int closedir(); main() { exit(closedir(opendir(".")) != 0); }],
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_closedir_void)
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])
|
||||
if test $ac_cv_func_closedir_void = yes; then
|
||||
AC_DEFINE(VOID_CLOSEDIR)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_STAT,
|
||||
[AC_MSG_CHECKING(whether stat file-mode macros are broken)
|
||||
AC_CACHE_VAL(ac_cv_header_stat_broken,
|
||||
[AC_CACHE_CHECK(whether stat file-mode macros are broken,
|
||||
ac_cv_header_stat_broken,
|
||||
[AC_EGREP_CPP([You lose], [#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
@ -629,32 +611,30 @@ You lose.
|
||||
You lose.
|
||||
# endif
|
||||
#endif
|
||||
], ac_cv_header_stat_broken=yes, ac_cv_header_stat_broken=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_stat_broken)
|
||||
], ac_cv_header_stat_broken=yes, ac_cv_header_stat_broken=no)])
|
||||
if test $ac_cv_header_stat_broken = yes; then
|
||||
AC_DEFINE(STAT_MACROS_BROKEN)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_DECL_SYS_SIGLIST,
|
||||
[AC_MSG_CHECKING([for sys_siglist declaration in signal.h or unistd.h])
|
||||
AC_CACHE_VAL(ac_cv_decl_sys_siglist,
|
||||
[AC_CACHE_CHECK([for sys_siglist declaration in signal.h or unistd.h],
|
||||
ac_cv_decl_sys_siglist,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <signal.h>
|
||||
/* NetBSD declares sys_siglist in unistd.h. */
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif], [char *msg = *(sys_siglist + 1);],
|
||||
ac_cv_decl_sys_siglist=yes, ac_cv_decl_sys_siglist=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_decl_sys_siglist)
|
||||
ac_cv_decl_sys_siglist=yes, ac_cv_decl_sys_siglist=no)])
|
||||
if test $ac_cv_decl_sys_siglist = yes; then
|
||||
AC_DEFINE(SYS_SIGLIST_DECLARED)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_SYS_WAIT,
|
||||
[AC_MSG_CHECKING([for sys/wait.h that is POSIX.1 compatible])
|
||||
AC_CACHE_VAL(ac_cv_header_sys_wait_h,
|
||||
[AC_CACHE_CHECK([for sys/wait.h that is POSIX.1 compatible],
|
||||
ac_cv_header_sys_wait_h,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
#ifndef WEXITSTATUS
|
||||
@ -665,8 +645,7 @@ AC_CACHE_VAL(ac_cv_header_sys_wait_h,
|
||||
#endif], [int s;
|
||||
wait (&s);
|
||||
s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;],
|
||||
ac_cv_header_sys_wait_h=yes, ac_cv_header_sys_wait_h=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_sys_wait_h)
|
||||
ac_cv_header_sys_wait_h=yes, ac_cv_header_sys_wait_h=no)])
|
||||
if test $ac_cv_header_sys_wait_h = yes; then
|
||||
AC_DEFINE(HAVE_SYS_WAIT_H)
|
||||
fi
|
||||
@ -678,8 +657,7 @@ dnl ### Checks for typedefs
|
||||
|
||||
AC_DEFUN(AC_TYPE_GETGROUPS,
|
||||
[AC_REQUIRE([AC_TYPE_UID_T])dnl
|
||||
AC_MSG_CHECKING(type of array argument to getgroups)
|
||||
AC_CACHE_VAL(ac_cv_type_getgroups,
|
||||
AC_CACHE_CHECK(type of array argument to getgroups, ac_cv_type_getgroups,
|
||||
[AC_TRY_RUN(
|
||||
changequote(<<, >>)dnl
|
||||
<<
|
||||
@ -713,17 +691,14 @@ if test $ac_cv_type_getgroups = cross; then
|
||||
dnl Old systems without prototypes probably use int.
|
||||
AC_EGREP_HEADER([getgroups.*int.*gid_t], unistd.h,
|
||||
ac_cv_type_getgroups=gid_t, ac_cv_type_getgroups=int)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_getgroups)
|
||||
fi])
|
||||
AC_DEFINE_UNQUOTED(GETGROUPS_T, $ac_cv_type_getgroups)
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_TYPE_UID_T,
|
||||
[AC_MSG_CHECKING(for uid_t in sys/types.h)
|
||||
AC_CACHE_VAL(ac_cv_type_uid_t,
|
||||
[AC_CACHE_CHECK(for uid_t in sys/types.h, ac_cv_type_uid_t,
|
||||
[AC_EGREP_HEADER(uid_t, sys/types.h,
|
||||
ac_cv_type_uid_t=yes, ac_cv_type_uid_t=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_uid_t)
|
||||
ac_cv_type_uid_t=yes, ac_cv_type_uid_t=no)])
|
||||
if test $ac_cv_type_uid_t = no; then
|
||||
AC_DEFINE(uid_t, int)
|
||||
AC_DEFINE(gid_t, int)
|
||||
@ -744,8 +719,7 @@ AC_DEFUN(AC_TYPE_MODE_T,
|
||||
|
||||
dnl Note that identifiers starting with SIG are reserved by ANSI C.
|
||||
AC_DEFUN(AC_TYPE_SIGNAL,
|
||||
[AC_MSG_CHECKING([return type of signal handlers])
|
||||
AC_CACHE_VAL(ac_cv_type_signal,
|
||||
[AC_CACHE_CHECK([return type of signal handlers], ac_cv_type_signal,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <signal.h>
|
||||
#ifdef signal
|
||||
@ -755,8 +729,7 @@ AC_CACHE_VAL(ac_cv_type_signal,
|
||||
extern "C"
|
||||
#endif
|
||||
void (*signal ()) ();],
|
||||
[int i;], ac_cv_type_signal=void, ac_cv_type_signal=int)])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_signal)
|
||||
[int i;], ac_cv_type_signal=void, ac_cv_type_signal=int)])
|
||||
AC_DEFINE_UNQUOTED(RETSIGTYPE, $ac_cv_type_signal)
|
||||
])
|
||||
|
||||
@ -766,21 +739,18 @@ dnl ### Checks for functions
|
||||
|
||||
AC_DEFUN(AC_FUNC_CLOSEDIR_VOID,
|
||||
[AC_REQUIRE([AC_HEADER_DIRENT])dnl
|
||||
AC_MSG_CHECKING(whether closedir returns void)
|
||||
AC_CACHE_VAL(ac_cv_func_closedir_void,
|
||||
AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <$ac_header_dirent>
|
||||
int closedir(); main() { exit(closedir(opendir(".")) != 0); }],
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_closedir_void)
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])
|
||||
if test $ac_cv_func_closedir_void = yes; then
|
||||
AC_DEFINE(CLOSEDIR_VOID)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_MMAP,
|
||||
[AC_MSG_CHECKING(for working mmap)
|
||||
AC_CACHE_VAL(ac_cv_func_mmap,
|
||||
[AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap,
|
||||
[AC_TRY_RUN([
|
||||
/* Thanks to Mike Haertel and Jim Avera for this test. */
|
||||
#include <sys/types.h>
|
||||
@ -852,16 +822,14 @@ main()
|
||||
exit(1);
|
||||
exit(0);
|
||||
}
|
||||
], ac_cv_func_mmap=yes, ac_cv_func_mmap=no, ac_cv_func_mmap=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_mmap)
|
||||
], ac_cv_func_mmap=yes, ac_cv_func_mmap=no, ac_cv_func_mmap=no)])
|
||||
if test $ac_cv_func_mmap = yes; then
|
||||
AC_DEFINE(HAVE_MMAP)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_GETPGRP,
|
||||
[AC_MSG_CHECKING(whether getpgrp takes no argument)
|
||||
AC_CACHE_VAL(ac_cv_func_getpgrp_void,
|
||||
[AC_CACHE_CHECK(whether getpgrp takes no argument, ac_cv_func_getpgrp_void,
|
||||
[AC_TRY_RUN([
|
||||
/*
|
||||
* If this system has a BSD-style getpgrp(),
|
||||
@ -916,7 +884,6 @@ main()
|
||||
], ac_cv_func_getpgrp_void=yes, ac_cv_func_getpgrp_void=no,
|
||||
AC_MSG_ERROR(cannot check getpgrp if cross compiling))
|
||||
])
|
||||
AC_MSG_RESULT($ac_cv_func_getpgrp_void)
|
||||
if test $ac_cv_func_getpgrp_void = yes; then
|
||||
AC_DEFINE(GETPGRP_VOID)
|
||||
fi
|
||||
@ -932,8 +899,7 @@ fi
|
||||
AC_DEFUN(AC_FUNC_VFORK,
|
||||
[AC_REQUIRE([AC_TYPE_PID_T])dnl
|
||||
AC_CHECK_HEADER(vfork.h, AC_DEFINE(HAVE_VFORK_H))
|
||||
AC_MSG_CHECKING(for working vfork)
|
||||
AC_CACHE_VAL(ac_cv_func_vfork,
|
||||
AC_CACHE_CHECK(for working vfork, ac_cv_func_vfork,
|
||||
[AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
@ -1023,16 +989,14 @@ main() {
|
||||
|| fstat(fileno(stdout), &st) != 0
|
||||
);
|
||||
}
|
||||
}], ac_cv_func_vfork=yes, ac_cv_func_vfork=no, ac_cv_func_vfork=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_vfork)
|
||||
}], ac_cv_func_vfork=yes, ac_cv_func_vfork=no, ac_cv_func_vfork=no)])
|
||||
if test $ac_cv_func_vfork = no; then
|
||||
AC_DEFINE(vfork, fork)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_WAIT3,
|
||||
[AC_MSG_CHECKING(for wait3 that fills in rusage)
|
||||
AC_CACHE_VAL(ac_cv_func_wait3,
|
||||
[AC_CACHE_CHECK(for wait3 that fills in rusage, ac_cv_func_wait3,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/resource.h>
|
||||
@ -1060,8 +1024,7 @@ main() {
|
||||
exit(r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0
|
||||
&& r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0);
|
||||
}
|
||||
}], ac_cv_func_wait3=yes, ac_cv_func_wait3=no, ac_cv_func_wait3=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_wait3)
|
||||
}], ac_cv_func_wait3=yes, ac_cv_func_wait3=no, ac_cv_func_wait3=no)])
|
||||
if test $ac_cv_func_wait3 = yes; then
|
||||
AC_DEFINE(HAVE_WAIT3)
|
||||
fi
|
||||
@ -1071,17 +1034,14 @@ AC_DEFUN(AC_FUNC_ALLOCA,
|
||||
[AC_REQUIRE_CPP()dnl Set CPP; we run AC_EGREP_CPP conditionally.
|
||||
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
|
||||
# for constant arguments. Useless!
|
||||
AC_MSG_CHECKING([for working alloca.h])
|
||||
AC_CACHE_VAL(ac_cv_header_alloca_h,
|
||||
AC_CACHE_CHECK([for working alloca.h], ac_cv_header_alloca_h,
|
||||
[AC_TRY_LINK([#include <alloca.h>], [char *p = alloca(2 * sizeof(int));],
|
||||
ac_cv_header_alloca_h=yes, ac_cv_header_alloca_h=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_alloca_h)
|
||||
ac_cv_header_alloca_h=yes, ac_cv_header_alloca_h=no)])
|
||||
if test $ac_cv_header_alloca_h = yes; then
|
||||
AC_DEFINE(HAVE_ALLOCA_H)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for alloca])
|
||||
AC_CACHE_VAL(ac_cv_func_alloca,
|
||||
AC_CACHE_CHECK([for alloca], ac_cv_func_alloca,
|
||||
[AC_TRY_LINK([
|
||||
#ifdef __GNUC__
|
||||
# define alloca __builtin_alloca
|
||||
@ -1099,8 +1059,7 @@ char *alloca ();
|
||||
# endif
|
||||
#endif
|
||||
], [char *p = (char *) alloca(1);],
|
||||
ac_cv_func_alloca=yes, ac_cv_func_alloca=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_alloca)
|
||||
ac_cv_func_alloca=yes, ac_cv_func_alloca=no)])
|
||||
if test $ac_cv_func_alloca = yes; then
|
||||
AC_DEFINE(HAVE_ALLOCA)
|
||||
fi
|
||||
@ -1113,16 +1072,14 @@ if test $ac_cv_func_alloca = no; then
|
||||
ALLOCA=alloca.o
|
||||
AC_DEFINE(C_ALLOCA)
|
||||
|
||||
AC_MSG_CHECKING(whether alloca needs Cray hooks)
|
||||
AC_CACHE_VAL(ac_cv_os_cray,
|
||||
AC_CACHE_CHECK(whether alloca needs Cray hooks, ac_cv_os_cray,
|
||||
[AC_EGREP_CPP(webecray,
|
||||
[#if defined(CRAY) && ! defined(CRAY2)
|
||||
webecray
|
||||
#else
|
||||
wenotbecray
|
||||
#endif
|
||||
], ac_cv_os_cray=yes, ac_cv_os_cray=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_os_cray)
|
||||
], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
|
||||
if test $ac_cv_os_cray = yes; then
|
||||
for ac_func in _getb67 GETB67 getb67; do
|
||||
AC_CHECK_FUNC($ac_func, [AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func)
|
||||
@ -1130,8 +1087,7 @@ for ac_func in _getb67 GETB67 getb67; do
|
||||
done
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(stack direction for C alloca)
|
||||
AC_CACHE_VAL(ac_cv_c_stack_direction,
|
||||
AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction,
|
||||
[AC_TRY_RUN([find_stack_direction ()
|
||||
{
|
||||
static char *addr = 0;
|
||||
@ -1148,8 +1104,7 @@ main ()
|
||||
{
|
||||
exit (find_stack_direction() < 0);
|
||||
}], ac_cv_c_stack_direction=1, ac_cv_c_stack_direction=-1,
|
||||
ac_cv_c_stack_direction=0)])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_stack_direction)
|
||||
ac_cv_c_stack_direction=0)])
|
||||
AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction)
|
||||
fi
|
||||
AC_SUBST(ALLOCA)dnl
|
||||
@ -1212,12 +1167,10 @@ else
|
||||
|
||||
AC_CHECK_HEADER(nlist.h,
|
||||
[AC_DEFINE(NLIST_STRUCT)
|
||||
AC_MSG_CHECKING([for n_un in struct nlist])
|
||||
AC_CACHE_VAL(ac_cv_struct_nlist_n_un,
|
||||
AC_CACHE_CHECK([for n_un in struct nlist], ac_cv_struct_nlist_n_un,
|
||||
[AC_TRY_COMPILE([#include <nlist.h>],
|
||||
[struct nlist n; n.n_un.n_name = 0;],
|
||||
ac_cv_struct_nlist_n_un=yes, ac_cv_struct_nlist_n_un=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_nlist_n_un)
|
||||
ac_cv_struct_nlist_n_un=yes, ac_cv_struct_nlist_n_un=no)])
|
||||
if test $ac_cv_struct_nlist_n_un = yes; then
|
||||
AC_DEFINE(NLIST_NAME_UNION)
|
||||
fi
|
||||
@ -1226,15 +1179,14 @@ fi # Do not have getloadavg in system libraries.
|
||||
|
||||
# Some definitions of getloadavg require that the program be installed setgid.
|
||||
dnl FIXME Don't hardwire the path of getloadavg.c in the top-level directory.
|
||||
AC_MSG_CHECKING(whether getloadavg requires setgid)
|
||||
AC_CACHE_VAL(ac_cv_func_getloadavg_setgid,
|
||||
AC_CACHE_CHECK(whether getloadavg requires setgid,
|
||||
ac_cv_func_getloadavg_setgid,
|
||||
[AC_EGREP_CPP([Yowza Am I SETGID yet],
|
||||
[#include "$srcdir/getloadavg.c"
|
||||
#ifdef LDAV_PRIVILEGED
|
||||
Yowza Am I SETGID yet
|
||||
#endif],
|
||||
ac_cv_func_getloadavg_setgid=yes, ac_cv_func_getloadavg_setgid=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_getloadavg_setgid)
|
||||
ac_cv_func_getloadavg_setgid=yes, ac_cv_func_getloadavg_setgid=no)])
|
||||
if test $ac_cv_func_getloadavg_setgid = yes; then
|
||||
NEED_SETGID=true; AC_DEFINE(GETLOADAVG_PRIVILEGED)
|
||||
else
|
||||
@ -1243,8 +1195,7 @@ fi
|
||||
AC_SUBST(NEED_SETGID)dnl
|
||||
|
||||
if test $ac_cv_func_getloadavg_setgid = yes; then
|
||||
AC_MSG_CHECKING(group of /dev/kmem)
|
||||
AC_CACHE_VAL(ac_cv_group_kmem,
|
||||
AC_CACHE_CHECK(group of /dev/kmem, ac_cv_group_kmem,
|
||||
[changequote(, )dnl
|
||||
# On Solaris, /dev/kmem is a symlink. Get info on the real file.
|
||||
ac_ls_output=`ls -lgL /dev/kmem 2>/dev/null`
|
||||
@ -1255,16 +1206,14 @@ AC_CACHE_VAL(ac_cv_group_kmem,
|
||||
s/^.[sSrwx-]* *[0-9]* *\([^0-9]*\) *.*/\1/;
|
||||
/ /s/.* //;p;'`
|
||||
changequote([, ])dnl
|
||||
])dnl
|
||||
])
|
||||
KMEM_GROUP=$ac_cv_group_kmem
|
||||
AC_MSG_RESULT($KMEM_GROUP)
|
||||
fi
|
||||
AC_SUBST(KMEM_GROUP)dnl
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_UTIME_NULL,
|
||||
[AC_MSG_CHECKING(whether utime accepts a null argument)
|
||||
AC_CACHE_VAL(ac_cv_func_utime_null,
|
||||
[AC_CACHE_CHECK(whether utime accepts a null argument, ac_cv_func_utime_null,
|
||||
[rm -f conftestdata; > conftestdata
|
||||
# Sequent interprets utime(file, 0) to mean use start of epoch. Wrong.
|
||||
AC_TRY_RUN([#include <sys/types.h>
|
||||
@ -1276,32 +1225,29 @@ exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0
|
||||
&& t.st_mtime - s.st_mtime < 120));
|
||||
}], ac_cv_func_utime_null=yes, ac_cv_func_utime_null=no,
|
||||
ac_cv_func_utime_null=no)
|
||||
rm -f core core.* *.core])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_utime_null)
|
||||
rm -f core core.* *.core])
|
||||
if test $ac_cv_func_utime_null = yes; then
|
||||
AC_DEFINE(HAVE_UTIME_NULL)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_STRCOLL,
|
||||
[AC_MSG_CHECKING(for strcoll)
|
||||
AC_CACHE_VAL(ac_cv_func_strcoll,
|
||||
[AC_CACHE_CHECK(for strcoll, ac_cv_func_strcoll,
|
||||
[AC_TRY_RUN([#include <string.h>
|
||||
main ()
|
||||
{
|
||||
exit (strcoll ("abc", "def") >= 0 ||
|
||||
strcoll ("ABC", "DEF") >= 0 ||
|
||||
strcoll ("123", "456") >= 0);
|
||||
}], ac_cv_func_strcoll=yes, ac_cv_func_strcoll=no, ac_cv_func_strcoll=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_strcoll)
|
||||
}], ac_cv_func_strcoll=yes, ac_cv_func_strcoll=no, ac_cv_func_strcoll=no)])
|
||||
if test $ac_cv_func_strcoll = yes; then
|
||||
AC_DEFINE(HAVE_STRCOLL)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_SETVBUF_REVERSED,
|
||||
[AC_MSG_CHECKING(whether setvbuf arguments are reversed)
|
||||
AC_CACHE_VAL(ac_cv_func_setvbuf_reversed,
|
||||
[AC_CACHE_CHECK(whether setvbuf arguments are reversed,
|
||||
ac_cv_func_setvbuf_reversed,
|
||||
[AC_TRY_RUN([#include <stdio.h>
|
||||
/* If setvbuf has the reversed format, exit 0. */
|
||||
main () {
|
||||
@ -1313,8 +1259,7 @@ main () {
|
||||
putc('\r', stdout);
|
||||
exit(0); /* Non-reversed systems segv here. */
|
||||
}], ac_cv_func_setvbuf_reversed=yes, ac_cv_func_setvbuf_reversed=no)
|
||||
rm -f core core.* *.core])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_setvbuf_reversed)
|
||||
rm -f core core.* *.core])
|
||||
if test $ac_cv_func_setvbuf_reversed = yes; then
|
||||
AC_DEFINE(SETVBUF_REVERSED)
|
||||
fi
|
||||
@ -1332,16 +1277,14 @@ AC_CHECK_LIB(intl, strftime, LIBS="-lintl $LIBS")
|
||||
AC_CHECK_FUNC(strftime, [AC_DEFINE(HAVE_STRFTIME)])])
|
||||
|
||||
AC_DEFUN(AC_FUNC_MEMCMP,
|
||||
[AC_MSG_CHECKING(for 8-bit clean memcmp)
|
||||
AC_CACHE_VAL(ac_cv_func_memcmp,
|
||||
[AC_CACHE_CHECK(for 8-bit clean memcmp, ac_cv_func_memcmp,
|
||||
[AC_TRY_RUN([
|
||||
main()
|
||||
{
|
||||
char c0 = 0x40, c1 = 0x80, c2 = 0x81;
|
||||
exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1);
|
||||
}
|
||||
], ac_cv_func_memcmp=yes, ac_cv_func_memcmp=no, ac_cv_func_memcmp=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_memcmp)
|
||||
], ac_cv_func_memcmp=yes, ac_cv_func_memcmp=no, ac_cv_func_memcmp=no)])
|
||||
test $ac_cv_func_memcmp = no && LIBOBJS="$LIBOBJS memcmp.o"
|
||||
AC_SUBST(LIBOBJS)dnl
|
||||
])
|
||||
@ -1351,26 +1294,24 @@ dnl ### Checks for structure members
|
||||
|
||||
|
||||
AC_DEFUN(AC_HEADER_TIME,
|
||||
[AC_MSG_CHECKING([whether time.h and sys/time.h may both be included])
|
||||
AC_CACHE_VAL(ac_cv_header_time,
|
||||
[AC_CACHE_CHECK([whether time.h and sys/time.h may both be included],
|
||||
ac_cv_header_time,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>],
|
||||
[struct tm *tp;], ac_cv_header_time=yes, ac_cv_header_time=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_time)
|
||||
[struct tm *tp;], ac_cv_header_time=yes, ac_cv_header_time=no)])
|
||||
if test $ac_cv_header_time = yes; then
|
||||
AC_DEFINE(TIME_WITH_SYS_TIME)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_TM,
|
||||
[AC_MSG_CHECKING([whether struct tm is in sys/time.h or time.h])
|
||||
AC_CACHE_VAL(ac_cv_struct_tm,
|
||||
[AC_CACHE_CHECK([whether struct tm is in sys/time.h or time.h],
|
||||
ac_cv_struct_tm,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <time.h>],
|
||||
[struct tm *tp; tp->tm_sec;],
|
||||
ac_cv_struct_tm=time.h, ac_cv_struct_tm=sys/time.h)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_tm)
|
||||
ac_cv_struct_tm=time.h, ac_cv_struct_tm=sys/time.h)])
|
||||
if test $ac_cv_struct_tm = sys/time.h; then
|
||||
AC_DEFINE(TM_IN_SYS_TIME)
|
||||
fi
|
||||
@ -1378,17 +1319,14 @@ fi
|
||||
|
||||
AC_DEFUN(AC_STRUCT_TIMEZONE,
|
||||
[AC_REQUIRE([AC_STRUCT_TM])dnl
|
||||
AC_MSG_CHECKING([for tm_zone in struct tm])
|
||||
AC_CACHE_VAL(ac_cv_struct_tm_zone,
|
||||
AC_CACHE_CHECK([for tm_zone in struct tm], ac_cv_struct_tm_zone,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_zone;],
|
||||
ac_cv_struct_tm_zone=yes, ac_cv_struct_tm_zone=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_tm_zone)
|
||||
ac_cv_struct_tm_zone=yes, ac_cv_struct_tm_zone=no)])
|
||||
if test "$ac_cv_struct_tm_zone" = yes; then
|
||||
AC_DEFINE(HAVE_TM_ZONE)
|
||||
else
|
||||
AC_MSG_CHECKING([for tzname])
|
||||
AC_CACHE_VAL(ac_cv_var_tzname,
|
||||
AC_CACHE_CHECK(for tzname, ac_cv_var_tzname,
|
||||
[AC_TRY_LINK(
|
||||
changequote(<<, >>)dnl
|
||||
<<#include <time.h>
|
||||
@ -1396,8 +1334,7 @@ changequote(<<, >>)dnl
|
||||
extern char *tzname[]; /* RS6000 and others reject char **tzname. */
|
||||
#endif>>,
|
||||
changequote([, ])dnl
|
||||
[atoi(*tzname);], ac_cv_var_tzname=yes, ac_cv_var_tzname=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_var_tzname)
|
||||
[atoi(*tzname);], ac_cv_var_tzname=yes, ac_cv_var_tzname=no)])
|
||||
if test $ac_cv_var_tzname = yes; then
|
||||
AC_DEFINE(HAVE_TZNAME)
|
||||
fi
|
||||
@ -1405,12 +1342,10 @@ fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_BLOCKS,
|
||||
[AC_MSG_CHECKING([for st_blocks in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_blocks,
|
||||
[AC_CACHE_CHECK([for st_blocks in struct stat], ac_cv_struct_st_blocks,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_blocks;],
|
||||
ac_cv_struct_st_blocks=yes, ac_cv_struct_st_blocks=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_blocks)
|
||||
ac_cv_struct_st_blocks=yes, ac_cv_struct_st_blocks=no)])
|
||||
if test $ac_cv_struct_st_blocks = yes; then
|
||||
AC_DEFINE(HAVE_ST_BLOCKS)
|
||||
else
|
||||
@ -1420,24 +1355,20 @@ AC_SUBST(LIBOBJS)dnl
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_BLKSIZE,
|
||||
[AC_MSG_CHECKING([for st_blksize in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_blksize,
|
||||
[AC_CACHE_CHECK([for st_blksize in struct stat], ac_cv_struct_st_blksize,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_blksize;],
|
||||
ac_cv_struct_st_blksize=yes, ac_cv_struct_st_blksize=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_blksize)
|
||||
ac_cv_struct_st_blksize=yes, ac_cv_struct_st_blksize=no)])
|
||||
if test $ac_cv_struct_st_blksize = yes; then
|
||||
AC_DEFINE(HAVE_ST_BLKSIZE)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_RDEV,
|
||||
[AC_MSG_CHECKING([for st_rdev in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_rdev,
|
||||
[AC_CACHE_CHECK([for st_rdev in struct stat], ac_cv_struct_st_rdev,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_rdev;],
|
||||
ac_cv_struct_st_rdev=yes, ac_cv_struct_st_rdev=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_rdev)
|
||||
ac_cv_struct_st_rdev=yes, ac_cv_struct_st_rdev=no)])
|
||||
if test $ac_cv_struct_st_rdev = yes; then
|
||||
AC_DEFINE(HAVE_ST_RDEV)
|
||||
fi
|
||||
@ -1449,17 +1380,14 @@ dnl ### Checks for compiler characteristics
|
||||
|
||||
AC_DEFUN(AC_C_CROSS,
|
||||
[# If we cannot run a trivial program, we must be cross compiling.
|
||||
AC_MSG_CHECKING(whether cross-compiling)
|
||||
AC_CACHE_VAL(ac_cv_c_cross,
|
||||
AC_CACHE_CHECK(whether cross-compiling, ac_cv_c_cross,
|
||||
[AC_TRY_RUN([main(){return(0);}],
|
||||
ac_cv_c_cross=no, ac_cv_c_cross=yes, ac_cv_c_cross=yes)])dnl
|
||||
ac_cv_c_cross=no, ac_cv_c_cross=yes, ac_cv_c_cross=yes)])
|
||||
cross_compiling=$ac_cv_c_cross
|
||||
AC_MSG_RESULT($ac_cv_c_cross)
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_CHAR_UNSIGNED,
|
||||
[AC_MSG_CHECKING(whether char is unsigned)
|
||||
AC_CACHE_VAL(ac_cv_c_char_unsigned,
|
||||
[AC_CACHE_CHECK(whether char is unsigned, ac_cv_c_char_unsigned,
|
||||
[if test "$GCC" = yes; then
|
||||
# GCC predefines this symbol on systems where it applies.
|
||||
AC_EGREP_CPP(yes,
|
||||
@ -1476,16 +1404,14 @@ AC_TRY_RUN(
|
||||
main() {
|
||||
volatile char c = 255; exit(c < 0);
|
||||
}], ac_cv_c_char_unsigned=yes, ac_cv_c_char_unsigned=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_char_unsigned)
|
||||
fi])
|
||||
if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
|
||||
AC_DEFINE(__CHAR_UNSIGNED__)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_LONG_DOUBLE,
|
||||
[AC_MSG_CHECKING(for long double)
|
||||
AC_CACHE_VAL(ac_cv_c_long_double,
|
||||
[AC_CACHE_CHECK(for long double, ac_cv_c_long_double,
|
||||
[if test "$GCC" = yes; then
|
||||
ac_cv_c_long_double=yes
|
||||
else
|
||||
@ -1495,8 +1421,7 @@ long double foo = 0.0;
|
||||
/* On Ultrix 4.3 cc, long double is 4 and double is 8. */
|
||||
exit(sizeof(long double) < sizeof(double)); }],
|
||||
ac_cv_c_long_double=yes, ac_cv_c_long_double=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_long_double)
|
||||
fi])
|
||||
if test $ac_cv_c_long_double = yes; then
|
||||
AC_DEFINE(HAVE_LONG_DOUBLE)
|
||||
fi
|
||||
@ -1519,8 +1444,7 @@ AC_TRY_RUN([main() { exit(sizeof(long int) != 8); }],
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_BIGENDIAN,
|
||||
[AC_MSG_CHECKING(whether byte ordering is bigendian)
|
||||
AC_CACHE_VAL(ac_cv_c_bigendian,
|
||||
[AC_CACHE_CHECK(whether byte ordering is bigendian, ac_cv_c_bigendian,
|
||||
[ac_cv_c_bigendian=unknown
|
||||
# See if sys/param.h defines the BYTE_ORDER macro.
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
@ -1544,8 +1468,7 @@ AC_TRY_RUN([main () {
|
||||
u.l = 1;
|
||||
exit (u.c[sizeof (long) - 1] == 1);
|
||||
}], ac_cv_c_bigendian=no, ac_cv_c_bigendian=yes)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_bigendian)
|
||||
fi])
|
||||
if test $ac_cv_c_bigendian = yes; then
|
||||
AC_DEFINE(WORDS_BIGENDIAN)
|
||||
fi
|
||||
@ -1555,14 +1478,12 @@ dnl Do nothing if the compiler accepts the inline keyword.
|
||||
dnl Otherwise define inline to __inline__ or __inline if one of those work,
|
||||
dnl otherwise define inline to be empty.
|
||||
AC_DEFUN(AC_C_INLINE,
|
||||
[AC_MSG_CHECKING([for inline])
|
||||
AC_CACHE_VAL(ac_cv_c_inline,
|
||||
[AC_CACHE_CHECK([for inline], ac_cv_c_inline,
|
||||
[ac_cv_c_inline=no
|
||||
for ac_kw in inline __inline__ __inline; do
|
||||
AC_TRY_COMPILE(, [} $ac_kw foo() {], [ac_cv_c_inline=$ac_kw; break])
|
||||
done
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_inline)
|
||||
])
|
||||
case "$ac_cv_c_inline" in
|
||||
inline | yes) ;;
|
||||
no) AC_DEFINE(inline, ) ;;
|
||||
@ -1573,8 +1494,7 @@ esac
|
||||
AC_DEFUN(AC_C_CONST,
|
||||
[dnl This message is consistent in form with the other checking messages,
|
||||
dnl and with the result message.
|
||||
AC_MSG_CHECKING([for working const])
|
||||
AC_CACHE_VAL(ac_cv_c_const,
|
||||
AC_CACHE_CHECK([for working const], ac_cv_c_const,
|
||||
[AC_TRY_COMPILE(,
|
||||
changequote(<<, >>)dnl
|
||||
<<
|
||||
@ -1621,8 +1541,7 @@ ccp = (char const *const *) p;
|
||||
}
|
||||
>>,
|
||||
changequote([, ])dnl
|
||||
ac_cv_c_const=yes, ac_cv_c_const=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_const)
|
||||
ac_cv_c_const=yes, ac_cv_c_const=no)])
|
||||
if test $ac_cv_c_const = no; then
|
||||
AC_DEFINE(const, )
|
||||
fi
|
||||
@ -1639,8 +1558,7 @@ dnl ### Checks for operating system services
|
||||
AC_DEFUN(AC_SYS_INTERPRETER,
|
||||
[# Pull the hash mark out of the macro call to avoid m4 problems.
|
||||
ac_msg="whether #! works in shell scripts"
|
||||
AC_MSG_CHECKING($ac_msg)
|
||||
AC_CACHE_VAL(ac_cv_sys_interpreter,
|
||||
AC_CACHE_CHECK($ac_msg, ac_cv_sys_interpreter,
|
||||
[echo '#! /bin/cat
|
||||
exit 69
|
||||
' > conftest
|
||||
@ -1651,8 +1569,7 @@ if test $? -ne 69; then
|
||||
else
|
||||
ac_cv_sys_interpreter=no
|
||||
fi
|
||||
rm -f conftest])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_interpreter)
|
||||
rm -f conftest])
|
||||
])
|
||||
|
||||
define(AC_HAVE_POUNDBANG,
|
||||
@ -1660,8 +1577,7 @@ define(AC_HAVE_POUNDBANG,
|
||||
])m4exit(4)])
|
||||
|
||||
AC_DEFUN(AC_SYS_LONG_FILE_NAMES,
|
||||
[AC_MSG_CHECKING(for long file names)
|
||||
AC_CACHE_VAL(ac_cv_sys_long_file_names,
|
||||
[AC_CACHE_CHECK(for long file names, ac_cv_sys_long_file_names,
|
||||
[ac_cv_sys_long_file_names=yes
|
||||
# Test for long file names in all the places we know might matter:
|
||||
# . the current directory, where building will happen
|
||||
@ -1683,16 +1599,14 @@ for ac_dir in `eval echo . /tmp /var/tmp /usr/tmp $prefix/lib $exec_prefix/lib`
|
||||
break
|
||||
fi
|
||||
rm -f $ac_dir/conftest9012345 $ac_dir/conftest9012346 2>/dev/null
|
||||
done])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_long_file_names)
|
||||
done])
|
||||
if test $ac_cv_sys_long_file_names = yes; then
|
||||
AC_DEFINE(HAVE_LONG_FILE_NAMES)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_SYS_RESTARTABLE_SYSCALLS,
|
||||
[AC_MSG_CHECKING(for restartable system calls)
|
||||
AC_CACHE_VAL(ac_cv_sys_restartable_syscalls,
|
||||
[AC_CACHE_CHECK(for restartable system calls, ac_cv_sys_restartable_syscalls,
|
||||
[AC_TRY_RUN(
|
||||
[/* Exit 0 (true) if wait returns something other than -1,
|
||||
i.e. the pid of the child, which means that wait was restarted
|
||||
@ -1708,8 +1622,7 @@ main () {
|
||||
if (status == -1) wait(&i);
|
||||
exit (status == -1);
|
||||
}
|
||||
], ac_cv_sys_restartable_syscalls=yes, ac_cv_sys_restartable_syscalls=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_restartable_syscalls)
|
||||
], ac_cv_sys_restartable_syscalls=yes, ac_cv_sys_restartable_syscalls=no)])
|
||||
if test $ac_cv_sys_restartable_syscalls = yes; then
|
||||
AC_DEFINE(HAVE_RESTARTABLE_SYSCALLS)
|
||||
fi
|
||||
|
@ -3341,6 +3341,15 @@ before @code{configure} creates its output files. @xref{Cache
|
||||
Variable Names}, for how to choose the name of the @var{cache-id} variable.
|
||||
@end defmac
|
||||
|
||||
@defmac AC_CACHE_CHECK (@var{message}, @var{cache-id}, @var{commands})
|
||||
@maindex CACHE_CHECK
|
||||
A wrapper for @code{AC_CACHE_VAL} that takes care of printing the
|
||||
messages. This macro provides a convenient shorthand for the most
|
||||
common way to use these macros. It calls @code{AC_MSG_CHECKING} for
|
||||
@var{message}, then @code{AC_CACHE_VAL} with the @var{cache-id} and
|
||||
@var{commands} arguments, and @code{AC_MSG_RESULT} with @var{cache-id}.
|
||||
@end defmac
|
||||
|
||||
@menu
|
||||
* Cache Variable Names:: Shell variables used in caches.
|
||||
* Cache Files:: Files @code{configure} uses for caching.
|
||||
|
@ -3341,6 +3341,15 @@ before @code{configure} creates its output files. @xref{Cache
|
||||
Variable Names}, for how to choose the name of the @var{cache-id} variable.
|
||||
@end defmac
|
||||
|
||||
@defmac AC_CACHE_CHECK (@var{message}, @var{cache-id}, @var{commands})
|
||||
@maindex CACHE_CHECK
|
||||
A wrapper for @code{AC_CACHE_VAL} that takes care of printing the
|
||||
messages. This macro provides a convenient shorthand for the most
|
||||
common way to use these macros. It calls @code{AC_MSG_CHECKING} for
|
||||
@var{message}, then @code{AC_CACHE_VAL} with the @var{cache-id} and
|
||||
@var{commands} arguments, and @code{AC_MSG_RESULT} with @var{cache-id}.
|
||||
@end defmac
|
||||
|
||||
@menu
|
||||
* Cache Variable Names:: Shell variables used in caches.
|
||||
* Cache Files:: Files @code{configure} uses for caching.
|
||||
|
@ -1062,6 +1062,12 @@ else
|
||||
fi
|
||||
])
|
||||
|
||||
dnl AC_CACHE_CHECK(MESSAGE, CACHE-ID, COMMANDS)
|
||||
define(AC_CACHE_CHECK,
|
||||
[AC_MSG_CHECKING([$1])
|
||||
AC_CACHE_VAL([$2], [$3])
|
||||
AC_MSG_RESULT([$]$2)])
|
||||
|
||||
|
||||
dnl ### Defining symbols
|
||||
|
||||
|
@ -73,8 +73,7 @@ AC_DEFUN(AC_PROG_CC,
|
||||
[AC_BEFORE([$0], [AC_PROG_CPP])dnl
|
||||
AC_CHECK_PROG(CC, gcc, gcc, cc)
|
||||
|
||||
AC_MSG_CHECKING(whether we are using GNU C)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc,
|
||||
AC_CACHE_CHECK(whether we are using GNU C, ac_cv_prog_gcc,
|
||||
[dnl The semicolon is to pacify NeXT's syntax-checking cpp.
|
||||
cat > conftest.c <<EOF
|
||||
#ifdef __GNUC__
|
||||
@ -85,13 +84,11 @@ if ${CC-cc} -E conftest.c 2>&AC_FD_CC | egrep yes >/dev/null 2>&1; then
|
||||
ac_cv_prog_gcc=yes
|
||||
else
|
||||
ac_cv_prog_gcc=no
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc)
|
||||
fi])
|
||||
if test $ac_cv_prog_gcc = yes; then
|
||||
GCC=yes
|
||||
if test "${CFLAGS+set}" != set; then
|
||||
AC_MSG_CHECKING(whether ${CC-cc} accepts -g)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc_g,
|
||||
AC_CACHE_CHECK(whether ${CC-cc} accepts -g, ac_cv_prog_gcc_g,
|
||||
[echo 'void f(){}' > conftest.c
|
||||
if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
|
||||
ac_cv_prog_gcc_g=yes
|
||||
@ -99,8 +96,7 @@ else
|
||||
ac_cv_prog_gcc_g=no
|
||||
fi
|
||||
rm -f conftest*
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc_g)
|
||||
])
|
||||
if test $ac_cv_prog_gcc_g = yes; then
|
||||
CFLAGS="-g -O"
|
||||
else
|
||||
@ -117,8 +113,7 @@ AC_DEFUN(AC_PROG_CXX,
|
||||
[AC_BEFORE([$0], [AC_PROG_CXXCPP])dnl
|
||||
AC_CHECK_PROGS(CXX, $CCC c++ g++ gcc CC cxx, gcc)
|
||||
|
||||
AC_MSG_CHECKING(whether we are using GNU C++)
|
||||
AC_CACHE_VAL(ac_cv_prog_gxx,
|
||||
AC_CACHE_CHECK(whether we are using GNU C++, ac_cv_prog_gxx,
|
||||
[dnl The semicolon is to pacify NeXT's syntax-checking cpp.
|
||||
cat > conftest.C <<EOF
|
||||
#ifdef __GNUC__
|
||||
@ -129,13 +124,11 @@ if ${CXX-g++} -E conftest.C 2>&AC_FD_CC | egrep yes >/dev/null 2>&1; then
|
||||
ac_cv_prog_gxx=yes
|
||||
else
|
||||
ac_cv_prog_gxx=no
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gxx)
|
||||
fi])
|
||||
if test $ac_cv_prog_gxx = yes; then
|
||||
GXX=yes
|
||||
if test "${CXXFLAGS+set}" != set; then
|
||||
AC_MSG_CHECKING(whether ${CXX-g++} accepts -g)
|
||||
AC_CACHE_VAL(ac_cv_prog_gxx_g,
|
||||
AC_CACHE_CHECK(whether ${CXX-g++} accepts -g, ac_cv_prog_gxx_g,
|
||||
[echo 'void f(){}' > conftest.cc
|
||||
if test -z "`${CXX-g++} -g -c conftest.cc 2>&1`"; then
|
||||
ac_cv_prog_gxx_g=yes
|
||||
@ -144,7 +137,6 @@ else
|
||||
fi
|
||||
rm -f conftest*
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gxx_g)
|
||||
if test $ac_cv_prog_gxx_g = yes; then
|
||||
CXXFLAGS="-g -O"
|
||||
else
|
||||
@ -161,8 +153,8 @@ AC_DEFUN(AC_PROG_GCC_TRADITIONAL,
|
||||
[AC_REQUIRE([AC_PROG_CC])dnl
|
||||
AC_REQUIRE([AC_PROG_CPP])dnl
|
||||
if test $ac_cv_prog_gcc = yes; then
|
||||
AC_MSG_CHECKING(whether ${CC-cc} needs -traditional)
|
||||
AC_CACHE_VAL(ac_cv_prog_gcc_traditional,
|
||||
AC_CACHE_CHECK(whether ${CC-cc} needs -traditional,
|
||||
ac_cv_prog_gcc_traditional,
|
||||
[ ac_pattern="Autoconf.*'x'"
|
||||
AC_EGREP_CPP($ac_pattern, [#include <sgtty.h>
|
||||
Autoconf TIOCGETP],
|
||||
@ -172,8 +164,7 @@ Autoconf TIOCGETP],
|
||||
AC_EGREP_CPP($ac_pattern, [#include <termio.h>
|
||||
Autoconf TCGETA],
|
||||
ac_cv_prog_gcc_traditional=yes)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_gcc_traditional)
|
||||
fi])
|
||||
if test $ac_cv_prog_gcc_traditional = yes; then
|
||||
CC="$CC -traditional"
|
||||
fi
|
||||
@ -327,8 +318,7 @@ undefine([AC_DECL_YYTEXT])
|
||||
AC_DEFUN(AC_DECL_YYTEXT,
|
||||
[AC_REQUIRE_CPP()dnl
|
||||
AC_REQUIRE([AC_PROG_LEX])dnl
|
||||
AC_MSG_CHECKING(lex output file root)
|
||||
AC_CACHE_VAL(ac_cv_prog_lex_root,
|
||||
AC_CACHE_CHECK(lex output file root, ac_cv_prog_lex_root,
|
||||
[# The minimal lex program is just a single line: %%. But some broken lexes
|
||||
# (Solaris, I think it was) want two %% lines, so accommodate them.
|
||||
echo '%%
|
||||
@ -339,13 +329,11 @@ elif test -f lexyy.c; then
|
||||
ac_cv_prog_lex_root=lexyy
|
||||
else
|
||||
AC_MSG_ERROR(cannot find output from $LEX; giving up)
|
||||
fi])dnl
|
||||
fi])
|
||||
LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
|
||||
AC_MSG_RESULT($ac_cv_prog_lex_root)
|
||||
AC_SUBST(LEX_OUTPUT_ROOT)dnl
|
||||
|
||||
AC_MSG_CHECKING(whether yytext is a pointer)
|
||||
AC_CACHE_VAL(ac_cv_prog_lex_yytext_pointer,
|
||||
AC_CACHE_CHECK(whether yytext is a pointer, ac_cv_prog_lex_yytext_pointer,
|
||||
[# POSIX says lex can declare yytext either as a pointer or an array; the
|
||||
# default is implementation-dependent. Figure out which it is, since
|
||||
# not all implementations provide the %pointer and %array declarations.
|
||||
@ -356,7 +344,6 @@ LIBS="$LIBS $LEXLIB"
|
||||
AC_TRY_LINK(`cat $LEX_OUTPUT_ROOT.c`, , ac_cv_prog_lex_yytext_pointer=yes)
|
||||
LIBS="$ac_save_LIBS"
|
||||
rm -f "${LEX_OUTPUT_ROOT}.c"])dnl
|
||||
AC_MSG_RESULT($ac_cv_prog_lex_yytext_pointer)
|
||||
if test $ac_cv_prog_lex_yytext_pointer = yes; then
|
||||
AC_DEFINE(YYTEXT_POINTER)
|
||||
fi
|
||||
@ -455,8 +442,7 @@ dnl ### Checks for header files
|
||||
|
||||
AC_DEFUN(AC_HEADER_STDC,
|
||||
[AC_REQUIRE_CPP()dnl
|
||||
AC_MSG_CHECKING(for ANSI C header files)
|
||||
AC_CACHE_VAL(ac_cv_header_stdc,
|
||||
AC_CACHE_CHECK(for ANSI C header files, ac_cv_header_stdc,
|
||||
[AC_TRY_CPP([#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
@ -482,8 +468,7 @@ int main () { int i; for (i = 0; i < 256; i++)
|
||||
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
|
||||
exit (0); }
|
||||
], , ac_cv_header_stdc=no, ac_cv_header_stdc=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_stdc)
|
||||
fi])
|
||||
if test $ac_cv_header_stdc = yes; then
|
||||
AC_DEFINE(STDC_HEADERS)
|
||||
fi
|
||||
@ -514,12 +499,11 @@ fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_MAJOR,
|
||||
[AC_MSG_CHECKING(whether sys/types.h defines makedev)
|
||||
AC_CACHE_VAL(ac_cv_header_sys_types_h_makedev,
|
||||
[AC_CACHE_CHECK(whether sys/types.h defines makedev,
|
||||
ac_cv_header_sys_types_h_makedev,
|
||||
[AC_TRY_LINK([#include <sys/types.h>], [return makedev(0, 0);],
|
||||
ac_cv_header_sys_types_h_makedev=yes, ac_cv_header_sys_types_h_makedev=no)
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_sys_types_h_makedev)
|
||||
])
|
||||
|
||||
if test $ac_cv_header_sys_types_h_makedev = no; then
|
||||
AC_CHECK_HEADER(sys/mkdev.h, [AC_DEFINE(MAJOR_IN_MKDEV)])
|
||||
@ -588,21 +572,19 @@ sys/dir.h) AC_DEFINE(SYSDIR) ;;
|
||||
ndir.h) AC_DEFINE(NDIR) ;;
|
||||
esac
|
||||
|
||||
AC_MSG_CHECKING(whether closedir returns void)
|
||||
AC_CACHE_VAL(ac_cv_func_closedir_void,
|
||||
AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <$ac_header_dirent>
|
||||
int closedir(); main() { exit(closedir(opendir(".")) != 0); }],
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_closedir_void)
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])
|
||||
if test $ac_cv_func_closedir_void = yes; then
|
||||
AC_DEFINE(VOID_CLOSEDIR)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_STAT,
|
||||
[AC_MSG_CHECKING(whether stat file-mode macros are broken)
|
||||
AC_CACHE_VAL(ac_cv_header_stat_broken,
|
||||
[AC_CACHE_CHECK(whether stat file-mode macros are broken,
|
||||
ac_cv_header_stat_broken,
|
||||
[AC_EGREP_CPP([You lose], [#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
|
||||
@ -629,32 +611,30 @@ You lose.
|
||||
You lose.
|
||||
# endif
|
||||
#endif
|
||||
], ac_cv_header_stat_broken=yes, ac_cv_header_stat_broken=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_stat_broken)
|
||||
], ac_cv_header_stat_broken=yes, ac_cv_header_stat_broken=no)])
|
||||
if test $ac_cv_header_stat_broken = yes; then
|
||||
AC_DEFINE(STAT_MACROS_BROKEN)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_DECL_SYS_SIGLIST,
|
||||
[AC_MSG_CHECKING([for sys_siglist declaration in signal.h or unistd.h])
|
||||
AC_CACHE_VAL(ac_cv_decl_sys_siglist,
|
||||
[AC_CACHE_CHECK([for sys_siglist declaration in signal.h or unistd.h],
|
||||
ac_cv_decl_sys_siglist,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <signal.h>
|
||||
/* NetBSD declares sys_siglist in unistd.h. */
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif], [char *msg = *(sys_siglist + 1);],
|
||||
ac_cv_decl_sys_siglist=yes, ac_cv_decl_sys_siglist=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_decl_sys_siglist)
|
||||
ac_cv_decl_sys_siglist=yes, ac_cv_decl_sys_siglist=no)])
|
||||
if test $ac_cv_decl_sys_siglist = yes; then
|
||||
AC_DEFINE(SYS_SIGLIST_DECLARED)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_HEADER_SYS_WAIT,
|
||||
[AC_MSG_CHECKING([for sys/wait.h that is POSIX.1 compatible])
|
||||
AC_CACHE_VAL(ac_cv_header_sys_wait_h,
|
||||
[AC_CACHE_CHECK([for sys/wait.h that is POSIX.1 compatible],
|
||||
ac_cv_header_sys_wait_h,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/wait.h>
|
||||
#ifndef WEXITSTATUS
|
||||
@ -665,8 +645,7 @@ AC_CACHE_VAL(ac_cv_header_sys_wait_h,
|
||||
#endif], [int s;
|
||||
wait (&s);
|
||||
s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;],
|
||||
ac_cv_header_sys_wait_h=yes, ac_cv_header_sys_wait_h=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_sys_wait_h)
|
||||
ac_cv_header_sys_wait_h=yes, ac_cv_header_sys_wait_h=no)])
|
||||
if test $ac_cv_header_sys_wait_h = yes; then
|
||||
AC_DEFINE(HAVE_SYS_WAIT_H)
|
||||
fi
|
||||
@ -678,8 +657,7 @@ dnl ### Checks for typedefs
|
||||
|
||||
AC_DEFUN(AC_TYPE_GETGROUPS,
|
||||
[AC_REQUIRE([AC_TYPE_UID_T])dnl
|
||||
AC_MSG_CHECKING(type of array argument to getgroups)
|
||||
AC_CACHE_VAL(ac_cv_type_getgroups,
|
||||
AC_CACHE_CHECK(type of array argument to getgroups, ac_cv_type_getgroups,
|
||||
[AC_TRY_RUN(
|
||||
changequote(<<, >>)dnl
|
||||
<<
|
||||
@ -713,17 +691,14 @@ if test $ac_cv_type_getgroups = cross; then
|
||||
dnl Old systems without prototypes probably use int.
|
||||
AC_EGREP_HEADER([getgroups.*int.*gid_t], unistd.h,
|
||||
ac_cv_type_getgroups=gid_t, ac_cv_type_getgroups=int)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_getgroups)
|
||||
fi])
|
||||
AC_DEFINE_UNQUOTED(GETGROUPS_T, $ac_cv_type_getgroups)
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_TYPE_UID_T,
|
||||
[AC_MSG_CHECKING(for uid_t in sys/types.h)
|
||||
AC_CACHE_VAL(ac_cv_type_uid_t,
|
||||
[AC_CACHE_CHECK(for uid_t in sys/types.h, ac_cv_type_uid_t,
|
||||
[AC_EGREP_HEADER(uid_t, sys/types.h,
|
||||
ac_cv_type_uid_t=yes, ac_cv_type_uid_t=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_uid_t)
|
||||
ac_cv_type_uid_t=yes, ac_cv_type_uid_t=no)])
|
||||
if test $ac_cv_type_uid_t = no; then
|
||||
AC_DEFINE(uid_t, int)
|
||||
AC_DEFINE(gid_t, int)
|
||||
@ -744,8 +719,7 @@ AC_DEFUN(AC_TYPE_MODE_T,
|
||||
|
||||
dnl Note that identifiers starting with SIG are reserved by ANSI C.
|
||||
AC_DEFUN(AC_TYPE_SIGNAL,
|
||||
[AC_MSG_CHECKING([return type of signal handlers])
|
||||
AC_CACHE_VAL(ac_cv_type_signal,
|
||||
[AC_CACHE_CHECK([return type of signal handlers], ac_cv_type_signal,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <signal.h>
|
||||
#ifdef signal
|
||||
@ -755,8 +729,7 @@ AC_CACHE_VAL(ac_cv_type_signal,
|
||||
extern "C"
|
||||
#endif
|
||||
void (*signal ()) ();],
|
||||
[int i;], ac_cv_type_signal=void, ac_cv_type_signal=int)])dnl
|
||||
AC_MSG_RESULT($ac_cv_type_signal)
|
||||
[int i;], ac_cv_type_signal=void, ac_cv_type_signal=int)])
|
||||
AC_DEFINE_UNQUOTED(RETSIGTYPE, $ac_cv_type_signal)
|
||||
])
|
||||
|
||||
@ -766,21 +739,18 @@ dnl ### Checks for functions
|
||||
|
||||
AC_DEFUN(AC_FUNC_CLOSEDIR_VOID,
|
||||
[AC_REQUIRE([AC_HEADER_DIRENT])dnl
|
||||
AC_MSG_CHECKING(whether closedir returns void)
|
||||
AC_CACHE_VAL(ac_cv_func_closedir_void,
|
||||
AC_CACHE_CHECK(whether closedir returns void, ac_cv_func_closedir_void,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <$ac_header_dirent>
|
||||
int closedir(); main() { exit(closedir(opendir(".")) != 0); }],
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_closedir_void)
|
||||
ac_cv_func_closedir_void=no, ac_cv_func_closedir_void=yes)])
|
||||
if test $ac_cv_func_closedir_void = yes; then
|
||||
AC_DEFINE(CLOSEDIR_VOID)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_MMAP,
|
||||
[AC_MSG_CHECKING(for working mmap)
|
||||
AC_CACHE_VAL(ac_cv_func_mmap,
|
||||
[AC_CACHE_CHECK(for working mmap, ac_cv_func_mmap,
|
||||
[AC_TRY_RUN([
|
||||
/* Thanks to Mike Haertel and Jim Avera for this test. */
|
||||
#include <sys/types.h>
|
||||
@ -852,16 +822,14 @@ main()
|
||||
exit(1);
|
||||
exit(0);
|
||||
}
|
||||
], ac_cv_func_mmap=yes, ac_cv_func_mmap=no, ac_cv_func_mmap=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_mmap)
|
||||
], ac_cv_func_mmap=yes, ac_cv_func_mmap=no, ac_cv_func_mmap=no)])
|
||||
if test $ac_cv_func_mmap = yes; then
|
||||
AC_DEFINE(HAVE_MMAP)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_GETPGRP,
|
||||
[AC_MSG_CHECKING(whether getpgrp takes no argument)
|
||||
AC_CACHE_VAL(ac_cv_func_getpgrp_void,
|
||||
[AC_CACHE_CHECK(whether getpgrp takes no argument, ac_cv_func_getpgrp_void,
|
||||
[AC_TRY_RUN([
|
||||
/*
|
||||
* If this system has a BSD-style getpgrp(),
|
||||
@ -916,7 +884,6 @@ main()
|
||||
], ac_cv_func_getpgrp_void=yes, ac_cv_func_getpgrp_void=no,
|
||||
AC_MSG_ERROR(cannot check getpgrp if cross compiling))
|
||||
])
|
||||
AC_MSG_RESULT($ac_cv_func_getpgrp_void)
|
||||
if test $ac_cv_func_getpgrp_void = yes; then
|
||||
AC_DEFINE(GETPGRP_VOID)
|
||||
fi
|
||||
@ -932,8 +899,7 @@ fi
|
||||
AC_DEFUN(AC_FUNC_VFORK,
|
||||
[AC_REQUIRE([AC_TYPE_PID_T])dnl
|
||||
AC_CHECK_HEADER(vfork.h, AC_DEFINE(HAVE_VFORK_H))
|
||||
AC_MSG_CHECKING(for working vfork)
|
||||
AC_CACHE_VAL(ac_cv_func_vfork,
|
||||
AC_CACHE_CHECK(for working vfork, ac_cv_func_vfork,
|
||||
[AC_TRY_RUN([/* Thanks to Paul Eggert for this test. */
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
@ -1023,16 +989,14 @@ main() {
|
||||
|| fstat(fileno(stdout), &st) != 0
|
||||
);
|
||||
}
|
||||
}], ac_cv_func_vfork=yes, ac_cv_func_vfork=no, ac_cv_func_vfork=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_vfork)
|
||||
}], ac_cv_func_vfork=yes, ac_cv_func_vfork=no, ac_cv_func_vfork=no)])
|
||||
if test $ac_cv_func_vfork = no; then
|
||||
AC_DEFINE(vfork, fork)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_WAIT3,
|
||||
[AC_MSG_CHECKING(for wait3 that fills in rusage)
|
||||
AC_CACHE_VAL(ac_cv_func_wait3,
|
||||
[AC_CACHE_CHECK(for wait3 that fills in rusage, ac_cv_func_wait3,
|
||||
[AC_TRY_RUN([#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/resource.h>
|
||||
@ -1060,8 +1024,7 @@ main() {
|
||||
exit(r.ru_nvcsw == 0 && r.ru_majflt == 0 && r.ru_minflt == 0
|
||||
&& r.ru_stime.tv_sec == 0 && r.ru_stime.tv_usec == 0);
|
||||
}
|
||||
}], ac_cv_func_wait3=yes, ac_cv_func_wait3=no, ac_cv_func_wait3=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_wait3)
|
||||
}], ac_cv_func_wait3=yes, ac_cv_func_wait3=no, ac_cv_func_wait3=no)])
|
||||
if test $ac_cv_func_wait3 = yes; then
|
||||
AC_DEFINE(HAVE_WAIT3)
|
||||
fi
|
||||
@ -1071,17 +1034,14 @@ AC_DEFUN(AC_FUNC_ALLOCA,
|
||||
[AC_REQUIRE_CPP()dnl Set CPP; we run AC_EGREP_CPP conditionally.
|
||||
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
|
||||
# for constant arguments. Useless!
|
||||
AC_MSG_CHECKING([for working alloca.h])
|
||||
AC_CACHE_VAL(ac_cv_header_alloca_h,
|
||||
AC_CACHE_CHECK([for working alloca.h], ac_cv_header_alloca_h,
|
||||
[AC_TRY_LINK([#include <alloca.h>], [char *p = alloca(2 * sizeof(int));],
|
||||
ac_cv_header_alloca_h=yes, ac_cv_header_alloca_h=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_alloca_h)
|
||||
ac_cv_header_alloca_h=yes, ac_cv_header_alloca_h=no)])
|
||||
if test $ac_cv_header_alloca_h = yes; then
|
||||
AC_DEFINE(HAVE_ALLOCA_H)
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING([for alloca])
|
||||
AC_CACHE_VAL(ac_cv_func_alloca,
|
||||
AC_CACHE_CHECK([for alloca], ac_cv_func_alloca,
|
||||
[AC_TRY_LINK([
|
||||
#ifdef __GNUC__
|
||||
# define alloca __builtin_alloca
|
||||
@ -1099,8 +1059,7 @@ char *alloca ();
|
||||
# endif
|
||||
#endif
|
||||
], [char *p = (char *) alloca(1);],
|
||||
ac_cv_func_alloca=yes, ac_cv_func_alloca=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_alloca)
|
||||
ac_cv_func_alloca=yes, ac_cv_func_alloca=no)])
|
||||
if test $ac_cv_func_alloca = yes; then
|
||||
AC_DEFINE(HAVE_ALLOCA)
|
||||
fi
|
||||
@ -1113,16 +1072,14 @@ if test $ac_cv_func_alloca = no; then
|
||||
ALLOCA=alloca.o
|
||||
AC_DEFINE(C_ALLOCA)
|
||||
|
||||
AC_MSG_CHECKING(whether alloca needs Cray hooks)
|
||||
AC_CACHE_VAL(ac_cv_os_cray,
|
||||
AC_CACHE_CHECK(whether alloca needs Cray hooks, ac_cv_os_cray,
|
||||
[AC_EGREP_CPP(webecray,
|
||||
[#if defined(CRAY) && ! defined(CRAY2)
|
||||
webecray
|
||||
#else
|
||||
wenotbecray
|
||||
#endif
|
||||
], ac_cv_os_cray=yes, ac_cv_os_cray=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_os_cray)
|
||||
], ac_cv_os_cray=yes, ac_cv_os_cray=no)])
|
||||
if test $ac_cv_os_cray = yes; then
|
||||
for ac_func in _getb67 GETB67 getb67; do
|
||||
AC_CHECK_FUNC($ac_func, [AC_DEFINE_UNQUOTED(CRAY_STACKSEG_END, $ac_func)
|
||||
@ -1130,8 +1087,7 @@ for ac_func in _getb67 GETB67 getb67; do
|
||||
done
|
||||
fi
|
||||
|
||||
AC_MSG_CHECKING(stack direction for C alloca)
|
||||
AC_CACHE_VAL(ac_cv_c_stack_direction,
|
||||
AC_CACHE_CHECK(stack direction for C alloca, ac_cv_c_stack_direction,
|
||||
[AC_TRY_RUN([find_stack_direction ()
|
||||
{
|
||||
static char *addr = 0;
|
||||
@ -1148,8 +1104,7 @@ main ()
|
||||
{
|
||||
exit (find_stack_direction() < 0);
|
||||
}], ac_cv_c_stack_direction=1, ac_cv_c_stack_direction=-1,
|
||||
ac_cv_c_stack_direction=0)])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_stack_direction)
|
||||
ac_cv_c_stack_direction=0)])
|
||||
AC_DEFINE_UNQUOTED(STACK_DIRECTION, $ac_cv_c_stack_direction)
|
||||
fi
|
||||
AC_SUBST(ALLOCA)dnl
|
||||
@ -1212,12 +1167,10 @@ else
|
||||
|
||||
AC_CHECK_HEADER(nlist.h,
|
||||
[AC_DEFINE(NLIST_STRUCT)
|
||||
AC_MSG_CHECKING([for n_un in struct nlist])
|
||||
AC_CACHE_VAL(ac_cv_struct_nlist_n_un,
|
||||
AC_CACHE_CHECK([for n_un in struct nlist], ac_cv_struct_nlist_n_un,
|
||||
[AC_TRY_COMPILE([#include <nlist.h>],
|
||||
[struct nlist n; n.n_un.n_name = 0;],
|
||||
ac_cv_struct_nlist_n_un=yes, ac_cv_struct_nlist_n_un=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_nlist_n_un)
|
||||
ac_cv_struct_nlist_n_un=yes, ac_cv_struct_nlist_n_un=no)])
|
||||
if test $ac_cv_struct_nlist_n_un = yes; then
|
||||
AC_DEFINE(NLIST_NAME_UNION)
|
||||
fi
|
||||
@ -1226,15 +1179,14 @@ fi # Do not have getloadavg in system libraries.
|
||||
|
||||
# Some definitions of getloadavg require that the program be installed setgid.
|
||||
dnl FIXME Don't hardwire the path of getloadavg.c in the top-level directory.
|
||||
AC_MSG_CHECKING(whether getloadavg requires setgid)
|
||||
AC_CACHE_VAL(ac_cv_func_getloadavg_setgid,
|
||||
AC_CACHE_CHECK(whether getloadavg requires setgid,
|
||||
ac_cv_func_getloadavg_setgid,
|
||||
[AC_EGREP_CPP([Yowza Am I SETGID yet],
|
||||
[#include "$srcdir/getloadavg.c"
|
||||
#ifdef LDAV_PRIVILEGED
|
||||
Yowza Am I SETGID yet
|
||||
#endif],
|
||||
ac_cv_func_getloadavg_setgid=yes, ac_cv_func_getloadavg_setgid=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_getloadavg_setgid)
|
||||
ac_cv_func_getloadavg_setgid=yes, ac_cv_func_getloadavg_setgid=no)])
|
||||
if test $ac_cv_func_getloadavg_setgid = yes; then
|
||||
NEED_SETGID=true; AC_DEFINE(GETLOADAVG_PRIVILEGED)
|
||||
else
|
||||
@ -1243,8 +1195,7 @@ fi
|
||||
AC_SUBST(NEED_SETGID)dnl
|
||||
|
||||
if test $ac_cv_func_getloadavg_setgid = yes; then
|
||||
AC_MSG_CHECKING(group of /dev/kmem)
|
||||
AC_CACHE_VAL(ac_cv_group_kmem,
|
||||
AC_CACHE_CHECK(group of /dev/kmem, ac_cv_group_kmem,
|
||||
[changequote(, )dnl
|
||||
# On Solaris, /dev/kmem is a symlink. Get info on the real file.
|
||||
ac_ls_output=`ls -lgL /dev/kmem 2>/dev/null`
|
||||
@ -1255,16 +1206,14 @@ AC_CACHE_VAL(ac_cv_group_kmem,
|
||||
s/^.[sSrwx-]* *[0-9]* *\([^0-9]*\) *.*/\1/;
|
||||
/ /s/.* //;p;'`
|
||||
changequote([, ])dnl
|
||||
])dnl
|
||||
])
|
||||
KMEM_GROUP=$ac_cv_group_kmem
|
||||
AC_MSG_RESULT($KMEM_GROUP)
|
||||
fi
|
||||
AC_SUBST(KMEM_GROUP)dnl
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_UTIME_NULL,
|
||||
[AC_MSG_CHECKING(whether utime accepts a null argument)
|
||||
AC_CACHE_VAL(ac_cv_func_utime_null,
|
||||
[AC_CACHE_CHECK(whether utime accepts a null argument, ac_cv_func_utime_null,
|
||||
[rm -f conftestdata; > conftestdata
|
||||
# Sequent interprets utime(file, 0) to mean use start of epoch. Wrong.
|
||||
AC_TRY_RUN([#include <sys/types.h>
|
||||
@ -1276,32 +1225,29 @@ exit(!(stat ("conftestdata", &s) == 0 && utime("conftestdata", (long *)0) == 0
|
||||
&& t.st_mtime - s.st_mtime < 120));
|
||||
}], ac_cv_func_utime_null=yes, ac_cv_func_utime_null=no,
|
||||
ac_cv_func_utime_null=no)
|
||||
rm -f core core.* *.core])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_utime_null)
|
||||
rm -f core core.* *.core])
|
||||
if test $ac_cv_func_utime_null = yes; then
|
||||
AC_DEFINE(HAVE_UTIME_NULL)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_STRCOLL,
|
||||
[AC_MSG_CHECKING(for strcoll)
|
||||
AC_CACHE_VAL(ac_cv_func_strcoll,
|
||||
[AC_CACHE_CHECK(for strcoll, ac_cv_func_strcoll,
|
||||
[AC_TRY_RUN([#include <string.h>
|
||||
main ()
|
||||
{
|
||||
exit (strcoll ("abc", "def") >= 0 ||
|
||||
strcoll ("ABC", "DEF") >= 0 ||
|
||||
strcoll ("123", "456") >= 0);
|
||||
}], ac_cv_func_strcoll=yes, ac_cv_func_strcoll=no, ac_cv_func_strcoll=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_strcoll)
|
||||
}], ac_cv_func_strcoll=yes, ac_cv_func_strcoll=no, ac_cv_func_strcoll=no)])
|
||||
if test $ac_cv_func_strcoll = yes; then
|
||||
AC_DEFINE(HAVE_STRCOLL)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_FUNC_SETVBUF_REVERSED,
|
||||
[AC_MSG_CHECKING(whether setvbuf arguments are reversed)
|
||||
AC_CACHE_VAL(ac_cv_func_setvbuf_reversed,
|
||||
[AC_CACHE_CHECK(whether setvbuf arguments are reversed,
|
||||
ac_cv_func_setvbuf_reversed,
|
||||
[AC_TRY_RUN([#include <stdio.h>
|
||||
/* If setvbuf has the reversed format, exit 0. */
|
||||
main () {
|
||||
@ -1313,8 +1259,7 @@ main () {
|
||||
putc('\r', stdout);
|
||||
exit(0); /* Non-reversed systems segv here. */
|
||||
}], ac_cv_func_setvbuf_reversed=yes, ac_cv_func_setvbuf_reversed=no)
|
||||
rm -f core core.* *.core])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_setvbuf_reversed)
|
||||
rm -f core core.* *.core])
|
||||
if test $ac_cv_func_setvbuf_reversed = yes; then
|
||||
AC_DEFINE(SETVBUF_REVERSED)
|
||||
fi
|
||||
@ -1332,16 +1277,14 @@ AC_CHECK_LIB(intl, strftime, LIBS="-lintl $LIBS")
|
||||
AC_CHECK_FUNC(strftime, [AC_DEFINE(HAVE_STRFTIME)])])
|
||||
|
||||
AC_DEFUN(AC_FUNC_MEMCMP,
|
||||
[AC_MSG_CHECKING(for 8-bit clean memcmp)
|
||||
AC_CACHE_VAL(ac_cv_func_memcmp,
|
||||
[AC_CACHE_CHECK(for 8-bit clean memcmp, ac_cv_func_memcmp,
|
||||
[AC_TRY_RUN([
|
||||
main()
|
||||
{
|
||||
char c0 = 0x40, c1 = 0x80, c2 = 0x81;
|
||||
exit(memcmp(&c0, &c2, 1) < 0 && memcmp(&c1, &c2, 1) < 0 ? 0 : 1);
|
||||
}
|
||||
], ac_cv_func_memcmp=yes, ac_cv_func_memcmp=no, ac_cv_func_memcmp=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_func_memcmp)
|
||||
], ac_cv_func_memcmp=yes, ac_cv_func_memcmp=no, ac_cv_func_memcmp=no)])
|
||||
test $ac_cv_func_memcmp = no && LIBOBJS="$LIBOBJS memcmp.o"
|
||||
AC_SUBST(LIBOBJS)dnl
|
||||
])
|
||||
@ -1351,26 +1294,24 @@ dnl ### Checks for structure members
|
||||
|
||||
|
||||
AC_DEFUN(AC_HEADER_TIME,
|
||||
[AC_MSG_CHECKING([whether time.h and sys/time.h may both be included])
|
||||
AC_CACHE_VAL(ac_cv_header_time,
|
||||
[AC_CACHE_CHECK([whether time.h and sys/time.h may both be included],
|
||||
ac_cv_header_time,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <time.h>],
|
||||
[struct tm *tp;], ac_cv_header_time=yes, ac_cv_header_time=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_header_time)
|
||||
[struct tm *tp;], ac_cv_header_time=yes, ac_cv_header_time=no)])
|
||||
if test $ac_cv_header_time = yes; then
|
||||
AC_DEFINE(TIME_WITH_SYS_TIME)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_TM,
|
||||
[AC_MSG_CHECKING([whether struct tm is in sys/time.h or time.h])
|
||||
AC_CACHE_VAL(ac_cv_struct_tm,
|
||||
[AC_CACHE_CHECK([whether struct tm is in sys/time.h or time.h],
|
||||
ac_cv_struct_tm,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <time.h>],
|
||||
[struct tm *tp; tp->tm_sec;],
|
||||
ac_cv_struct_tm=time.h, ac_cv_struct_tm=sys/time.h)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_tm)
|
||||
ac_cv_struct_tm=time.h, ac_cv_struct_tm=sys/time.h)])
|
||||
if test $ac_cv_struct_tm = sys/time.h; then
|
||||
AC_DEFINE(TM_IN_SYS_TIME)
|
||||
fi
|
||||
@ -1378,17 +1319,14 @@ fi
|
||||
|
||||
AC_DEFUN(AC_STRUCT_TIMEZONE,
|
||||
[AC_REQUIRE([AC_STRUCT_TM])dnl
|
||||
AC_MSG_CHECKING([for tm_zone in struct tm])
|
||||
AC_CACHE_VAL(ac_cv_struct_tm_zone,
|
||||
AC_CACHE_CHECK([for tm_zone in struct tm], ac_cv_struct_tm_zone,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_zone;],
|
||||
ac_cv_struct_tm_zone=yes, ac_cv_struct_tm_zone=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_tm_zone)
|
||||
ac_cv_struct_tm_zone=yes, ac_cv_struct_tm_zone=no)])
|
||||
if test "$ac_cv_struct_tm_zone" = yes; then
|
||||
AC_DEFINE(HAVE_TM_ZONE)
|
||||
else
|
||||
AC_MSG_CHECKING([for tzname])
|
||||
AC_CACHE_VAL(ac_cv_var_tzname,
|
||||
AC_CACHE_CHECK(for tzname, ac_cv_var_tzname,
|
||||
[AC_TRY_LINK(
|
||||
changequote(<<, >>)dnl
|
||||
<<#include <time.h>
|
||||
@ -1396,8 +1334,7 @@ changequote(<<, >>)dnl
|
||||
extern char *tzname[]; /* RS6000 and others reject char **tzname. */
|
||||
#endif>>,
|
||||
changequote([, ])dnl
|
||||
[atoi(*tzname);], ac_cv_var_tzname=yes, ac_cv_var_tzname=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_var_tzname)
|
||||
[atoi(*tzname);], ac_cv_var_tzname=yes, ac_cv_var_tzname=no)])
|
||||
if test $ac_cv_var_tzname = yes; then
|
||||
AC_DEFINE(HAVE_TZNAME)
|
||||
fi
|
||||
@ -1405,12 +1342,10 @@ fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_BLOCKS,
|
||||
[AC_MSG_CHECKING([for st_blocks in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_blocks,
|
||||
[AC_CACHE_CHECK([for st_blocks in struct stat], ac_cv_struct_st_blocks,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_blocks;],
|
||||
ac_cv_struct_st_blocks=yes, ac_cv_struct_st_blocks=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_blocks)
|
||||
ac_cv_struct_st_blocks=yes, ac_cv_struct_st_blocks=no)])
|
||||
if test $ac_cv_struct_st_blocks = yes; then
|
||||
AC_DEFINE(HAVE_ST_BLOCKS)
|
||||
else
|
||||
@ -1420,24 +1355,20 @@ AC_SUBST(LIBOBJS)dnl
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_BLKSIZE,
|
||||
[AC_MSG_CHECKING([for st_blksize in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_blksize,
|
||||
[AC_CACHE_CHECK([for st_blksize in struct stat], ac_cv_struct_st_blksize,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_blksize;],
|
||||
ac_cv_struct_st_blksize=yes, ac_cv_struct_st_blksize=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_blksize)
|
||||
ac_cv_struct_st_blksize=yes, ac_cv_struct_st_blksize=no)])
|
||||
if test $ac_cv_struct_st_blksize = yes; then
|
||||
AC_DEFINE(HAVE_ST_BLKSIZE)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_STRUCT_ST_RDEV,
|
||||
[AC_MSG_CHECKING([for st_rdev in struct stat])
|
||||
AC_CACHE_VAL(ac_cv_struct_st_rdev,
|
||||
[AC_CACHE_CHECK([for st_rdev in struct stat], ac_cv_struct_st_rdev,
|
||||
[AC_TRY_COMPILE([#include <sys/types.h>
|
||||
#include <sys/stat.h>], [struct stat s; s.st_rdev;],
|
||||
ac_cv_struct_st_rdev=yes, ac_cv_struct_st_rdev=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_struct_st_rdev)
|
||||
ac_cv_struct_st_rdev=yes, ac_cv_struct_st_rdev=no)])
|
||||
if test $ac_cv_struct_st_rdev = yes; then
|
||||
AC_DEFINE(HAVE_ST_RDEV)
|
||||
fi
|
||||
@ -1449,17 +1380,14 @@ dnl ### Checks for compiler characteristics
|
||||
|
||||
AC_DEFUN(AC_C_CROSS,
|
||||
[# If we cannot run a trivial program, we must be cross compiling.
|
||||
AC_MSG_CHECKING(whether cross-compiling)
|
||||
AC_CACHE_VAL(ac_cv_c_cross,
|
||||
AC_CACHE_CHECK(whether cross-compiling, ac_cv_c_cross,
|
||||
[AC_TRY_RUN([main(){return(0);}],
|
||||
ac_cv_c_cross=no, ac_cv_c_cross=yes, ac_cv_c_cross=yes)])dnl
|
||||
ac_cv_c_cross=no, ac_cv_c_cross=yes, ac_cv_c_cross=yes)])
|
||||
cross_compiling=$ac_cv_c_cross
|
||||
AC_MSG_RESULT($ac_cv_c_cross)
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_CHAR_UNSIGNED,
|
||||
[AC_MSG_CHECKING(whether char is unsigned)
|
||||
AC_CACHE_VAL(ac_cv_c_char_unsigned,
|
||||
[AC_CACHE_CHECK(whether char is unsigned, ac_cv_c_char_unsigned,
|
||||
[if test "$GCC" = yes; then
|
||||
# GCC predefines this symbol on systems where it applies.
|
||||
AC_EGREP_CPP(yes,
|
||||
@ -1476,16 +1404,14 @@ AC_TRY_RUN(
|
||||
main() {
|
||||
volatile char c = 255; exit(c < 0);
|
||||
}], ac_cv_c_char_unsigned=yes, ac_cv_c_char_unsigned=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_char_unsigned)
|
||||
fi])
|
||||
if test $ac_cv_c_char_unsigned = yes && test "$GCC" != yes; then
|
||||
AC_DEFINE(__CHAR_UNSIGNED__)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_LONG_DOUBLE,
|
||||
[AC_MSG_CHECKING(for long double)
|
||||
AC_CACHE_VAL(ac_cv_c_long_double,
|
||||
[AC_CACHE_CHECK(for long double, ac_cv_c_long_double,
|
||||
[if test "$GCC" = yes; then
|
||||
ac_cv_c_long_double=yes
|
||||
else
|
||||
@ -1495,8 +1421,7 @@ long double foo = 0.0;
|
||||
/* On Ultrix 4.3 cc, long double is 4 and double is 8. */
|
||||
exit(sizeof(long double) < sizeof(double)); }],
|
||||
ac_cv_c_long_double=yes, ac_cv_c_long_double=no)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_long_double)
|
||||
fi])
|
||||
if test $ac_cv_c_long_double = yes; then
|
||||
AC_DEFINE(HAVE_LONG_DOUBLE)
|
||||
fi
|
||||
@ -1519,8 +1444,7 @@ AC_TRY_RUN([main() { exit(sizeof(long int) != 8); }],
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_C_BIGENDIAN,
|
||||
[AC_MSG_CHECKING(whether byte ordering is bigendian)
|
||||
AC_CACHE_VAL(ac_cv_c_bigendian,
|
||||
[AC_CACHE_CHECK(whether byte ordering is bigendian, ac_cv_c_bigendian,
|
||||
[ac_cv_c_bigendian=unknown
|
||||
# See if sys/param.h defines the BYTE_ORDER macro.
|
||||
AC_TRY_COMPILE([#include <sys/types.h>
|
||||
@ -1544,8 +1468,7 @@ AC_TRY_RUN([main () {
|
||||
u.l = 1;
|
||||
exit (u.c[sizeof (long) - 1] == 1);
|
||||
}], ac_cv_c_bigendian=no, ac_cv_c_bigendian=yes)
|
||||
fi])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_bigendian)
|
||||
fi])
|
||||
if test $ac_cv_c_bigendian = yes; then
|
||||
AC_DEFINE(WORDS_BIGENDIAN)
|
||||
fi
|
||||
@ -1555,14 +1478,12 @@ dnl Do nothing if the compiler accepts the inline keyword.
|
||||
dnl Otherwise define inline to __inline__ or __inline if one of those work,
|
||||
dnl otherwise define inline to be empty.
|
||||
AC_DEFUN(AC_C_INLINE,
|
||||
[AC_MSG_CHECKING([for inline])
|
||||
AC_CACHE_VAL(ac_cv_c_inline,
|
||||
[AC_CACHE_CHECK([for inline], ac_cv_c_inline,
|
||||
[ac_cv_c_inline=no
|
||||
for ac_kw in inline __inline__ __inline; do
|
||||
AC_TRY_COMPILE(, [} $ac_kw foo() {], [ac_cv_c_inline=$ac_kw; break])
|
||||
done
|
||||
])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_inline)
|
||||
])
|
||||
case "$ac_cv_c_inline" in
|
||||
inline | yes) ;;
|
||||
no) AC_DEFINE(inline, ) ;;
|
||||
@ -1573,8 +1494,7 @@ esac
|
||||
AC_DEFUN(AC_C_CONST,
|
||||
[dnl This message is consistent in form with the other checking messages,
|
||||
dnl and with the result message.
|
||||
AC_MSG_CHECKING([for working const])
|
||||
AC_CACHE_VAL(ac_cv_c_const,
|
||||
AC_CACHE_CHECK([for working const], ac_cv_c_const,
|
||||
[AC_TRY_COMPILE(,
|
||||
changequote(<<, >>)dnl
|
||||
<<
|
||||
@ -1621,8 +1541,7 @@ ccp = (char const *const *) p;
|
||||
}
|
||||
>>,
|
||||
changequote([, ])dnl
|
||||
ac_cv_c_const=yes, ac_cv_c_const=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_c_const)
|
||||
ac_cv_c_const=yes, ac_cv_c_const=no)])
|
||||
if test $ac_cv_c_const = no; then
|
||||
AC_DEFINE(const, )
|
||||
fi
|
||||
@ -1639,8 +1558,7 @@ dnl ### Checks for operating system services
|
||||
AC_DEFUN(AC_SYS_INTERPRETER,
|
||||
[# Pull the hash mark out of the macro call to avoid m4 problems.
|
||||
ac_msg="whether #! works in shell scripts"
|
||||
AC_MSG_CHECKING($ac_msg)
|
||||
AC_CACHE_VAL(ac_cv_sys_interpreter,
|
||||
AC_CACHE_CHECK($ac_msg, ac_cv_sys_interpreter,
|
||||
[echo '#! /bin/cat
|
||||
exit 69
|
||||
' > conftest
|
||||
@ -1651,8 +1569,7 @@ if test $? -ne 69; then
|
||||
else
|
||||
ac_cv_sys_interpreter=no
|
||||
fi
|
||||
rm -f conftest])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_interpreter)
|
||||
rm -f conftest])
|
||||
])
|
||||
|
||||
define(AC_HAVE_POUNDBANG,
|
||||
@ -1660,8 +1577,7 @@ define(AC_HAVE_POUNDBANG,
|
||||
])m4exit(4)])
|
||||
|
||||
AC_DEFUN(AC_SYS_LONG_FILE_NAMES,
|
||||
[AC_MSG_CHECKING(for long file names)
|
||||
AC_CACHE_VAL(ac_cv_sys_long_file_names,
|
||||
[AC_CACHE_CHECK(for long file names, ac_cv_sys_long_file_names,
|
||||
[ac_cv_sys_long_file_names=yes
|
||||
# Test for long file names in all the places we know might matter:
|
||||
# . the current directory, where building will happen
|
||||
@ -1683,16 +1599,14 @@ for ac_dir in `eval echo . /tmp /var/tmp /usr/tmp $prefix/lib $exec_prefix/lib`
|
||||
break
|
||||
fi
|
||||
rm -f $ac_dir/conftest9012345 $ac_dir/conftest9012346 2>/dev/null
|
||||
done])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_long_file_names)
|
||||
done])
|
||||
if test $ac_cv_sys_long_file_names = yes; then
|
||||
AC_DEFINE(HAVE_LONG_FILE_NAMES)
|
||||
fi
|
||||
])
|
||||
|
||||
AC_DEFUN(AC_SYS_RESTARTABLE_SYSCALLS,
|
||||
[AC_MSG_CHECKING(for restartable system calls)
|
||||
AC_CACHE_VAL(ac_cv_sys_restartable_syscalls,
|
||||
[AC_CACHE_CHECK(for restartable system calls, ac_cv_sys_restartable_syscalls,
|
||||
[AC_TRY_RUN(
|
||||
[/* Exit 0 (true) if wait returns something other than -1,
|
||||
i.e. the pid of the child, which means that wait was restarted
|
||||
@ -1708,8 +1622,7 @@ main () {
|
||||
if (status == -1) wait(&i);
|
||||
exit (status == -1);
|
||||
}
|
||||
], ac_cv_sys_restartable_syscalls=yes, ac_cv_sys_restartable_syscalls=no)])dnl
|
||||
AC_MSG_RESULT($ac_cv_sys_restartable_syscalls)
|
||||
], ac_cv_sys_restartable_syscalls=yes, ac_cv_sys_restartable_syscalls=no)])
|
||||
if test $ac_cv_sys_restartable_syscalls = yes; then
|
||||
AC_DEFINE(HAVE_RESTARTABLE_SYSCALLS)
|
||||
fi
|
||||
|
Loading…
x
Reference in New Issue
Block a user