changeset 15462:30ed0c4414b5

fchdir: Start to remove gl_REPLACE_* idiom. * m4/fchdir.m4 (gl_TEST_FCHDIR): New macro. (gl_FUNC_FCHDIR): Invoke it.
author Bruno Haible <bruno@clisp.org>
date Mon, 25 Jul 2011 23:23:14 +0200
parents f8d00d05e879
children d4d986a874bd
files ChangeLog m4/fchdir.m4
diffstat 2 files changed, 19 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-07-25  Bruno Haible  <bruno@clisp.org>
+
+	fchdir: Start to remove gl_REPLACE_* idiom.
+	* m4/fchdir.m4 (gl_TEST_FCHDIR): New macro.
+	(gl_FUNC_FCHDIR): Invoke it.
+
 2011-07-25  Paul Eggert  <eggert@cs.ucla.edu>
 
 	* lib/ftell.c (ftell): Comment out cast.
--- a/m4/fchdir.m4
+++ b/m4/fchdir.m4
@@ -1,4 +1,4 @@
-# fchdir.m4 serial 16
+# fchdir.m4 serial 17
 dnl Copyright (C) 2006-2011 Free Software Foundation, Inc.
 dnl This file is free software; the Free Software Foundation
 dnl gives unlimited permission to copy and/or distribute it,
@@ -15,9 +15,8 @@
     HAVE_DECL_FCHDIR=0
   fi
 
-  AC_CHECK_FUNCS_ONCE([fchdir])
-  if test $ac_cv_func_fchdir = no; then
-    HAVE_FCHDIR=0
+  AC_REQUIRE([gl_TEST_FCHDIR])
+  if test $HAVE_FCHDIR = 0; then
     AC_LIBOBJ([fchdir])
     gl_PREREQ_FCHDIR
     AC_DEFINE([REPLACE_FCHDIR], [1],
@@ -48,5 +47,15 @@
   fi
 ])
 
+# Determine whether to use the overrides in lib/fchdir.c.
+AC_DEFUN([gl_TEST_FCHDIR],
+[
+  AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+  AC_CHECK_FUNCS_ONCE([fchdir])
+  if test $ac_cv_func_fchdir = no; then
+    HAVE_FCHDIR=0
+  fi
+])
+
 # Prerequisites of lib/fchdir.c.
 AC_DEFUN([gl_PREREQ_FCHDIR], [:])