Mercurial > hg > octave-kai > gnulib-hg
changeset 889:e9739f52a325
.
author | Jim Meyering <jim@meyering.net> |
---|---|
date | Tue, 11 Mar 1997 05:02:11 +0000 |
parents | e40500db9101 |
children | 43f77e7f64cb |
files | m4/chown.m4 |
diffstat | 1 files changed, 40 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/m4/chown.m4 @@ -0,0 +1,40 @@ +#serial 1 + +dnl From Jim Meyering. +dnl If you use this macro in a package, you should +dnl add the following two lines to acconfig.h: +dnl /* Define to rpl_chown if the replacement function should be used. */ +dnl #undef chown +dnl + +AC_DEFUN(jm_FUNC_CHOWN, +[AC_REQUIRE([AC_TYPE_UID_T])dnl + test -z "$ac_cv_header_unistd_h" \ + && AC_CHECK_HEADERS(unistd.h) + AC_CACHE_CHECK([for working chown], jm_cv_func_working_chown, + [AC_TRY_RUN([ +# include <sys/types.h> +# include <fcntl.h> +# ifdef HAVE_UNISTD_H +# include <unistd.h> +# endif + + int + main () + { + char *f = "conftestchown"; + if (creat (f, 0600) < 0) + exit (1); + exit (chown (f, (gid_t) -1, (uid_t) -1) == -1 ? 1 : 0); + } + ], + jm_cv_func_working_chown=yes, + jm_cv_func_working_chown=no, + dnl When crosscompiling, assume chown is broken. + jm_cv_func_working_chown=no) + ]) + if test $jm_cv_func_working_chown = no; then + LIBOBJS="$LIBOBJS chown.o" + AC_DEFINE_UNQUOTED(chown, rpl_chown) + fi +])