Gnulib Module List

This is a list of the modules which make up gnulib, with dependencies.

Support for systems lacking ANSI C 89

exit exit() function: program termination.
atexit atexit() function: register a function to be called at program termination.
strtod strtod() function: convert string to 'double'.
strtol strtol() function: convert string to 'long'.
strtoul strtoul() function: convert string to 'unsigned long'.
memchr memchr() function: scan memory for a byte.
memcmp memcmp() function: compare memory areas.
memcpy memcpy() function: copy memory area.
memmove memmove() function: copy memory area.
memset memset() function: fill memory with a constant byte.
strcspn strcspn() function: search a string for any of a set of characters.
strpbrk strpbrk() function: search a string for any of a set of characters.
strstr strstr() function: search for a substring in a string.
strerror strerror() function: return string describing error code.
mktime mktime() function: convert broken-down time to linear time.
Most of these modules are not listed among dependencies below, for simplicity.

Enhancements for ANSI C 89 functions

Diagnostics <assert.h>

assert Allow the installer to disable assertions through "configure --disable-assert".
verify Compile-time assert-like macros.

Memory management functions <stdlib.h>

calloc calloc() function that is glibc compatible.
eealloc Memory allocation with expensive empty allocations (glibc compatible).
free Work around incompatibility on older systems where free (NULL) fails.
malloc malloc() function that is glibc compatible.
realloc realloc() function that is glibc compatible.
pagealign_alloc Memory allocation aligned on page boundaries.

Date and time <time.h>

fprintftime like nstrftime, but output the formatted date to a FILE* stream
strftime nstrftime() function: convert date and time to string, with GNU extensions.

Extra functions based on ANSI C 89

Memory management functions <stdlib.h>

xsize Checked size_t computations.
xalloc Memory allocation with out-of-memory checking. Also see xalloc-die.
xalloc-die Report a memory allocation failure and exit.
alloca Memory allocation on the stack.
alloca-opt Memory allocation on the stack, as an optional optimization. It allows using the alloca() macro if and only if the autoconf tests define HAVE_ALLOCA.
allocsa Safe automatic memory allocation.
xallocsa Safe automatic memory allocation with out of memory checking.

Integer arithmetic functions <stdlib.h>

gcd Greatest common divisor.
minmax MIN, MAX macros.

Environment variables <stdlib.h>

putenv putenv() function: change or add an environment variable.
setenv setenv() function: set an environment variable. unsetenv() function: remove an environment variable.
xsetenv xsetenv() function: set an environment variable, with out-of-memory checking. unsetenv() function: remove an environment variable.

Character handling <ctype.h>

c-ctype Character handling in C locale.

String handling <string.h>

bcopy Old BSD bcopy() function: copy memory area.
memmem memmem() function: locate first substring in a buffer.
mempcpy mempcpy() function: copy memory area, return point after last written byte.
memrchr memrchr() function: scan memory for a byte, from the right end.
stpcpy stpcpy() function: copy a string, returning a pointer to its end.
stpncpy stpncpy() function: copy a size-bounded string, returning a pointer to its end.
c-strcase Case-insensitive string comparison functions in C locale.
strcase Case-insensitive string comparison functions.
c-strcasestr Case-insensitive searching in a string in C locale.
strcasestr strcasestr() function: case-insensitive search for a substring in a string.
strchrnul strchrnul(): Find the first occurrence of C in S or the final NUL byte.
strdup strdup() function: duplicate a string.
strnlen strnlen() function: determine the length of a size-bounded string.
strnlen1 Quick string length estimation.
strndup strndup() function: duplicate a size-bounded string.
strsep strsep() function: extract token from string.
c-strstr Search for a substring in a string in C locale.
trim trim() removes leading and/or trailing whitespaces
xstrndup Duplicate a bounded initial segment of a string, with out-of-memory checking.

Numeric conversion functions <stdlib.h>

c-strtod Convert string to double in C locale.
c-strtold Convert string to long double in C locale.
xstrtod Convert string to 'double', with error checking.
xstrtol Convert string to 'long' or 'unsigned long', with error checking.
xstrtold Convert string to 'long double', with error checking.

Date and time <time.h>

getdate Convert a date/time string to linear time.
timegm Convert calendar time to simple time, inverse of mktime.
tzset tzset - initialize time conversion information

Input/Output <stdio.h>

unlocked-io Enable faster, non-thread-safe stdio functions if available.
fwriteerror Detect write error on a stream.
vasnprintf vsprintf with automatic memory allocation and bounded output size.
vasprintf vsprintf with automatic memory allocation.
xvasprintf vasprintf and asprintf with out-of-memory checking. Also see xalloc-die.

Signal handling <signal.h>

fatal-signal Emergency actions in case of a fatal signal.
raise Send a signal to the executing process.

Command-line arguments

argmatch Search for an exact or abbreviated match of a string in an array of strings.
version-etc Print --version output.
version-etc-fsf Copyright variable for FSF projects
long-options Handle --help and --version options.

Container data structures

list Abstract sequential list data type.
array-list Sequential list data type implemented by an array.
carray-list Sequential list data type implemented by a circular array.
linked-list Sequential list data type implemented by a linked list.
avltree-list Sequential list data type implemented by a binary tree.
rbtree-list Sequential list data type implemented by a binary tree.
linkedhash-list Sequential list data type implemented by a hash table with a linked list.
avltreehash-list Sequential list data type implemented by a hash table with a binary tree.
rbtreehash-list Sequential list data type implemented by a hash table with a binary tree.
oset Abstract ordered set data type.
array-oset Ordered set data type implemented by an array.
avltree-oset Ordered set data type implemented by a binary tree.
rbtree-oset Ordered set data type implemented by a binary tree.

Cryptographic computations

md5 Compute MD5 checksum.
sha1 Compute SHA1 checksum.

Misc

base64 Encode binary data using printable characters (base64).
check-version Check version string compatibility.
diacrit Decomposition of composed ISO-8859-1 characters.
getline Read a line from a stream.
getdelim Read character delimited data from a stream.
getnline Read a line from a stream, with bounded memory allocation.
getndelim2 Read a line from a stream, stopping at one of 2 delimiters, with bounded memory allocation.
linebuffer Read a line from a stream.
obstack Memory allocation, optimized for stack-like allocation patterns.
hash-pjw Compute a hash value for a NUL-terminated string.
hash Parametrizable hash table.
readline Simple implementation of readline.
readtokens Read tokens from a stream.
readtokens0 Read NUL-separated tokens from a stream.
strverscmp Compare strings holding version numbers.

Support for systems lacking ISO C 99

Core language properties

vararrays Variable-length arrays

Sizes of integer types <limits.h>

size_max Provide SIZE_MAX.

Variable arguments <stdarg.h>

stdarg An <stdarg.h> that conforms to C99.

Boolean type and values <stdbool.h>

stdbool An <stdbool.h> that nearly conforms to C99. (Nearly: casts to bool may not work.)

Integer types and values <stdint.h>

stdint A <stdint.h> that nearly conforms to C99. Assumes typical host with 8-bit bytes, two's complement representation, and no padding or trap representations, with int widths equal to 8, 16, 32, and 64 bits. {uint,int}_fast{8,16,32,64}_t may not correspond to the fastest types available on the system. Macros are used instead of typedefs.

Input/output <stdio.h>

snprintf snprintf() function: print formatted output to a fixed length string
vsnprintf vsnprintf() function: print formatted output from an stdarg argument list to a fixed length string

Numeric conversion functions <stdlib.h>

strtoll strtoll() function: convert string to 'long long'.
strtoull strtoull() function: convert string to 'unsigned long long'.

Functions for greatest-width integer types <inttypes.h>

strtoimax strtoimax() function: convert string to 'intmax_t'.
strtoumax strtoumax() function: convert string to 'uintmax_t'.

Mathematics <math.h>

mathl C99 functions for transcendental functions with long double arguments.

Enhancements for ISO C 99 functions

Extra functions based on ISO C 99

Numeric conversion functions <stdlib.h>

intprops Properties of integer types
inttostr Convert integers to printable strings.
xstrtoimax Convert string to 'intmax_t', with error checking.
xstrtoumax Convert string to 'uintmax_t', with error checking.

Extended multibyte and wide character utilities <wchar.h>

mbchar Multibyte character data type.
mbiter Iterating through multibyte strings.
mbuiter Iterating through multibyte strings.
mbfile Multibyte character I/O.

Support for systems lacking POSIX:2001

chown chown() function: change ownership of a file.
dup2 dup2() function: duplicate an open file descriptor.
ftruncate ftruncate() function: truncate an open file to a specified length.
getaddrinfo getaddrinfo() function: Get address information.
getcwd Return the current working directory.
getgroups getgroups() function: return the supplementary group IDs of the current process.
gethostname gethostname() function: Return machine's hostname.
getlogin_r getlogin_r() function: Get user name to a buffer allocated by the caller.
getsubopt getsubopt: Parse comma separate list into words.
gettimeofday gettimeofday() function: return current time.
inet_ntop Convert internet address from internal to printable, presentable format.
inet_pton Convert internet address from presentation to internal, binary, format.
mkdir mkdir() function: create a directory.
mkstemp mkstemp() function: create a private temporary file.
mkdtemp mkdtemp() function: create a private temporary directory.
poll poll() function: wait for some event on a set of file descriptors.
readlink readlink() function: read the value of a symbolic link.
lstat lstat() function: return information about a file or symbolic link.
time_r Reentrant time functions like localtime_r.
timespec struct timespec.
nanosleep nanosleep() function: pause execution for a specified time.
regex Regular expression matching.
rename rename() function: change the name or location of a file.
rmdir rmdir() function: delete a directory.
sigprocmask POSIX compatible signal blocking.
ssize_t Define ssize_t if it does not already exist.
strtok_r strtok_r() function: split string into tokens, thread safe.
sys_stat A <sys/stat.h> for systems with missing declarations.
unistd A <unistd.h> for systems lacking it.
utime utime() function: change access and/or modification times of a file.
wcwidth Determine the number of screen columns needed for a character.

Compatibility checks for POSIX:2001 functions

d-ino Check whether struct dirent has a member named d_ino.
d-type Check whether struct dirent has a member named d_type.
link-follow Determine whether link("symlink", "foo") follows the symlink.
rename-dest-slash rename() function: change the name or location of a file.
rmdir-errno rmdir errno for nonempty directories
unlink-busy Test whether a running program can be unlinked.
winsz-ioctl Test whether use of TIOCGWINSZ requires sys/ioctl.h.
winsz-termios Test whether use of TIOCGWINSZ requires termios.h.

Enhancements for POSIX:2001 functions

dirname Extract specific portions of filenames.
getopt Process command line arguments.
unistd-safer File descriptor functions that avoid clobbering STD{IN,OUT,ERR}_FILENO.
fnmatch GNU fnmatch() implementation.
fnmatch-posix fnmatch() function: wildcard matching.
fnmatch-gnu fnmatch() function: wildcard matching, with GNU extensions.
glob glob() function: Search for files and directories with paths matching a pattern, with GNU extensions.
exclude Manage list of filenames or wildcard patterns for --exclude option processing.

Extra functions based on POSIX:2001

Numeric conversion functions

human Convert a number (usually a file size) to a human readable string, possibly with K/M/G suffix.

File system functions

acl Access control lists of files. (Unportable.)
backupfile Determination of the filename of a backup file, according to user environment variables.
canonicalize Return the canonical absolute name of a given file.
clean-temp Temporary directories and temporary files with automatic cleanup.
copy-file Copying of files.
cycle-check help detect directory cycles efficiently
fsusage Return file system space usage info.
dirfd Retrieving the file descriptor of an open directory stream. (Unportable.)
euidaccess euidaccess() function: check effective user's permissions for a file.
file-type Return a string describing the type of a file.
fileblocks Estimate number of blocks of a file, if 'struct stat' doesn't have st_blocks.
filemode Return a string (?rwxrwxrwx format) describing the type and permissions of a file.
filenamecat Concatenate two arbitrary file names.
fts Traverse a file hierarchy.
fts-lgpl Traverse a file hierarchy (LPGL'ed version).
isdir Determine whether a directory exists.
lchmod lchmod that is actually chmod (!) on hosts lacking lchmod
lchown lchown() function: change ownership of a file.
mkancesdirs Ensure the existence of the ancestor directories of a file.
mkdir-p Ensure that a directory and its parents exist.
modechange Manipulation of mode changes specified by strings (e.g. as first argument of chmod utility).
mountlist Return list of mounted file systems.
pathname Construct a full pathname by concatenating a directory name, a relative filename, and a suffix.
pathmax Return maximum size of reasonable pathnames. (Unportable: Hurd has no limit.)
same Determine whether two file names refer to the same directory entry of the same directory.
save-cwd Save and restore the current working directory.
savedir Return the entries of a directory (just the names) as an argz string.
savewd Save and restore the working directory, possibly using a child process.
stat-time stat-related time functions
tmpdir Determine a temporary directory.
unlinkdir Determine (and maybe change) whether we can unlink directories.
utimecmp compare file time stamps
utimens Set file access and modification times.
xgetcwd Return the current working directory, without size limitations.
xreadlink Return the contents of a symbolic link, without size limitations.

File descriptor based Input/Output

fcntl-safer File descriptor functions that avoid clobbering STD{IN,OUT,ERR}_FILENO.
safe-read An interface to read() that retries after interrupts.
safe-write An interface to write() that retries after interrupts.
full-read An interface to read() that reads all it is asked to read.
full-write An interface to write() that writes all it is asked to write.
binary-io Binary mode I/O.
isapipe Test whether a file descriptor is a pipe.

File stream based Input/Output

close-stream Close a stream, with nicer error checking than fclose's.
closeout Close standard output and standard error, exiting with a diagnostic on error.
fopen-safer fopen function that avoids clobbering std{in,out,err}.
fpending Determine the number of bytes waiting in the output buffer of a stream.
getpass getpass() function: read a password from /dev/tty.
getpass-gnu getpass() function: read a password of arbitrary length from /dev/tty.
stdlib-safer File stream functions that avoid clobbering std{in,out,err}.
tmpfile-safer tmpfile function that avoids clobbering std{in,out,err}.

Users and groups

getugroups Return the group IDs of a user.
group-member Determine whether the current process has the permissions of a given group ID.
idcache Username <--> uid and groupname <--> gid conversions, with cache for speed.
userspec Parse a `user:group' specifier (e.g. the first argument of chown utility).

Date and time

gettime Return current time, with nanosecond resolution.
settime Set the current time, with nanosecond resolution.
posixtm Convert a date/time string (POSIX syntax) to linear time or broken-down time.
xnanosleep a more convenient interface to nanosleep

Networking functions

xgethostname Return machine's hostname, without size limitations.
canon-host Canonicalize a host name: return a name other hosts can understand, i.e. usually the host name including FQDN.

Multithreading

lock Locking in multithreaded situations.
tls Thread-local storage in multithreaded situations.

Internationalization functions

gettext Translate messages to user's native language.
gettext-h Translate messages to user's native language if the gettext module is also used.
iconv Character set conversion.
striconv Character set conversion of strings made easy, uses iconv.
xstriconv Character set conversion of strings made easy, uses iconv, with out-of-memory checking.
iconvme Character set conversion of strings made easy, uses iconv.
localcharset Return current locale's character encoding.
hard-locale Determine whether the current locale is different from the "C" locale.
mbswidth Determine the number of screen columns needed for a string.
memcasecmp Case-insensitive memory area comparison.
memcoll Locale dependent memory area comparison.
xmemcoll Locale dependent memory area comparison, with error checking.
unicodeio Unicode character output to streams with locale dependent encoding.
rpmatch Locale dependent classification of a response as matching "yes" or "no".
yesno Read a response from the user, and its classification as matching "yes" or "no".
ucs4-utf8 Conversion UCS-4 to UTF-8.
ucs4-utf16 Conversion UCS-4 to UTF-16.
utf8-ucs4 Conversion UTF-8 to UCS-4.
utf16-ucs4 Conversion UTF-16 to UCS-4.
linebreak Line breaking (works also for East-Asian languages).
bison-i18n Support for internationalization of bison-generated parsers.

Executing programs

cloexec Set or clear the close-on-exec descriptor flag.
findprog Locating a program in PATH.
wait-process Waiting for a subprocess to finish.
execute Creation of autonomous subprocesses.
pipe Creation of subprocesses, communicating via pipes.
sh-quote Shell quoting.

Java

classpath Java CLASSPATH handling.
javacomp Compile a Java program.
javaexec Execute a Java program.
javaversion Determine the Java version supported by javaexec.

C#

csharpcomp Compile a C# program.
csharpexec Execute a C# program.

Misc

argp Hierarchical processing of command line arguments.
argz Argv style string arrays in a single null delimited char*.
byteswap Swap bytes of 16, 32 and 64 bit values.
exitfail Set exit status for fatal signal.
c-stack Stack overflow handling, causing program exit.
error error() and error_at_line() functions: Error reporting.
extensions Enable extensions in standard headers
getdomainname getdomainname() function: Return machine's NIS domain name.
xgetdomainname Return machine's domainname, without size limitations.
getloadavg Return the current system load averages.
getpagesize getpagesize() function: Return memory page size.
getusershell Return names of valid user shells.
physmem Return amount of total/available physical memory.
posixver Determine desired POSIX specification version, according to user's environment variables.
progname Program name management.
quotearg Quote arguments for use in error messages.
quote Quote arguments for use in error messages.
readutmp Read entire utmp file into memory.
sig2str Convert between signal names and signal numbers.
sysexits Exit status codes for some BSD system programs.
verror verror() and verror_at_line() functions: Error reporting with va_list.
visibility Control of symbols exported by shared libraries.

Support for building libraries and executables

config-h Assume config.h exists, to avoid -DHAVE_CONFIG_H clutter in 'make' output.
configmake Variables set by "configure" or "make".
dummy A dummy file, to make sure the library is non-empty.
elisp-comp Compile Emacs Lisp files.
ldd Command to determine the dynamically linked dependencies of a program.
lib-ignore If possible, ignore libraries that are not depended on.

Support for building documentation

fdl Provide the GNU Free Documentation License in Texinfo format.
gendocs Generate manuals in several formats from Texinfo sources,
gpl Provide the GNU General Public License in Texinfo format.
lgpl Provide the GNU Lesser General Public License in Texinfo format.
regexprops-generic Describe the various regular expression flavors.

Support for maintaining and release projects

gnupload Upload PGP signed files to gnu.org. See http://www.gnu.org/prep/maintain/html_node/Automated-FTP-Uploads.html for more information.
maintainer-makefile Helper GNUmakefile with syntax checks, build improvements, etc.

Misc

host-os Define HOST_OPERATING_SYSTEM to a name for the host operating system.
perl Find a new-enough version of Perl.
uptime Test whether /proc/uptime might exist.

Support for systems lacking ANSI C 89

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
exit #include "exit.h" --- --- ---
atexit #include <stdlib.h> atexit.c atexit.m4
gl_FUNC_ATEXIT
---
strtod #include <stdlib.h> strtod.c strtod.m4
gl_FUNC_STRTOD
---
strtol #include <stdlib.h> strtol.c strtol.m4
gl_FUNC_STRTOL
---
strtoul #include <stdlib.h> strtoul.c strtoul.m4
gl_FUNC_STRTOUL
strtol
memchr #include <string.h> memchr.c memchr.m4
gl_FUNC_MEMCHR
---
memcmp #include <string.h> memcmp.c memcmp.m4
gl_FUNC_MEMCMP
---
memcpy #include <string.h> memcpy.c memcpy.m4
gl_FUNC_MEMCPY
---
memmove #include <string.h> memmove.c memmove.m4
gl_FUNC_MEMMOVE
---
memset #include <string.h> memset.c memset.m4
gl_FUNC_MEMSET
---
strcspn #include <string.h> strcspn.c strcspn.m4
gl_FUNC_STRCSPN
---
strpbrk #include "strpbrk.h" strpbrk.c strpbrk.m4
gl_FUNC_STRPBRK
---
strstr #include "strstr.h" strstr.c strstr.m4
mbrtowc.m4
gl_FUNC_STRSTR
mbuiter
strerror #include <string.h> strerror.c strerror.m4
gl_FUNC_STRERROR
---
mktime #include <time.h> mktime.c mktime.m4
gl_FUNC_MKTIME
time_r
Most of these modules are not listed among dependencies below, for simplicity.

Enhancements for ANSI C 89 functions

Diagnostics <assert.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
assert #include <assert.h> --- assert.m4
gl_ASSERT
---
verify #include "verify.h" --- --- ---

Memory management functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
calloc #include <stdlib.h> calloc.c calloc.m4
AC_FUNC_CALLOC
---
eealloc #include <eealloc.h> eealloc.h eealloc.m4
gl_EEALLOC
---
free #include <stdlib.h> free.c free.m4
gl_FUNC_FREE
---
malloc #include <stdlib.h> malloc.c AC_FUNC_MALLOC ---
realloc #include <stdlib.h> realloc.c AC_FUNC_REALLOC ---
pagealign_alloc #include "pagealign_alloc.h" pagealign_alloc.c mmap-anon.m4
pagealign_alloc.m4
gl_PAGEALIGN_ALLOC
error
exit
getpagesize
gettext-h
xalloc
unistd

Date and time <time.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
fprintftime #include "fprintftime.h" fprintftime.c fprintftime.m4
gl_FPRINTFTIME
strftime
strftime #include "strftime.h" strftime.c mbstate_t.m4
tm_gmtoff.m4
strftime.m4
gl_FUNC_GNU_STRFTIME
time_r
stdbool

Extra functions based on ANSI C 89

Memory management functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
xsize #include "xsize.h" --- xsize.m4
gl_XSIZE
size_max
xalloc #include "xalloc.h" xmalloc.c xalloc.m4
gl_XALLOC
xalloc-die
xalloc-die #include "xalloc.h" xalloc-die.c --- xalloc
error
gettext-h
exitfail
alloca #include <alloca.h> alloca.c --- alloca-opt
alloca-opt #include <alloca.h> alloca_.h alloca.m4
gl_FUNC_ALLOCA
---
allocsa #include "allocsa.h" allocsa.c
allocsa.valgrind
allocsa.m4
eealloc.m4
longlong.m4
longdouble.m4
gl_ALLOCSA
alloca-opt
xallocsa #include "xallocsa.h" xallocsa.c --- allocsa
xalloc

Integer arithmetic functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
gcd #include "gcd.h" gcd.c --- ---
minmax #include "minmax.h" --- minmax.m4
gl_MINMAX
---

Environment variables <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
putenv --- putenv.c putenv.m4
gl_FUNC_PUTENV
---
setenv #include "setenv.h" setenv.c
unsetenv.c
setenv.m4
gt_FUNC_SETENV
allocsa
alloca-opt
unistd
xsetenv #include "xsetenv.h" xsetenv.c --- setenv
error
exit
gettext-h

Character handling <ctype.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
c-ctype #include "c-ctype.h" c-ctype.c --- stdbool

String handling <string.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
bcopy --- bcopy.c AC_REPLACE_FUNCS(bcopy) ---
memmem #include "memmem.h" memmem.c memmem.m4
gl_FUNC_MEMMEM
---
mempcpy #include "mempcpy.h" mempcpy.c mempcpy.m4
gl_FUNC_MEMPCPY
---
memrchr #include "memrchr.h" memrchr.c memrchr.m4
gl_FUNC_MEMRCHR
---
stpcpy #include "stpcpy.h" stpcpy.c stpcpy.m4
gl_FUNC_STPCPY
---
stpncpy #include "stpncpy.h" stpncpy.c stpncpy.m4
gl_FUNC_STPNCPY
---
c-strcase #include "c-strcase.h" c-strcasecmp.c
c-strncasecmp.c
--- c-ctype
strcase #include "strcase.h" strcasecmp.c
strncasecmp.c
strcase.m4
mbrtowc.m4
gl_STRCASE
mbuiter
c-strcasestr #include "c-strcasestr.h" c-strcasestr.c --- c-ctype
strcasestr #include "strcasestr.h" strcasestr.c strcasestr.m4
mbrtowc.m4
gl_FUNC_STRCASESTR
mbuiter
strchrnul #include "strchrnul.h" strchrnul.c strchrnul.m4
gl_FUNC_STRCHRNUL
---
strdup #include "strdup.h" strdup.c strdup.m4
gl_FUNC_STRDUP
---
strnlen #include "strnlen.h" strnlen.c strnlen.m4
gl_FUNC_STRNLEN
extensions
strnlen1 #include "strnlen1.h" strnlen1.c --- memchr
strndup #include "strndup.h" strndup.c strndup.m4
gl_FUNC_STRNDUP
strnlen
strsep #include "strsep.h" strsep.c strsep.m4
gl_FUNC_STRSEP
strpbrk
c-strstr #include "c-strstr.h" c-strstr.c --- ---
trim #include "trim.h" trim.c --- xalloc
mbiter
xstrndup #include "xstrndup.h" xstrndup.c xstrndup.m4
gl_XSTRNDUP
strndup
xalloc

Numeric conversion functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
c-strtod #include "c-strtod.h" c-strtod.c c-strtod.m4
gl_C_STRTOD
extensions
xalloc
c-strtold #include "c-strtod.h" c-strtod.c
c-strtold.c
c-strtod.m4
gl_C_STRTOLD
extensions
xalloc
xstrtod #include "xstrtod.h" xstrtod.c xstrtod.m4
gl_XSTRTOD
stdbool
xstrtol #include "xstrtol.h" xstrtol.c
xstrtoul.c
xstrtol.m4
gl_XSTRTOL
exitfail
error
gettext-h
intprops
inttypes
xstrtold #include "xstrtod.h" xstrtod.c
xstrtold.c
xstrtod.m4
gl_XSTRTOLD
stdbool

Date and time <time.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
getdate #include "getdate.h" getdate.y bison.m4
tm_gmtoff.m4
getdate.m4
gl_GETDATE
timespec
stdbool
gettime
mktime
setenv
xalloc
timegm #include "timegm.h" timegm.c timegm.m4
gl_FUNC_TIMEGM
mktime
time_r
tzset #include <time.h> --- tzset.m4
gl_FUNC_TZSET_CLOBBER
gettimeofday

Input/Output <stdio.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
unlocked-io #include "unlocked-io.h" --- unlocked-io.m4
gl_FUNC_GLIBC_UNLOCKED_IO
extensions
fwriteerror #include "fwriteerror.h" fwriteerror.c AC_DEFINE([GNULIB_FWRITEERROR], 1,
[Define to 1 when using the gnulib fwriteerror module.])
stdbool
vasnprintf #include "vasnprintf.h" printf-args.h
printf-args.c
printf-parse.h
printf-parse.c
vasnprintf.c
asnprintf.c
signed.m4
longdouble.m4
wchar_t.m4
wint_t.m4
longlong.m4
intmax_t.m4
stdint_h.m4
inttypes_h.m4
eoverflow.m4
vasnprintf.m4
gl_FUNC_VASNPRINTF
alloca-opt
xsize
vasprintf #include "vasprintf.h" vasprintf.c
asprintf.c
vasprintf.m4
gl_FUNC_VASPRINTF
vasnprintf
xvasprintf #include "xvasprintf.h" xvasprintf.c
xasprintf.c
xalloc.h
xvasprintf.m4
gl_XVASPRINTF
vasprintf
xalloc-die
xsize
stdarg

Signal handling <signal.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
fatal-signal #include "fatal-signal.h" fatal-signal.c fatal-signal.m4
sig_atomic_t.m4
gl_FATAL_SIGNAL
xalloc
stdbool
unistd
sigprocmask
raise --- raise.c AC_REPLACE_FUNCS(raise) ---

Command-line arguments

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
argmatch #include "argmatch.h" argmatch.c argmatch.m4
gl_ARGMATCH
gettext-h
error
quotearg
quote
exit
exitfail
verify
stdbool
version-etc #include "version-etc.h" version-etc.c --- gettext-h
stdarg
version-etc-fsf --- version-etc-fsf.c --- version-etc
long-options #include "long-options.h" long-options.c long-options.m4
gl_LONG_OPTIONS
version-etc

Container data structures

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
list #include "gl_list.h" gl_list.c gl_list.m4
gl_LIST
stdbool
array-list #include "gl_array_list.h" gl_array_list.c --- list
xalloc
xsize
carray-list #include "gl_carray_list.h" gl_carray_list.c --- list
xalloc
xsize
linked-list #include "gl_linked_list.h" gl_linked_list.c
gl_anylinked_list1.h
gl_anylinked_list2.h
--- list
xalloc
avltree-list #include "gl_avltree_list.h" gl_avltree_list.c
gl_anyavltree_list1.h
gl_anyavltree_list2.h
gl_anytree_list1.h
gl_anytree_list2.h
--- list
xalloc
rbtree-list #include "gl_rbtree_list.h" gl_rbtree_list.c
gl_anyrbtree_list1.h
gl_anyrbtree_list2.h
gl_anytree_list1.h
gl_anytree_list2.h
--- list
xalloc
linkedhash-list #include "gl_linkedhash_list.h" gl_linkedhash_list.c
gl_anyhash_list1.h
gl_anyhash_list2.h
gl_anylinked_list1.h
gl_anylinked_list2.h
--- list
stdint
xalloc
xsize
avltreehash-list #include "gl_avltreehash_list.h" gl_avltreehash_list.c
gl_anyhash_list1.h
gl_anyhash_list2.h
gl_anyavltree_list1.h
gl_anyavltree_list2.h
gl_anytree_list1.h
gl_anytree_list2.h
gl_anytreehash_list1.h
gl_anytreehash_list2.h
--- list
avltree-oset
stdint
xalloc
xsize
rbtreehash-list #include "gl_rbtreehash_list.h" gl_rbtreehash_list.c
gl_anyhash_list1.h
gl_anyhash_list2.h
gl_anyrbtree_list1.h
gl_anyrbtree_list2.h
gl_anytree_list1.h
gl_anytree_list2.h
gl_anytreehash_list1.h
gl_anytreehash_list2.h
--- list
rbtree-oset
stdint
xalloc
xsize
oset #include "gl_oset.h" gl_oset.c gl_list.m4
gl_LIST
stdbool
array-oset #include "gl_array_oset.h" gl_array_oset.c --- oset
xalloc
xsize
avltree-oset #include "gl_avltree_oset.h" gl_avltree_oset.c
gl_anytree_oset.h
--- oset
xalloc
rbtree-oset #include "gl_rbtree_oset.h" gl_rbtree_oset.c
gl_anytree_oset.h
--- oset
xalloc

Cryptographic computations

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
md5 #include "md5.h" md5.c md5.m4
gl_MD5
stdint
sha1 #include "sha1.h" sha1.c sha1.m4
gl_SHA1
stdint

Misc

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
base64 #include "base64.h" base64.c base64.m4
gl_FUNC_BASE64
stdbool
check-version #include "check-version.h" check-version.c check-version.m4
gl_CHECK_VERSION
strverscmp
diacrit #include "diacrit.h" diacrit.c --- ---
getline #include "getline.h" getline.c getline.m4
gl_FUNC_GETLINE
getdelim
getdelim #include "getdelim.h" getdelim.c getdelim.m4
gl_FUNC_GETDELIM
---
getnline #include "getnline.h" getnline.c getnline.m4
gl_GETNLINE
getndelim2
ssize_t
getndelim2 #include "getndelim2.h" getndelim2.c getndelim2.m4
gl_GETNDELIM2
ssize_t
stdint
linebuffer #include "linebuffer.h" linebuffer.c --- xalloc
obstack #include "obstack.h" obstack.c AC_FUNC_OBSTACK
dnl Note: AC_FUNC_OBSTACK does AC_LIBSOURCES([obstack.h, obstack.c]).
gettext-h
exit
exitfail
stdint
hash-pjw #include "hash-pjw.h" hash-pjw.c --- ---
hash #include "hash.h" hash.c hash.m4
gl_HASH
stdbool
xalloc
readline #include "readline.h" readline.c readline.m4
gl_FUNC_READLINE
getline
havelib
readtokens #include "readtokens.h" readtokens.c readtokens.m4
gl_READTOKENS
xalloc
stdbool
readtokens0 #include "readtokens0.h" readtokens0.c --- obstack
stdbool
strverscmp #include "strverscmp.h" strverscmp.c strverscmp.m4
gl_FUNC_STRVERSCMP
---

Support for systems lacking ISO C 99

Core language properties

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
vararrays --- --- vararrays.m4
AC_C_VARARRAYS
---

Sizes of integer types <limits.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
size_max #include "size_max.h" --- size_max.m4
gl_SIZE_MAX
---

Variable arguments <stdarg.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
stdarg #include <stdarg.h> --- stdarg.m4
gl_STDARG_H
---

Boolean type and values <stdbool.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
stdbool #include <stdbool.h> stdbool_.h stdbool.m4
AM_STDBOOL_H
---

Integer types and values <stdint.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
stdint #include <stdint.h> stdint_.h stdint.m4
absolute-header.m4
longlong.m4
ulonglong.m4
gl_STDINT_H
---

Input/output <stdio.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
snprintf #include "snprintf.h" snprintf.c snprintf.m4
gl_FUNC_SNPRINTF
vasnprintf
vsnprintf #include "vsnprintf.h" vsnprintf.c vsnprintf.m4
gl_FUNC_VSNPRINTF
vasnprintf
minmax

Numeric conversion functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
strtoll #include <stdlib.h> strtoll.c longlong.m4
strtoll.m4
gl_FUNC_STRTOLL
strtol
strtoull #include <stdlib.h> strtoull.c ulonglong.m4
strtoull.m4
gl_FUNC_STRTOULL
strtoul

Functions for greatest-width integer types <inttypes.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
strtoimax --- strtoimax.c longlong.m4
strtoimax.m4
gl_FUNC_STRTOIMAX
strtoll
verify
inttypes
stdint
strtoumax --- strtoumax.c ulonglong.m4
strtoumax.m4
gl_FUNC_STRTOUMAX
strtoimax
strtoull
inttypes
stdint

Mathematics <math.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
mathl #include "mathl.h" acosl.c
asinl.c
atanl.c
ceill.c
cosl.c
expl.c
floorl.c
frexpl.c
ldexpl.c
logl.c
sincosl.c
sinl.c
sqrtl.c
tanl.c
trigl.c
trigl.h
mathl.m4
gl_FUNC_LONG_DOUBLE_MATH
---

Enhancements for ISO C 99 functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on

Extra functions based on ISO C 99

Numeric conversion functions <stdlib.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
intprops #include "intprops.h" --- --- ---
inttostr #include "inttostr.h" imaxtostr.c
inttostr.c
offtostr.c
umaxtostr.c
uinttostr.c
inttostr.m4
gl_INTTOSTR
intprops
stdint
xstrtoimax #include "xstrtol.h" xstrtoimax.c --- xstrtol
strtoimax
xstrtoumax #include "xstrtol.h" xstrtoumax.c --- xstrtol
strtoumax

Extended multibyte and wide character utilities <wchar.h>

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
mbchar #if HAVE_WCHAR_H
#include "mbchar.h"
#endif
mbchar.c mbchar.m4
gl_MBCHAR
stdbool
wcwidth
mbiter #if HAVE_MBRTOWC
#include "mbiter.h"
#endif
--- mbiter.m4
mbrtowc.m4
gl_MBITER
mbchar
stdbool
mbuiter #if HAVE_MBRTOWC
#include "mbuiter.h"
#endif
--- mbiter.m4
mbrtowc.m4
gl_MBITER
mbchar
stdbool
strnlen1
mbfile #if HAVE_MBRTOWC
#include "mbfile.h"
#endif
--- mbfile.m4
mbrtowc.m4
gl_MBFILE
mbchar
stdbool

Support for systems lacking POSIX:2001

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
chown #include <unistd.h> chown.c
fchown-stub.c
chown.m4
gl_FUNC_CHOWN
stat-macros
dup2 #include <unistd.h> dup2.c dup2.m4
gl_FUNC_DUP2
---
ftruncate #include <unistd.h> ftruncate.c ftruncate.m4
gl_FUNC_FTRUNCATE
---
getaddrinfo #include "getaddrinfo.h" getaddrinfo.c
gai_strerror.c
getaddrinfo.m4
gl_GETADDRINFO
gettext-h
inet_ntop
inttostr
socklen
stdbool
strdup
sys_socket
getcwd #include "getcwd.h" getcwd.c getcwd-abort-bug.m4
getcwd-path-max.m4
getcwd.m4
gl_FUNC_GETCWD
mempcpy
d-ino
extensions
stdbool
getgroups #include <unistd.h> getgroups.c getgroups.m4
gl_FUNC_GETGROUPS
xalloc
gethostname --- gethostname.c gethostname.m4
gl_FUNC_GETHOSTNAME
---
getlogin_r #include "getlogin_r.h" getlogin_r.c getlogin_r.m4
gl_GETLOGIN_R
extensions
unistd
getsubopt #include "getsubopt.h" getsubopt.c getsubopt.m4
gl_FUNC_GETSUBOPT
strchrnul
gettimeofday #include <sys/time.h> gettimeofday.c gettimeofday.m4
AC_FUNC_GETTIMEOFDAY_CLOBBER
---
inet_ntop #include "inet_ntop.h" inet_ntop.c inet_ntop.m4
gl_INET_NTOP
socklen
sys_socket
arpa_inet
netinet_in
inet_pton #include "inet_pton.h" inet_pton.c inet_pton.m4
gl_INET_PTON
socklen
sys_socket
arpa_inet
netinet_in
mkdir #include <sys/stat.h> mkdir.c mkdir-slash.m4
gl_FUNC_MKDIR_TRAILING_SLASH
xalloc
dirname
mkstemp #include "mkstemp.h" mkstemp.c
tempname.c
mkstemp.m4
gl_FUNC_MKSTEMP
extensions
stat-macros
stdint
sys_stat
mkdtemp #include "mkdtemp.h" mkdtemp.c mkdtemp.m4
gt_FUNC_MKDTEMP
stdint
unistd
poll #include <poll.h> poll.c
poll_.h
poll.m4
gl_FUNC_POLL
---
readlink --- readlink.c readlink.m4
gl_FUNC_READLINK
---
lstat #include "lstat.h" lstat.c lstat.m4
gl_FUNC_LSTAT
stat-macros
time_r #include "time_r.h" time_r.c time_r.m4
gl_TIME_R
extensions
timespec #include "timespec.h" --- timespec.m4
gl_TIMESPEC
extensions
nanosleep #include <time.h> nanosleep.c nanosleep.m4
gl_FUNC_NANOSLEEP
clock-time
timespec
stdbool
extensions
regex #include "regex.h" regex.c
regex_internal.c
regex_internal.h
regexec.c
regcomp.c
codeset.m4
regex.m4
gl_REGEX
alloca
extensions
gettext-h
malloc
stdint
strcase
ssize_t
rename #include <stdio.h> rename.c rename.m4
gl_FUNC_RENAME
xalloc
dirname
rmdir #include <unistd.h> rmdir.c rmdir.m4
gl_FUNC_RMDIR
stat-macros
sigprocmask #include "sigprocmask.h" sigprocmask.c signalblocking.m4
gl_SIGNALBLOCKING
verify
stdint
ssize_t #include <sys/types.h> --- ssize_t.m4
gt_TYPE_SSIZE_T
---
strtok_r #include "strtok_r.h" strtok_r.c strtok_r.m4
gl_FUNC_STRTOK_R
---
sys_stat #include <sys/stat.h> stat_.h absolute-header.m4
sys_stat_h.m4
gl_HEADER_SYS_STAT_H
---
unistd #include <unistd.h> --- unistd_h.m4
gl_HEADER_UNISTD
---
utime #if HAVE_UTIME_H
# include <utime.h>
#else
# include <sys/utime.h>
#endif
utime.c utimbuf.m4
utime.m4
utimes.m4
utimes-null.m4
gl_FUNC_UTIME
safe-read
full-write
wcwidth #include "wcwidth.h" --- wcwidth.m4
wchar_t.m4
wint_t.m4
gl_FUNC_WCWIDTH
---

Compatibility checks for POSIX:2001 functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
d-ino --- --- d-ino.m4
gl_CHECK_TYPE_STRUCT_DIRENT_D_INO
---
d-type --- --- d-type.m4
gl_CHECK_TYPE_STRUCT_DIRENT_D_TYPE
---
link-follow --- --- link-follow.m4
gl_AC_FUNC_LINK_FOLLOWS_SYMLINK
---
rename-dest-slash #include <stdio.h> rename-dest-slash.c rename-dest-slash.m4
gl_FUNC_RENAME_TRAILING_DEST_SLASH
xalloc
dirname
rmdir-errno --- --- rmdir-errno.m4
gl_FUNC_RMDIR_NOTEMPTY
---
unlink-busy --- --- unlink-busy.m4
gl_FUNC_UNLINK_BUSY_TEXT
---
winsz-ioctl --- --- jm-winsz2.m4
gl_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
winsz-termios
winsz-termios --- --- jm-winsz1.m4
gl_HEADER_TIOCGWINSZ_IN_TERMIOS_H
gl_WINSIZE_IN_PTEM
---

Enhancements for POSIX:2001 functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
dirname #include "dirname.h" dirname.c
basename.c
stripslash.c
dos.m4
dirname.m4
double-slash-root.m4
gl_DIRNAME
stdbool
xalloc
xstrndup
getopt #include <getopt.h> getopt_.h
getopt.c
getopt1.c
getopt_int.h
getopt.m4
gl_GETOPT
gettext-h
unistd
unistd-safer #include "unistd-safer.h" unistd--.h
dup-safer.c
fd-safer.c
pipe-safer.c
unistd-safer.m4
gl_UNISTD_SAFER
---
fnmatch #include <fnmatch.h> fnmatch_.h
fnmatch.c
fnmatch_loop.c
mbstate_t.m4
fnmatch.m4
# No macro. You should also use one of fnmatch-posix or fnmatch-gnu.
alloca
stdbool
fnmatch-posix #include "fnmatch.h" --- gl_FUNC_FNMATCH_POSIX fnmatch
fnmatch-gnu #include "fnmatch.h" --- gl_FUNC_FNMATCH_GNU fnmatch
glob #include <glob.h> glob_.h
glob-libc.h
glob.c
glob.m4
gl_GLOB
alloca
d-type
extensions
fnmatch
getlogin_r
mempcpy
stat-macros
stdbool
strdup
unistd
exclude #include "exclude.h" exclude.c exclude.m4
gl_EXCLUDE
xalloc
strcase
fnmatch-gnu
stdbool
verify

Extra functions based on POSIX:2001

Numeric conversion functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
human #include "human.h" human.c human.m4
gl_HUMAN
gettext-h
argmatch
error
intprops
xstrtoumax
stdbool
stdint

File system functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
acl #include "acl.h" acl.c acl.m4
AC_FUNC_ACL
error
quote
backupfile #include "backupfile.h" backupfile.c dos.m4
backupfile.m4
gl_BACKUPFILE
argmatch
d-ino
dirname
stdbool
canonicalize #include "canonicalize.h" canonicalize.c
pathmax.h
canonicalize.m4
AC_FUNC_CANONICALIZE_FILE_NAME
cycle-check
filenamecat
stat-macros
xalloc
xgetcwd
xreadlink
clean-temp #include "clean-temp.h" clean-temp.c AC_DEFINE([SIGNAL_SAFE_LIST], [1], [Define if lists must be signal-safe.]) stdbool
unistd
error
fatal-signal
pathmax
tmpdir
mkdtemp
xalloc
xallocsa
linkedhash-list
gettext-h
copy-file #include "copy-file.h" copy-file.c copy-file.m4
gl_COPY_FILE
error
safe-read
full-write
binary-io
exit
gettext-h
unistd
cycle-check #include "cycle-check.h" cycle-check.c cycle-check.m4
gl_CYCLE_CHECK
dev-ino
same-inode
stdbool
stdint
fsusage #include "fsusage.h" fsusage.c fsusage.m4
gl_FSUSAGE
full-read
stdbool
stdint
dirfd #include "dirfd.h" dirfd.c dirfd.m4
gl_FUNC_DIRFD
---
euidaccess #include "euidaccess.h" euidaccess.c euidaccess.m4
gl_FUNC_EUIDACCESS
group-member
stat-macros
file-type #include "file-type.h" file-type.c file-type.m4
gl_FILE_TYPE
gettext-h
stat-macros
fileblocks --- fileblocks.c fileblocks.m4
gl_FILEBLOCKS
---
filemode #include "filemode.h" filemode.c filemode.m4
st_dm_mode.m4
gl_FILEMODE
stat-macros
filenamecat #include "filenamecat.h" filenamecat.c dos.m4
filenamecat.m4
gl_FILE_NAME_CONCAT
xalloc
dirname
fts #include "fts_.h" fts.c
fts-cycle.c
fts.m4
gl_FUNC_FTS
cycle-check
d-type
dirfd
fcntl
fcntl-safer
hash
lstat
openat
stdbool
unistd-safer
fts-lgpl #include "fts_.h" fts.c fts.m4
gl_FUNC_FTS_LGPL
dirfd
openat
stdbool
isdir --- isdir.c isdir.m4
gl_ISDIR
---
lchmod #include "lchown.h" lchmod.h lchmod.m4
gl_FUNC_LCHMOD
---
lchown #include "lchown.h" lchown.c lchown.m4
gl_FUNC_LCHOWN
chown
stat-macros
mkancesdirs #include "mkancesdirs.h" mkancesdirs.c mkancesdirs.m4
gl_MKANCESDIRS
dirname
fcntl
savewd
stat-macros
mkdir-p #include "mkdir-p.h" dirchownmod.c
dirchownmod.h
mkdir-p.c
mkdir-p.m4
gl_MKDIR_PARENTS
error
fcntl
gettext-h
lchmod
lchown
mkancesdirs
quote
savewd
stat-macros
stdbool
modechange #include "modechange.h" modechange.c modechange.m4
gl_MODECHANGE
stat-macros
xalloc
mountlist #include "mountlist.h" mountlist.c ls-mntd-fs.m4
fstypename.m4
mountlist.m4
gl_MOUNTLIST
stdbool
xalloc
pathname #include "pathname.h" concatpath.c --- xalloc
stpcpy
pathmax #include "pathmax.h" --- pathmax.m4
gl_PATHMAX
---
same #include "same.h" same.c same.m4
gl_SAME
xalloc
error
dirname
same-inode
stdbool
save-cwd #include "save-cwd.h" save-cwd.c save-cwd.m4
gl_SAVE_CWD
chdir-long
fcntl-safer
xgetcwd
stdbool
savedir #include "savedir.h" savedir.c savedir.m4
gl_SAVEDIR
openat
xalloc
savewd #include "savewd.h" savewd.c savewd.m4
gl_SAVEWD
dirname
exit
fcntl-safer
raise
stdbool
xalloc
stat-time #include "stat-time.h" --- stat-time.m4
gl_STAT_TIME
timespec
tmpdir #include "tmpdir.h" tmpdir.c tmpdir.m4
gt_TMPDIR
stdbool
unlinkdir #include "unlinkdir.h" unlinkdir.c unlinkdir.m4
gl_UNLINKDIR
stdbool
utimecmp #include "utimecmp.h" utimecmp.c utimecmp.m4
gl_UTIMECMP
hash
stat-time
timespec
utimens
xalloc
intprops
stdbool
stdint
verify
utimens #include "utimens.h" utimens.c utimbuf.m4
utimens.m4
utimes.m4
gl_UTIMENS
timespec
xgetcwd #include "xgetcwd.h" xgetcwd.c xgetcwd.m4
gl_XGETCWD
getcwd
xalloc
stdbool
xreadlink #include "xreadlink.h" xreadlink.c xreadlink.m4
gl_XREADLINK
xalloc
readlink
ssize_t

File descriptor based Input/Output

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
fcntl-safer #include "fcntl-safer.h" fcntl--.h
creat-safer.c
open-safer.c
fcntl-safer.m4
gl_FCNTL_SAFER
unistd-safer
safe-read #include "safe-read.h" safe-read.c safe-read.m4
gl_SAFE_READ
ssize_t
safe-write #include "safe-write.h" safe-write.c safe-write.m4
gl_SAFE_WRITE
safe-read
full-read #include "full-read.h" full-read.c --- safe-read
full-write
full-write #include "full-write.h" full-write.c --- safe-write
binary-io #include "binary-io.h" --- --- ---
isapipe #include "isapipe.h" isapipe.c isapipe.m4
gl_ISAPIPE
stat-macros
stdbool
unistd

File stream based Input/Output

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
close-stream #include "close-stream.h" close-stream.c close-stream.m4
gl_CLOSE_STREAM
fpending
stdbool
closeout #include "closeout.h" closeout.c closeout.m4
gl_CLOSEOUT
close-stream
gettext-h
error
quotearg
exitfail
fopen-safer #include "stdio-safer.h" stdio--.h
fopen-safer.c
stdio-safer.m4
gl_FOPEN_SAFER
unistd-safer
fpending #include "__fpending.h" __fpending.c fpending.m4
gl_FUNC_FPENDING
---
getpass #include "getpass.h" getpass.c getpass.m4
gl_FUNC_GETPASS
getline
stdbool
getpass-gnu #include "getpass.h" getpass.c getpass.m4
gl_FUNC_GETPASS_GNU
getline
stdbool
stdlib-safer #include "stdlib-safer.h" stdlib--.h
mkstemp-safer.c
stdlib-safer.m4
gl_STDLIB_SAFER
mkstemp
unistd-safer
tmpfile-safer #include "stdio-safer.h" stdio--.h
tmpfile-safer.c
stdio-safer.m4
gl_TMPFILE_SAFER
binary-io
unistd-safer

Users and groups

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
getugroups --- getugroups.c getugroups.m4
gl_GETUGROUPS
---
group-member #include "group-member.h" group-member.c group-member.m4
gl_FUNC_GROUP_MEMBER
xalloc
stdbool
idcache --- idcache.c idcache.m4
gl_IDCACHE
xalloc
userspec #include "userspec.h" inttostr.h
userspec.c
userspec.m4
gl_USERSPEC
posixver
xalloc
xstrtol
strdup
gettext-h
intprops
stdbool

Date and time

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
gettime #include "timespec.h" gettime.c gettime.m4
gl_GETTIME
clock-time
gettime
gettimeofday
timespec
extensions
settime --- settime.c settime.m4
gl_SETTIME
clock-time
extensions
timespec
posixtm #include "posixtm.h" posixtm.c posixtm.m4
gl_POSIXTM
mktime
stdbool
xnanosleep #include "xnanosleep.h" xnanosleep.c xnanosleep.m4
gl_XNANOSLEEP
nanosleep
timespec
intprops
stdbool

Networking functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
xgethostname #include "xgethostname.h" xgethostname.c --- gethostname
xalloc
canon-host #include "canon-host.h" canon-host.c canon-host.m4
gl_CANON_HOST
getaddrinfo
strdup

Multithreading

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
lock #include "lock.h" lock.c lock.m4
gl_LOCK
havelib
tls #include "tls.h" tls.c tls.m4
gl_TLS
lock

Internationalization functions

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
gettext #include "gettext.h" --- codeset.m4
gettext.m4
glibc2.m4
glibc21.m4
iconv.m4
intdiv0.m4
intmax.m4
inttypes_h.m4
inttypes-h.m4
inttypes-pri.m4
lcmessage.m4
lock.m4
longdouble.m4
longlong.m4
nls.m4
po.m4
printf-posix.m4
progtest.m4
signed.m4
size_max.m4
stdint_h.m4
uintmax_t.m4
ulonglong.m4
visibility.m4
wchar_t.m4
wint_t.m4
xsize.m4
AM_GNU_GETTEXT([external])
AM_GNU_GETTEXT_VERSION([0.15])
gettext-h
havelib
gettext-h #include "gettext.h" --- --- ---
iconv #include <iconv.h> --- iconv.m4
AM_ICONV
havelib
striconv #include "striconv.h" striconv.c if test $gl_cond_libtool = false; then
gl_ltlibdeps="$gl_ltlibdeps $LTLIBICONV"
gl_libdeps="$gl_libdeps $LIBICONV"
fi
iconv
strdup
c-strcase
xstriconv #include "xstriconv.h" xstriconv.c --- striconv
xalloc
iconvme #include "iconvme.h" iconvme.c iconvme.m4
gl_ICONVME
if test $gl_cond_libtool = false; then
gl_ltlibdeps="$gl_ltlibdeps $LTLIBICONV"
gl_libdeps="$gl_libdeps $LIBICONV"
fi
iconv
strdup
localcharset #include "localcharset.h" localcharset.c
config.charset
ref-add.sin
ref-del.sin
codeset.m4
glibc21.m4
localcharset.m4
gl_LOCALCHARSET
configmake
hard-locale #include "hard-locale.h" hard-locale.c hard-locale.m4
gl_HARD_LOCALE
stdbool
strdup
mbswidth #include "mbswidth.h" mbswidth.c mbstate_t.m4
mbrtowc.m4
mbswidth.m4
gl_MBSWIDTH
wcwidth
memcasecmp #include "memcasecmp.h" memcasecmp.c memcasecmp.m4
gl_MEMCASECMP
---
memcoll #include "memcoll.h" memcoll.c memcoll.m4
gl_MEMCOLL
---
xmemcoll #include "xmemcoll.h" xmemcoll.c --- memcoll
gettext-h
error
quotearg
exitfail
unicodeio #include "unicodeio.h" unicodeio.c unicodeio.m4
gl_UNICODEIO
iconv
gettext-h
localcharset
error
rpmatch --- rpmatch.c rpmatch.m4
gl_FUNC_RPMATCH
gettext-h
regex
yesno #include "yesno.h" yesno.c yesno.m4
gl_YESNO
getline
rpmatch
stdbool
ucs4-utf8 --- ucs4-utf8.h ucs4-utf.m4
gl_UCS4_UTF
---
ucs4-utf16 --- ucs4-utf16.h ucs4-utf.m4
gl_UCS4_UTF
---
utf8-ucs4 --- utf8-ucs4.h utf-ucs4.m4
gl_UTF_UCS4
---
utf16-ucs4 --- utf16-ucs4.h utf-ucs4.m4
gl_UTF_UCS4
---
linebreak #include "linebreak.h" linebreak.c
lbrkprop.h
linebreak.m4
gl_LINEBREAK
localcharset
c-ctype
iconv
utf8-ucs4
utf16-ucs4
xsize
bison-i18n --- --- bison-i18n.m4
BISON_I18N
gettext

Executing programs

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
cloexec #include "cloexec.h" cloexec.c cloexec.m4
gl_CLOEXEC
stdbool
findprog #include "findprog.h" findprog.c findprog.m4
eaccess.m4
gl_FINDPROG
stdbool
xalloc
pathname
unistd
wait-process #include "wait-process.h" wait-process.c wait-process.m4
sig_atomic_t.m4
gl_WAIT_PROCESS
fatal-signal
error
exit
xalloc
gettext-h
stdbool
unistd
execute #include "execute.h" execute.c
w32spawn.h
execute.m4
gl_EXECUTE
error
exit
fatal-signal
wait-process
gettext-h
stdbool
strpbrk
unistd
pipe #include "pipe.h" pipe.c
w32spawn.h
pipe.m4
gl_PIPE
wait-process
error
exit
fatal-signal
gettext-h
stdbool
strpbrk
unistd
sh-quote #include "sh-quote.h" sh-quote.c --- quotearg
xalloc

Java

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
classpath #include "classpath.h" classpath.c --- stdbool
xsetenv
xalloc
javacomp #include "javacomp.h" javacomp.c --- stdbool
unistd
javaversion
execute
pipe
wait-process
classpath
xsetenv
sh-quote
binary-io
safe-read
xalloc
xallocsa
getline
pathname
fwriteerror
clean-temp
error
xvasprintf
strstr
gettext-h
javacomp-script
javaexec #include "javaexec.h" javaexec.c javaexec.m4
# You need to invoke gt_JAVAEXEC yourself, possibly with arguments.
AC_CONFIG_FILES([javaexec.sh:build-aux/javaexec.sh.in])
stdbool
execute
classpath
xsetenv
sh-quote
pathname
xalloc
xallocsa
error
gettext-h
javaversion #include "javaversion.h" javaversion.c
javaversion.java
javaversion.class
--- javaexec
stdbool
pipe
wait-process
getline
gettext-h
configmake

C#

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
csharpcomp #include "csharpcomp.h" csharpcomp.c --- stdbool
xallocsa
execute
pipe
wait-process
getline
sh-quote
safe-read
error
gettext-h
csharpcomp-script
csharpexec #include "csharpexec.h" csharpexec.c
classpath.h
classpath.c
csharpexec.m4
csharp.m4
# You need to invoke gt_CSHARPEXEC yourself, possibly with arguments.
AC_CONFIG_FILES([csharpexec.sh:build-aux/csharpexec.sh.in])
stdbool
execute
xsetenv
sh-quote
xalloc
xallocsa
error
gettext-h

Misc

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
argp #include "argp.h" argp-ba.c
argp-eexst.c
argp-fmtstream.c
argp-fmtstream.h
argp-fs-xinl.c
argp-help.c
argp-namefrob.h
argp-parse.c
argp-pin.c
argp-pv.c
argp-pvh.c
argp-xinl.c
argp.m4
gl_ARGP
alloca
dirname
getopt
strchrnul
sysexits
malloc
mempcpy
strndup
strcase
extensions
vsnprintf
argz #include <argz.h> argz_.h
argz.c
argz.m4
gl_FUNC_ARGZ
---
byteswap #include <byteswap.h> byteswap_.h byteswap.m4
gl_BYTESWAP
---
exitfail #include "exitfail.h" exitfail.c exitfail.m4
gl_EXITFAIL
exit
c-stack #include "c-stack.h" c-stack.c c-stack.m4
gl_C_STACK
gettext-h
exitfail
unistd
error #include "error.h" error.c error.m4
gl_ERROR
---
extensions --- --- extensions.m4
dnl gl_USE_SYSTEM_EXTENSIONS must be added quite early to configure.ac.
---
getdomainname #include "getdomainname.h" getdomainname.c getdomainname.m4
gl_FUNC_GETDOMAINNAME
---
xgetdomainname #include "xgetdomainname.h" xgetdomainname.c --- getdomainname
xalloc
getloadavg --- getloadavg.c getloadavg.m4
gl_GETLOADAVG([$gl_source_base])
cloexec
xalloc
c-strtod
intprops
stdbool
fcntl-safer
getpagesize #include "getpagesize.h" --- getpagesize.m4
gl_GETPAGESIZE
---
getusershell --- getusershell.c getusershell.m4
gl_FUNC_GETUSERSHELL
fopen-safer
xalloc
physmem #include "physmem.h" physmem.c physmem.m4
gl_PHYSMEM
---
posixver #include "posixver.h" posixver.c posixver.m4
gl_POSIXVER
---
progname #include "progname.h" progname.c --- ---
quotearg #include "quotearg.h" quotearg.c mbstate_t.m4
mbrtowc.m4
quotearg.m4
gl_QUOTEARG
xalloc
gettext-h
stdbool
quote #include "quote.h" quote.c quote.m4
gl_QUOTE
quotearg
readutmp #include "readutmp.h" readutmp.c readutmp.m4
gl_READUTMP
xalloc
free
stdbool
sig2str #include "sig2str.h" sig2str.c sig2str.m4
gl_FUNC_SIG2STR
intprops
sysexits #include <sysexits.h> sysexit_.h sysexits.m4
gl_SYSEXITS
---
verror #include "verror.h" verror.c --- error
xvasprintf
visibility --- --- visibility.m4
gl_VISIBILITY
---

Support for building libraries and executables

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
config-h --- --- config-h.m4
gl_CONFIG_H
---
configmake #include "configmake.h" --- --- ---
dummy --- dummy.c --- ---
elisp-comp --- --- --- ---
ldd --- --- ldd.m4
gl_LDD
AC_CONFIG_FILES([ldd.sh:build-aux/ldd.sh.in])
---
lib-ignore --- --- lib-ignore.m4
gl_IGNORE_UNUSED_LIBRARIES
---

Support for building documentation

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
fdl --- --- --- ---
gendocs --- --- --- ---
gpl --- --- --- ---
lgpl --- --- --- ---
regexprops-generic --- --- --- ---

Support for maintaining and release projects

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
gnupload --- --- --- ---
maintainer-makefile --- --- --- ---

Misc

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
host-os --- --- host-os.m4
gl_HOST_OS
---
perl --- --- perl.m4
gl_PERL
---
uptime --- --- uptime.m4
gl_SYS_PROC_UPTIME
---

Unclassified modules - please update MODULES.html.sh

modules/ lib/ lib/ m4/  
Module Header Implementation Autoconf macro Depends on
arcfour #include "arcfour.h" arcfour.c arcfour.m4
gl_ARCFOUR
stdint
arctwo #include "arctwo.h" arctwo.c arctwo.m4
gl_ARCTWO
stdint
arpa_inet #include <arpa/inet.h> --- arpa_inet_h.m4
gl_HEADER_ARPA_INET
sys_socket
chdir-long #include "chdir-long.h" chdir-long.c chdir-long.m4
gl_FUNC_CHDIR_LONG
fcntl
openat
mempcpy
memrchr
stdbool
chdir-safer #include "chdir-safer.h" chdir-safer.c chdir-safer.m4
gl_CHDIR_SAFER
fcntl
same-inode
stdbool
clock-time --- --- clock_time.m4
gl_CLOCK_TIME
extensions
crc #include "crc.h" crc.c crc.m4
gl_CRC
stdint
csharpcomp-script --- --- csharpcomp.m4
csharp.m4
AC_REQUIRE([gt_CSHARPCOMP])
AC_CONFIG_FILES([csharpcomp.sh:build-aux/csharpcomp.sh.in])
---
des #include "des.h" des.c des.m4
gl_DES
stdint
stdbool
dev-ino #include "dev-ino.h" --- --- ---
fcntl #include <fcntl.h> fcntl_.h absolute-header.m4
fcntl_h.m4
gl_FCNTL_H
unistd
gc #include "gc.h" gc-libgcrypt.c
gc-gnulib.c
gc.m4
gl_GC
if test $gl_cond_libtool = false; then
gl_ltlibdeps="$gl_ltlibdeps $LTLIBGCRYPT"
gl_libdeps="$gl_libdeps $LIBGCRYPT"
fi
havelib
gc-arcfour #include "gc.h" arcfour.h
arcfour.c
gc-arcfour.m4
arcfour.m4
gl_GC_ARCFOUR
stdint
gc
gc-arctwo #include "gc.h" arctwo.h
arctwo.c
gc-arctwo.m4
arctwo.m4
gl_GC_ARCTWO
stdint
gc
gc-des #include "gc.h" des.h
des.c
gc-des.m4
des.m4
gl_GC_DES
stdint
gc
gc-hmac-md5 #include "gc.h" md5.h
md5.c
hmac.h
hmac-md5.c
memxor.h
memxor.c
gc-hmac-md5.m4
md5.m4
hmac-md5.m4
memxor.m4
gl_GC_HMAC_MD5
stdint
gc
gc-hmac-sha1 #include "gc.h" sha1.h
sha1.c
hmac.h
hmac-sha1.c
memxor.h
memxor.c
gc-hmac-sha1.m4
sha1.m4
hmac-sha1.m4
memxor.m4
gl_GC_HMAC_SHA1
stdint
gc
gc-md2 #include "gc.h" --- gc-md2.m4
gl_GC_MD2
stdint
gc
minmax
md2
gc-md4 #include "gc.h" md4.h
md4.c
gc-md4.m4
md4.m4
gl_GC_MD4
stdint
gc
gc-md5 #include "gc.h" md5.h
md5.c
gc-md5.m4
md5.m4
gl_GC_MD5
stdint
gc
gc-pbkdf2-sha1 #include "gc.h" gc-pbkdf2-sha1.c gc-pbkdf2-sha1.m4
gl_GC_PBKDF2_SHA1
gc
gc-hmac-sha1
gc-random #include "gc.h" --- gc-random.m4
gl_GC_RANDOM
gc
gc-rijndael #include "gc.h" rijndael-alg-fst.c
rijndael-alg-fst.h
rijndael-api-fst.c
rijndael-api-fst.h
gc-rijndael.m4
rijndael.m4
gl_GC_RIJNDAEL
stdint
gc
gc-sha1 #include "gc.h" sha1.h
sha1.c
gc-sha1.m4
sha1.m4
gl_GC_SHA1
stdint
gc
gethrxtime #include "xtime.h" gethrxtime.c
gethrxtime.h
gethrxtime.m4
longlong.m4
gl_GETHRXTIME
clock-time
gettime
extensions
havelib --- --- lib-ld.m4
lib-link.m4
lib-prefix.m4
---
hmac-md5 #include "hmac.h" hmac-md5.c hmac-md5.m4
gl_HMAC_MD5
memxor
md5
hmac-sha1 #include "hmac.h" hmac-sha1.c hmac-sha1.m4
gl_HMAC_SHA1
memxor
sha1
imaxabs #include <inttypes.h> imaxabs.c imaxabs.m4
gl_FUNC_IMAXABS
inttypes
imaxdiv #include <inttypes.h> imaxdiv.c imaxdiv.m4
gl_FUNC_IMAXDIV
inttypes
inttypes #include <inttypes.h> inttypes_.h absolute-header.m4
inttypes-pri.m4
inttypes.m4
gl_INTTYPES_H
stdint
javacomp-script --- --- javacomp.m4
# You need to invoke gt_JAVACOMP yourself, possibly with arguments.
AC_CONFIG_FILES([javacomp.sh:build-aux/javacomp.sh.in])
---
md2 #include "md2.h" md2.c md2.m4
gl_MD2
minmax
md4 #include "md4.h" md4.c md4.m4
gl_MD4
stdint
memxor #include "memxor.h" memxor.c memxor.m4
gl_MEMXOR
---
netinet_in #include <netinet/in.h> --- netinet_in_h.m4
gl_HEADER_NETINET_IN
sys_socket
openat #include "openat.h" at-func.c
fchmodat.c
mkdirat.c
openat.c
openat-die.c
openat-priv.h
openat-proc.c
openat.m4
gl_FUNC_OPENAT
dirname
extensions
gettext-h
intprops
lchown
lstat
same-inode
save-cwd
stdbool
read-file #include "read-file.h" read-file.c read-file.m4
gl_FUNC_READ_FILE
---
rijndael #include "rijndael-alg-fst.h"
#include "rijndael-api-fst.h"
rijndael-alg-fst.c
rijndael-alg-fst.h
rijndael-api-fst.c
rijndael-api-fst.h
rijndael.m4
gl_RIJNDAEL
stdint
same-inode #include "same-inode.h" --- --- ---
socklen #include <sys/types.h>
#include <sys/socket.h>
--- socklen.m4
gl_TYPE_SOCKLEN_T
sys_socket
stat-macros #include "stat-macros.h" --- stat-macros.m4
gl_STAT_MACROS
---
sublist #include "gl_sublist.h" gl_sublist.c --- list
xalloc
sys_select #include <sys/select.h> --- sys_select_h.m4
gl_HEADER_SYS_SELECT
sys_socket
sys_socket #include <sys/types.h>
#include <sys/socket.h>
socket_.h sys_socket_h.m4
sockpfaf.m4
gl_HEADER_SYS_SOCKET
---

Lone files - please create new modules containing them

lib/progreloc.c
m4/afs.m4
m4/gnulib-tool.m4
m4/include_next.m4
m4/isc-posix.m4
m4/onceonly.m4
m4/ptrdiff_max.m4
m4/warning.m4

Future developments

Ideally a module could consist of:
Generated from MODULES.html.sh on 25 October 2006.