Mercurial > hg > octave-lojdl > gnulib-hg
changeset 1441:b80894839f0d
.
author | Jim Meyering <jim@meyering.net> |
---|---|
date | Sat, 25 Jul 1998 13:16:38 +0000 |
parents | ba6fdbf593bb |
children | 1223381eb847 |
files | m4/utime.m4 m4/utimes.m4 |
diffstat | 2 files changed, 52 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/m4/utime.m4 @@ -0,0 +1,18 @@ +#serial 1 + +dnl From Jim Meyering +dnl Replace the utime function on systems that need it. + +dnl FIXME + +AC_DEFUN(jm_FUNC_UTIME, +[ + AC_CHECK_HEADERS(utime.h) + AC_REQUIRE([jm_STRUCT_UTIMBUF]) + AC_REQUIRE([AC_FUNC_UTIME_NULL]) + + if test $ac_cv_func_utime_null = no; then + jm_FUNC_UTIMES_NULL + AC_REPLACE_FUNCS(utime) + fi +])
new file mode 100644 --- /dev/null +++ b/m4/utimes.m4 @@ -0,0 +1,34 @@ +#serial 1 + +dnl Shamelessly cloned from acspecific.m4's AC_FUNC_UTIME_NULL. + +AC_DEFUN(jm_FUNC_UTIMES_NULL, +[AC_CACHE_CHECK(whether utimes accepts a null argument, ac_cv_func_utimes_null, +[rm -f conftestdata; > conftestdata +AC_TRY_RUN([#include <sys/types.h> +#include <sys/stat.h> +main() { +struct stat s, t; +exit(!(stat ("conftestdata", &s) == 0 && utimes("conftestdata", (long *)0) == 0 +&& stat("conftestdata", &t) == 0 && t.st_mtime >= s.st_mtime +&& t.st_mtime - s.st_mtime < 120)); +}], ac_cv_func_utimes_null=yes, ac_cv_func_utimes_null=no, + ac_cv_func_utimes_null=no) +rm -f core core.* *.core]) + + if test $ac_cv_func_utimes_null = yes; then + if test x = y; then + # This code is deliberately never run via ./configure. + # FIXME: this is a hack to make autoheader put the corresponding + # HAVE_* undef for this symbol in config.h.in. This saves me the + # trouble of having to maintain the #undef in acconfig.h manually. + AC_CHECK_FUNCS(UTIMES_NULL) + fi + # Defining it this way (rather than via AC_DEFINE) short-circuits the + # autoheader check -- autoheader doesn't know it's already been taken + # care of by the hack above. + ac_kludge=HAVE_UTIMES_NULL + AC_DEFINE_UNQUOTED($ac_kludge) + fi + ] +)