2 dnl Copyright (C) 2005 Free Software Foundation, Inc.
3 dnl This file is free software; the Free Software Foundation
4 dnl gives unlimited permission to copy and/or distribute it,
5 dnl with or without modifications, as long as this notice is preserved.
7 # The glob module assumes you want GNU glob, with glob_pattern_p etc,
8 # rather than vanilla POSIX glob. This means your your code should
9 # always include <glob.h> for the glob prototypes.
11 AC_DEFUN([gl_GLOB_SUBSTITUTE],
17 AC_DEFINE([GLOB_PREFIX], [[rpl_]],
18 [Define to rpl_ if the glob replacement functions and variables
25 AC_CHECK_HEADERS([glob.h], [], [GLOB_H=glob.h])
27 if test -z "$GLOB_H"; then
28 AC_CACHE_CHECK([for GNU glob interface version 1],
29 [gl_cv_gnu_glob_interface_version_1],
31 [[#include <gnu-versions.h>
32 char a[_GNU_GLOB_INTERFACE_VERSION == 1 ? 1 : -1];]],
33 [gl_cv_gnu_glob_interface_version_1=yes],
34 [gl_cv_gnu_glob_interface_version_1=no])])
36 if test "$gl_cv_gnu_glob_interface_version_1" = "no"; then
41 if test -z "$GLOB_H"; then
42 AC_CACHE_CHECK([whether glob lists broken symlinks],
43 [gl_cv_glob_lists_symlinks],
44 [ if ln -s conf-doesntexist conf$$-globtest 2>/dev/null; then
45 gl_cv_glob_lists_symlinks=maybe
47 # If we can't make a symlink, then we cannot test this issue. Be
48 # pessimistic about this.
49 gl_cv_glob_lists_symlinks=no
52 if test $gl_cv_glob_lists_symlinks = maybe; then
58 if (glob ("conf*-globtest", 0, NULL, &found) == GLOB_NOMATCH) return 1;]]),
59 [gl_cv_glob_lists_symlinks=yes],
60 [gl_cv_glob_lists_symlinks=no], [gl_cv_glob_lists_symlinks=no])
63 if test $gl_cv_glob_lists_symlinks = no; then
70 if test -n "$GLOB_H"; then
75 # Prerequisites of lib/glob.*.
76 AC_DEFUN([gl_PREREQ_GLOB],
77 [ AC_REQUIRE([gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE])dnl
78 AC_REQUIRE([AC_HEADER_DIRENT])dnl
79 AC_CHECK_HEADERS_ONCE([sys/cdefs.h unistd.h])dnl
80 AC_CHECK_FUNCS_ONCE([getlogin_r getpwnam_r])dnl
81 AC_CHECK_HEADERS([sys/cdefs.h], [SYS_CDEFS_H=yes], [SYS_CDEFS_H=no])
83 dnl Note the reversal of the common HAVE_SYS_CDEFS_H idiom below. In this
84 dnl way, #ifndef _SYS_CDEFS_H may be used to include <sys/cdefs.h> both when
85 dnl it has been checked for via the GNULIB configure test and found and when
86 dnl it has not been checked for, which we can presume means that the <glob.h>
87 dnl GNULIB shares with GLIBC is being included as a system header and not as
88 dnl part of GNULIB, in which case <sys/cdefs.h> may be assumed.
89 if test $SYS_CDEFS_H = no; then
90 AC_DEFINE(_SYS_CDEFS_H, 1,
91 [Define to `1' if <sys/cdefs.h> is *not* available on this system.])