From c437773f09dd9684683ae46730c1224e51509177 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 3 Nov 2006 23:17:27 +0000 Subject: [PATCH] * 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. --- ChangeLog | 10 ++++++++++ lib/canonicalize.h | 8 ++++++-- m4/canonicalize.m4 | 11 +++++++---- 3 files changed, 23 insertions(+), 6 deletions(-) diff --git a/ChangeLog b/ChangeLog index ea99ee0f01..3dc6ed03de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2006-11-03 Paul Eggert + + * 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 * gnulib-tool (func_import): Fix typo in actioncmd. diff --git a/lib/canonicalize.h b/lib/canonicalize.h index 4cae3c5512..deaf27f130 100644 --- a/lib/canonicalize.h +++ b/lib/canonicalize.h @@ -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 +# else char *canonicalize_file_name (const char *); # endif diff --git a/m4/canonicalize.m4 b/m4/canonicalize.m4 index 8b10a9c4bf..b488bb5606 100644 --- a/m4/canonicalize.m4 +++ b/m4/canonicalize.m4 @@ -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.]) ]) -- 2.30.2