3 # Copyright (C) 2002-2020 Free Software Foundation, Inc.
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program. If not, see <https://www.gnu.org/licenses/>.
19 # Usage: MODULES.html.sh [--git-urls] > MODULES.html
21 # Extend the PATH so that gnulib-tool is found.
22 PATH
=`dirname "$0"`:$PATH; export PATH
24 POSIX2001_URL
='https://pubs.opengroup.org/onlinepubs/009695399'
25 POSIX2008_URL
='https://pubs.opengroup.org/onlinepubs/9699919799'
32 # Generate URLs to the official gnulib git repository.
33 repo_url_prefix
='https://git.sv.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f='
38 # For sed replacements: Escape the '&'.
39 repo_url_suffix_repl
=`echo "$repo_url_suffix" | sed -e 's,[&],\\\&,'`
43 sed_escape_dot
='s,\.,\\.,g'
44 sed_escape_slash
='s,/,\\/,g'
47 sed_alt2
='s,^\\|,\\(,'
48 sed_alt3
='s,\\|\\|$,\\),'
132 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
133 posix2001_headers
=`echo '
136 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
137 posix_functions
=`echo '
773 posix_spawn_file_actions_addclose
774 posix_spawn_file_actions_adddup2
775 posix_spawn_file_actions_addopen
776 posix_spawn_file_actions_destroy
777 posix_spawn_file_actions_init
778 posix_spawnattr_destroy
779 posix_spawnattr_getflags
780 posix_spawnattr_getpgroup
781 posix_spawnattr_getschedparam
782 posix_spawnattr_getschedpolicy
783 posix_spawnattr_getsigdefault
784 posix_spawnattr_getsigmask
786 posix_spawnattr_setflags
787 posix_spawnattr_setpgroup
788 posix_spawnattr_setschedparam
789 posix_spawnattr_setschedpolicy
790 posix_spawnattr_setsigdefault
791 posix_spawnattr_setsigmask
793 posix_trace_attr_destroy
794 posix_trace_attr_getclockres
795 posix_trace_attr_getcreatetime
796 posix_trace_attr_getgenversion
797 posix_trace_attr_getinherited
798 posix_trace_attr_getlogfullpolicy
799 posix_trace_attr_getlogsize
800 posix_trace_attr_getmaxdatasize
801 posix_trace_attr_getmaxsystemeventsize
802 posix_trace_attr_getmaxusereventsize
803 posix_trace_attr_getname
804 posix_trace_attr_getstreamfullpolicy
805 posix_trace_attr_getstreamsize
806 posix_trace_attr_init
807 posix_trace_attr_setinherited
808 posix_trace_attr_setlogfullpolicy
809 posix_trace_attr_setlogsize
810 posix_trace_attr_setmaxdatasize
811 posix_trace_attr_setname
812 posix_trace_attr_setstreamfullpolicy
813 posix_trace_attr_setstreamsize
817 posix_trace_create_withlog
819 posix_trace_eventid_equal
820 posix_trace_eventid_get_name
821 posix_trace_eventid_open
822 posix_trace_eventset_add
823 posix_trace_eventset_del
824 posix_trace_eventset_empty
825 posix_trace_eventset_fill
826 posix_trace_eventset_ismember
827 posix_trace_eventtypelist_getnext_id
828 posix_trace_eventtypelist_rewind
831 posix_trace_get_filter
832 posix_trace_get_status
833 posix_trace_getnext_event
836 posix_trace_set_filter
840 posix_trace_timedgetnext_event
841 posix_trace_trid_eventid_open
842 posix_trace_trygetnext_event
843 posix_typed_mem_get_info
855 pthread_attr_getdetachstate
856 pthread_attr_getguardsize
857 pthread_attr_getinheritsched
858 pthread_attr_getschedparam
859 pthread_attr_getschedpolicy
860 pthread_attr_getscope
861 pthread_attr_getstack
862 pthread_attr_getstacksize
864 pthread_attr_setdetachstate
865 pthread_attr_setguardsize
866 pthread_attr_setinheritsched
867 pthread_attr_setschedparam
868 pthread_attr_setschedpolicy
869 pthread_attr_setscope
870 pthread_attr_setstack
871 pthread_attr_setstacksize
872 pthread_barrier_destroy
875 pthread_barrierattr_destroy
876 pthread_barrierattr_getpshared
877 pthread_barrierattr_init
878 pthread_barrierattr_setpshared
882 pthread_cond_broadcast
886 pthread_cond_timedwait
888 pthread_condattr_destroy
889 pthread_condattr_getclock
890 pthread_condattr_getpshared
891 pthread_condattr_init
892 pthread_condattr_setclock
893 pthread_condattr_setpshared
898 pthread_getconcurrency
899 pthread_getcpuclockid
900 pthread_getschedparam
906 pthread_mutex_consistent
907 pthread_mutex_destroy
908 pthread_mutex_getprioceiling
911 pthread_mutex_setprioceiling
912 pthread_mutex_timedlock
913 pthread_mutex_trylock
915 pthread_mutexattr_destroy
916 pthread_mutexattr_getprioceiling
917 pthread_mutexattr_getprotocol
918 pthread_mutexattr_getpshared
919 pthread_mutexattr_getrobust
920 pthread_mutexattr_gettype
921 pthread_mutexattr_init
922 pthread_mutexattr_setprioceiling
923 pthread_mutexattr_setprotocol
924 pthread_mutexattr_setpshared
925 pthread_mutexattr_setrobust
926 pthread_mutexattr_settype
928 pthread_rwlock_destroy
930 pthread_rwlock_rdlock
931 pthread_rwlock_timedrdlock
932 pthread_rwlock_timedwrlock
933 pthread_rwlock_tryrdlock
934 pthread_rwlock_trywrlock
935 pthread_rwlock_unlock
936 pthread_rwlock_wrlock
937 pthread_rwlockattr_destroy
938 pthread_rwlockattr_getpshared
939 pthread_rwlockattr_init
940 pthread_rwlockattr_setpshared
942 pthread_setcancelstate
943 pthread_setcanceltype
944 pthread_setconcurrency
945 pthread_setschedparam
1015 sched_get_priority_max
1016 sched_get_priority_min
1019 sched_rr_get_interval
1330 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
1331 posix2001_functions
=`echo '
1349 pthread_attr_getstackaddr
1350 pthread_attr_setstackaddr
1359 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
1373 # creates a temporary directory.
1375 # - tmp pathname of freshly created temporary directory
1378 # Use the environment variable TMPDIR, falling back to /tmp. This allows
1379 # users to specify a different temporary directory, for example, if their
1380 # /tmp is filled up or too small.
1383 # Use the mktemp program if available. If not available, hide the error
1385 tmp
=`(umask 077 && mktemp -d "$TMPDIR/MDXXXXXX") 2>/dev/null` &&
1386 test -n "$tmp" && test -d "$tmp"
1389 # Use a simple mkdir command. It is guaranteed to fail if the directory
1390 # already exists. $RANDOM is bash specific and expands to empty in shells
1391 # other than bash, ksh and zsh. Its use does not increase security;
1392 # rather, it minimizes the probability of failure in a very cluttered /tmp
1394 tmp
=$TMPDIR/MD$$
-$RANDOM
1395 (umask 077 && mkdir
"$tmp")
1398 echo "$0: cannot create a temporary directory in $TMPDIR" >&2
1403 # func_append var value
1404 # appends the given value to the shell variable var.
1405 if ( foo
=bar
; foo
+=baz
&& test "$foo" = barbaz
) >/dev
/null
2>&1; then
1406 # Use bash's += operator. It reduces complexity of appending repeatedly to
1407 # a single variable from O(n^2) to O(n).
1415 eval "$1=\"\$$1\$2\""
1420 # outputs line with indentation.
1427 # increases the indentation.
1434 # decreases the indentation.
1437 indent
=`echo "$indent" | sed -e 's/ $//'`
1440 # func_begin tag [attribute...]
1449 # closes a HTML tag.
1456 # func_wrap tag [attribute...]
1457 # encloses $element in a HTML tag, without line breaks.
1460 element
="<$*>${element}</$1>"
1463 # func_section_wrap sectiontag
1464 # encloses $element in a HTML tag referring to the given tag.
1465 func_section_wrap
()
1467 if test -n "$in_toc"; then
1468 func_wrap A
"HREF=\"#$1\""
1470 func_wrap A
"NAME=\"$1\""
1478 if test -z "$in_toc"; then
1480 func_echo
"<TH ALIGN=LEFT>modules/"
1481 func_echo
"<TH ALIGN=LEFT>lib/"
1482 func_echo
"<TH ALIGN=LEFT>lib/"
1483 func_echo
"<TH ALIGN=LEFT>m4/"
1484 func_echo
"<TH ALIGN=LEFT> "
1487 func_echo
"<TH ALIGN=LEFT>Module"
1488 func_echo
"<TH ALIGN=LEFT>Header"
1489 func_echo
"<TH ALIGN=LEFT>Implementation"
1490 func_echo
"<TH ALIGN=LEFT>Autoconf macro"
1491 func_echo
"<TH ALIGN=LEFT>Depends on"
1496 # func_module module
1499 sed_remove_trailing_empty_line
='${
1503 if test -n "$in_toc"; then
1505 func_begin TR
"WIDTH=\"100%\""
1507 element
='<A HREF="#module='$1'">'$1'</A>'
1508 func_echo
"<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"20%\">$element"
1510 # Rendering the description:
1511 # - Change the symbol() syntax as suitable for documentation, removing the
1512 # parentheses (as per GNU standards, section "GNU Manuals").
1513 # - Flag the remaining symbol() constructs as errors.
1514 # - Change 'xxx' to <CODE>xxx</CODE>.
1515 sed_extract_element
='
1518 '$sed_remove_trailing_empty_line'
1521 s,\([^a-zA-Z_]\)'$posix_functions'() \(function\|macro\),\1<A HREF="'$POSIX2008_URL'/functions/\2.html">\2</A> \3,g
1522 s,\([^a-zA-Z_]\)'$posix_functions' \(function\|macro\),\1<A HREF="'$POSIX2008_URL'/functions/\2.html">\2</A> \3,g
1523 s,\([^a-zA-Z_]\)'$posix_functions'(),\1<A HREF="'$POSIX2008_URL'/functions/\2.html">\2</A> <SPAN STYLE="color:#FF0000;">what?? If you mean a function\, please say so.</SPAN>,g
1524 s,\([^a-zA-Z_]\)'$posix2001_functions'() \(function\|macro\),\1<A HREF="'$POSIX2001_URL'/functions/\2.html">\2</A> \3,g
1525 s,\([^a-zA-Z_]\)'$posix2001_functions' \(function\|macro\),\1<A HREF="'$POSIX2001_URL'/functions/\2.html">\2</A> \3,g
1526 s,\([^a-zA-Z_]\)'$posix2001_functions'(),\1<A HREF="'$POSIX2001_URL'/functions/\2.html">\2</A> <SPAN STYLE="color:#FF0000;">what?? If you mean a function\, please say so.</SPAN>,g
1527 s,\([^a-zA-Z_]\)\([a-zA-Z_][a-zA-Z0-9_]*\)() \(function\|macro\),\1\2 \3,g
1528 s,\([^a-zA-Z_]\)\([a-zA-Z_][a-zA-Z0-9_]*\)(),\1\2 <SPAN STYLE="color:#FF0000;">what?? If you mean a function\, please say so.</SPAN>,g
1529 s, '"'"'\([a-zA-Z0-9_ -]*\)'"'"'\([^a-zA-Z0-9_]\), <CODE>\1</CODE>\2,g
1533 element
=`gnulib-tool --extract-description $1 \
1534 | LC_ALL=C sed -e "$sed_extract_element"`
1535 func_echo
"<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"80%\">$element"
1543 element
='<A NAME="module='$1'"></A><A HREF="'$repo_url_prefix'modules/'$1$repo_url_suffix'">'$1'</A>'
1544 func_echo
"<TD ALIGN=LEFT VALIGN=TOP>$element"
1546 includes
=`gnulib-tool --extract-include-directive $1`
1547 files
=`gnulib-tool --extract-filelist $1 \
1548 | grep -v '^m4/gnulib-common\.m4$'`
1549 sed_extract_element
='
1552 '$sed_remove_trailing_empty_line'
1553 s,^#include "\(.*\)"$,#include "<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>",
1554 s,^#include <'$posix_headers'\.h>$,#include \<<A HREF="'$POSIX2008_URL'/basedefs/\1.h.html">\1.h</A>\>,
1555 s,<A HREF="'$POSIX2008_URL'/basedefs/\([a-zA-Z0-9_]*\)/\([a-zA-Z0-9_]*\)\.h\.html">,<A HREF="'$POSIX2008_URL'/basedefs/\1_\2.h.html">,
1556 s,^#include <'$posix2001_headers'\.h>$,#include \<<A HREF="'$POSIX2001_URL'/basedefs/\1.h.html">\1.h</A>\>,
1559 element
=`echo "$includes" \
1560 | LC_ALL=C sed -e "$sed_extract_element" | tr -d "$trnl" \
1561 | sed -e 's/<BR>$//'`
1562 test -n "$element" || element
='---'
1563 func_echo
"<TD ALIGN=LEFT VALIGN=TOP>$element"
1565 sed_choose_unconditional_nonstandard_include
='s,^#include "\(.*\)"$,\1,p'
1566 includefile
=`echo "$includes" \
1567 | sed -n -e "$sed_choose_unconditional_nonstandard_include" \
1568 | sed -e "$sed_escape_dot" | tr -d "$trnl"`
1569 sed_choose_lib_files
='s,^lib/\(.*\)$,\1,p'
1570 sed_extract_include
='
1571 \|^'"$includefile"'$|d
1572 s,^\(.*\)$,<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>,
1575 element
=`echo "$files" \
1577 | sed -n -e "$sed_choose_lib_files" \
1578 | sed -e "$sed_extract_include" \
1579 | tr -d "$trnl" | sed -e 's/<BR>$//'`
1580 test -n "$element" || element
='---'
1581 func_echo
"<TD ALIGN=LEFT VALIGN=TOP>$element"
1583 sed_choose_m4_files
='s,^m4/\(.*\)$,\1,p'
1584 sed_extract_repo_url
='
1586 s,^\(.*\)$,<A HREF="'$repo_url_prefix'm4/\1'$repo_url_suffix_repl'">\1</A>,
1588 element
=`(echo "$files" \
1589 | sed -e "$sed_remove_trailing_empty_line" \
1590 | sed -n -e "$sed_choose_m4_files" \
1591 | sed -e "$sed_extract_repo_url"; \
1592 gnulib-tool --extract-autoconf-snippet $1 \
1593 | sed -e "$sed_remove_trailing_empty_line") \
1594 | sed -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1595 test -n "$element" || element
='---'
1596 func_echo
"<TD ALIGN=LEFT VALIGN=TOP>$element"
1598 element
=`gnulib-tool --extract-dependencies $1 \
1599 | sed -e "$sed_remove_trailing_empty_line" \
1600 -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1601 test -n "$element" || element
='---'
1602 func_echo
"<TD ALIGN=LEFT VALIGN=TOP>$element"
1606 func_append seen_modules
" $1"
1607 func_append seen_files
" $files"
1620 element
="Support for obsolete systems lacking ANSI C 89"
1621 func_section_wrap ansic_sup_obsolete
1623 func_echo
"$element"
1637 func_echo
'These modules are not listed among dependencies below, for simplicity.'
1638 func_echo
'If your package requires portability to old, obsolete systems, you need to list these modules explicitly among the modules to import through gnulib-tool.'
1640 element
="Support for systems lacking ANSI C 89"
1641 func_section_wrap ansic_sup
1643 func_echo
"$element"
1648 func_module localtime
1650 func_module strerror
1651 func_module strerror-override
1655 element
="Enhancements for ANSI C 89 functions"
1656 func_section_wrap ansic_enh
1658 func_echo
"$element"
1660 element
="Diagnostics <assert.h>"
1661 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1662 func_section_wrap ansic_enh_assert_diagnostics
1664 func_echo
"$element"
1672 element
="Mathematics <math.h>"
1673 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1674 func_section_wrap ansic_enh_math
1676 func_echo
"$element"
1682 element
="Input/output <stdio.h>"
1683 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1684 func_section_wrap ansic_enh_stdio
1686 func_echo
"$element"
1694 element
="Memory management functions <stdlib.h>"
1695 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1696 func_section_wrap ansic_enh_stdlib_memory
1698 func_echo
"$element"
1701 func_module calloc-gnu
1704 func_module malloc-gnu
1705 func_module realloc-gnu
1706 func_module reallocarray
1707 func_module pagealign_alloc
1710 element
="Sorting functions <stdlib.h>"
1711 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1712 func_section_wrap ansic_enh_stdlib_sorting
1714 func_echo
"$element"
1717 func_module array-mergesort
1722 element
="Date and time <time.h>"
1723 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1724 func_section_wrap ansic_enh_time_datetime
1726 func_echo
"$element"
1729 func_module fprintftime
1730 func_module nstrftime
1731 func_module strftime-fixes
1733 func_module year2038
1736 element
="Extra functions based on ANSI C 89"
1737 func_section_wrap ansic_ext
1739 func_echo
"$element"
1741 element
="Memory management functions <stdlib.h>"
1742 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1743 func_section_wrap ansic_ext_stdlib_memory
1745 func_echo
"$element"
1750 func_module xalloc-die
1752 func_module alloca-opt
1754 func_module xmalloca
1755 func_module xmemdup0
1756 func_module safe-alloc
1759 element
="Integer arithmetic functions <stdlib.h>"
1760 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1761 func_section_wrap ansic_ext_stdlib_arith
1763 func_echo
"$element"
1766 func_module count-leading-zeros
1767 func_module count-one-bits
1768 func_module count-trailing-zeros
1776 element
="Environment variables <stdlib.h>"
1777 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1778 func_section_wrap ansic_ext_stdlib_env
1780 func_echo
"$element"
1784 func_module secure_getenv
1786 func_module unsetenv
1790 element
="Character handling <ctype.h>"
1791 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1792 func_section_wrap ansic_ext_ctype
1794 func_echo
"$element"
1800 element
="String handling <string.h>"
1801 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1802 func_section_wrap ansic_ext_string
1804 func_echo
"$element"
1808 func_module explicit_bzero
1813 func_module memmem-simple
1816 func_module amemxfrm
1817 func_module rawmemchr
1820 func_module c-strcase
1822 func_module c-strcaseeq
1823 func_module c-strcasestr
1824 func_module strcasestr
1825 func_module strcasestr-simple
1826 func_module strchrnul
1828 func_module strerror_r-posix
1830 func_module strnlen1
1834 func_module strstr-simple
1835 func_module c-strstr
1836 func_module astrxfrm
1839 func_module xstrndup
1842 element
="Mathematics <math.h>"
1843 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1844 func_section_wrap ansic_ext_math
1846 func_echo
"$element"
1849 func_module printf-frexp
1852 element
="Numeric conversion functions <stdlib.h>"
1853 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1854 func_section_wrap ansic_ext_stdlib_conv
1856 func_echo
"$element"
1859 func_module c-strtod
1860 func_module c-strtold
1863 func_module xstrtol-error
1864 func_module xstrtoll
1865 func_module xstrtold
1868 element
="Date and time <time.h>"
1869 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1870 func_section_wrap ansic_ext_time_datetime
1872 func_echo
"$element"
1875 func_module mktime-internal
1876 func_module parse-datetime
1881 element
="Input/Output <stdio.h>"
1882 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1883 func_section_wrap ansic_ext_stdio
1885 func_echo
"$element"
1888 func_module unlocked-io
1889 func_module fwriteerror
1890 func_module vasnprintf
1891 func_module vasprintf
1893 func_module xvasprintf
1896 element
="Signal handling <signal.h>"
1897 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1898 func_section_wrap ansic_ext_signal
1900 func_echo
"$element"
1903 func_module fatal-signal
1905 func_module strsignal
1908 element
="Command-line arguments"
1909 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1910 func_section_wrap ansic_ext_argv
1912 func_echo
"$element"
1915 func_module argmatch
1916 func_module argv-iter
1917 func_module version-etc
1918 func_module version-etc-fsf
1919 func_module long-options
1922 element
="Container data structures"
1923 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1924 func_section_wrap ansic_ext_container
1926 func_echo
"$element"
1931 func_module array-list
1932 func_module carray-list
1933 func_module linked-list
1934 func_module avltree-list
1935 func_module rbtree-list
1936 func_module linkedhash-list
1937 func_module avltreehash-list
1938 func_module rbtreehash-list
1940 func_module xsublist
1943 func_module array-oset
1944 func_module avltree-oset
1945 func_module rbtree-oset
1948 element
="Cryptographic computations (low-level)"
1949 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1950 func_section_wrap ansic_ext_crypto
1952 func_echo
"$element"
1955 func_module
crypto
/arcfour
1956 func_module
crypto
/arctwo
1957 func_module
crypto
/des
1958 func_module
crypto
/hmac-md5
1959 func_module
crypto
/hmac-sha1
1960 func_module
crypto
/md2
1961 func_module
crypto
/md4
1962 func_module
crypto
/md5
1963 func_module
crypto
/rijndael
1964 func_module
crypto
/sha1
1965 func_module
crypto
/sha256
1966 func_module
crypto
/sha512
1967 func_module
crypto
/sm3
1970 element
="Cryptographic computations (high-level)"
1971 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1972 func_section_wrap ansic_ext_crypto2
1974 func_echo
"$element"
1977 func_module
crypto
/gc
1978 func_module
crypto
/gc-arcfour
1979 func_module
crypto
/gc-arctwo
1980 func_module
crypto
/gc-camellia
1981 func_module
crypto
/gc-des
1982 func_module
crypto
/gc-hmac-md5
1983 func_module
crypto
/gc-hmac-sha1
1984 func_module
crypto
/gc-md2
1985 func_module
crypto
/gc-md4
1986 func_module
crypto
/gc-md5
1987 func_module
crypto
/gc-pbkdf2
1988 func_module
crypto
/gc-pbkdf2-sha1
1989 func_module
crypto
/gc-random
1990 func_module
crypto
/gc-rijndael
1991 func_module
crypto
/gc-sha1
1992 func_module
crypto
/gc-sm3
1995 element
="Compiler warning management"
1996 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1997 func_section_wrap ansic_ext_compwarn
1999 func_echo
"$element"
2002 func_module ignore-value
2006 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2007 func_section_wrap ansic_ext_misc
2009 func_echo
"$element"
2014 func_module check-version
2018 func_module execinfo
2020 func_module getdelim
2021 func_module getnline
2022 func_module getndelim2
2023 func_module linebuffer
2026 func_module obstack-printf
2027 func_module obstack-printf-posix
2028 func_module hash-pjw
2029 func_module hash-pjw-bare
2031 func_module readline
2032 func_module readtokens
2033 func_module readtokens0
2035 func_module strverscmp
2036 func_module filevercmp
2039 element
="Support for systems lacking ISO C 99"
2040 func_section_wrap isoc_sup
2042 func_echo
"$element"
2044 element
="Core language properties"
2045 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2046 func_section_wrap isoc_core_properties
2048 func_echo
"$element"
2053 func_module flexmember
2057 func_module longlong
2058 func_module snippet
/unused-parameter
2060 func_module vararrays
2064 element
="Variable arguments <stdarg.h>"
2065 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2066 func_section_wrap isoc_sup_stdarg
2068 func_echo
"$element"
2074 element
="Boolean type and values <stdbool.h>"
2075 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2076 func_section_wrap isoc_sup_stdbool
2078 func_echo
"$element"
2084 element
="Basic types <stddef.h>"
2085 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2086 func_section_wrap isoc_sup_stddef
2088 func_echo
"$element"
2094 element
="Integer types and values <stdint.h>"
2095 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2096 func_section_wrap isoc_sup_stdint
2098 func_echo
"$element"
2101 func_module size_max
2105 element
="Input/output <stdio.h>"
2106 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2107 func_section_wrap isoc_sup_stdio
2109 func_echo
"$element"
2113 func_module snprintf
2114 func_module vsnprintf
2117 element
="Process control, Numeric conversion functions <stdlib.h>"
2118 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2119 func_section_wrap isoc_sup_stdlib_procconv
2121 func_echo
"$element"
2127 func_module strtoull
2130 element
="Unibyte characters <ctype.h>"
2131 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2132 func_section_wrap isoc_sup_ctype
2134 func_echo
"$element"
2140 element
="Functions for greatest-width integer types <inttypes.h>"
2141 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2142 func_section_wrap isoc_sup_inttypes
2144 func_echo
"$element"
2149 func_module inttypes
2150 func_module strtoimax
2151 func_module strtoumax
2154 element
="String handling <string.h>"
2155 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2156 func_section_wrap isoc_sup_string
2158 func_echo
"$element"
2164 element
="Extended multibyte and wide character utilities <wchar.h>"
2165 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2166 func_section_wrap isoc_sup_wchar
2168 func_echo
"$element"
2177 func_module mbsrtowcs
2179 func_module wcsrtombs
2182 element
="Wide character classification and mapping utilities <wctype.h>"
2183 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2184 func_section_wrap isoc_sup_wctype
2186 func_echo
"$element"
2192 element
="Characteristics of floating types <float.h>"
2193 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2194 func_section_wrap isoc_sup_float
2196 func_echo
"$element"
2202 element
="Mathematics <math.h>"
2203 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2204 func_section_wrap isoc_sup_math
2206 func_echo
"$element"
2220 func_module copysign
2234 func_module frexp-nolibm
2236 func_module frexpl-nolibm
2238 func_module isfinite
2242 func_module isnanf-nolibm
2244 func_module isnand-nolibm
2246 func_module isnanl-nolibm
2261 func_module nextafter
2263 func_module remainder
2285 element
="Enhancements for ISO C 99 functions"
2286 func_section_wrap isoc_enh
2288 func_echo
"$element"
2290 element
="Input/output <stdio.h>"
2291 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2292 func_section_wrap isoc_enh_stdio
2294 func_echo
"$element"
2297 func_module printf-safe
2300 element
="Extra functions based on ISO C 99"
2301 func_section_wrap isoc_ext
2303 func_echo
"$element"
2305 element
="Mathematics <math.h>"
2306 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2307 func_section_wrap isoc_ext_math
2309 func_echo
"$element"
2312 func_module printf-frexpl
2315 element
="Numeric conversion functions <stdlib.h>"
2316 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2317 func_section_wrap isoc_ext_stdlib_conv
2319 func_echo
"$element"
2322 func_module c-dtoastr
2323 func_module c-ldtoastr
2326 func_module intprops
2327 func_module inttostr
2328 func_module ldtoastr
2329 func_module xstrtoimax
2330 func_module xstrtoumax
2333 element
="Extended multibyte and wide character utilities <wchar.h>"
2334 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2335 func_section_wrap isoc_ext_wchar_mb
2337 func_echo
"$element"
2346 element
="Support for systems lacking ISO C 11"
2347 func_section_wrap c11_sup
2349 func_echo
"$element"
2351 element
="Core language properties"
2352 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2353 func_section_wrap c11_core_properties
2355 func_echo
"$element"
2358 func_module noreturn
2359 func_module std-gnu11
2360 func_module stdalign
2363 element
="Support for standard extensions to ISO C 11"
2364 func_section_wrap c11_ext
2366 func_echo
"$element"
2369 func_module attribute
2370 func_module builtin-expect
2371 func_module ieee754-h
2372 func_module limits-h
2375 element
="Support for GNU multiple precision arithmetic"
2376 func_section_wrap gmp
2378 func_echo
"$element"
2384 element
="Support for sharing code with the GNU C Library"
2385 func_section_wrap glibc
2387 func_echo
"$element"
2390 func_module libc-config
2393 element
="Support for obsolete systems lacking POSIX:2008"
2394 func_section_wrap posix_sup_obsolete
2396 func_echo
"$element"
2402 func_echo
'These modules are not listed among dependencies below, for simplicity.'
2403 func_echo
'If your package requires portability to old, obsolete systems, you need to list these modules explicitly among the modules to import through gnulib-tool.'
2405 element
="Support for systems lacking POSIX:2008"
2406 func_section_wrap posix_sup
2408 func_echo
"$element"
2412 func_module alphasort
2413 func_module arpa_inet
2415 func_module calloc-posix
2421 func_module dprintf-posix
2423 func_module duplocale
2430 func_module fdatasync
2433 func_module fprintf-posix
2440 func_module ftruncate
2441 func_module futimens
2442 func_module getaddrinfo
2444 func_module getcwd-lgpl
2445 func_module getgroups
2446 func_module gethostname
2447 func_module getlogin
2448 func_module getlogin_r
2449 func_module getopt-posix
2450 func_module getpeername
2451 func_module getsockname
2452 func_module getsockopt
2453 func_module getsubopt
2454 func_module gettimeofday
2458 func_module iconv_open
2459 func_module inet_ntop
2460 func_module inet_pton
2463 func_module langinfo
2470 func_module malloc-posix
2471 func_module mbsnrtowcs
2479 func_module netinet_in
2480 func_module nl_langinfo
2485 func_module posix_openpt
2486 func_module posix_spawn
2487 func_module posix_spawnattr_destroy
2488 func_module posix_spawnattr_getflags
2489 func_module posix_spawnattr_getpgroup
2490 func_module posix_spawnattr_getschedparam
2491 func_module posix_spawnattr_getschedpolicy
2492 func_module posix_spawnattr_getsigdefault
2493 func_module posix_spawnattr_getsigmask
2494 func_module posix_spawnattr_init
2495 func_module posix_spawnattr_setflags
2496 func_module posix_spawnattr_setpgroup
2497 func_module posix_spawnattr_setschedparam
2498 func_module posix_spawnattr_setschedpolicy
2499 func_module posix_spawnattr_setsigdefault
2500 func_module posix_spawnattr_setsigmask
2501 func_module posix_spawn_file_actions_addclose
2502 func_module posix_spawn_file_actions_adddup2
2503 func_module posix_spawn_file_actions_addopen
2504 func_module posix_spawn_file_actions_destroy
2505 func_module posix_spawn_file_actions_init
2506 func_module posix_spawn-internal
2507 func_module posix_spawnp
2509 func_module printf-posix
2514 func_module readlink
2515 func_module realloc-posix
2517 func_module recvfrom
2525 func_module setsockopt
2526 func_module shutdown
2527 func_module signal-h
2529 func_module snprintf-posix
2532 func_module sprintf-posix
2534 func_module strdup-posix
2537 func_module tempname
2541 func_module timespec
2542 func_module nanosleep
2543 func_module pthread_sigmask
2546 func_module renameat
2549 func_module sigaction
2550 func_module sigprocmask
2553 func_module strptime
2554 func_module strtok_r
2555 func_module sys_select
2556 func_module sys_socket
2557 func_module sys_stat
2558 func_module sys_time
2559 func_module sys_times
2561 func_module sys_utsname
2562 func_module sys_wait
2563 func_module truncate
2565 func_module ttyname_r
2569 func_module unlockpt
2572 func_module utimensat
2573 func_module vasnprintf-posix
2574 func_module vasprintf-posix
2575 func_module vdprintf
2576 func_module vdprintf-posix
2577 func_module vfprintf-posix
2578 func_module vprintf-posix
2579 func_module vsnprintf-posix
2580 func_module vsprintf-posix
2581 func_module wcsnrtombs
2583 func_module windows-stat-inodes
2584 func_module windows-stat-override
2585 func_module windows-stat-timespec
2589 element
="Compatibility checks for POSIX:2008 functions"
2590 func_section_wrap posix_compat
2592 func_echo
"$element"
2595 func_module clock-time
2598 func_module link-follow
2599 func_module rmdir-errno
2600 func_module timer-time
2601 func_module unlink-busy
2602 func_module winsz-ioctl
2603 func_module winsz-termios
2606 element
="Enhancements for POSIX:2008 functions"
2607 func_section_wrap posix_enh
2609 func_echo
"$element"
2612 func_module chdir-long
2613 func_module dirent-safer
2615 func_module dirname-lgpl
2616 func_module getopt-gnu
2617 func_module iconv_open-utf
2618 func_module unistd-safer
2620 func_module fnmatch-gnu
2625 element
="Extra functions based on POSIX:2008"
2626 func_section_wrap posix_ext
2628 func_echo
"$element"
2630 element
="Input/output"
2631 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2632 func_section_wrap posix_ext_stdio
2634 func_echo
"$element"
2637 func_module xprintf-posix
2638 func_module xvasprintf-posix
2641 element
="Numeric conversion functions"
2642 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2643 func_section_wrap posix_ext_conv
2645 func_echo
"$element"
2651 element
="File system functions"
2652 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2653 func_section_wrap posix_ext_filesys
2655 func_echo
"$element"
2659 func_module acl-permissions
2660 func_module areadlink
2661 func_module areadlink-with-size
2662 func_module areadlinkat
2663 func_module areadlinkat-with-size
2664 func_module backupfile
2665 func_module backup-rename
2666 func_module canonicalize
2667 func_module canonicalize-lgpl
2668 func_module clean-temp
2669 func_module concat-filename
2670 func_module copy-file
2673 func_module double-slash-root
2674 func_module euidaccess
2675 func_module faccessat
2676 func_module fdopendir
2677 func_module fdutimensat
2678 func_module file-type
2679 func_module fileblocks
2680 func_module filemode
2681 func_module filename
2682 func_module filenamecat
2683 func_module filenamecat-lgpl
2686 func_module largefile
2689 func_module mkancesdirs
2690 func_module mkfifoat
2692 func_module mkostemp
2693 func_module mkostemps
2694 func_module mkstemps
2695 func_module modechange
2696 func_module mountlist
2698 func_module openat-die
2701 func_module qcopy-acl
2702 func_module qset-acl
2703 func_module read-file
2704 func_module readlinkat
2705 func_module renameatu
2707 func_module save-cwd
2710 func_module stat-macros
2711 func_module stat-time
2713 func_module symlinkat
2714 func_module sys_file
2715 func_module sys_ioctl
2717 func_module unlinkdir
2718 func_module utimecmp
2720 func_module write-any-file
2721 func_module xconcat-filename
2723 func_module xreadlink
2724 func_module xreadlinkat
2727 element
="File system as inode set"
2728 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2729 func_section_wrap posix_ext_inodeset
2731 func_echo
"$element"
2734 func_module cycle-check
2736 func_module file-set
2737 func_module hash-triple
2739 func_module same-inode
2742 element
="File descriptor based Input/Output"
2743 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2744 func_section_wrap posix_ext_filedesc
2746 func_echo
"$element"
2749 func_module binary-io
2750 func_module copy-file-range
2752 func_module fcntl-safer
2753 func_module fd-safer-flag
2754 func_module full-read
2755 func_module full-write
2756 func_module getdtablesize
2758 func_module openat-safer
2759 func_module pipe-posix
2761 func_module pipe2-safer
2762 func_module safe-read
2763 func_module safe-write
2766 element
="File stream based Input/Output"
2767 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2768 func_section_wrap posix_ext_filestream
2770 func_echo
"$element"
2773 func_module close-stream
2775 func_module closeout
2776 func_module fbufmode
2777 func_module fopen-safer
2778 func_module fpending
2780 func_module freadable
2781 func_module freadahead
2782 func_module freading
2783 func_module freadptr
2784 func_module freadseek
2785 func_module freopen-safer
2786 func_module fwritable
2787 func_module fwriting
2789 func_module getpass-gnu
2790 func_module popen-safer
2791 func_module stdlib-safer
2792 func_module tmpfile-safer
2793 func_module xfreopen
2796 element
="Users and groups"
2797 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2798 func_section_wrap posix_ext_uidgid
2800 func_echo
"$element"
2803 func_module getugroups
2804 func_module group-member
2806 func_module mgetgroups
2807 func_module userspec
2811 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2812 func_section_wrap posix_ext_security
2814 func_echo
"$element"
2817 func_module idpriv-drop
2818 func_module idpriv-droptemp
2819 func_module priv-set
2822 element
="Date and time"
2823 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2824 func_section_wrap posix_ext_datetime
2826 func_echo
"$element"
2829 func_module gethrxtime
2834 func_module xnanosleep
2837 element
="Networking functions"
2838 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2839 func_section_wrap posix_ext_net
2841 func_echo
"$element"
2845 func_module xgethostname
2846 func_module canon-host
2850 element
="Multithreading"
2851 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2852 func_section_wrap posix_ext_thread
2854 func_echo
"$element"
2857 func_module threadlib
2866 element
="Signal handling"
2867 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2868 func_section_wrap posix_ext_signal
2870 func_echo
"$element"
2874 func_module libsigsegv
2877 func_module sigpipe-die
2880 element
="Internationalization functions"
2881 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2882 func_section_wrap posix_ext_i18n
2884 func_echo
"$element"
2888 func_module gettext-h
2889 func_module propername
2891 func_module striconv
2892 func_module xstriconv
2893 func_module striconveh
2894 func_module xstriconveh
2895 func_module striconveha
2896 func_module localcharset
2897 func_module hard-locale
2898 func_module localename
2899 func_module mbmemcasecmp
2900 func_module mbmemcasecoll
2906 func_module mbscasecmp
2907 func_module mbsncasecmp
2908 func_module mbspcasecmp
2909 func_module mbscasestr
2914 func_module mbstok_r
2915 func_module mbswidth
2916 func_module memcasecmp
2918 func_module xmemcoll
2919 func_module unicodeio
2922 func_module bison-i18n
2925 element
="Unicode string functions"
2926 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2927 func_section_wrap posix_ext_unicode
2929 func_echo
"$element"
2932 func_module libunistring
2933 func_module libunistring-optional
2934 func_module unitypes
2935 func_module ucs4-utf8
2936 func_module ucs4-utf16
2937 func_module utf8-ucs4-unsafe
2938 func_module utf16-ucs4-unsafe
2939 func_module utf8-ucs4
2940 func_module utf16-ucs4
2941 func_module unistr
/base
2942 func_module unistr
/u8-to-u16
2943 func_module unistr
/u8-to-u32
2944 func_module unistr
/u16-to-u8
2945 func_module unistr
/u16-to-u32
2946 func_module unistr
/u32-to-u8
2947 func_module unistr
/u32-to-u16
2948 func_module unistr
/u8-check
2949 func_module unistr
/u16-check
2950 func_module unistr
/u32-check
2951 func_module unistr
/u8-chr
2952 func_module unistr
/u16-chr
2953 func_module unistr
/u32-chr
2954 func_module unistr
/u8-cmp
2955 func_module unistr
/u16-cmp
2956 func_module unistr
/u32-cmp
2957 func_module unistr
/u8-cmp2
2958 func_module unistr
/u16-cmp2
2959 func_module unistr
/u32-cmp2
2960 func_module unistr
/u8-cpy
2961 func_module unistr
/u16-cpy
2962 func_module unistr
/u32-cpy
2963 func_module unistr
/u8-cpy-alloc
2964 func_module unistr
/u16-cpy-alloc
2965 func_module unistr
/u32-cpy-alloc
2966 func_module unistr
/u8-endswith
2967 func_module unistr
/u16-endswith
2968 func_module unistr
/u32-endswith
2969 func_module unistr
/u8-mblen
2970 func_module unistr
/u16-mblen
2971 func_module unistr
/u32-mblen
2972 func_module unistr
/u8-mbsnlen
2973 func_module unistr
/u16-mbsnlen
2974 func_module unistr
/u32-mbsnlen
2975 func_module unistr
/u8-mbtouc-unsafe
2976 func_module unistr
/u16-mbtouc-unsafe
2977 func_module unistr
/u32-mbtouc-unsafe
2978 func_module unistr
/u8-mbtouc
2979 func_module unistr
/u16-mbtouc
2980 func_module unistr
/u32-mbtouc
2981 func_module unistr
/u8-mbtoucr
2982 func_module unistr
/u16-mbtoucr
2983 func_module unistr
/u32-mbtoucr
2984 func_module unistr
/u8-move
2985 func_module unistr
/u16-move
2986 func_module unistr
/u32-move
2987 func_module unistr
/u8-next
2988 func_module unistr
/u16-next
2989 func_module unistr
/u32-next
2990 func_module unistr
/u8-prev
2991 func_module unistr
/u16-prev
2992 func_module unistr
/u32-prev
2993 func_module unistr
/u8-set
2994 func_module unistr
/u16-set
2995 func_module unistr
/u32-set
2996 func_module unistr
/u8-startswith
2997 func_module unistr
/u16-startswith
2998 func_module unistr
/u32-startswith
2999 func_module unistr
/u8-stpcpy
3000 func_module unistr
/u16-stpcpy
3001 func_module unistr
/u32-stpcpy
3002 func_module unistr
/u8-stpncpy
3003 func_module unistr
/u16-stpncpy
3004 func_module unistr
/u32-stpncpy
3005 func_module unistr
/u8-strcat
3006 func_module unistr
/u16-strcat
3007 func_module unistr
/u32-strcat
3008 func_module unistr
/u8-strchr
3009 func_module unistr
/u16-strchr
3010 func_module unistr
/u32-strchr
3011 func_module unistr
/u8-strcmp
3012 func_module unistr
/u16-strcmp
3013 func_module unistr
/u32-strcmp
3014 func_module unistr
/u8-strcoll
3015 func_module unistr
/u16-strcoll
3016 func_module unistr
/u32-strcoll
3017 func_module unistr
/u8-strcpy
3018 func_module unistr
/u16-strcpy
3019 func_module unistr
/u32-strcpy
3020 func_module unistr
/u8-strcspn
3021 func_module unistr
/u16-strcspn
3022 func_module unistr
/u32-strcspn
3023 func_module unistr
/u8-strdup
3024 func_module unistr
/u16-strdup
3025 func_module unistr
/u32-strdup
3026 func_module unistr
/u8-strlen
3027 func_module unistr
/u16-strlen
3028 func_module unistr
/u32-strlen
3029 func_module unistr
/u8-strmblen
3030 func_module unistr
/u16-strmblen
3031 func_module unistr
/u32-strmblen
3032 func_module unistr
/u8-strmbtouc
3033 func_module unistr
/u16-strmbtouc
3034 func_module unistr
/u32-strmbtouc
3035 func_module unistr
/u8-strncat
3036 func_module unistr
/u16-strncat
3037 func_module unistr
/u32-strncat
3038 func_module unistr
/u8-strncmp
3039 func_module unistr
/u16-strncmp
3040 func_module unistr
/u32-strncmp
3041 func_module unistr
/u8-strncpy
3042 func_module unistr
/u16-strncpy
3043 func_module unistr
/u32-strncpy
3044 func_module unistr
/u8-strnlen
3045 func_module unistr
/u16-strnlen
3046 func_module unistr
/u32-strnlen
3047 func_module unistr
/u8-strpbrk
3048 func_module unistr
/u16-strpbrk
3049 func_module unistr
/u32-strpbrk
3050 func_module unistr
/u8-strrchr
3051 func_module unistr
/u16-strrchr
3052 func_module unistr
/u32-strrchr
3053 func_module unistr
/u8-strspn
3054 func_module unistr
/u16-strspn
3055 func_module unistr
/u32-strspn
3056 func_module unistr
/u8-strstr
3057 func_module unistr
/u16-strstr
3058 func_module unistr
/u32-strstr
3059 func_module unistr
/u8-strtok
3060 func_module unistr
/u16-strtok
3061 func_module unistr
/u32-strtok
3062 func_module unistr
/u8-uctomb
3063 func_module unistr
/u16-uctomb
3064 func_module unistr
/u32-uctomb
3065 func_module uniconv
/base
3066 func_module uniconv
/u8-conv-from-enc
3067 func_module uniconv
/u16-conv-from-enc
3068 func_module uniconv
/u32-conv-from-enc
3069 func_module uniconv
/u8-conv-to-enc
3070 func_module uniconv
/u16-conv-to-enc
3071 func_module uniconv
/u32-conv-to-enc
3072 func_module uniconv
/u8-strconv-from-enc
3073 func_module uniconv
/u16-strconv-from-enc
3074 func_module uniconv
/u32-strconv-from-enc
3075 func_module uniconv
/u8-strconv-to-enc
3076 func_module uniconv
/u16-strconv-to-enc
3077 func_module uniconv
/u32-strconv-to-enc
3078 func_module uniconv
/u8-strconv-from-locale
3079 func_module uniconv
/u16-strconv-from-locale
3080 func_module uniconv
/u32-strconv-from-locale
3081 func_module uniconv
/u8-strconv-to-locale
3082 func_module uniconv
/u16-strconv-to-locale
3083 func_module uniconv
/u32-strconv-to-locale
3084 func_module unistdio
/base
3085 func_module unistdio
/u-printf-args
3086 func_module unistdio
/ulc-asnprintf
3087 func_module unistdio
/ulc-asprintf
3088 func_module unistdio
/ulc-fprintf
3089 func_module unistdio
/ulc-printf-parse
3090 func_module unistdio
/ulc-snprintf
3091 func_module unistdio
/ulc-sprintf
3092 func_module unistdio
/ulc-vasnprintf
3093 func_module unistdio
/ulc-vasprintf
3094 func_module unistdio
/ulc-vfprintf
3095 func_module unistdio
/ulc-vsnprintf
3096 func_module unistdio
/ulc-vsprintf
3097 func_module unistdio
/u8-asnprintf
3098 func_module unistdio
/u8-asprintf
3099 func_module unistdio
/u8-printf-parse
3100 func_module unistdio
/u8-snprintf
3101 func_module unistdio
/u8-sprintf
3102 func_module unistdio
/u8-vasnprintf
3103 func_module unistdio
/u8-vasprintf
3104 func_module unistdio
/u8-vsnprintf
3105 func_module unistdio
/u8-vsprintf
3106 func_module unistdio
/u8-u8-asnprintf
3107 func_module unistdio
/u8-u8-asprintf
3108 func_module unistdio
/u8-u8-snprintf
3109 func_module unistdio
/u8-u8-sprintf
3110 func_module unistdio
/u8-u8-vasnprintf
3111 func_module unistdio
/u8-u8-vasprintf
3112 func_module unistdio
/u8-u8-vsnprintf
3113 func_module unistdio
/u8-u8-vsprintf
3114 func_module unistdio
/u16-asnprintf
3115 func_module unistdio
/u16-asprintf
3116 func_module unistdio
/u16-printf-parse
3117 func_module unistdio
/u16-snprintf
3118 func_module unistdio
/u16-sprintf
3119 func_module unistdio
/u16-vasnprintf
3120 func_module unistdio
/u16-vasprintf
3121 func_module unistdio
/u16-vsnprintf
3122 func_module unistdio
/u16-vsprintf
3123 func_module unistdio
/u16-u16-asnprintf
3124 func_module unistdio
/u16-u16-asprintf
3125 func_module unistdio
/u16-u16-snprintf
3126 func_module unistdio
/u16-u16-sprintf
3127 func_module unistdio
/u16-u16-vasnprintf
3128 func_module unistdio
/u16-u16-vasprintf
3129 func_module unistdio
/u16-u16-vsnprintf
3130 func_module unistdio
/u16-u16-vsprintf
3131 func_module unistdio
/u32-asnprintf
3132 func_module unistdio
/u32-asprintf
3133 func_module unistdio
/u32-printf-parse
3134 func_module unistdio
/u32-snprintf
3135 func_module unistdio
/u32-sprintf
3136 func_module unistdio
/u32-vasnprintf
3137 func_module unistdio
/u32-vasprintf
3138 func_module unistdio
/u32-vsnprintf
3139 func_module unistdio
/u32-vsprintf
3140 func_module unistdio
/u32-u32-asnprintf
3141 func_module unistdio
/u32-u32-asprintf
3142 func_module unistdio
/u32-u32-snprintf
3143 func_module unistdio
/u32-u32-sprintf
3144 func_module unistdio
/u32-u32-vasnprintf
3145 func_module unistdio
/u32-u32-vasprintf
3146 func_module unistdio
/u32-u32-vsnprintf
3147 func_module unistdio
/u32-u32-vsprintf
3148 func_module uniname
/base
3149 func_module uniname
/uniname
3150 func_module unictype
/base
3151 func_module unictype
/bidiclass-byname
3152 func_module unictype
/bidiclass-name
3153 func_module unictype
/bidiclass-longname
3154 func_module unictype
/bidiclass-of
3155 func_module unictype
/bidiclass-test
3156 func_module unictype
/bidiclass-all
3157 func_module unictype
/block-list
3158 func_module unictype
/block-of
3159 func_module unictype
/block-test
3160 func_module unictype
/block-all
3161 func_module unictype
/category-C
3162 func_module unictype
/category-Cc
3163 func_module unictype
/category-Cf
3164 func_module unictype
/category-Cn
3165 func_module unictype
/category-Co
3166 func_module unictype
/category-Cs
3167 func_module unictype
/category-L
3168 func_module unictype
/category-Ll
3169 func_module unictype
/category-Lm
3170 func_module unictype
/category-Lo
3171 func_module unictype
/category-Lt
3172 func_module unictype
/category-Lu
3173 func_module unictype
/category-M
3174 func_module unictype
/category-Mc
3175 func_module unictype
/category-Me
3176 func_module unictype
/category-Mn
3177 func_module unictype
/category-N
3178 func_module unictype
/category-Nd
3179 func_module unictype
/category-Nl
3180 func_module unictype
/category-No
3181 func_module unictype
/category-P
3182 func_module unictype
/category-Pc
3183 func_module unictype
/category-Pd
3184 func_module unictype
/category-Pe
3185 func_module unictype
/category-Pf
3186 func_module unictype
/category-Pi
3187 func_module unictype
/category-Po
3188 func_module unictype
/category-Ps
3189 func_module unictype
/category-S
3190 func_module unictype
/category-Sc
3191 func_module unictype
/category-Sk
3192 func_module unictype
/category-Sm
3193 func_module unictype
/category-So
3194 func_module unictype
/category-Z
3195 func_module unictype
/category-Zl
3196 func_module unictype
/category-Zp
3197 func_module unictype
/category-Zs
3198 func_module unictype
/category-and
3199 func_module unictype
/category-and-not
3200 func_module unictype
/category-byname
3201 func_module unictype
/category-name
3202 func_module unictype
/category-none
3203 func_module unictype
/category-of
3204 func_module unictype
/category-or
3205 func_module unictype
/category-test
3206 func_module unictype
/category-test-withtable
3207 func_module unictype
/category-all
3208 func_module unictype
/combining-class
3209 func_module unictype
/ctype-alnum
3210 func_module unictype
/ctype-alpha
3211 func_module unictype
/ctype-blank
3212 func_module unictype
/ctype-cntrl
3213 func_module unictype
/ctype-digit
3214 func_module unictype
/ctype-graph
3215 func_module unictype
/ctype-lower
3216 func_module unictype
/ctype-print
3217 func_module unictype
/ctype-punct
3218 func_module unictype
/ctype-space
3219 func_module unictype
/ctype-upper
3220 func_module unictype
/ctype-xdigit
3221 func_module unictype
/decimal-digit
3222 func_module unictype
/digit
3223 func_module unictype
/mirror
3224 func_module unictype
/numeric
3225 func_module unictype
/property-alphabetic
3226 func_module unictype
/property-ascii-hex-digit
3227 func_module unictype
/property-bidi-arabic-digit
3228 func_module unictype
/property-bidi-arabic-right-to-left
3229 func_module unictype
/property-bidi-block-separator
3230 func_module unictype
/property-bidi-boundary-neutral
3231 func_module unictype
/property-bidi-common-separator
3232 func_module unictype
/property-bidi-control
3233 func_module unictype
/property-bidi-embedding-or-override
3234 func_module unictype
/property-bidi-eur-num-separator
3235 func_module unictype
/property-bidi-eur-num-terminator
3236 func_module unictype
/property-bidi-european-digit
3237 func_module unictype
/property-bidi-hebrew-right-to-left
3238 func_module unictype
/property-bidi-left-to-right
3239 func_module unictype
/property-bidi-non-spacing-mark
3240 func_module unictype
/property-bidi-other-neutral
3241 func_module unictype
/property-bidi-pdf
3242 func_module unictype
/property-bidi-segment-separator
3243 func_module unictype
/property-bidi-whitespace
3244 func_module unictype
/property-byname
3245 func_module unictype
/property-case-ignorable
3246 func_module unictype
/property-cased
3247 func_module unictype
/property-changes-when-casefolded
3248 func_module unictype
/property-changes-when-casemapped
3249 func_module unictype
/property-changes-when-lowercased
3250 func_module unictype
/property-changes-when-titlecased
3251 func_module unictype
/property-changes-when-uppercased
3252 func_module unictype
/property-combining
3253 func_module unictype
/property-composite
3254 func_module unictype
/property-currency-symbol
3255 func_module unictype
/property-dash
3256 func_module unictype
/property-decimal-digit
3257 func_module unictype
/property-default-ignorable-code-point
3258 func_module unictype
/property-deprecated
3259 func_module unictype
/property-diacritic
3260 func_module unictype
/property-extender
3261 func_module unictype
/property-format-control
3262 func_module unictype
/property-grapheme-base
3263 func_module unictype
/property-grapheme-extend
3264 func_module unictype
/property-grapheme-link
3265 func_module unictype
/property-hex-digit
3266 func_module unictype
/property-hyphen
3267 func_module unictype
/property-id-continue
3268 func_module unictype
/property-id-start
3269 func_module unictype
/property-ideographic
3270 func_module unictype
/property-ids-binary-operator
3271 func_module unictype
/property-ids-trinary-operator
3272 func_module unictype
/property-ignorable-control
3273 func_module unictype
/property-iso-control
3274 func_module unictype
/property-join-control
3275 func_module unictype
/property-left-of-pair
3276 func_module unictype
/property-line-separator
3277 func_module unictype
/property-logical-order-exception
3278 func_module unictype
/property-lowercase
3279 func_module unictype
/property-math
3280 func_module unictype
/property-non-break
3281 func_module unictype
/property-not-a-character
3282 func_module unictype
/property-numeric
3283 func_module unictype
/property-other-alphabetic
3284 func_module unictype
/property-other-default-ignorable-code-point
3285 func_module unictype
/property-other-grapheme-extend
3286 func_module unictype
/property-other-id-continue
3287 func_module unictype
/property-other-id-start
3288 func_module unictype
/property-other-lowercase
3289 func_module unictype
/property-other-math
3290 func_module unictype
/property-other-uppercase
3291 func_module unictype
/property-paired-punctuation
3292 func_module unictype
/property-paragraph-separator
3293 func_module unictype
/property-pattern-syntax
3294 func_module unictype
/property-pattern-white-space
3295 func_module unictype
/property-private-use
3296 func_module unictype
/property-punctuation
3297 func_module unictype
/property-quotation-mark
3298 func_module unictype
/property-radical
3299 func_module unictype
/property-sentence-terminal
3300 func_module unictype
/property-soft-dotted
3301 func_module unictype
/property-space
3302 func_module unictype
/property-terminal-punctuation
3303 func_module unictype
/property-test
3304 func_module unictype
/property-titlecase
3305 func_module unictype
/property-unassigned-code-value
3306 func_module unictype
/property-unified-ideograph
3307 func_module unictype
/property-uppercase
3308 func_module unictype
/property-variation-selector
3309 func_module unictype
/property-white-space
3310 func_module unictype
/property-xid-continue
3311 func_module unictype
/property-xid-start
3312 func_module unictype
/property-zero-width
3313 func_module unictype
/property-all
3314 func_module unictype
/scripts
3315 func_module unictype
/scripts-all
3316 func_module unictype
/syntax-c-ident
3317 func_module unictype
/syntax-c-whitespace
3318 func_module unictype
/syntax-java-ident
3319 func_module unictype
/syntax-java-whitespace
3320 func_module uniwidth
/base
3321 func_module uniwidth
/u8-strwidth
3322 func_module uniwidth
/u8-width
3323 func_module uniwidth
/u16-strwidth
3324 func_module uniwidth
/u16-width
3325 func_module uniwidth
/u32-strwidth
3326 func_module uniwidth
/u32-width
3327 func_module uniwidth
/width
3328 func_module uniwbrk
/base
3329 func_module uniwbrk
/ulc-wordbreaks
3330 func_module uniwbrk
/u8-wordbreaks
3331 func_module uniwbrk
/u16-wordbreaks
3332 func_module uniwbrk
/u32-wordbreaks
3333 func_module uniwbrk
/wordbreak-property
3334 func_module unilbrk
/base
3335 func_module unilbrk
/tables
3336 func_module unilbrk
/ulc-common
3337 func_module unilbrk
/u8-possible-linebreaks
3338 func_module unilbrk
/u16-possible-linebreaks
3339 func_module unilbrk
/u32-possible-linebreaks
3340 func_module unilbrk
/ulc-possible-linebreaks
3341 func_module unilbrk
/u8-width-linebreaks
3342 func_module unilbrk
/u16-width-linebreaks
3343 func_module unilbrk
/u32-width-linebreaks
3344 func_module unilbrk
/ulc-width-linebreaks
3345 func_module uninorm
/base
3346 func_module uninorm
/canonical-decomposition
3347 func_module uninorm
/composition
3348 func_module uninorm
/decomposing-form
3349 func_module uninorm
/decomposition
3350 func_module uninorm
/filter
3351 func_module uninorm
/nfc
3352 func_module uninorm
/nfd
3353 func_module uninorm
/nfkc
3354 func_module uninorm
/nfkd
3355 func_module uninorm
/u8-normalize
3356 func_module uninorm
/u16-normalize
3357 func_module uninorm
/u32-normalize
3358 func_module uninorm
/u8-normcmp
3359 func_module uninorm
/u16-normcmp
3360 func_module uninorm
/u32-normcmp
3361 func_module uninorm
/u8-normcoll
3362 func_module uninorm
/u16-normcoll
3363 func_module uninorm
/u32-normcoll
3364 func_module uninorm
/u8-normxfrm
3365 func_module uninorm
/u16-normxfrm
3366 func_module uninorm
/u32-normxfrm
3367 func_module unicase
/base
3368 func_module unicase
/empty-prefix-context
3369 func_module unicase
/empty-suffix-context
3370 func_module unicase
/locale-language
3371 func_module unicase
/tolower
3372 func_module unicase
/totitle
3373 func_module unicase
/toupper
3374 func_module unicase
/ulc-casecmp
3375 func_module unicase
/ulc-casecoll
3376 func_module unicase
/ulc-casexfrm
3377 func_module unicase
/u8-casecmp
3378 func_module unicase
/u16-casecmp
3379 func_module unicase
/u32-casecmp
3380 func_module unicase
/u8-casecoll
3381 func_module unicase
/u16-casecoll
3382 func_module unicase
/u32-casecoll
3383 func_module unicase
/u8-casefold
3384 func_module unicase
/u16-casefold
3385 func_module unicase
/u32-casefold
3386 func_module unicase
/u8-casexfrm
3387 func_module unicase
/u16-casexfrm
3388 func_module unicase
/u32-casexfrm
3389 func_module unicase
/u8-ct-casefold
3390 func_module unicase
/u16-ct-casefold
3391 func_module unicase
/u32-ct-casefold
3392 func_module unicase
/u8-ct-tolower
3393 func_module unicase
/u16-ct-tolower
3394 func_module unicase
/u32-ct-tolower
3395 func_module unicase
/u8-ct-totitle
3396 func_module unicase
/u16-ct-totitle
3397 func_module unicase
/u32-ct-totitle
3398 func_module unicase
/u8-ct-toupper
3399 func_module unicase
/u16-ct-toupper
3400 func_module unicase
/u32-ct-toupper
3401 func_module unicase
/u8-is-cased
3402 func_module unicase
/u16-is-cased
3403 func_module unicase
/u32-is-cased
3404 func_module unicase
/u8-is-casefolded
3405 func_module unicase
/u16-is-casefolded
3406 func_module unicase
/u32-is-casefolded
3407 func_module unicase
/u8-is-lowercase
3408 func_module unicase
/u16-is-lowercase
3409 func_module unicase
/u32-is-lowercase
3410 func_module unicase
/u8-is-titlecase
3411 func_module unicase
/u16-is-titlecase
3412 func_module unicase
/u32-is-titlecase
3413 func_module unicase
/u8-is-uppercase
3414 func_module unicase
/u16-is-uppercase
3415 func_module unicase
/u8-prefix-context
3416 func_module unicase
/u16-prefix-context
3417 func_module unicase
/u32-prefix-context
3418 func_module unicase
/u8-suffix-context
3419 func_module unicase
/u16-suffix-context
3420 func_module unicase
/u32-suffix-context
3421 func_module unicase
/u8-tolower
3422 func_module unicase
/u16-tolower
3423 func_module unicase
/u32-tolower
3424 func_module unicase
/u8-totitle
3425 func_module unicase
/u16-totitle
3426 func_module unicase
/u32-totitle
3427 func_module unicase
/u8-toupper
3428 func_module unicase
/u16-toupper
3429 func_module unicase
/u32-toupper
3432 element
="Executing programs"
3433 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3434 func_section_wrap posix_ext_exec
3436 func_echo
"$element"
3440 func_module findprog
3441 func_module findprog-lgpl
3442 func_module wait-process
3444 func_module spawn-pipe
3445 func_module pipe-filter-gi
3446 func_module pipe-filter-ii
3447 func_module sh-quote
3451 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3452 func_section_wrap posix_ext_java
3454 func_echo
"$element"
3457 func_module classpath
3458 func_module javacomp-script
3459 func_module javacomp
3460 func_module javaexec-script
3461 func_module javaexec
3462 func_module javaversion
3467 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3468 func_section_wrap posix_ext_csharp
3470 func_echo
"$element"
3473 func_module csharpcomp-script
3474 func_module csharpcomp
3475 func_module csharpexec-script
3476 func_module csharpexec
3480 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3481 func_section_wrap posix_ext_misc
3483 func_echo
"$element"
3487 func_module argp-version-etc
3489 func_module bitrotate
3490 func_module byteswap
3492 func_module exitfail
3494 func_module extensions
3496 func_module getdomainname
3497 func_module xgetdomainname
3498 func_module getentropy
3499 func_module getloadavg
3500 func_module getpagesize
3501 func_module getprogname
3502 func_module getrandom
3503 func_module getusershell
3504 func_module lib-symbol-visibility
3505 func_module login_tty
3508 func_module parse-duration
3510 func_module posixver
3511 func_module progname
3512 func_module ptsname_r
3514 func_module quotearg
3516 func_module readutmp
3517 func_module random_r
3518 func_module selinux-h
3519 func_module selinux-at
3520 func_module sysexits
3525 element
="Support for building libraries and executables"
3526 func_section_wrap build_lib
3528 func_echo
"$element"
3531 func_module absolute-header
3532 func_module snippet
/arg-nonnull
3533 func_module config-h
3534 func_module configmake
3538 func_module include_next
3540 func_module lib-ignore
3541 func_module lib-msvc-compat
3542 func_module lib-symbol-versions
3543 func_module snippet
/link-warning
3544 func_module manywarnings
3546 func_module relocatable-lib
3547 func_module relocatable-lib-lgpl
3548 func_module relocatable-prog
3549 func_module relocatable-prog-wrapper
3550 func_module relocatable-script
3551 func_module snippet
/warn-on-use
3552 func_module warnings
3555 element
="Support for building documentation"
3556 func_section_wrap build_doc
3558 func_echo
"$element"
3561 func_module agpl-3.0
3567 func_module lgpl-2.1
3568 func_module lgpl-3.0
3569 func_module pmccabe2html
3570 func_module regexprops-generic
3573 element
="Support for maintaining and releasing projects"
3574 func_section_wrap maintain
3576 func_echo
"$element"
3579 func_module announce-gen
3580 func_module autobuild
3581 func_module do-release-commit-and-tag
3582 func_module git-version-gen
3583 func_module gitlog-to-changelog
3584 func_module gnu-web-doc-update
3585 func_module gnumakefile
3586 func_module gnupload
3587 func_module maintainer-makefile
3589 func_module non-recursive-gnulib-prefix-hack
3590 func_module readme-release
3591 func_module test-framework-sh
3592 func_module update-copyright
3593 func_module useless-if-before-free
3594 func_module vc-list-files
3595 func_module vcs-to-changelog
3599 func_section_wrap misc
3601 func_echo
"$element"
3604 func_module gnu-make
3608 func_module posix-shell
3615 trap 'exit_status=$?
3616 if test "$signal" != 0; then
3617 echo "caught signal $signal" >&2
3620 exit $exit_status' 0
3621 for signal
in 1 2 3 13 15; do
3622 trap '{ signal='$signal'; func_exit 1; }' $signal
3626 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">'
3631 element
="Gnulib Module List"
3633 func_echo
"$element"
3635 modules
=`gnulib-tool --list`
3636 modules
=`for m in $modules; do printf "%s, " $m; done | sed -e 's/, $//'`
3637 func_echo
'<META NAME="keywords" CONTENT="'"${modules}"'">'
3643 element
="Gnulib Module List"
3645 func_echo
"$element"
3647 func_echo
'This is a list of the modules which make up gnulib, with dependencies.'
3656 gnulib-tool
--list > "$tmp/all-modules"
3657 missed_modules
=`for module in $seen_modules; do echo $module; done \
3658 | LC_ALL=C sort -u \
3659 | LC_ALL=C join -v 2 - "$tmp/all-modules"`
3661 if test -n "$missed_modules"; then
3663 element
="Unclassified modules - please update MODULES.html.sh"
3664 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3666 func_echo
"$element"
3669 for module
in $missed_modules; do
3676 { find lib
-type f
-print; find m4 -type f
-print; } | LC_ALL
=C
sort |
sed -e '/\/\./d' -e /README
/d
-e /ChangeLog
/d
-e /Makefile
/d
-e /TODO
/d
-e '/tags$/d' -e '/TAGS$/d' -e '/~$/d' > "$tmp/all-files"
3677 missed_files
=`for file in $seen_files; do echo $file; done \
3678 | LC_ALL=C sort -u \
3679 | LC_ALL=C join -v 2 - "$tmp/all-files"`
3681 if test -n "$missed_files"; then
3683 element
="Lone files - please create new modules containing them"
3684 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3686 func_echo
"$element"
3689 echo "$missed_files" |
sed -e 's,^\(.*\)$,<A HREF="'"$repo_url_prefix"'\1'"$repo_url_suffix_repl"'">\1</A>,'
3694 element
="Future developments"
3695 element
=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3697 func_echo
"$element"
3699 func_echo
'Ideally a module could consist of:'
3701 func_echo
'<LI>A header file: lib/<VAR>module</VAR>.h'
3702 func_echo
'<LI>One or more implementation files: lib/<VAR>module</VAR>.c et al.'
3703 func_echo
'<LI>One or more autoconf macro files: m4/<VAR>module</VAR>.m4 et al.'
3704 func_echo
'<LI>A configure.ac fragment, Makefile.am fragment, dependency list: modules/<VAR>module</VAR>'
3705 func_echo
'<LI>A testsuite: source files in tests/ and metainformation (a configure.ac fragment, Makefile.am fragment, dependency list) in modules/<VAR>module</VAR>-tests'
3706 func_echo
'<LI>Some documentation'
3707 func_echo
'<LI>A POT file and some PO files'
3711 git_checkout_date
=`if test -d .git; then
3712 git log -n 1 --date=iso --format=fuller | sed -n -e 's/^CommitDate: //p';
3714 sed -n -e 's/^\([0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9]\).*/\1/p' -e 1q ChangeLog;
3716 pretty_date
=`LC_ALL=C date +"%e %B %Y" --date="$git_checkout_date"`
3717 func_echo
"Generated by <CODE>MODULES.html.sh</CODE> from a git checkout as of ${pretty_date}."
3724 # Undo the effect of the previous 'trap' command.
3726 trap 'func_exit $?' 1 2 3 13 15
3731 # indent-tabs-mode: nil
3732 # whitespace-check-buffer-indent: nil