From 4ef30f6cf2439380afe78dee027e322fcbf8e756 Mon Sep 17 00:00:00 2001 From: "Derek R. Price" Date: Tue, 13 Sep 2005 03:47:44 +0000 Subject: [PATCH] * modules/glob (Files): Add glob-libc.h. * lib/glob-libc.h: Renamed from glob_.h. The new version is taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB' protecting things that should be done only in gnulib contexts. * lib/glob_.h: New file, containing only the glob things needed for gnulib. (GLOB_PREFIX): Remove. All uses changed to look for __GLOB_GNULIB. (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed. (glob, globfree, glob_pattern_p): Now defined simply in terms of rpl_glob, rpl_globfree, rpl_glob_pattern_p. (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer and to respect the namespace rules better. * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c, glob_.h, glob-libc.h. (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed. --- ChangeLog | 5 ++ lib/ChangeLog | 15 ++++ lib/glob-libc.h | 196 ++++++++++++++++++++++++++++++++++++++++++ lib/glob_.h | 259 +++++++++----------------------------------------------- m4/ChangeLog | 7 ++ m4/glob.m4 | 19 +---- modules/glob | 2 +- 7 files changed, 267 insertions(+), 236 deletions(-) create mode 100644 lib/glob-libc.h diff --git a/ChangeLog b/ChangeLog index 32f9afbb5..f20f489bc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-09-12 Derek Price + Paul Eggert + + * modules/glob (Files): Add glob-libc.h. + 2005-09-08 Paul Eggert * modules/utimens (Files): Add m4/utimbuf.m4, since diff --git a/lib/ChangeLog b/lib/ChangeLog index 43008aee7..08b0e709f 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,18 @@ +2005-09-12 Derek Price + Paul Eggert + + * glob-libc.h: Renamed from glob_.h. The new version is + taken from libc's glob.h, except with '#ifdef __GLOB_GNULIB' + protecting things that should be done only in gnulib contexts. + * glob_.h: New file, containing only the glob things needed for + gnulib. + (GLOB_PREFIX): Remove. All uses changed to look for __GLOB_GNULIB. + (__GLOB_CONCAT, __GLOB_XCONCAT, __GLOB_ID): Remove; no longer needed. + (glob, globfree, glob_pattern_p): Now defined simply in terms of + rpl_glob, rpl_globfree, rpl_glob_pattern_p. + (__GLOB_GNULIB): New macro, to keep the glob.h changes clearer + and to respect the namespace rules better. + 2005-09-12 Paul Eggert Merge glibc and coreutils changes into gnulib, plus a few diff --git a/lib/glob-libc.h b/lib/glob-libc.h new file mode 100644 index 000000000..95b76c853 --- /dev/null +++ b/lib/glob-libc.h @@ -0,0 +1,196 @@ +/* Copyright (C) 1991,92,95-98,2000,2001,2004 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _GLOB_H +#define _GLOB_H 1 + +#ifndef __GLOB_GNULIB +# include +#endif + +__BEGIN_DECLS + +/* We need `size_t' for the following definitions. */ +#ifndef __size_t +# if defined __GNUC__ && __GNUC__ >= 2 +typedef __SIZE_TYPE__ __size_t; +# ifdef __USE_XOPEN +typedef __SIZE_TYPE__ size_t; +# endif +# else +# include +# ifndef __size_t +# define __size_t size_t +# endif +# endif +#else +/* The GNU CC stddef.h version defines __size_t as empty. We need a real + definition. */ +# undef __size_t +# define __size_t size_t +#endif + +/* Bits set in the FLAGS argument to `glob'. */ +#define GLOB_ERR (1 << 0)/* Return on read errors. */ +#define GLOB_MARK (1 << 1)/* Append a slash to each name. */ +#define GLOB_NOSORT (1 << 2)/* Don't sort the names. */ +#define GLOB_DOOFFS (1 << 3)/* Insert PGLOB->gl_offs NULLs. */ +#define GLOB_NOCHECK (1 << 4)/* If nothing matches, return the pattern. */ +#define GLOB_APPEND (1 << 5)/* Append to results of a previous call. */ +#define GLOB_NOESCAPE (1 << 6)/* Backslashes don't quote metacharacters. */ +#define GLOB_PERIOD (1 << 7)/* Leading `.' can be matched by metachars. */ + +#if !defined __USE_POSIX2 || defined __USE_BSD || defined __USE_GNU +# define GLOB_MAGCHAR (1 << 8)/* Set in gl_flags if any metachars seen. */ +# define GLOB_ALTDIRFUNC (1 << 9)/* Use gl_opendir et al functions. */ +# define GLOB_BRACE (1 << 10)/* Expand "{a,b}" to "a" "b". */ +# define GLOB_NOMAGIC (1 << 11)/* If no magic chars, return the pattern. */ +# define GLOB_TILDE (1 << 12)/* Expand ~user and ~ to home directories. */ +# define GLOB_ONLYDIR (1 << 13)/* Match only directories. */ +# define GLOB_TILDE_CHECK (1 << 14)/* Like GLOB_TILDE but return an error + if the user name is not available. */ +# define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ + GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ + GLOB_PERIOD|GLOB_ALTDIRFUNC|GLOB_BRACE| \ + GLOB_NOMAGIC|GLOB_TILDE|GLOB_ONLYDIR|GLOB_TILDE_CHECK) +#else +# define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ + GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ + GLOB_PERIOD) +#endif + +/* Error returns from `glob'. */ +#define GLOB_NOSPACE 1 /* Ran out of memory. */ +#define GLOB_ABORTED 2 /* Read error. */ +#define GLOB_NOMATCH 3 /* No matches found. */ +#define GLOB_NOSYS 4 /* Not implemented. */ +#ifdef __USE_GNU +/* Previous versions of this file defined GLOB_ABEND instead of + GLOB_ABORTED. Provide a compatibility definition here. */ +# define GLOB_ABEND GLOB_ABORTED +#endif + +/* Structure describing a globbing run. */ +#ifdef __USE_GNU +struct stat; +#endif +typedef struct + { + __size_t gl_pathc; /* Count of paths matched by the pattern. */ + char **gl_pathv; /* List of matched pathnames. */ + __size_t gl_offs; /* Slots to reserve in `gl_pathv'. */ + int gl_flags; /* Set to FLAGS, maybe | GLOB_MAGCHAR. */ + + /* If the GLOB_ALTDIRFUNC flag is set, the following functions + are used instead of the normal file access functions. */ + void (*gl_closedir) (void *); +#ifdef __USE_GNU + struct dirent *(*gl_readdir) (void *); +#else + void *(*gl_readdir) (void *); +#endif + void *(*gl_opendir) (__const char *); +#ifdef __USE_GNU + int (*gl_lstat) (__const char *__restrict, struct stat *__restrict); + int (*gl_stat) (__const char *__restrict, struct stat *__restrict); +#else + int (*gl_lstat) (__const char *__restrict, void *__restrict); + int (*gl_stat) (__const char *__restrict, void *__restrict); +#endif + } glob_t; + +#if defined __USE_LARGEFILE64 && !defined __GLOB_GNULIB +# ifdef __USE_GNU +struct stat64; +# endif +typedef struct + { + __size_t gl_pathc; + char **gl_pathv; + __size_t gl_offs; + int gl_flags; + + /* If the GLOB_ALTDIRFUNC flag is set, the following functions + are used instead of the normal file access functions. */ + void (*gl_closedir) (void *); +# ifdef __USE_GNU + struct dirent64 *(*gl_readdir) (void *); +# else + void *(*gl_readdir) (void *); +# endif + void *(*gl_opendir) (__const char *); +# ifdef __USE_GNU + int (*gl_lstat) (__const char *__restrict, struct stat64 *__restrict); + int (*gl_stat) (__const char *__restrict, struct stat64 *__restrict); +# else + int (*gl_lstat) (__const char *__restrict, void *__restrict); + int (*gl_stat) (__const char *__restrict, void *__restrict); +# endif + } glob64_t; +#endif + +#if __USE_FILE_OFFSET64 && __GNUC__ < 2 && !defined __GLOB_GNULIB +# define glob glob64 +# define globfree globfree64 +#endif + +/* Do glob searching for PATTERN, placing results in PGLOB. + The bits defined above may be set in FLAGS. + If a directory cannot be opened or read and ERRFUNC is not nil, + it is called with the pathname that caused the error, and the + `errno' value from the failing call; if it returns non-zero + `glob' returns GLOB_ABEND; if it returns zero, the error is ignored. + If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned. + Otherwise, `glob' returns zero. */ +#if !defined __USE_FILE_OFFSET64 || __GNUC__ < 2 || defined __GLOB_GNULIB +extern int glob (__const char *__restrict __pattern, int __flags, + int (*__errfunc) (__const char *, int), + glob_t *__restrict __pglob) __THROW; + +/* Free storage allocated in PGLOB by a previous `glob' call. */ +extern void globfree (glob_t *__pglob) __THROW; +#else +extern int __REDIRECT_NTH (glob, (__const char *__restrict __pattern, + int __flags, + int (*__errfunc) (__const char *, int), + glob_t *__restrict __pglob), glob64); + +extern void __REDIRECT_NTH (globfree, (glob_t *__pglob), globfree64); +#endif + +#if defined __USE_LARGEFILE64 && !defined __GLOB_GNULIB +extern int glob64 (__const char *__restrict __pattern, int __flags, + int (*__errfunc) (__const char *, int), + glob64_t *__restrict __pglob) __THROW; + +extern void globfree64 (glob64_t *__pglob) __THROW; +#endif + + +#ifdef __USE_GNU +/* Return nonzero if PATTERN contains any metacharacters. + Metacharacters can be quoted with backslashes if QUOTE is nonzero. + + This function is not part of the interface specified by POSIX.2 + but several programs want to use it. */ +extern int glob_pattern_p (__const char *__pattern, int __quote) __THROW; +#endif + +__END_DECLS + +#endif /* glob.h */ diff --git a/lib/glob_.h b/lib/glob_.h index 95fb240f1..a1bd70c10 100644 --- a/lib/glob_.h +++ b/lib/glob_.h @@ -1,33 +1,32 @@ -/* Copyright (C) 1991,92,95-98,2000,2001,2004 Free Software Foundation, Inc. - This file is part of the GNU C Library. +/* glob_.h -- Find a path matching a pattern. - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Lesser General Public - License as published by the Free Software Foundation; either - version 2.1 of the License, or (at your option) any later version. + Copyright (C) 2005 Free Software Foundation, Inc. - The GNU C Library is distributed in the hope that it will be useful, + Written by Derek Price & Paul Eggert + + 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 + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Lesser General Public License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with the GNU C Library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA - 02111-1307 USA. */ - -#ifndef _GLOB_H -#define _GLOB_H 1 - -/* Note the reversal of the common HAVE_SYS_CDEFS_H idiom below. In this - way, #ifndef _SYS_CDEFS_H may be used to include both when - it has been checked for via the GNULIB configure test and found and when - it has not been checked for, which we can presume means that the - GNULIB shares with GLIBC is being included as a system header and not as - part of GNULIB, in which case may be assumed. */ -#ifndef _SYS_CDEFS_H + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software Foundation, + Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +#ifndef GLOB_H +#define GLOB_H 1 + +#ifdef HAVE_SYS_CDEFS_H # include #endif + +#include + #ifndef __BEGIN_DECLS # define __BEGIN_DECLS # define __END_DECLS @@ -36,209 +35,31 @@ # define __THROW #endif -__BEGIN_DECLS - -/* We need `size_t' for the following definitions. */ -#ifndef GLOB_PREFIX -# ifndef __size_t -# if defined __GNUC__ && __GNUC__ >= 2 -typedef __SIZE_TYPE__ __size_t; -# ifdef __USE_XOPEN -typedef __SIZE_TYPE__ size_t; -# endif -# else -# include -# ifndef __size_t -# define __size_t size_t -# endif -# endif -# else -/* The GNU CC stddef.h version defines __size_t as empty. We need a real - definition. */ -# undef __size_t -# define __size_t size_t -# endif -#else /* GLOB_PREFIX */ -# include -# undef __size_t +#ifndef __size_t # define __size_t size_t -#endif /* !GLOB_PREFIX */ - -#ifdef GLOB_PREFIX -/* get struct stat */ -# include - -/* The following are necessary with MSVC and who knows where else. */ -# ifndef __const -# define __const const -# endif -# ifndef __restrict -# define __restrict restrict -# endif -# ifndef __USE_GNU -# define __USE_GNU 1 -# endif -#endif /* GLOB_PREFIX */ - -/* Bits set in the FLAGS argument to `glob'. */ -#define GLOB_ERR (1 << 0)/* Return on read errors. */ -#define GLOB_MARK (1 << 1)/* Append a slash to each name. */ -#define GLOB_NOSORT (1 << 2)/* Don't sort the names. */ -#define GLOB_DOOFFS (1 << 3)/* Insert PGLOB->gl_offs NULLs. */ -#define GLOB_NOCHECK (1 << 4)/* If nothing matches, return the pattern. */ -#define GLOB_APPEND (1 << 5)/* Append to results of a previous call. */ -#define GLOB_NOESCAPE (1 << 6)/* Backslashes don't quote metacharacters. */ -#define GLOB_PERIOD (1 << 7)/* Leading `.' can be matched by metachars. */ - -#if !defined __USE_POSIX2 || defined __USE_BSD || defined __USE_GNU -# define GLOB_MAGCHAR (1 << 8)/* Set in gl_flags if any metachars seen. */ -# define GLOB_ALTDIRFUNC (1 << 9)/* Use gl_opendir et al functions. */ -# define GLOB_BRACE (1 << 10)/* Expand "{a,b}" to "a" "b". */ -# define GLOB_NOMAGIC (1 << 11)/* If no magic chars, return the pattern. */ -# define GLOB_TILDE (1 << 12)/* Expand ~user and ~ to home directories. */ -# define GLOB_ONLYDIR (1 << 13)/* Match only directories. */ -# define GLOB_TILDE_CHECK (1 << 14)/* Like GLOB_TILDE but return an error - if the user name is not available. */ -# define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ - GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ - GLOB_PERIOD|GLOB_ALTDIRFUNC|GLOB_BRACE| \ - GLOB_NOMAGIC|GLOB_TILDE|GLOB_ONLYDIR|GLOB_TILDE_CHECK) -#else -# define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ - GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ - GLOB_PERIOD) #endif - -/* Error returns from `glob'. */ -#define GLOB_NOSPACE 1 /* Ran out of memory. */ -#define GLOB_ABORTED 2 /* Read error. */ -#define GLOB_NOMATCH 3 /* No matches found. */ -#define GLOB_NOSYS 4 /* Not implemented. */ -#ifdef __USE_GNU -/* Previous versions of this file defined GLOB_ABEND instead of - GLOB_ABORTED. Provide a compatibility definition here. */ -# define GLOB_ABEND GLOB_ABORTED +#ifndef __const +# define __const const #endif - -/* Structure describing a globbing run. */ -#ifdef __USE_GNU -struct stat; +#ifndef __restrict +# define __restrict restrict #endif -typedef struct - { - __size_t gl_pathc; /* Count of paths matched by the pattern. */ - char **gl_pathv; /* List of matched pathnames. */ - __size_t gl_offs; /* Slots to reserve in `gl_pathv'. */ - int gl_flags; /* Set to FLAGS, maybe | GLOB_MAGCHAR. */ - - /* If the GLOB_ALTDIRFUNC flag is set, the following functions - are used instead of the normal file access functions. */ - void (*gl_closedir) (void *); -#ifdef __USE_GNU -# if defined HAVE_DIRENT_H || defined __GNU_LIBRARY__ - struct dirent *(*gl_readdir) (void *); -# else - struct direct *(*gl_readdir) (void *); -# endif -#else - void *(*gl_readdir) (void *); -#endif - void *(*gl_opendir) (__const char *); -#ifdef __USE_GNU - int (*gl_lstat) (__const char *__restrict, struct stat *__restrict); - int (*gl_stat) (__const char *__restrict, struct stat *__restrict); -#else - int (*gl_lstat) (__const char *__restrict, void *__restrict); - int (*gl_stat) (__const char *__restrict, void *__restrict); -#endif - } glob_t; - -#if !defined GLOB_PREFIX && defined __USE_LARGEFILE64 -# ifdef __USE_GNU -struct stat64; -# endif -typedef struct - { - __size_t gl_pathc; - char **gl_pathv; - __size_t gl_offs; - int gl_flags; - - /* If the GLOB_ALTDIRFUNC flag is set, the following functions - are used instead of the normal file access functions. */ - void (*gl_closedir) (void *); -# ifdef __USE_GNU - struct dirent64 *(*gl_readdir) (void *); -# else - void *(*gl_readdir) (void *); -# endif - void *(*gl_opendir) (__const char *); -# ifdef __USE_GNU - int (*gl_lstat) (__const char *__restrict, struct stat64 *__restrict); - int (*gl_stat) (__const char *__restrict, struct stat64 *__restrict); -# else - int (*gl_lstat) (__const char *__restrict, void *__restrict); - int (*gl_stat) (__const char *__restrict, void *__restrict); -# endif - } glob64_t; -#endif - -#ifdef GLOB_PREFIX -# define __GLOB_CONCAT(x, y) x ## y -# define __GLOB_XCONCAT(x, y) __GLOB_CONCAT (x, y) -# define __GLOB_ID(y) __GLOB_XCONCAT (GLOB_PREFIX, y) -# define glob __GLOB_ID (glob) -# define globfree __GLOB_ID (globfree) -# define glob_pattern_p __GLOB_ID (glob_pattern_p) -#else -# if __USE_FILE_OFFSET64 && __GNUC__ < 2 -# define glob glob64 -# define globfree globfree64 -# endif +#ifndef __USE_GNU +# define __USE_GNU 1 #endif -/* Do glob searching for PATTERN, placing results in PGLOB. - The bits defined above may be set in FLAGS. - If a directory cannot be opened or read and ERRFUNC is not nil, - it is called with the pathname that caused the error, and the - `errno' value from the failing call; if it returns non-zero - `glob' returns GLOB_ABEND; if it returns zero, the error is ignored. - If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned. - Otherwise, `glob' returns zero. */ -#if !defined __USE_FILE_OFFSET64 || __GNUC__ < 2 || defined GLOB_PREFIX -extern int glob (__const char *__restrict __pattern, int __flags, - int (*__errfunc) (__const char *, int), - glob_t *__restrict __pglob) __THROW; - -/* Free storage allocated in PGLOB by a previous `glob' call. */ -extern void globfree (glob_t *__pglob) __THROW; -#else -extern int __REDIRECT_NTH (glob, (__const char *__restrict __pattern, - int __flags, - int (*__errfunc) (__const char *, int), - glob_t *__restrict __pglob), glob64); - -extern void __REDIRECT_NTH (globfree, (glob_t *__pglob), globfree64); -#endif - -#if !defined GLOB_PREFIX && defined __USE_LARGEFILE64 -extern int glob64 (__const char *__restrict __pattern, int __flags, - int (*__errfunc) (__const char *, int), - glob64_t *__restrict __pglob) __THROW; -extern void globfree64 (glob64_t *__pglob) __THROW; +#ifndef HAVE_DIRENT_H +# define dirent direct #endif +#define glob rpl_glob +#define globfree rpl_globfree +#define glob_pattern_p rpl_glob_pattern_p -#ifdef __USE_GNU -/* Return nonzero if PATTERN contains any metacharacters. - Metacharacters can be quoted with backslashes if QUOTE is nonzero. - - This function is not part of the interface specified by POSIX.2 - but several programs want to use it. */ -extern int glob_pattern_p (__const char *__pattern, int __quote) __THROW; -#endif +#define __GLOB_GNULIB 1 -__END_DECLS +/* Now the standard GNU C Library header should work. */ +#include "glob-libc.h" -#endif /* glob.h */ +#endif /* GLOB_H */ diff --git a/m4/ChangeLog b/m4/ChangeLog index b29496d40..f3e8022a3 100644 --- a/m4/ChangeLog +++ b/m4/ChangeLog @@ -1,3 +1,10 @@ +2005-09-12 Derek Price + Paul Eggert + + * m4/glob.m4 (gl_GLOB_SUBSTITUTE): AC_LIBSOURCES for glob.c, + glob_.h, glob-libc.h. + (gl_PREREQ_GLOB): Remove _SYS_CDEFS_H hack; no longer needed. + 2005-08-31 Simon Josefsson * socklen.m4: New file. diff --git a/m4/glob.m4 b/m4/glob.m4 index e610ff0d7..690318e22 100644 --- a/m4/glob.m4 +++ b/m4/glob.m4 @@ -1,4 +1,4 @@ -# glob.m4 serial 2 +# glob.m4 serial 3 dnl Copyright (C) 2005 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -13,10 +13,8 @@ AC_DEFUN([gl_GLOB_SUBSTITUTE], gl_PREREQ_GLOB GLOB_H=glob.h + AC_LIBSOURCES([glob.c, glob_.h, glob-libc.h]) AC_LIBOBJ([glob]) - AC_DEFINE([GLOB_PREFIX], [[rpl_]], - [Define to rpl_ if the glob replacement functions and variables - should be used.]) AC_SUBST([GLOB_H]) ]) @@ -75,19 +73,8 @@ if (glob ("conf*-globtest", 0, NULL, &found) == GLOB_NOMATCH) return 1;]]), # Prerequisites of lib/glob.*. AC_DEFUN([gl_PREREQ_GLOB], [ AC_REQUIRE([gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE])dnl + AC_REQUIRE([AC_GNU_SOURCE])dnl AC_REQUIRE([AC_HEADER_DIRENT])dnl AC_CHECK_HEADERS_ONCE([sys/cdefs.h unistd.h])dnl AC_CHECK_FUNCS_ONCE([getlogin_r getpwnam_r])dnl - AC_CHECK_HEADERS([sys/cdefs.h], [SYS_CDEFS_H=yes], [SYS_CDEFS_H=no]) - - dnl Note the reversal of the common HAVE_SYS_CDEFS_H idiom below. In this - dnl way, #ifndef _SYS_CDEFS_H may be used to include both when - dnl it has been checked for via the GNULIB configure test and found and when - dnl it has not been checked for, which we can presume means that the - dnl GNULIB shares with GLIBC is being included as a system header and not as - dnl part of GNULIB, in which case may be assumed. - if test $SYS_CDEFS_H = no; then - AC_DEFINE(_SYS_CDEFS_H, 1, - [Define to `1' if is *not* available on this system.]) - fi :]) diff --git a/modules/glob b/modules/glob index c01987e2e..98611a878 100644 --- a/modules/glob +++ b/modules/glob @@ -4,6 +4,7 @@ pattern, with GNU extensions. Files: lib/glob_.h +lib/glob-libc.h lib/glob.c m4/d-type.m4 m4/glob.m4 @@ -24,7 +25,6 @@ gl_GLOB Makefile.am: BUILT_SOURCES += $(GLOB_H) -EXTRA_DIST += glob_.h # We need the following in order to create when the system # doesn't have one that works with the given compiler. -- 2.11.0