diff options
author | Jim Meyering <jim@meyering.net> | 1997-09-02 01:46:30 +0000 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 1997-09-02 01:46:30 +0000 |
commit | 262b5c6bb69f30a015df1e73e8f75421a01cd587 (patch) | |
tree | dc1dd0f4131422d7ef6bd937b035372efd9dbd01 | |
parent | dbc71f8be4648242efc2451be2aa7c4c0adfc324 (diff) | |
download | coreutils-262b5c6bb69f30a015df1e73e8f75421a01cd587.tar.xz |
.
-rw-r--r-- | m4/stat.m4 | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/m4/stat.m4 b/m4/stat.m4 new file mode 100644 index 000000000..6ac3e02e3 --- /dev/null +++ b/m4/stat.m4 @@ -0,0 +1,38 @@ +#serial 1 + +dnl From Jim Meyering. +dnl Determine whether stat has the bug that it succeeds when given the +dnl zero-length file name argument. The stat from SunOS4.1.4 does this. +dnl +dnl If it doesn't, arrange to use the replacement function. +dnl +dnl If you use this macro in a package, you should +dnl add the following two lines to acconfig.h: +dnl /* Define to rpl_stat if the replacement function should be used. */ +dnl #undef stat +dnl + +AC_DEFUN(jm_FUNC_STAT, +[ + AC_CACHE_CHECK([for working stat], jm_cv_func_working_stat, + [AC_TRY_RUN([ +# include <sys/types.h> +# include <sys/stat.h> + + int + main () + { + struct stat sbuf; + exit (stat ("", &sbuf) == 0 ? 1 : 0); + } + ], + jm_cv_func_working_stat=yes, + jm_cv_func_working_stat=no, + dnl When crosscompiling, assume stat is broken. + jm_cv_func_working_stat=no) + ]) + if test $jm_cv_func_working_stat = no; then + LIBOBJS="$LIBOBJS stat.o" + AC_DEFINE_UNQUOTED(stat, rpl_stat) + fi +]) |