* lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 3 Nov 2006 23:17:27 +0000 (23:17 +0000)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 3 Nov 2006 23:17:27 +0000 (23:17 +0000)
(CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
* m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
Check for functions and headers just once.
Check for declaration of canonicalize_file_name.
Define PROVIDE_CANONICALIZE_FILENAME_MODE.

ChangeLog
lib/canonicalize.h
m4/canonicalize.m4

index ea99ee0..3dc6ed0 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2006-11-03  Paul Eggert  <eggert@cs.ucla.edu>
+
+       * lib/canonicalize.h: (canonicalize_mode_t, CAN_EXISTING):
+       (CAN_ALL_BUT_LAST, CAN_MISSING, canonicalize_filename_mode):
+       Define only if PROVIDE_CANONICALIZE_FILENAME_MODE is defined.
+       * m4/canonicalize.m4 (AC_FUNC_CANONICALIZE_FILE_NAME):
+       Check for functions and headers just once.
+       Check for declaration of canonicalize_file_name.
+       Define PROVIDE_CANONICALIZE_FILENAME_MODE.
+
 2006-11-02  Charles Wilson  <cygwin@cwilson.fastmail.fm>
 
        * gnulib-tool (func_import): Fix typo in actioncmd.
index 4cae3c5..deaf27f 100644 (file)
@@ -1,5 +1,5 @@
 /* Return the canonical absolute name of a given file.
-   Copyright (C) 1996-2005 Free Software Foundation, Inc.
+   Copyright (C) 1996-2006 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -19,6 +19,7 @@
 #ifndef CANONICALIZE_H_
 # define CANONICALIZE_H_
 
+# ifdef PROVIDE_CANONICALIZE_FILENAME_MODE
 enum canonicalize_mode_t
   {
     /* All components must exist.  */
@@ -33,8 +34,11 @@ enum canonicalize_mode_t
 typedef enum canonicalize_mode_t canonicalize_mode_t;
 
 char *canonicalize_filename_mode (const char *, canonicalize_mode_t);
+# endif
 
-# if !HAVE_CANONICALIZE_FILE_NAME
+# if HAVE_DECL_CANONICALIZE_FILE_NAME
+#  include <stdlib.h>
+# else
 char *canonicalize_file_name (const char *);
 # endif
 
index 8b10a9c..b488bb5 100644 (file)
@@ -1,6 +1,6 @@
-#serial 10
+#serial 11
 
-# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
@@ -11,6 +11,9 @@ AC_DEFUN([AC_FUNC_CANONICALIZE_FILE_NAME],
   [
     AC_LIBOBJ([canonicalize])
 
-    AC_CHECK_HEADERS(sys/param.h)
-    AC_CHECK_FUNCS(resolvepath canonicalize_file_name)
+    AC_CHECK_HEADERS_ONCE([sys/param.h])
+    AC_CHECK_DECLS_ONCE([canonicalize_file_name])
+    AC_CHECK_FUNCS_ONCE([canonicalize_file_name resolvepath])
+    AC_DEFINE([PROVIDE_CANONICALIZE_FILENAME_MODE], 1,
+      [Define to 1 to provide canonicalize_filename_mode.])
   ])