X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fjm-macros.m4;h=5e85bb12fa2722ff4c33aa5dbbfc29ea853d9fbd;hb=bfdbfdb2f435609d131a6f60591e531be27bfc0f;hp=551c9fdb17e1c6929abce3a66486d5665d81c922;hpb=8387f58fd6fb01091f36b8919b1a225d4ae1e7f5;p=gnulib.git diff --git a/m4/jm-macros.m4 b/m4/jm-macros.m4 index 551c9fdb1..5e85bb12f 100644 --- a/m4/jm-macros.m4 +++ b/m4/jm-macros.m4 @@ -1,26 +1,40 @@ -#serial 7 +#serial 12 dnl Misc type-related macros for fileutils, sh-utils, textutils. AC_DEFUN(jm_MACROS, [ - AC_PREREQ(2.14.1) dnl Minimum Autoconf version required. + AC_PREREQ(2.14a) GNU_PACKAGE="GNU $PACKAGE" AC_DEFINE_UNQUOTED(GNU_PACKAGE, "$GNU_PACKAGE", - [The concatenation of the strings \`GNU ', and PACKAGE.]) + [The concatenation of the strings `GNU ', and PACKAGE.]) AC_SUBST(GNU_PACKAGE) dnl This macro actually runs replacement code. See isc-posix.m4. AC_REQUIRE([AC_ISC_POSIX])dnl + AC_CHECK_HEADERS(string.h fcntl.h limits.h sys/time.h sys/timeb.h \ + errno.h unistd.h stdlib.h \ + sys/param.h sys/statfs.h sys/fstyp.h mnttab.h mntent.h utime.h \ + sys/statvfs.h sys/vfs.h sys/mntent.h sys/mount.h sys/filsys.h \ + sys/fs_types.h \ + sys/acl.h \ + sys/wait.h sys/ioctl.h sys/fs/s5param.h termios.h values.h) + + AC_CHECK_HEADERS(fcntl.h fenv.h float.h limits.h netdb.h \ + stdlib.h string.h sys/param.h \ + sys/socket.h sys/systeminfo.h sys/time.h sys/timeb.h \ + syslog.h unistd.h paths.h termios.h) + jm_INCLUDED_REGEX([lib/regex.c]) + AC_REQUIRE([jm_BISON]) AC_REQUIRE([jm_ASSERT]) AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) - AC_REQUIRE([jm_STRUCT_UTIMBUF]) - AC_REQUIRE([jm_STRUCT_DIRENT_D_TYPE]) - AC_REQUIRE([jm_STRUCT_DIRENT_D_INO]) + AC_REQUIRE([jm_CHECK_TYPE_STRUCT_UTIMBUF]) + AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_TYPE]) + AC_REQUIRE([jm_CHECK_TYPE_STRUCT_DIRENT_D_INO]) AC_REQUIRE([jm_CHECK_DECLS]) AC_REQUIRE([jm_PREREQ]) @@ -29,18 +43,44 @@ AC_DEFUN(jm_MACROS, AC_REQUIRE([jm_FUNC_CHOWN]) AC_REQUIRE([jm_FUNC_MKTIME]) AC_REQUIRE([jm_FUNC_LSTAT]) + AC_REQUIRE([jm_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK]) AC_REQUIRE([jm_FUNC_STAT]) AC_REQUIRE([jm_FUNC_REALLOC]) AC_REQUIRE([jm_FUNC_MALLOC]) + AC_REQUIRE([jm_FUNC_STRERROR_R]) + AC_REQUIRE([jm_FUNC_NANOSLEEP]) AC_REQUIRE([jm_FUNC_READDIR]) AC_REQUIRE([jm_FUNC_MEMCMP]) AC_REQUIRE([jm_FUNC_GLIBC_UNLOCKED_IO]) AC_REQUIRE([jm_FUNC_FNMATCH]) + AC_REQUIRE([jm_FUNC_GROUP_MEMBER]) + AC_REQUIRE([jm_FUNC_PUTENV]) AC_REQUIRE([jm_AFS]) AC_REQUIRE([jm_AC_PREREQ_XSTRTOUMAX]) + AC_REQUIRE([jm_AC_FUNC_LINK_FOLLOWS_SYMLINK]) + AC_REQUIRE([AM_FUNC_ERROR_AT_LINE]) + AC_REQUIRE([jm_FUNC_GNU_STRFTIME]) + AC_REQUIRE([jm_FUNC_MKTIME]) + + AC_REQUIRE([jm_FUNC_GETGROUPS]) + test -n "$GETGROUPS_LIB" && LIBS="$GETGROUPS_LIB $LIBS" + + AC_REQUIRE([AC_FUNC_VPRINTF]) + AC_REQUIRE([AC_FUNC_ALLOCA]) + AC_REQUIRE([AM_FUNC_GETLOADAVG]) + AC_REQUIRE([jm_SYS_PROC_UPTIME]) + AC_REPLACE_FUNCS(strcasecmp strncasecmp) AC_REPLACE_FUNCS(dup2) - AC_REPLACE_FUNCS(memchr) + AC_REPLACE_FUNCS(gethostname getusershell) + AC_REPLACE_FUNCS(stime strcspn stpcpy strstr strtol strtoul) + AC_REPLACE_FUNCS(strpbrk) + AC_REPLACE_FUNCS(euidaccess memcmp mkdir rmdir rpmatch strndup strverscmp) + + dnl used by e.g. intl/*domain.c and lib/canon-host.c + AC_REPLACE_FUNCS(strdup) + + AC_REPLACE_FUNCS(memchr memmove memcpy memset) AC_CHECK_FUNCS(getpagesize) # By default, argmatch should fail calling usage (1). @@ -50,12 +90,45 @@ AC_DEFUN(jm_MACROS, [Define to the declaration of the xargmatch failure function.]) dnl Used to define SETVBUF in sys2.h. + dnl This evokes the following warning from autoconf: + dnl ...: warning: AC_TRY_RUN called without default to allow cross compiling AC_FUNC_SETVBUF_REVERSED + # 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) + AC_CHECK_FUNCS(gettimeofday) + + AM_FUNC_GETLINE + if test $am_cv_func_working_getline != yes; then + AC_CHECK_FUNCS(getdelim) + fi + ]) AC_DEFUN(jm_CHECK_ALL_TYPES, [ + dnl Checks for typedefs, structures, and compiler characteristics. + AC_C_BIGENDIAN + AC_C_CONST + AC_C_INLINE + AC_C_LONG_DOUBLE + + AC_HEADER_DIRENT + AC_HEADER_STDC + AC_CHECK_MEMBERS((struct stat.st_blksize)) + AC_STRUCT_ST_BLOCKS + + AC_STRUCT_TM + AC_HEADER_TIME + AC_STRUCT_TIMEZONE + AC_HEADER_STAT + AC_STRUCT_ST_MTIM_NSEC + AC_STRUCT_ST_DM_MODE + AC_REQUIRE([jm_CHECK_TYPE_STRUCT_TIMESPEC]) + AC_TYPE_GETGROUPS AC_TYPE_MODE_T AC_TYPE_OFF_T @@ -64,7 +137,11 @@ AC_DEFUN(jm_CHECK_ALL_TYPES, AC_TYPE_SIZE_T AC_TYPE_UID_T AC_CHECK_TYPE(ino_t, unsigned long) + + dnl This relies on the fact that autoconf 2.14a's implementation of + dnl AC_CHECK_TYPE checks includes unistd.h. AC_CHECK_TYPE(ssize_t, int) + AC_REQUIRE([jm_AC_TYPE_UINTMAX_T]) AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) ])