Blob Blame History Raw
# DO NOT EDIT! GENERATED AUTOMATICALLY!
# Copyright (C) 2002-2017 Free Software Foundation, Inc.
#
# This file 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 3 of the License, or
# (at your option) any later version.
#
# This file 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this file.  If not, see <http://www.gnu.org/licenses/>.
#
# As a special exception to the GNU General Public License,
# this file may be distributed as part of a program that
# contains a configuration script generated by Autoconf, under
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
#
# This file represents the compiled summary of the specification in
# gnulib-cache.m4. It lists the computed macro invocations that need
# to be invoked from configure.ac.
# In projects that use version control, this file can be treated like
# other built files.


# This macro should be invoked from ./configure.ac, in the section
# "Checks for programs", right after AC_PROG_CC, and certainly before
# any checks for libraries, header files, types and library functions.
AC_DEFUN([gl_EARLY],
[
  m4_pattern_forbid([^gl_[A-Z]])dnl the gnulib macro namespace
  m4_pattern_allow([^gl_ES$])dnl a valid locale name
  m4_pattern_allow([^gl_LIBOBJS$])dnl a variable
  m4_pattern_allow([^gl_LTLIBOBJS$])dnl a variable

  # Pre-early section.
  AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
  AC_REQUIRE([gl_PROG_AR_RANLIB])

  AC_REQUIRE([AM_PROG_CC_C_O])
  # Code from module absolute-header:
  # Code from module alignof:
  # Code from module alignof-tests:
  # Code from module alloca:
  # Code from module alloca-opt:
  # Code from module alloca-opt-tests:
  # Code from module announce-gen:
  # Code from module argmatch:
  # Code from module argmatch-tests:
  # Code from module assert:
  # Code from module assure:
  # Code from module at-internal:
  # Code from module binary-io:
  # Code from module binary-io-tests:
  # Code from module bitrotate:
  # Code from module bitrotate-tests:
  # Code from module btowc:
  # Code from module btowc-tests:
  # Code from module builtin-expect:
  # Code from module c-ctype:
  # Code from module c-ctype-tests:
  # Code from module c-strcase:
  # Code from module c-strcase-tests:
  # Code from module c-strcaseeq:
  # Code from module c99:
  # Code from module chdir:
  # Code from module chdir-long:
  # Code from module chdir-tests:
  # Code from module cloexec:
  # Code from module cloexec-tests:
  # Code from module close:
  # Code from module close-stream:
  # Code from module close-tests:
  # Code from module closedir:
  # Code from module closeout:
  # Code from module configmake:
  # Code from module ctype:
  # Code from module ctype-tests:
  # Code from module cycle-check:
  # Code from module d-ino:
  # Code from module d-type:
  # Code from module dev-ino:
  # Code from module dfa:
  # Code from module dfa-tests:
  # Code from module dirent:
  # Code from module dirent-safer:
  # Code from module dirent-safer-tests:
  # Code from module dirent-tests:
  # Code from module dirfd:
  # Code from module dirname-lgpl:
  # Code from module do-release-commit-and-tag:
  # Code from module dosname:
  # Code from module double-slash-root:
  # Code from module dup:
  # Code from module dup-tests:
  # Code from module dup2:
  # Code from module dup2-tests:
  # Code from module environ:
  # Code from module environ-tests:
  # Code from module errno:
  # Code from module errno-tests:
  # Code from module error:
  # Code from module exclude:
  # Code from module exclude-tests:
  # Code from module exitfail:
  # Code from module extensions:
  # Code from module extern-inline:
  # Code from module fchdir:
  # Code from module fchdir-tests:
  # Code from module fcntl:
  # Code from module fcntl-h:
  # Code from module fcntl-h-tests:
  # Code from module fcntl-safer:
  # Code from module fcntl-safer-tests:
  # Code from module fcntl-tests:
  # Code from module fd-hook:
  # Code from module fd-safer-flag:
  # Code from module fdl:
  # Code from module fdopen:
  # Code from module fdopen-tests:
  # Code from module fdopendir:
  # Code from module fdopendir-tests:
  # Code from module fgetc-tests:
  # Code from module filename:
  # Code from module filenamecat-lgpl:
  # Code from module flexmember:
  # Code from module float:
  # Code from module float-tests:
  # Code from module fnmatch:
  # Code from module fnmatch-tests:
  # Code from module fpending:
  # Code from module fpending-tests:
  # Code from module fpieee:
  AC_REQUIRE([gl_FP_IEEE])
  # Code from module fpucw:
  # Code from module fputc-tests:
  # Code from module fread-tests:
  # Code from module fstat:
  # Code from module fstat-tests:
  # Code from module fstatat:
  # Code from module fstatat-tests:
  # Code from module fts:
  # Code from module fwrite-tests:
  # Code from module gendocs:
  # Code from module getcwd-lgpl:
  # Code from module getcwd-lgpl-tests:
  # Code from module getdtablesize:
  # Code from module getdtablesize-tests:
  # Code from module getopt-gnu:
  # Code from module getopt-gnu-tests:
  # Code from module getopt-posix:
  # Code from module getopt-posix-tests:
  # Code from module getpagesize:
  # Code from module getprogname:
  # Code from module getprogname-tests:
  # Code from module gettext-h:
  # Code from module git-version-gen:
  # Code from module gitlog-to-changelog:
  # Code from module gnu-web-doc-update:
  # Code from module gnumakefile:
  # Code from module gnupload:
  # Code from module gperf:
  # Code from module hard-locale:
  # Code from module hash:
  # Code from module hash-pjw:
  # Code from module hash-tests:
  # Code from module havelib:
  # Code from module i-ring:
  # Code from module i-ring-tests:
  # Code from module iconv:
  # Code from module iconv-h:
  # Code from module iconv-h-tests:
  # Code from module iconv-tests:
  # Code from module iconv_open:
  # Code from module ignore-value:
  # Code from module ignore-value-tests:
  # Code from module include_next:
  # Code from module inline:
  # Code from module intprops:
  # Code from module intprops-tests:
  # Code from module inttostr:
  # Code from module inttostr-tests:
  # Code from module inttypes:
  # Code from module inttypes-incomplete:
  # Code from module inttypes-tests:
  # Code from module isatty:
  # Code from module isatty-tests:
  # Code from module isblank:
  # Code from module isblank-tests:
  # Code from module iswblank:
  # Code from module iswblank-tests:
  # Code from module iswctype:
  # Code from module langinfo:
  # Code from module langinfo-tests:
  # Code from module largefile:
  AC_REQUIRE([AC_SYS_LARGEFILE])
  # Code from module limits-h:
  # Code from module limits-h-tests:
  # Code from module localcharset:
  # Code from module locale:
  # Code from module locale-tests:
  # Code from module localeconv:
  # Code from module localeconv-tests:
  # Code from module localename:
  # Code from module localename-tests:
  # Code from module lock:
  # Code from module lseek:
  # Code from module lseek-tests:
  # Code from module lstat:
  # Code from module lstat-tests:
  # Code from module maintainer-makefile:
  # Code from module malloc-gnu:
  # Code from module malloc-gnu-tests:
  # Code from module malloc-posix:
  # Code from module malloca:
  # Code from module malloca-tests:
  # Code from module manywarnings:
  # Code from module mbchar:
  # Code from module mbiter:
  # Code from module mbrlen:
  # Code from module mbrtowc:
  # Code from module mbscasecmp:
  # Code from module mbscasecmp-tests:
  # Code from module mbsinit:
  # Code from module mbsinit-tests:
  # Code from module mbslen:
  # Code from module mbsrtowcs:
  # Code from module mbsrtowcs-tests:
  # Code from module mbsstr:
  # Code from module mbsstr-tests:
  # Code from module mbtowc:
  # Code from module mbuiter:
  # Code from module memchr:
  # Code from module memchr-tests:
  # Code from module memchr2:
  # Code from module memchr2-tests:
  # Code from module mempcpy:
  # Code from module memrchr:
  # Code from module memrchr-tests:
  # Code from module minmax:
  # Code from module msvc-inval:
  # Code from module msvc-nothrow:
  # Code from module multiarch:
  # Code from module nl_langinfo:
  # Code from module nl_langinfo-tests:
  # Code from module nocrash:
  # Code from module obstack:
  # Code from module open:
  # Code from module open-tests:
  # Code from module openat:
  # Code from module openat-die:
  # Code from module openat-h:
  # Code from module openat-safer:
  # Code from module openat-safer-tests:
  # Code from module openat-tests:
  # Code from module opendir:
  # Code from module pathmax:
  # Code from module pathmax-tests:
  # Code from module perl:
  # Code from module pipe-posix:
  # Code from module pipe-posix-tests:
  # Code from module propername:
  # Code from module putenv:
  # Code from module quote:
  # Code from module quotearg:
  # Code from module quotearg-simple:
  # Code from module quotearg-simple-tests:
  # Code from module read:
  # Code from module read-tests:
  # Code from module readdir:
  # Code from module readme-release:
  # Code from module realloc-gnu:
  # Code from module realloc-gnu-tests:
  # Code from module realloc-posix:
  # Code from module regex:
  # Code from module regex-tests:
  # Code from module safe-read:
  # Code from module same-inode:
  # Code from module save-cwd:
  # Code from module setenv:
  # Code from module setenv-tests:
  # Code from module setlocale:
  # Code from module setlocale-tests:
  # Code from module size_max:
  # Code from module snippet/_Noreturn:
  # Code from module snippet/arg-nonnull:
  # Code from module snippet/c++defs:
  # Code from module snippet/unused-parameter:
  # Code from module snippet/warn-on-use:
  # Code from module snprintf:
  # Code from module snprintf-tests:
  # Code from module ssize_t:
  # Code from module stat:
  # Code from module stat-tests:
  # Code from module std-gnu11:
  # Code from module stdalign:
  # Code from module stdalign-tests:
  # Code from module stdarg:
  dnl Some compilers (e.g., AIX 5.3 cc) need to be in c99 mode
  dnl for the builtin va_copy to work.  With Autoconf 2.60 or later,
  dnl gl_PROG_CC_C99 arranges for this.  With older Autoconf gl_PROG_CC_C99
  dnl shouldn't hurt, though installers are on their own to set c99 mode.
  gl_PROG_CC_C99
  # Code from module stdbool:
  # Code from module stdbool-tests:
  # Code from module stddef:
  # Code from module stddef-tests:
  # Code from module stdint:
  # Code from module stdint-tests:
  # Code from module stdio:
  # Code from module stdio-tests:
  # Code from module stdlib:
  # Code from module stdlib-tests:
  # Code from module stpcpy:
  # Code from module strdup-posix:
  # Code from module streq:
  # Code from module strerror:
  # Code from module strerror-override:
  # Code from module strerror-tests:
  # Code from module striconv:
  # Code from module striconv-tests:
  # Code from module string:
  # Code from module string-tests:
  # Code from module strnlen:
  # Code from module strnlen-tests:
  # Code from module strnlen1:
  # Code from module strstr:
  # Code from module strstr-simple:
  # Code from module strstr-tests:
  # Code from module strtoimax:
  # Code from module strtoimax-tests:
  # Code from module strtoll:
  # Code from module strtoll-tests:
  # Code from module strtoull:
  # Code from module strtoull-tests:
  # Code from module strtoumax:
  # Code from module strtoumax-tests:
  # Code from module symlink:
  # Code from module symlink-tests:
  # Code from module sys_stat:
  # Code from module sys_stat-tests:
  # Code from module sys_types:
  # Code from module sys_types-tests:
  # Code from module test-framework-sh:
  # Code from module test-framework-sh-tests:
  # Code from module threadlib:
  gl_THREADLIB_EARLY
  # Code from module time:
  # Code from module time-tests:
  # Code from module trim:
  # Code from module unistd:
  # Code from module unistd-safer:
  # Code from module unistd-safer-tests:
  # Code from module unistd-tests:
  # Code from module unistr/base:
  # Code from module unistr/u8-mbtoucr:
  # Code from module unistr/u8-mbtoucr-tests:
  # Code from module unistr/u8-uctomb:
  # Code from module unistr/u8-uctomb-tests:
  # Code from module unitypes:
  # Code from module uniwidth/base:
  # Code from module uniwidth/width:
  # Code from module uniwidth/width-tests:
  # Code from module unlocked-io:
  # Code from module unsetenv:
  # Code from module unsetenv-tests:
  # Code from module update-copyright:
  # Code from module useless-if-before-free:
  # Code from module vasnprintf:
  # Code from module vasnprintf-tests:
  # Code from module vc-list-files:
  # Code from module vc-list-files-tests:
  # Code from module verify:
  # Code from module verify-tests:
  # Code from module version-etc:
  # Code from module version-etc-fsf:
  # Code from module version-etc-tests:
  # Code from module warnings:
  # Code from module wchar:
  # Code from module wchar-tests:
  # Code from module wcrtomb:
  # Code from module wcrtomb-tests:
  # Code from module wctob:
  # Code from module wctomb:
  # Code from module wctype-h:
  # Code from module wctype-h-tests:
  # Code from module wcwidth:
  # Code from module wcwidth-tests:
  # Code from module xalloc:
  # Code from module xalloc-die:
  # Code from module xalloc-die-tests:
  # Code from module xalloc-oversized:
  # Code from module xbinary-io:
  # Code from module xsize:
  # Code from module xstriconv:
  # Code from module xstrtoimax:
  # Code from module xstrtoimax-tests:
  # Code from module xstrtol:
  # Code from module xstrtol-tests:
])

# This macro should be invoked from ./configure.ac, in the section
# "Check for header files, types and library functions".
AC_DEFUN([gl_INIT],
[
  AM_CONDITIONAL([GL_COND_LIBTOOL], [false])
  gl_cond_libtool=false
  gl_libdeps=
  gl_ltlibdeps=
  gl_m4_base='m4'
  m4_pushdef([AC_LIBOBJ], m4_defn([gl_LIBOBJ]))
  m4_pushdef([AC_REPLACE_FUNCS], m4_defn([gl_REPLACE_FUNCS]))
  m4_pushdef([AC_LIBSOURCES], m4_defn([gl_LIBSOURCES]))
  m4_pushdef([gl_LIBSOURCES_LIST], [])
  m4_pushdef([gl_LIBSOURCES_DIR], [])
  gl_COMMON
  gl_source_base='lib'
  gl_FUNC_ALLOCA
  gl_ASSERT
  AC_LIBOBJ([openat-proc])
  gl_FUNC_BTOWC
  if test $HAVE_BTOWC = 0 || test $REPLACE_BTOWC = 1; then
    AC_LIBOBJ([btowc])
    gl_PREREQ_BTOWC
  fi
  gl_WCHAR_MODULE_INDICATOR([btowc])
  gl___BUILTIN_EXPECT
  gl_UNISTD_MODULE_INDICATOR([chdir])
  gl_FUNC_CHDIR_LONG
  if test $gl_cv_have_arbitrary_file_name_length_limit = yes; then
    AC_LIBOBJ([chdir-long])
    gl_PREREQ_CHDIR_LONG
  fi
  gl_MODULE_INDICATOR_FOR_TESTS([cloexec])
  gl_FUNC_CLOSE
  if test $REPLACE_CLOSE = 1; then
    AC_LIBOBJ([close])
  fi
  gl_UNISTD_MODULE_INDICATOR([close])
  gl_CLOSE_STREAM
  gl_MODULE_INDICATOR([close-stream])
  gl_FUNC_CLOSEDIR
  if test $HAVE_CLOSEDIR = 0 || test $REPLACE_CLOSEDIR = 1; then
    AC_LIBOBJ([closedir])
  fi
  gl_DIRENT_MODULE_INDICATOR([closedir])
  gl_CLOSEOUT
  gl_CONFIGMAKE_PREP
  gl_CTYPE_H
  gl_CYCLE_CHECK
  gl_CHECK_TYPE_STRUCT_DIRENT_D_INO
  gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE
  gl_DIRENT_H
  gl_DIRENT_SAFER
  gl_MODULE_INDICATOR([dirent-safer])
  gl_FUNC_DIRFD
  if test $ac_cv_func_dirfd = no && test $gl_cv_func_dirfd_macro = no \
     || test $REPLACE_DIRFD = 1; then
    AC_LIBOBJ([dirfd])
    gl_PREREQ_DIRFD
  fi
  gl_DIRENT_MODULE_INDICATOR([dirfd])
  gl_DIRNAME_LGPL
  gl_DOUBLE_SLASH_ROOT
  gl_FUNC_DUP
  if test $REPLACE_DUP = 1; then
    AC_LIBOBJ([dup])
    gl_PREREQ_DUP
  fi
  gl_UNISTD_MODULE_INDICATOR([dup])
  gl_FUNC_DUP2
  if test $HAVE_DUP2 = 0 || test $REPLACE_DUP2 = 1; then
    AC_LIBOBJ([dup2])
    gl_PREREQ_DUP2
  fi
  gl_UNISTD_MODULE_INDICATOR([dup2])
  gl_HEADER_ERRNO_H
  gl_ERROR
  if test $ac_cv_lib_error_at_line = no; then
    AC_LIBOBJ([error])
    gl_PREREQ_ERROR
  fi
  m4_ifdef([AM_XGETTEXT_OPTION],
    [AM_][XGETTEXT_OPTION([--flag=error:3:c-format])
     AM_][XGETTEXT_OPTION([--flag=error_at_line:5:c-format])])
  AC_REQUIRE([gl_EXTERN_INLINE])
  gl_FUNC_FCHDIR
  gl_UNISTD_MODULE_INDICATOR([fchdir])
  gl_FUNC_FCNTL
  if test $HAVE_FCNTL = 0 || test $REPLACE_FCNTL = 1; then
    AC_LIBOBJ([fcntl])
  fi
  gl_FCNTL_MODULE_INDICATOR([fcntl])
  gl_FCNTL_H
  gl_FCNTL_SAFER
  gl_MODULE_INDICATOR([fcntl-safer])
  gl_FUNC_FDOPENDIR
  if test $HAVE_FDOPENDIR = 0 || test $REPLACE_FDOPENDIR = 1; then
    AC_LIBOBJ([fdopendir])
  fi
  gl_DIRENT_MODULE_INDICATOR([fdopendir])
  gl_MODULE_INDICATOR([fdopendir])
  gl_FILE_NAME_CONCAT_LGPL
  AC_C_FLEXIBLE_ARRAY_MEMBER
  gl_FUNC_FNMATCH_POSIX
  if test -n "$FNMATCH_H"; then
    AC_LIBOBJ([fnmatch])
    gl_PREREQ_FNMATCH
  fi
  gl_FUNC_FPENDING
  if test $gl_cv_func___fpending = no; then
    AC_LIBOBJ([fpending])
  fi
  gl_FUNC_FSTAT
  if test $REPLACE_FSTAT = 1; then
    AC_LIBOBJ([fstat])
    AC_LIBOBJ([stat-w32])
    gl_PREREQ_FSTAT
  fi
  gl_SYS_STAT_MODULE_INDICATOR([fstat])
  gl_FUNC_FSTATAT
  if test $HAVE_FSTATAT = 0 || test $REPLACE_FSTATAT = 1; then
    AC_LIBOBJ([fstatat])
  fi
  gl_SYS_STAT_MODULE_INDICATOR([fstatat])
  gl_FUNC_FTS
  dnl Use this version of fts unconditionally, since the GNU libc and
  dnl NetBSD versions have bugs and/or unnecessary limitations.
  AC_LIBOBJ([fts])
  gl_FUNC_GETCWD_LGPL
  if test $REPLACE_GETCWD = 1; then
    AC_LIBOBJ([getcwd-lgpl])
  fi
  gl_UNISTD_MODULE_INDICATOR([getcwd])
  gl_FUNC_GETDTABLESIZE
  if test $HAVE_GETDTABLESIZE = 0 || test $REPLACE_GETDTABLESIZE = 1; then
    AC_LIBOBJ([getdtablesize])
    gl_PREREQ_GETDTABLESIZE
  fi
  gl_UNISTD_MODULE_INDICATOR([getdtablesize])
  gl_FUNC_GETOPT_GNU
  dnl Because of the way gl_FUNC_GETOPT_GNU is implemented (the gl_getopt_required
  dnl mechanism), there is no need to do any AC_LIBOBJ or AC_SUBST here; they are
  dnl done in the getopt-posix module.
  gl_FUNC_GETOPT_POSIX
  if test $REPLACE_GETOPT = 1; then
    AC_LIBOBJ([getopt])
    AC_LIBOBJ([getopt1])
    dnl Arrange for unistd.h to include getopt.h.
    GNULIB_GL_UNISTD_H_GETOPT=1
  fi
  AC_SUBST([GNULIB_GL_UNISTD_H_GETOPT])
  gl_FUNC_GETPAGESIZE
  if test $REPLACE_GETPAGESIZE = 1; then
    AC_LIBOBJ([getpagesize])
  fi
  gl_UNISTD_MODULE_INDICATOR([getpagesize])
  gl_FUNC_GETPROGNAME
  AC_SUBST([LIBINTL])
  AC_SUBST([LTLIBINTL])
  # Autoconf 2.61a.99 and earlier don't support linking a file only
  # in VPATH builds.  But since GNUmakefile is for maintainer use
  # only, it does not matter if we skip the link with older autoconf.
  # Automake 1.10.1 and earlier try to remove GNUmakefile in non-VPATH
  # builds, so use a shell variable to bypass this.
  GNUmakefile=GNUmakefile
  m4_if(m4_version_compare([2.61a.100],
          m4_defn([m4_PACKAGE_VERSION])), [1], [],
        [AC_CONFIG_LINKS([$GNUmakefile:$GNUmakefile], [],
          [GNUmakefile=$GNUmakefile])])
  gl_HARD_LOCALE
  gl_I_RING
  AM_ICONV
  m4_ifdef([gl_ICONV_MODULE_INDICATOR],
    [gl_ICONV_MODULE_INDICATOR([iconv])])
  gl_ICONV_H
  gl_FUNC_ICONV_OPEN
  if test $REPLACE_ICONV_OPEN = 1; then
    AC_LIBOBJ([iconv_open])
  fi
  if test $REPLACE_ICONV = 1; then
    AC_LIBOBJ([iconv])
    AC_LIBOBJ([iconv_close])
  fi
  gl_INLINE
  gl_INTTYPES_H
  gl_INTTYPES_INCOMPLETE
  gl_FUNC_ISATTY
  if test $REPLACE_ISATTY = 1; then
    AC_LIBOBJ([isatty])
    gl_PREREQ_ISATTY
  fi
  gl_UNISTD_MODULE_INDICATOR([isatty])
  gl_FUNC_ISBLANK
  if test $HAVE_ISBLANK = 0; then
    AC_LIBOBJ([isblank])
  fi
  gl_CTYPE_MODULE_INDICATOR([isblank])
  gl_FUNC_ISWBLANK
  if test $HAVE_ISWCNTRL = 0 || test $REPLACE_ISWCNTRL = 1; then
    :
  else
    if test $HAVE_ISWBLANK = 0 || test $REPLACE_ISWBLANK = 1; then
      AC_LIBOBJ([iswblank])
    fi
  fi
  gl_WCTYPE_MODULE_INDICATOR([iswblank])
  gl_FUNC_ISWCTYPE
  if test $HAVE_WCTYPE_T = 0; then
    AC_LIBOBJ([iswctype])
  fi
  gl_WCTYPE_MODULE_INDICATOR([iswctype])
  gl_LANGINFO_H
  AC_REQUIRE([gl_LARGEFILE])
  gl_LIMITS_H
  gl_LOCALCHARSET
  LOCALCHARSET_TESTS_ENVIRONMENT="CHARSETALIASDIR=\"\$(abs_top_builddir)/$gl_source_base\""
  AC_SUBST([LOCALCHARSET_TESTS_ENVIRONMENT])
  gl_LOCALE_H
  gl_FUNC_LOCALECONV
  if test $REPLACE_LOCALECONV = 1; then
    AC_LIBOBJ([localeconv])
    gl_PREREQ_LOCALECONV
  fi
  gl_LOCALE_MODULE_INDICATOR([localeconv])
  gl_LOCK
  gl_MODULE_INDICATOR([lock])
  gl_FUNC_LSEEK
  if test $REPLACE_LSEEK = 1; then
    AC_LIBOBJ([lseek])
  fi
  gl_UNISTD_MODULE_INDICATOR([lseek])
  gl_FUNC_LSTAT
  if test $REPLACE_LSTAT = 1; then
    AC_LIBOBJ([lstat])
    gl_PREREQ_LSTAT
  fi
  gl_SYS_STAT_MODULE_INDICATOR([lstat])
  AC_CONFIG_COMMANDS_PRE([m4_ifdef([AH_HEADER],
    [AC_SUBST([CONFIG_INCLUDE], m4_defn([AH_HEADER]))])])
  AC_REQUIRE([AC_PROG_SED])
  gl_FUNC_MALLOC_GNU
  if test $REPLACE_MALLOC = 1; then
    AC_LIBOBJ([malloc])
  fi
  gl_MODULE_INDICATOR([malloc-gnu])
  gl_FUNC_MALLOC_POSIX
  if test $REPLACE_MALLOC = 1; then
    AC_LIBOBJ([malloc])
  fi
  gl_STDLIB_MODULE_INDICATOR([malloc-posix])
  gl_MALLOCA
  gl_MBCHAR
  gl_MBITER
  gl_FUNC_MBRLEN
  if test $HAVE_MBRLEN = 0 || test $REPLACE_MBRLEN = 1; then
    AC_LIBOBJ([mbrlen])
    gl_PREREQ_MBRLEN
  fi
  gl_WCHAR_MODULE_INDICATOR([mbrlen])
  gl_FUNC_MBRTOWC
  if test $HAVE_MBRTOWC = 0 || test $REPLACE_MBRTOWC = 1; then
    AC_LIBOBJ([mbrtowc])
    gl_PREREQ_MBRTOWC
  fi
  gl_WCHAR_MODULE_INDICATOR([mbrtowc])
  gl_STRING_MODULE_INDICATOR([mbscasecmp])
  gl_FUNC_MBSINIT
  if test $HAVE_MBSINIT = 0 || test $REPLACE_MBSINIT = 1; then
    AC_LIBOBJ([mbsinit])
    gl_PREREQ_MBSINIT
  fi
  gl_WCHAR_MODULE_INDICATOR([mbsinit])
  gl_FUNC_MBSLEN
  gl_STRING_MODULE_INDICATOR([mbslen])
  gl_FUNC_MBSRTOWCS
  if test $HAVE_MBSRTOWCS = 0 || test $REPLACE_MBSRTOWCS = 1; then
    AC_LIBOBJ([mbsrtowcs])
    AC_LIBOBJ([mbsrtowcs-state])
    gl_PREREQ_MBSRTOWCS
  fi
  gl_WCHAR_MODULE_INDICATOR([mbsrtowcs])
  gl_STRING_MODULE_INDICATOR([mbsstr])
  gl_FUNC_MBTOWC
  if test $REPLACE_MBTOWC = 1; then
    AC_LIBOBJ([mbtowc])
    gl_PREREQ_MBTOWC
  fi
  gl_STDLIB_MODULE_INDICATOR([mbtowc])
  gl_MBITER
  gl_FUNC_MEMCHR
  if test $HAVE_MEMCHR = 0 || test $REPLACE_MEMCHR = 1; then
    AC_LIBOBJ([memchr])
    gl_PREREQ_MEMCHR
  fi
  gl_STRING_MODULE_INDICATOR([memchr])
  gl_FUNC_MEMPCPY
  if test $HAVE_MEMPCPY = 0; then
    AC_LIBOBJ([mempcpy])
    gl_PREREQ_MEMPCPY
  fi
  gl_STRING_MODULE_INDICATOR([mempcpy])
  gl_FUNC_MEMRCHR
  if test $ac_cv_func_memrchr = no; then
    AC_LIBOBJ([memrchr])
    gl_PREREQ_MEMRCHR
  fi
  gl_STRING_MODULE_INDICATOR([memrchr])
  gl_MINMAX
  AC_REQUIRE([gl_MSVC_INVAL])
  if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
    AC_LIBOBJ([msvc-inval])
  fi
  AC_REQUIRE([gl_MSVC_NOTHROW])
  if test $HAVE_MSVC_INVALID_PARAMETER_HANDLER = 1; then
    AC_LIBOBJ([msvc-nothrow])
  fi
  gl_MODULE_INDICATOR([msvc-nothrow])
  gl_MULTIARCH
  gl_FUNC_NL_LANGINFO
  if test $HAVE_NL_LANGINFO = 0 || test $REPLACE_NL_LANGINFO = 1; then
    AC_LIBOBJ([nl_langinfo])
  fi
  gl_LANGINFO_MODULE_INDICATOR([nl_langinfo])
  AC_FUNC_OBSTACK
  dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]).
  gl_FUNC_OPEN
  if test $REPLACE_OPEN = 1; then
    AC_LIBOBJ([open])
    gl_PREREQ_OPEN
  fi
  gl_FCNTL_MODULE_INDICATOR([open])
  gl_FUNC_OPENAT
  if test $HAVE_OPENAT = 0 || test $REPLACE_OPENAT = 1; then
    AC_LIBOBJ([openat])
    gl_PREREQ_OPENAT
  fi
  gl_MODULE_INDICATOR([openat]) dnl for lib/getcwd.c
  gl_FCNTL_MODULE_INDICATOR([openat])
  gl_OPENAT_SAFER
  gl_MODULE_INDICATOR([openat-safer])
  gl_FUNC_OPENDIR
  if test $HAVE_OPENDIR = 0 || test $REPLACE_OPENDIR = 1; then
    AC_LIBOBJ([opendir])
  fi
  gl_DIRENT_MODULE_INDICATOR([opendir])
  gl_PATHMAX
  gl_PERL
  m4_ifdef([AM_XGETTEXT_OPTION],
    [AM_][XGETTEXT_OPTION([--keyword='proper_name:1,\"This is a proper name. See the gettext manual, section Names.\"'])
     AM_][XGETTEXT_OPTION([--keyword='proper_name_utf8:1,\"This is a proper name. See the gettext manual, section Names.\"'])])
  gl_QUOTE
  gl_QUOTEARG
  gl_FUNC_READ
  if test $REPLACE_READ = 1; then
    AC_LIBOBJ([read])
    gl_PREREQ_READ
  fi
  gl_UNISTD_MODULE_INDICATOR([read])
  gl_FUNC_READDIR
  if test $HAVE_READDIR = 0; then
    AC_LIBOBJ([readdir])
  fi
  gl_DIRENT_MODULE_INDICATOR([readdir])
  gl_FUNC_REALLOC_GNU
  if test $REPLACE_REALLOC = 1; then
    AC_LIBOBJ([realloc])
  fi
  gl_MODULE_INDICATOR([realloc-gnu])
  gl_FUNC_REALLOC_POSIX
  if test $REPLACE_REALLOC = 1; then
    AC_LIBOBJ([realloc])
  fi
  gl_STDLIB_MODULE_INDICATOR([realloc-posix])
  gl_REGEX
  if test $ac_use_included_regex = yes; then
    AC_LIBOBJ([regex])
    gl_PREREQ_REGEX
  fi
  gl_PREREQ_SAFE_READ
  gl_SAVE_CWD
  gt_TYPE_SSIZE_T
  gl_FUNC_STAT
  if test $REPLACE_STAT = 1; then
    AC_LIBOBJ([stat])
    AC_LIBOBJ([stat-w32])
    gl_PREREQ_STAT
  fi
  gl_SYS_STAT_MODULE_INDICATOR([stat])
  gl_STDALIGN_H
  gl_STDARG_H
  AM_STDBOOL_H
  gl_STDDEF_H
  gl_STDINT_H
  gl_STDIO_H
  gl_STDLIB_H
  gl_FUNC_STPCPY
  if test $HAVE_STPCPY = 0; then
    AC_LIBOBJ([stpcpy])
    gl_PREREQ_STPCPY
  fi
  gl_STRING_MODULE_INDICATOR([stpcpy])
  gl_FUNC_STRDUP_POSIX
  if test $ac_cv_func_strdup = no || test $REPLACE_STRDUP = 1; then
    AC_LIBOBJ([strdup])
    gl_PREREQ_STRDUP
  fi
  gl_STRING_MODULE_INDICATOR([strdup])
  gl_FUNC_STRERROR
  if test $REPLACE_STRERROR = 1; then
    AC_LIBOBJ([strerror])
  fi
  gl_MODULE_INDICATOR([strerror])
  gl_STRING_MODULE_INDICATOR([strerror])
  AC_REQUIRE([gl_HEADER_ERRNO_H])
  AC_REQUIRE([gl_FUNC_STRERROR_0])
  if test -n "$ERRNO_H" || test $REPLACE_STRERROR_0 = 1; then
    AC_LIBOBJ([strerror-override])
    gl_PREREQ_SYS_H_WINSOCK2
  fi
  if test $gl_cond_libtool = false; then
    gl_ltlibdeps="$gl_ltlibdeps $LTLIBICONV"
    gl_libdeps="$gl_libdeps $LIBICONV"
  fi
  gl_HEADER_STRING_H
  gl_FUNC_STRNLEN
  if test $HAVE_DECL_STRNLEN = 0 || test $REPLACE_STRNLEN = 1; then
    AC_LIBOBJ([strnlen])
    gl_PREREQ_STRNLEN
  fi
  gl_STRING_MODULE_INDICATOR([strnlen])
  gl_FUNC_STRSTR
  if test $REPLACE_STRSTR = 1; then
    AC_LIBOBJ([strstr])
  fi
  gl_FUNC_STRSTR_SIMPLE
  if test $REPLACE_STRSTR = 1; then
    AC_LIBOBJ([strstr])
  fi
  gl_STRING_MODULE_INDICATOR([strstr])
  gl_FUNC_STRTOIMAX
  if test $HAVE_DECL_STRTOIMAX = 0 || test $REPLACE_STRTOIMAX = 1; then
    AC_LIBOBJ([strtoimax])
    gl_PREREQ_STRTOIMAX
  fi
  gl_INTTYPES_MODULE_INDICATOR([strtoimax])
  gl_FUNC_STRTOLL
  if test $HAVE_STRTOLL = 0; then
    AC_LIBOBJ([strtoll])
    gl_PREREQ_STRTOLL
  fi
  gl_STDLIB_MODULE_INDICATOR([strtoll])
  gl_FUNC_STRTOULL
  if test $HAVE_STRTOULL = 0; then
    AC_LIBOBJ([strtoull])
    gl_PREREQ_STRTOULL
  fi
  gl_STDLIB_MODULE_INDICATOR([strtoull])
  gl_FUNC_STRTOUMAX
  if test $HAVE_DECL_STRTOUMAX = 0 || test $REPLACE_STRTOUMAX = 1; then
    AC_LIBOBJ([strtoumax])
    gl_PREREQ_STRTOUMAX
  fi
  gl_INTTYPES_MODULE_INDICATOR([strtoumax])
  gl_HEADER_SYS_STAT_H
  AC_PROG_MKDIR_P
  gl_SYS_TYPES_H
  AC_PROG_MKDIR_P
  gl_THREADLIB
  gl_HEADER_TIME_H
  gl_UNISTD_H
  gl_UNISTD_SAFER
  gl_LIBUNISTRING_LIBHEADER([0.9.4], [unistr.h])
  gl_MODULE_INDICATOR([unistr/u8-mbtoucr])
  gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-mbtoucr])
  gl_MODULE_INDICATOR([unistr/u8-uctomb])
  gl_LIBUNISTRING_MODULE([0.9], [unistr/u8-uctomb])
  gl_LIBUNISTRING_LIBHEADER([0.9.4], [unitypes.h])
  gl_LIBUNISTRING_LIBHEADER([0.9.4], [uniwidth.h])
  gl_LIBUNISTRING_MODULE([0.9.6], [uniwidth/width])
  gl_FUNC_GLIBC_UNLOCKED_IO
  gl_VERSION_ETC
  gl_WCHAR_H
  gl_FUNC_WCRTOMB
  if test $HAVE_WCRTOMB = 0 || test $REPLACE_WCRTOMB = 1; then
    AC_LIBOBJ([wcrtomb])
    gl_PREREQ_WCRTOMB
  fi
  gl_WCHAR_MODULE_INDICATOR([wcrtomb])
  gl_FUNC_WCTOB
  if test $HAVE_WCTOB = 0 || test $REPLACE_WCTOB = 1; then
    AC_LIBOBJ([wctob])
    gl_PREREQ_WCTOB
  fi
  gl_WCHAR_MODULE_INDICATOR([wctob])
  gl_FUNC_WCTOMB
  if test $REPLACE_WCTOMB = 1; then
    AC_LIBOBJ([wctomb])
    gl_PREREQ_WCTOMB
  fi
  gl_STDLIB_MODULE_INDICATOR([wctomb])
  gl_WCTYPE_H
  gl_FUNC_WCWIDTH
  if test $HAVE_WCWIDTH = 0 || test $REPLACE_WCWIDTH = 1; then
    AC_LIBOBJ([wcwidth])
  fi
  gl_WCHAR_MODULE_INDICATOR([wcwidth])
  gl_XALLOC
  gl_XSTRTOL
  # End of code from modules
  m4_ifval(gl_LIBSOURCES_LIST, [
    m4_syscmd([test ! -d ]m4_defn([gl_LIBSOURCES_DIR])[ ||
      for gl_file in ]gl_LIBSOURCES_LIST[ ; do
        if test ! -r ]m4_defn([gl_LIBSOURCES_DIR])[/$gl_file ; then
          echo "missing file ]m4_defn([gl_LIBSOURCES_DIR])[/$gl_file" >&2
          exit 1
        fi
      done])dnl
      m4_if(m4_sysval, [0], [],
        [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])])
  ])
  m4_popdef([gl_LIBSOURCES_DIR])
  m4_popdef([gl_LIBSOURCES_LIST])
  m4_popdef([AC_LIBSOURCES])
  m4_popdef([AC_REPLACE_FUNCS])
  m4_popdef([AC_LIBOBJ])
  AC_CONFIG_COMMANDS_PRE([
    gl_libobjs=
    gl_ltlibobjs=
    if test -n "$gl_LIBOBJS"; then
      # Remove the extension.
      sed_drop_objext='s/\.o$//;s/\.obj$//'
      for i in `for i in $gl_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do
        gl_libobjs="$gl_libobjs $i.$ac_objext"
        gl_ltlibobjs="$gl_ltlibobjs $i.lo"
      done
    fi
    AC_SUBST([gl_LIBOBJS], [$gl_libobjs])
    AC_SUBST([gl_LTLIBOBJS], [$gl_ltlibobjs])
  ])
  gltests_libdeps=
  gltests_ltlibdeps=
  m4_pushdef([AC_LIBOBJ], m4_defn([gltests_LIBOBJ]))
  m4_pushdef([AC_REPLACE_FUNCS], m4_defn([gltests_REPLACE_FUNCS]))
  m4_pushdef([AC_LIBSOURCES], m4_defn([gltests_LIBSOURCES]))
  m4_pushdef([gltests_LIBSOURCES_LIST], [])
  m4_pushdef([gltests_LIBSOURCES_DIR], [])
  gl_COMMON
  gl_source_base='gnulib-tests'
changequote(,)dnl
  gltests_WITNESS=IN_`echo "${PACKAGE-$PACKAGE_TARNAME}" | LC_ALL=C tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ | LC_ALL=C sed -e 's/[^A-Z0-9_]/_/g'`_GNULIB_TESTS
changequote([, ])dnl
  AC_SUBST([gltests_WITNESS])
  gl_module_indicator_condition=$gltests_WITNESS
  m4_pushdef([gl_MODULE_INDICATOR_CONDITION], [$gl_module_indicator_condition])
  gt_LOCALE_FR
  gt_LOCALE_FR_UTF8
  gt_LOCALE_FR
  gt_LOCALE_TR_UTF8
  gl_ENVIRON
  gl_UNISTD_MODULE_INDICATOR([environ])
  gl_MODULE_INDICATOR([fd-safer-flag])
  gl_FUNC_FDOPEN
  if test $REPLACE_FDOPEN = 1; then
    AC_LIBOBJ([fdopen])
    gl_PREREQ_FDOPEN
  fi
  gl_STDIO_MODULE_INDICATOR([fdopen])
  gl_FLOAT_H
  if test $REPLACE_FLOAT_LDBL = 1; then
    AC_LIBOBJ([float])
  fi
  if test $REPLACE_ITOLD = 1; then
    AC_LIBOBJ([itold])
  fi
  gl_INTTOSTR
  AC_CHECK_FUNCS_ONCE([newlocale])
  gl_LOCALENAME
  AC_CHECK_FUNCS_ONCE([newlocale])
  gt_LOCALE_TR_UTF8
  gt_LOCALE_FR_UTF8
  gt_LOCALE_FR
  gt_LOCALE_FR_UTF8
  gt_LOCALE_JA
  gt_LOCALE_ZH_CN
  gt_LOCALE_FR_UTF8
  gt_LOCALE_ZH_CN
  dnl Check for prerequisites for memory fence checks.
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  gt_LOCALE_FR
  gt_LOCALE_FR_UTF8
  gl_FUNC_PIPE
  if test $HAVE_PIPE = 0; then
    AC_LIBOBJ([pipe])
  fi
  gl_UNISTD_MODULE_INDICATOR([pipe])
  gl_FUNC_PUTENV
  if test $REPLACE_PUTENV = 1; then
    AC_LIBOBJ([putenv])
    gl_PREREQ_PUTENV
  fi
  gl_STDLIB_MODULE_INDICATOR([putenv])
  dnl Check for prerequisites for memory fence checks.
  dnl FIXME: zerosize-ptr.h requires these: make a module for it
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  gl_FUNC_SETENV
  if test $HAVE_SETENV = 0 || test $REPLACE_SETENV = 1; then
    AC_LIBOBJ([setenv])
  fi
  gl_STDLIB_MODULE_INDICATOR([setenv])
  gl_FUNC_SETLOCALE
  if test $REPLACE_SETLOCALE = 1; then
    AC_LIBOBJ([setlocale])
    gl_PREREQ_SETLOCALE
  fi
  gl_LOCALE_MODULE_INDICATOR([setlocale])
  gt_LOCALE_FR
  gt_LOCALE_FR_UTF8
  gt_LOCALE_JA
  gt_LOCALE_ZH_CN
  gl_SIZE_MAX
  gl_FUNC_SNPRINTF
  gl_STDIO_MODULE_INDICATOR([snprintf])
  gl_MODULE_INDICATOR([snprintf])
  AC_REQUIRE([gt_TYPE_WCHAR_T])
  AC_REQUIRE([gt_TYPE_WINT_T])
  dnl Check for prerequisites for memory fence checks.
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  AC_CHECK_DECLS_ONCE([alarm])
  gl_FUNC_MMAP_ANON
  AC_CHECK_HEADERS_ONCE([sys/mman.h])
  AC_CHECK_FUNCS_ONCE([mprotect])
  gl_FUNC_SYMLINK
  if test $HAVE_SYMLINK = 0 || test $REPLACE_SYMLINK = 1; then
    AC_LIBOBJ([symlink])
  fi
  gl_UNISTD_MODULE_INDICATOR([symlink])
  gl_FUNC_UNSETENV
  if test $HAVE_UNSETENV = 0 || test $REPLACE_UNSETENV = 1; then
    AC_LIBOBJ([unsetenv])
    gl_PREREQ_UNSETENV
  fi
  gl_STDLIB_MODULE_INDICATOR([unsetenv])
  gl_FUNC_VASNPRINTF
  abs_aux_dir=`cd "$ac_aux_dir"; pwd`
  AC_SUBST([abs_aux_dir])
  gt_LOCALE_FR
  gt_LOCALE_FR_UTF8
  gt_LOCALE_JA
  gt_LOCALE_ZH_CN
  gl_XSIZE
  m4_popdef([gl_MODULE_INDICATOR_CONDITION])
  m4_ifval(gltests_LIBSOURCES_LIST, [
    m4_syscmd([test ! -d ]m4_defn([gltests_LIBSOURCES_DIR])[ ||
      for gl_file in ]gltests_LIBSOURCES_LIST[ ; do
        if test ! -r ]m4_defn([gltests_LIBSOURCES_DIR])[/$gl_file ; then
          echo "missing file ]m4_defn([gltests_LIBSOURCES_DIR])[/$gl_file" >&2
          exit 1
        fi
      done])dnl
      m4_if(m4_sysval, [0], [],
        [AC_FATAL([expected source file, required through AC_LIBSOURCES, not found])])
  ])
  m4_popdef([gltests_LIBSOURCES_DIR])
  m4_popdef([gltests_LIBSOURCES_LIST])
  m4_popdef([AC_LIBSOURCES])
  m4_popdef([AC_REPLACE_FUNCS])
  m4_popdef([AC_LIBOBJ])
  AC_CONFIG_COMMANDS_PRE([
    gltests_libobjs=
    gltests_ltlibobjs=
    if test -n "$gltests_LIBOBJS"; then
      # Remove the extension.
      sed_drop_objext='s/\.o$//;s/\.obj$//'
      for i in `for i in $gltests_LIBOBJS; do echo "$i"; done | sed -e "$sed_drop_objext" | sort | uniq`; do
        gltests_libobjs="$gltests_libobjs $i.$ac_objext"
        gltests_ltlibobjs="$gltests_ltlibobjs $i.lo"
      done
    fi
    AC_SUBST([gltests_LIBOBJS], [$gltests_libobjs])
    AC_SUBST([gltests_LTLIBOBJS], [$gltests_ltlibobjs])
  ])
  LIBGREPUTILS_LIBDEPS="$gl_libdeps"
  AC_SUBST([LIBGREPUTILS_LIBDEPS])
  LIBGREPUTILS_LTLIBDEPS="$gl_ltlibdeps"
  AC_SUBST([LIBGREPUTILS_LTLIBDEPS])
  LIBTESTS_LIBDEPS="$gltests_libdeps"
  AC_SUBST([LIBTESTS_LIBDEPS])
])

# Like AC_LIBOBJ, except that the module name goes
# into gl_LIBOBJS instead of into LIBOBJS.
AC_DEFUN([gl_LIBOBJ], [
  AS_LITERAL_IF([$1], [gl_LIBSOURCES([$1.c])])dnl
  gl_LIBOBJS="$gl_LIBOBJS $1.$ac_objext"
])

# Like AC_REPLACE_FUNCS, except that the module name goes
# into gl_LIBOBJS instead of into LIBOBJS.
AC_DEFUN([gl_REPLACE_FUNCS], [
  m4_foreach_w([gl_NAME], [$1], [AC_LIBSOURCES(gl_NAME[.c])])dnl
  AC_CHECK_FUNCS([$1], , [gl_LIBOBJ($ac_func)])
])

# Like AC_LIBSOURCES, except the directory where the source file is
# expected is derived from the gnulib-tool parameterization,
# and alloca is special cased (for the alloca-opt module).
# We could also entirely rely on EXTRA_lib..._SOURCES.
AC_DEFUN([gl_LIBSOURCES], [
  m4_foreach([_gl_NAME], [$1], [
    m4_if(_gl_NAME, [alloca.c], [], [
      m4_define([gl_LIBSOURCES_DIR], [lib])
      m4_append([gl_LIBSOURCES_LIST], _gl_NAME, [ ])
    ])
  ])
])

# Like AC_LIBOBJ, except that the module name goes
# into gltests_LIBOBJS instead of into LIBOBJS.
AC_DEFUN([gltests_LIBOBJ], [
  AS_LITERAL_IF([$1], [gltests_LIBSOURCES([$1.c])])dnl
  gltests_LIBOBJS="$gltests_LIBOBJS $1.$ac_objext"
])

# Like AC_REPLACE_FUNCS, except that the module name goes
# into gltests_LIBOBJS instead of into LIBOBJS.
AC_DEFUN([gltests_REPLACE_FUNCS], [
  m4_foreach_w([gl_NAME], [$1], [AC_LIBSOURCES(gl_NAME[.c])])dnl
  AC_CHECK_FUNCS([$1], , [gltests_LIBOBJ($ac_func)])
])

# Like AC_LIBSOURCES, except the directory where the source file is
# expected is derived from the gnulib-tool parameterization,
# and alloca is special cased (for the alloca-opt module).
# We could also entirely rely on EXTRA_lib..._SOURCES.
AC_DEFUN([gltests_LIBSOURCES], [
  m4_foreach([_gl_NAME], [$1], [
    m4_if(_gl_NAME, [alloca.c], [], [
      m4_define([gltests_LIBSOURCES_DIR], [gnulib-tests])
      m4_append([gltests_LIBSOURCES_LIST], _gl_NAME, [ ])
    ])
  ])
])

# This macro records the list of files which have been installed by
# gnulib-tool and may be removed by future gnulib-tool invocations.
AC_DEFUN([gl_FILE_LIST], [
  build-aux/announce-gen
  build-aux/config.rpath
  build-aux/do-release-commit-and-tag
  build-aux/gendocs.sh
  build-aux/git-version-gen
  build-aux/gitlog-to-changelog
  build-aux/gnu-web-doc-update
  build-aux/gnupload
  build-aux/update-copyright
  build-aux/useless-if-before-free
  build-aux/vc-list-files
  doc/fdl.texi
  doc/gendocs_template
  doc/gendocs_template_min
  lib/_Noreturn.h
  lib/alignof.h
  lib/alloca.c
  lib/alloca.in.h
  lib/arg-nonnull.h
  lib/argmatch.c
  lib/argmatch.h
  lib/assure.h
  lib/at-func.c
  lib/basename-lgpl.c
  lib/binary-io.c
  lib/binary-io.h
  lib/bitrotate.c
  lib/bitrotate.h
  lib/btowc.c
  lib/c++defs.h
  lib/c-ctype.c
  lib/c-ctype.h
  lib/c-strcase.h
  lib/c-strcasecmp.c
  lib/c-strcaseeq.h
  lib/c-strncasecmp.c
  lib/chdir-long.c
  lib/chdir-long.h
  lib/cloexec.c
  lib/cloexec.h
  lib/close-stream.c
  lib/close-stream.h
  lib/close.c
  lib/closedir.c
  lib/closeout.c
  lib/closeout.h
  lib/config.charset
  lib/creat-safer.c
  lib/ctype.in.h
  lib/cycle-check.c
  lib/cycle-check.h
  lib/dev-ino.h
  lib/dfa.c
  lib/dfa.h
  lib/dirent--.h
  lib/dirent-private.h
  lib/dirent-safer.h
  lib/dirent.in.h
  lib/dirfd.c
  lib/dirname-lgpl.c
  lib/dirname.h
  lib/dosname.h
  lib/dup-safer.c
  lib/dup.c
  lib/dup2.c
  lib/errno.in.h
  lib/error.c
  lib/error.h
  lib/exclude.c
  lib/exclude.h
  lib/exitfail.c
  lib/exitfail.h
  lib/fchdir.c
  lib/fcntl--.h
  lib/fcntl-safer.h
  lib/fcntl.c
  lib/fcntl.in.h
  lib/fd-hook.c
  lib/fd-hook.h
  lib/fd-safer.c
  lib/fdopendir.c
  lib/filename.h
  lib/filenamecat-lgpl.c
  lib/filenamecat.h
  lib/flexmember.h
  lib/fnmatch.c
  lib/fnmatch.in.h
  lib/fnmatch_loop.c
  lib/fpending.c
  lib/fpending.h
  lib/fstat.c
  lib/fstatat.c
  lib/fts-cycle.c
  lib/fts.c
  lib/fts_.h
  lib/getcwd-lgpl.c
  lib/getdtablesize.c
  lib/getopt-cdefs.in.h
  lib/getopt-core.h
  lib/getopt-ext.h
  lib/getopt-pfx-core.h
  lib/getopt-pfx-ext.h
  lib/getopt.c
  lib/getopt.in.h
  lib/getopt1.c
  lib/getopt_int.h
  lib/getpagesize.c
  lib/getprogname.c
  lib/getprogname.h
  lib/gettext.h
  lib/glthread/lock.c
  lib/glthread/lock.h
  lib/glthread/threadlib.c
  lib/hard-locale.c
  lib/hard-locale.h
  lib/hash.c
  lib/hash.h
  lib/i-ring.c
  lib/i-ring.h
  lib/iconv.c
  lib/iconv.in.h
  lib/iconv_close.c
  lib/iconv_open-aix.gperf
  lib/iconv_open-hpux.gperf
  lib/iconv_open-irix.gperf
  lib/iconv_open-osf.gperf
  lib/iconv_open-solaris.gperf
  lib/iconv_open.c
  lib/ignore-value.h
  lib/intprops.h
  lib/inttypes.in.h
  lib/isatty.c
  lib/isblank.c
  lib/iswblank.c
  lib/iswctype-impl.h
  lib/iswctype.c
  lib/langinfo.in.h
  lib/limits.in.h
  lib/localcharset.c
  lib/localcharset.h
  lib/locale.in.h
  lib/localeconv.c
  lib/localeinfo.c
  lib/localeinfo.h
  lib/lseek.c
  lib/lstat.c
  lib/malloc.c
  lib/malloca.c
  lib/malloca.h
  lib/malloca.valgrind
  lib/mbchar.c
  lib/mbchar.h
  lib/mbiter.c
  lib/mbiter.h
  lib/mbrlen.c
  lib/mbrtowc.c
  lib/mbscasecmp.c
  lib/mbsinit.c
  lib/mbslen.c
  lib/mbsrtowcs-impl.h
  lib/mbsrtowcs-state.c
  lib/mbsrtowcs.c
  lib/mbsstr.c
  lib/mbtowc-impl.h
  lib/mbtowc.c
  lib/mbuiter.c
  lib/mbuiter.h
  lib/memchr.c
  lib/memchr.valgrind
  lib/memchr2.c
  lib/memchr2.h
  lib/memchr2.valgrind
  lib/mempcpy.c
  lib/memrchr.c
  lib/minmax.h
  lib/msvc-inval.c
  lib/msvc-inval.h
  lib/msvc-nothrow.c
  lib/msvc-nothrow.h
  lib/nl_langinfo.c
  lib/obstack.c
  lib/obstack.h
  lib/open-safer.c
  lib/open.c
  lib/openat-die.c
  lib/openat-priv.h
  lib/openat-proc.c
  lib/openat-safer.c
  lib/openat.c
  lib/openat.h
  lib/opendir-safer.c
  lib/opendir.c
  lib/pathmax.h
  lib/pipe-safer.c
  lib/propername.c
  lib/propername.h
  lib/quote.h
  lib/quotearg.c
  lib/quotearg.h
  lib/read.c
  lib/readdir.c
  lib/realloc.c
  lib/ref-add.sin
  lib/ref-del.sin
  lib/regcomp.c
  lib/regex.c
  lib/regex.h
  lib/regex_internal.c
  lib/regex_internal.h
  lib/regexec.c
  lib/safe-read.c
  lib/safe-read.h
  lib/same-inode.h
  lib/save-cwd.c
  lib/save-cwd.h
  lib/stat-w32.c
  lib/stat-w32.h
  lib/stat.c
  lib/stdalign.in.h
  lib/stdarg.in.h
  lib/stdbool.in.h
  lib/stddef.in.h
  lib/stdint.in.h
  lib/stdio-impl.h
  lib/stdio.in.h
  lib/stdlib.in.h
  lib/stpcpy.c
  lib/str-kmp.h
  lib/str-two-way.h
  lib/strdup.c
  lib/streq.h
  lib/strerror-override.c
  lib/strerror-override.h
  lib/strerror.c
  lib/striconv.c
  lib/striconv.h
  lib/string.in.h
  lib/stripslash.c
  lib/strnlen.c
  lib/strnlen1.c
  lib/strnlen1.h
  lib/strstr.c
  lib/strtoimax.c
  lib/strtol.c
  lib/strtoll.c
  lib/strtoul.c
  lib/strtoull.c
  lib/strtoumax.c
  lib/sys_stat.in.h
  lib/sys_types.in.h
  lib/time.in.h
  lib/trim.c
  lib/trim.h
  lib/unistd--.h
  lib/unistd-safer.h
  lib/unistd.c
  lib/unistd.in.h
  lib/unistr.in.h
  lib/unistr/u8-mbtoucr.c
  lib/unistr/u8-uctomb-aux.c
  lib/unistr/u8-uctomb.c
  lib/unitypes.in.h
  lib/uniwidth.in.h
  lib/uniwidth/cjk.h
  lib/uniwidth/width.c
  lib/unlocked-io.h
  lib/unused-parameter.h
  lib/verify.h
  lib/version-etc-fsf.c
  lib/version-etc.c
  lib/version-etc.h
  lib/warn-on-use.h
  lib/wchar.in.h
  lib/wcrtomb.c
  lib/wctob.c
  lib/wctomb-impl.h
  lib/wctomb.c
  lib/wctype-h.c
  lib/wctype.in.h
  lib/wcwidth.c
  lib/xalloc-die.c
  lib/xalloc-oversized.h
  lib/xalloc.h
  lib/xbinary-io.c
  lib/xbinary-io.h
  lib/xmalloc.c
  lib/xstriconv.c
  lib/xstriconv.h
  lib/xstrtoimax.c
  lib/xstrtol-error.c
  lib/xstrtol.c
  lib/xstrtol.h
  lib/xstrtoul.c
  m4/00gnulib.m4
  m4/absolute-header.m4
  m4/alloca.m4
  m4/assert.m4
  m4/btowc.m4
  m4/builtin-expect.m4
  m4/chdir-long.m4
  m4/close-stream.m4
  m4/close.m4
  m4/closedir.m4
  m4/closeout.m4
  m4/codeset.m4
  m4/configmake.m4
  m4/ctype.m4
  m4/cycle-check.m4
  m4/d-ino.m4
  m4/d-type.m4
  m4/dirent-safer.m4
  m4/dirent_h.m4
  m4/dirfd.m4
  m4/dirname.m4
  m4/double-slash-root.m4
  m4/dup.m4
  m4/dup2.m4
  m4/eealloc.m4
  m4/environ.m4
  m4/errno_h.m4
  m4/error.m4
  m4/exponentd.m4
  m4/extensions.m4
  m4/extern-inline.m4
  m4/fchdir.m4
  m4/fcntl-o.m4
  m4/fcntl-safer.m4
  m4/fcntl.m4
  m4/fcntl_h.m4
  m4/fdopen.m4
  m4/fdopendir.m4
  m4/filenamecat.m4
  m4/flexmember.m4
  m4/float_h.m4
  m4/fnmatch.m4
  m4/fpending.m4
  m4/fpieee.m4
  m4/fstat.m4
  m4/fstatat.m4
  m4/fts.m4
  m4/getcwd.m4
  m4/getdtablesize.m4
  m4/getopt.m4
  m4/getpagesize.m4
  m4/getprogname.m4
  m4/glibc21.m4
  m4/gnulib-common.m4
  m4/hard-locale.m4
  m4/i-ring.m4
  m4/iconv.m4
  m4/iconv_h.m4
  m4/iconv_open.m4
  m4/include_next.m4
  m4/inline.m4
  m4/intlmacosx.m4
  m4/intmax_t.m4
  m4/inttostr.m4
  m4/inttypes-pri.m4
  m4/inttypes.m4
  m4/inttypes_h.m4
  m4/isatty.m4
  m4/isblank.m4
  m4/iswblank.m4
  m4/iswctype.m4
  m4/langinfo_h.m4
  m4/largefile.m4
  m4/lcmessage.m4
  m4/lib-ld.m4
  m4/lib-link.m4
  m4/lib-prefix.m4
  m4/libunistring-base.m4
  m4/limits-h.m4
  m4/localcharset.m4
  m4/locale-fr.m4
  m4/locale-ja.m4
  m4/locale-tr.m4
  m4/locale-zh.m4
  m4/locale_h.m4
  m4/localeconv.m4
  m4/localename.m4
  m4/lock.m4
  m4/longlong.m4
  m4/lseek.m4
  m4/lstat.m4
  m4/malloc.m4
  m4/malloca.m4
  m4/manywarnings.m4
  m4/math_h.m4
  m4/mbchar.m4
  m4/mbiter.m4
  m4/mbrlen.m4
  m4/mbrtowc.m4
  m4/mbsinit.m4
  m4/mbslen.m4
  m4/mbsrtowcs.m4
  m4/mbstate_t.m4
  m4/mbtowc.m4
  m4/memchr.m4
  m4/mempcpy.m4
  m4/memrchr.m4
  m4/minmax.m4
  m4/mmap-anon.m4
  m4/mode_t.m4
  m4/msvc-inval.m4
  m4/msvc-nothrow.m4
  m4/multiarch.m4
  m4/nl_langinfo.m4
  m4/nocrash.m4
  m4/obstack.m4
  m4/off_t.m4
  m4/onceonly.m4
  m4/open.m4
  m4/openat.m4
  m4/opendir.m4
  m4/pathmax.m4
  m4/perl.m4
  m4/pipe.m4
  m4/printf.m4
  m4/pthread_rwlock_rdlock.m4
  m4/putenv.m4
  m4/quote.m4
  m4/quotearg.m4
  m4/read.m4
  m4/readdir.m4
  m4/realloc.m4
  m4/regex.m4
  m4/safe-read.m4
  m4/save-cwd.m4
  m4/setenv.m4
  m4/setlocale.m4
  m4/size_max.m4
  m4/snprintf.m4
  m4/ssize_t.m4
  m4/stat.m4
  m4/std-gnu11.m4
  m4/stdalign.m4
  m4/stdarg.m4
  m4/stdbool.m4
  m4/stddef_h.m4
  m4/stdint.m4
  m4/stdint_h.m4
  m4/stdio_h.m4
  m4/stdlib_h.m4
  m4/stpcpy.m4
  m4/strdup.m4
  m4/strerror.m4
  m4/string_h.m4
  m4/strnlen.m4
  m4/strstr.m4
  m4/strtoimax.m4
  m4/strtoll.m4
  m4/strtoull.m4
  m4/strtoumax.m4
  m4/symlink.m4
  m4/sys_socket_h.m4
  m4/sys_stat_h.m4
  m4/sys_types_h.m4
  m4/threadlib.m4
  m4/time_h.m4
  m4/unistd-safer.m4
  m4/unistd_h.m4
  m4/unlocked-io.m4
  m4/vasnprintf.m4
  m4/version-etc.m4
  m4/warn-on-use.m4
  m4/warnings.m4
  m4/wchar_h.m4
  m4/wchar_t.m4
  m4/wcrtomb.m4
  m4/wctob.m4
  m4/wctomb.m4
  m4/wctype_h.m4
  m4/wcwidth.m4
  m4/wint_t.m4
  m4/xalloc.m4
  m4/xsize.m4
  m4/xstrtol.m4
  tests/dfa-invalid-char-class.sh
  tests/dfa-match-aux.c
  tests/dfa-match.sh
  tests/init.sh
  tests/macros.h
  tests/signature.h
  tests/test-alignof.c
  tests/test-alloca-opt.c
  tests/test-argmatch.c
  tests/test-binary-io.c
  tests/test-binary-io.sh
  tests/test-bitrotate.c
  tests/test-btowc.c
  tests/test-btowc1.sh
  tests/test-btowc2.sh
  tests/test-c-ctype.c
  tests/test-c-strcase.sh
  tests/test-c-strcasecmp.c
  tests/test-c-strncasecmp.c
  tests/test-chdir.c
  tests/test-cloexec.c
  tests/test-close.c
  tests/test-ctype.c
  tests/test-dirent-safer.c
  tests/test-dirent.c
  tests/test-dup-safer.c
  tests/test-dup.c
  tests/test-dup2.c
  tests/test-environ.c
  tests/test-errno.c
  tests/test-exclude.c
  tests/test-exclude1.sh
  tests/test-exclude2.sh
  tests/test-exclude3.sh
  tests/test-exclude4.sh
  tests/test-exclude5.sh
  tests/test-exclude6.sh
  tests/test-exclude7.sh
  tests/test-exclude8.sh
  tests/test-fchdir.c
  tests/test-fcntl-h.c
  tests/test-fcntl-safer.c
  tests/test-fcntl.c
  tests/test-fdopen.c
  tests/test-fdopendir.c
  tests/test-fgetc.c
  tests/test-float.c
  tests/test-fnmatch.c
  tests/test-fpending.c
  tests/test-fpending.sh
  tests/test-fputc.c
  tests/test-fread.c
  tests/test-fstat.c
  tests/test-fstatat.c
  tests/test-fwrite.c
  tests/test-getcwd-lgpl.c
  tests/test-getdtablesize.c
  tests/test-getopt-gnu.c
  tests/test-getopt-main.h
  tests/test-getopt-posix.c
  tests/test-getopt.h
  tests/test-getopt_long.h
  tests/test-getprogname.c
  tests/test-hash.c
  tests/test-i-ring.c
  tests/test-iconv-h.c
  tests/test-iconv.c
  tests/test-ignore-value.c
  tests/test-init.sh
  tests/test-intprops.c
  tests/test-inttostr.c
  tests/test-inttypes.c
  tests/test-isatty.c
  tests/test-isblank.c
  tests/test-iswblank.c
  tests/test-langinfo.c
  tests/test-limits-h.c
  tests/test-locale.c
  tests/test-localeconv.c
  tests/test-localename.c
  tests/test-lseek.c
  tests/test-lseek.sh
  tests/test-lstat.c
  tests/test-lstat.h
  tests/test-malloc-gnu.c
  tests/test-malloca.c
  tests/test-mbscasecmp.c
  tests/test-mbscasecmp.sh
  tests/test-mbsinit.c
  tests/test-mbsinit.sh
  tests/test-mbsrtowcs.c
  tests/test-mbsrtowcs1.sh
  tests/test-mbsrtowcs2.sh
  tests/test-mbsrtowcs3.sh
  tests/test-mbsrtowcs4.sh
  tests/test-mbsstr1.c
  tests/test-mbsstr2.c
  tests/test-mbsstr2.sh
  tests/test-mbsstr3.c
  tests/test-mbsstr3.sh
  tests/test-memchr.c
  tests/test-memchr2.c
  tests/test-memrchr.c
  tests/test-nl_langinfo.c
  tests/test-nl_langinfo.sh
  tests/test-open.c
  tests/test-open.h
  tests/test-openat-safer.c
  tests/test-openat.c
  tests/test-pathmax.c
  tests/test-pipe.c
  tests/test-quotearg-simple.c
  tests/test-quotearg.h
  tests/test-read.c
  tests/test-realloc-gnu.c
  tests/test-regex.c
  tests/test-setenv.c
  tests/test-setlocale1.c
  tests/test-setlocale1.sh
  tests/test-setlocale2.c
  tests/test-setlocale2.sh
  tests/test-snprintf.c
  tests/test-stat.c
  tests/test-stat.h
  tests/test-stdalign.c
  tests/test-stdbool.c
  tests/test-stddef.c
  tests/test-stdint.c
  tests/test-stdio.c
  tests/test-stdlib.c
  tests/test-strerror.c
  tests/test-striconv.c
  tests/test-string.c
  tests/test-strnlen.c
  tests/test-strstr.c
  tests/test-strtoimax.c
  tests/test-strtoll.c
  tests/test-strtoull.c
  tests/test-strtoumax.c
  tests/test-symlink.c
  tests/test-symlink.h
  tests/test-sys_stat.c
  tests/test-sys_types.c
  tests/test-sys_wait.h
  tests/test-time.c
  tests/test-unistd.c
  tests/test-unsetenv.c
  tests/test-vasnprintf.c
  tests/test-vc-list-files-cvs.sh
  tests/test-vc-list-files-git.sh
  tests/test-verify-try.c
  tests/test-verify.c
  tests/test-verify.sh
  tests/test-version-etc.c
  tests/test-version-etc.sh
  tests/test-wchar.c
  tests/test-wcrtomb-w32-1.sh
  tests/test-wcrtomb-w32-2.sh
  tests/test-wcrtomb-w32-3.sh
  tests/test-wcrtomb-w32-4.sh
  tests/test-wcrtomb-w32-5.sh
  tests/test-wcrtomb-w32.c
  tests/test-wcrtomb.c
  tests/test-wcrtomb.sh
  tests/test-wctype-h.c
  tests/test-wcwidth.c
  tests/test-xalloc-die.c
  tests/test-xalloc-die.sh
  tests/test-xstrtoimax.c
  tests/test-xstrtoimax.sh
  tests/test-xstrtol.c
  tests/test-xstrtol.sh
  tests/test-xstrtoul.c
  tests/unistr/test-u8-mbtoucr.c
  tests/unistr/test-u8-uctomb.c
  tests/uniwidth/test-uc_width.c
  tests/uniwidth/test-uc_width2.c
  tests/uniwidth/test-uc_width2.sh
  tests/zerosize-ptr.h
  tests=lib/_Noreturn.h
  tests=lib/anytostr.c
  tests=lib/arg-nonnull.h
  tests=lib/asnprintf.c
  tests=lib/c++defs.h
  tests=lib/dup-safer-flag.c
  tests=lib/fd-safer-flag.c
  tests=lib/fdopen.c
  tests=lib/float+.h
  tests=lib/float.c
  tests=lib/float.in.h
  tests=lib/fpucw.h
  tests=lib/hash-pjw.c
  tests=lib/hash-pjw.h
  tests=lib/imaxtostr.c
  tests=lib/inttostr.c
  tests=lib/inttostr.h
  tests=lib/itold.c
  tests=lib/localename.c
  tests=lib/localename.h
  tests=lib/offtostr.c
  tests=lib/pipe.c
  tests=lib/printf-args.c
  tests=lib/printf-args.h
  tests=lib/printf-parse.c
  tests=lib/printf-parse.h
  tests=lib/putenv.c
  tests=lib/setenv.c
  tests=lib/setlocale.c
  tests=lib/size_max.h
  tests=lib/snprintf.c
  tests=lib/symlink.c
  tests=lib/uinttostr.c
  tests=lib/umaxtostr.c
  tests=lib/unsetenv.c
  tests=lib/unused-parameter.h
  tests=lib/vasnprintf.c
  tests=lib/vasnprintf.h
  tests=lib/warn-on-use.h
  tests=lib/xsize.c
  tests=lib/xsize.h
  top/GNUmakefile
  top/README-release
  top/maint.mk
])