X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fjm-macros.m4;h=41130aa1764f9dd801dc14e9a1698767a064825b;hb=7d2bfd12c67cee6eeeff51d049945e79ca8ee4bc;hp=d60f2d53754de33e6e9e7dced6c11d44a449f576;hpb=e562e7a2371a48a0691310c10622e3c5e76fbe1b;p=gnulib.git diff --git a/m4/jm-macros.m4 b/m4/jm-macros.m4 index d60f2d537..41130aa17 100644 --- a/m4/jm-macros.m4 +++ b/m4/jm-macros.m4 @@ -1,4 +1,4 @@ -#serial 14 +#serial 17 dnl Misc type-related macros for fileutils, sh-utils, textutils. @@ -6,10 +6,6 @@ AC_DEFUN(jm_MACROS, [ AC_PREREQ(2.14a) - # Kludge to work around bug in latest cvs automake. - # FIXME: remove this directive once the bug is fixed. - AC_CONFIG_AUX_DIR(.) - GNU_PACKAGE="GNU $PACKAGE" AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE", [The concatenation of the strings `GNU ', and PACKAGE.]) @@ -20,7 +16,7 @@ AC_DEFUN(jm_MACROS, AC_SUBST(MAN) AC_SUBST(DF_PROG) - # This macro actually runs replacement code. See isc-posix.m4. + dnl This macro actually runs replacement code. See isc-posix.m4. AC_REQUIRE([AC_ISC_POSIX])dnl AC_CHECK_HEADERS( \ @@ -74,6 +70,7 @@ AC_DEFUN(jm_MACROS, AC_REQUIRE([jm_PREREQ]) AC_REQUIRE([jm_FUNC_LCHOWN]) + AC_REQUIRE([fetish_FUNC_RMDIR_NOTEMPTY]) AC_REQUIRE([jm_FUNC_CHOWN]) AC_REQUIRE([jm_FUNC_MKTIME]) AC_REQUIRE([jm_FUNC_LSTAT]) @@ -111,6 +108,8 @@ AC_DEFUN(jm_MACROS, AC_REPLACE_FUNCS(stime strcspn stpcpy strstr strtol strtoul) AC_REPLACE_FUNCS(strpbrk) AC_REPLACE_FUNCS(euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp) + AC_REPLACE_FUNCS(atexit) + AC_REPLACE_FUNCS(strnlen) dnl used by e.g. intl/*domain.c and lib/canon-host.c AC_REPLACE_FUNCS(strdup) @@ -132,8 +131,16 @@ AC_DEFUN(jm_MACROS, # used by sleep and shred # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. - AC_SEARCH_LIBS(clock_gettime, [rt posix4]) - AC_CHECK_FUNCS(clock_gettime) + + # Save and restore LIBS so e.g., -lrt, isn't added to it. Otherwise, *all* + # programs in the package would end up linked with that potentially-shared + # library, inducing unnecessary run-time overhead. + fetish_saved_libs=$LIBS + AC_SEARCH_LIBS(clock_gettime, [rt posix4], + [LIB_CLOCK_GETTIME=$ac_cv_search_clock_gettime]) + AC_SUBST(LIB_CLOCK_GETTIME) + AC_CHECK_FUNCS(clock_gettime) + LIBS=$fetish_saved_libs AC_CHECK_FUNCS(gettimeofday) AC_REQUIRE([AC_FUNC_CLOSEDIR_VOID]) @@ -196,8 +203,25 @@ AC_DEFUN(jm_MACROS, ]) +# This macro must be invoked before any tests that run the compiler. AC_DEFUN(jm_CHECK_ALL_TYPES, [ + # Emit this code into config.h.in. + # The ifndef is to avoid redefinition warnings. + AH_VERBATIM([_GNU_SOURCE], [#ifndef _GNU_SOURCE +# define _GNU_SOURCE +#endif]) + + dnl This test must come as early as possible after the compiler configuration + dnl tests, because the choice of the file model can (in principle) affect + dnl whether functions and headers are available, whether they work, etc. + AC_REQUIRE([AC_SYS_LARGEFILE]) + + dnl This test must precede tests of compiler characteristics like + dnl that for the inline keyword, since it may change the degree to + dnl which the compiler supports such features. + AC_REQUIRE([AM_C_PROTOTYPES]) + dnl Checks for typedefs, structures, and compiler characteristics. AC_REQUIRE([AC_C_BIGENDIAN]) AC_REQUIRE([AC_PROG_CC_STDC]) @@ -208,7 +232,9 @@ AC_DEFUN(jm_CHECK_ALL_TYPES, AC_REQUIRE([AC_HEADER_DIRENT]) AC_REQUIRE([AC_HEADER_STDC]) - AC_CHECK_MEMBERS((struct stat.st_blksize)) + AC_CHECK_MEMBERS((struct stat.st_blksize),,,[$ac_includes_default +#include + ]) AC_REQUIRE([AC_STRUCT_ST_BLOCKS]) AC_REQUIRE([AC_STRUCT_TM])