openat: Respect rules for use of AC_LIBOBJ.
authorBruno Haible <bruno@clisp.org>
Sat, 21 May 2011 14:48:06 +0000 (16:48 +0200)
committerBruno Haible <bruno@clisp.org>
Wed, 15 Jun 2011 22:06:35 +0000 (00:06 +0200)
* m4/openat.m4 (gl_FUNC_OPENAT): Call AC_CHECK_FUNCS instead of
AC_REPLACE_FUNCS. Move AC_LIBOBJ invocations from here...
* modules/openat (configure.ac): ... to here.

ChangeLog
m4/openat.m4
modules/openat

index 77ea926f582d190f525cb2ba31ec79d1b8097cb5..26513d52498c46556e395a47a20e1fce6e4d3fcb 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2011-05-21  Bruno Haible  <bruno@clisp.org>
+
+       openat: Respect rules for use of AC_LIBOBJ.
+       * m4/openat.m4 (gl_FUNC_OPENAT): Call AC_CHECK_FUNCS instead of
+       AC_REPLACE_FUNCS. Move AC_LIBOBJ invocations from here...
+       * modules/openat (configure.ac): ... to here.
+
 2011-05-21  Bruno Haible  <bruno@clisp.org>
 
        obstack-printf*: Move AC_LIBOBJ invocations to module description.
index 5db80301ecf142e045c5f2413c1068ef15117bb9..affb11455586a8c834c72ce11db1bc4518bea828 100644 (file)
@@ -1,4 +1,4 @@
-# serial 32
+# serial 33
 # See if we need to use our replacement for Solaris' openat et al functions.
 
 dnl Copyright (C) 2004-2011 Free Software Foundation, Inc.
@@ -22,27 +22,22 @@ AC_DEFUN([gl_FUNC_OPENAT],
   GNULIB_FCHOWNAT=1
   GNULIB_UNLINKAT=1
 
-  AC_LIBOBJ([openat-proc])
   AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
   AC_CHECK_FUNCS_ONCE([lchmod])
-  AC_REPLACE_FUNCS([fchmodat fstatat mkdirat openat unlinkat])
+  AC_CHECK_FUNCS([fchmodat fstatat mkdirat openat unlinkat])
   AC_REQUIRE([gl_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK])
   AC_REQUIRE([gl_FUNC_UNLINK])
   case $ac_cv_func_openat+$gl_cv_func_lstat_dereferences_slashed_symlink in
   yes+yes)
     # GNU/Hurd has unlinkat, but it has the same bug as unlink.
     if test $REPLACE_UNLINK = 1; then
-      AC_LIBOBJ([unlinkat])
       REPLACE_UNLINKAT=1
     fi ;;
   yes+*)
     # Solaris 9 has *at functions, but uniformly mishandles trailing
     # slash in all of them.
-    AC_LIBOBJ([openat])
     REPLACE_OPENAT=1
-    AC_LIBOBJ([fstatat])
     REPLACE_FSTATAT=1
-    AC_LIBOBJ([unlinkat])
     REPLACE_UNLINKAT=1
     ;;
   *)
@@ -158,9 +153,6 @@ AC_DEFUN([gl_FUNC_FCHOWNAT],
        REPLACE_FCHOWNAT=1
      fi],
     [HAVE_FCHOWNAT=0])
-  if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then
-    AC_LIBOBJ([fchownat])
-  fi
 ])
 
 AC_DEFUN([gl_PREREQ_OPENAT],
index c0cb83405c73a7e934f564d03f86e6309988a6e6..b9ce4d46ab1accd47e82b911f74374917a314e77 100644 (file)
@@ -38,6 +38,25 @@ unlink          [test $REPLACE_UNLINKAT = 1]
 
 configure.ac:
 gl_FUNC_OPENAT
+AC_LIBOBJ([openat-proc])
+if test $HAVE_FCHMODAT = 0; then
+  AC_LIBOBJ([fchmodat])
+fi
+if test $ac_cv_func_fstatat = no || test $REPLACE_FSTATAT = 1; then
+  AC_LIBOBJ([fstatat])
+fi
+if test $HAVE_MKDIRAT = 0; then
+  AC_LIBOBJ([mkdirat])
+fi
+if test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1; then
+  AC_LIBOBJ([openat])
+fi
+if test $ac_cv_func_unlinkat = no || test $REPLACE_UNLINKAT = 1; then
+  AC_LIBOBJ([unlinkat])
+fi
+if test $HAVE_FCHOWNAT = 0 || test $REPLACE_FCHOWNAT = 1; then
+  AC_LIBOBJ([fchownat])
+fi
 
 Makefile.am: