3 # Copyright (C) 2002-2009 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 <http://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='http://www.opengroup.org/susv3'
25 POSIX2008_URL='http://www.opengroup.org/onlinepubs/9699919799'
32 # Generate URLs to the official gnulib git repository.
33 repo_url_prefix='http://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 '
1348 pthread_attr_getstackaddr
1349 pthread_attr_setstackaddr
1358 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
1372 # creates a temporary directory.
1374 # - tmp pathname of freshly created temporary directory
1377 # Use the environment variable TMPDIR, falling back to /tmp. This allows
1378 # users to specify a different temporary directory, for example, if their
1379 # /tmp is filled up or too small.
1382 # Use the mktemp program if available. If not available, hide the error
1384 tmp=`(umask 077 && mktemp -d "$TMPDIR/MDXXXXXX") 2>/dev/null` &&
1385 test -n "$tmp" && test -d "$tmp"
1388 # Use a simple mkdir command. It is guaranteed to fail if the directory
1389 # already exists. $RANDOM is bash specific and expands to empty in shells
1390 # other than bash, ksh and zsh. Its use does not increase security;
1391 # rather, it minimizes the probability of failure in a very cluttered /tmp
1393 tmp=$TMPDIR/MD$$-$RANDOM
1394 (umask 077 && mkdir "$tmp")
1397 echo "$0: cannot create a temporary directory in $TMPDIR" >&2
1402 # func_append var value
1403 # appends the given value to the shell variable var.
1404 if ( foo=bar; foo+=baz && test "$foo" = barbaz ) >/dev/null 2>&1; then
1405 # Use bash's += operator. It reduces complexity of appending repeatedly to
1406 # a single variable from O(n^2) to O(n).
1414 eval "$1=\"\$$1\$2\""
1419 # outputs line with indentation.
1426 # increases the indentation.
1433 # decreases the indentation.
1436 indent=`echo "$indent" | sed -e 's/ $//'`
1439 # func_begin tag [attribute...]
1448 # closes a HTML tag.
1455 # func_wrap tag [attribute...]
1456 # encloses $element in a HTML tag, without line breaks.
1459 element="<$*>${element}</$1>"
1462 # func_section_wrap sectiontag
1463 # encloses $element in a HTML tag referring to the given tag.
1464 func_section_wrap ()
1466 if test -n "$in_toc"; then
1467 func_wrap A "HREF=\"#$1\""
1469 func_wrap A "NAME=\"$1\""
1477 if test -z "$in_toc"; then
1479 func_echo "<TH ALIGN=LEFT>modules/"
1480 func_echo "<TH ALIGN=LEFT>lib/"
1481 func_echo "<TH ALIGN=LEFT>lib/"
1482 func_echo "<TH ALIGN=LEFT>m4/"
1483 func_echo "<TH ALIGN=LEFT> "
1486 func_echo "<TH ALIGN=LEFT>Module"
1487 func_echo "<TH ALIGN=LEFT>Header"
1488 func_echo "<TH ALIGN=LEFT>Implementation"
1489 func_echo "<TH ALIGN=LEFT>Autoconf macro"
1490 func_echo "<TH ALIGN=LEFT>Depends on"
1495 # func_module module
1498 sed_remove_trailing_empty_line='${
1502 if test -n "$in_toc"; then
1504 func_begin TR "WIDTH=\"100%\""
1506 element='<A HREF="#module='$1'">'$1'</A>'
1507 func_echo "<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"20%\">$element"
1509 # Rendering the description:
1510 # - Change the symbol() syntax as suitable for documentation, removing the
1511 # parentheses (as per GNU standards, section "GNU Manuals").
1512 # - Flag the remaining symbol() constructs as errors.
1513 # - Change 'xxx' to <CODE>xxx</CODE>.
1514 element=`gnulib-tool --extract-description $1 \
1515 | sed -e "$sed_lt" -e "$sed_gt" -e "$sed_remove_trailing_empty_line" \
1516 -e 's,^, ,' -e 's,$, ,' \
1517 -e 's,\([^a-zA-Z_]\)'"${posix_functions}"'() \(function\|macro\),\1<A HREF="'"$POSIX2008_URL"'/functions/\2.html">\2</A> \3,g' \
1518 -e 's,\([^a-zA-Z_]\)'"${posix_functions}"' \(function\|macro\),\1<A HREF="'"$POSIX2008_URL"'/functions/\2.html">\2</A> \3,g' \
1519 -e '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' \
1520 -e 's,\([^a-zA-Z_]\)'"${posix2001_functions}"'() \(function\|macro\),\1<A HREF="'"$POSIX2001_URL"'xsh/\2.html">\2</A> \3,g' \
1521 -e 's,\([^a-zA-Z_]\)'"${posix2001_functions}"' \(function\|macro\),\1<A HREF="'"$POSIX2001_URL"'xsh/\2.html">\2</A> \3,g' \
1522 -e 's,\([^a-zA-Z_]\)'"${posix2001_functions}"'(),\1<A HREF="'"$POSIX2001_URL"'xsh/\2.html">\2</A> <SPAN STYLE="color:#FF0000;">what?? If you mean a function\, please say so.</SPAN>,g' \
1523 -e 's,\([^a-zA-Z_]\)\([a-zA-Z_][a-zA-Z0-9_]*\)() \(function\|macro\),\1\2 \3,g' \
1524 -e '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' \
1525 -e 's, '"'"'\([a-zA-Z0-9_ -]*\)'"'"'\([^a-zA-Z0-9_]\), <CODE>\1</CODE>\2,g' \
1526 -e 's,^ ,,' -e 's, $,,'`
1527 func_echo "<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"80%\">$element"
1535 element='<A NAME="module='$1'"></A><A HREF="'$repo_url_prefix'modules/'$1$repo_url_suffix'">'$1'</A>'
1536 func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1538 includes=`gnulib-tool --extract-include-directive $1`
1539 files=`gnulib-tool --extract-filelist $1 \
1540 | grep -v '^m4/gnulib-common\.m4$'`
1541 element=`echo "$includes" \
1542 | sed -e "$sed_lt" -e "$sed_gt" -e "$sed_remove_trailing_empty_line" \
1543 -e 's,^#include "\(.*\)"$,#include "<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>",' \
1544 -e 's,^#include <'"${posix_headers}"'\.h>$,#include \<<A HREF="'"$POSIX2008_URL"'/basedefs/\1.h.html">\1.h</A>\>,' \
1545 -e '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">,' \
1546 -e 's,^#include <'"${posix2001_headers}"'\.h>$,#include \<<A HREF="'"$POSIX2001_URL"'xbd/\1.h.html">\1.h</A>\>,' \
1547 -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1548 test -n "$element" || element='---'
1549 func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1551 sed_choose_unconditional_nonstandard_include='s,^#include "\(.*\)"$,\1,p'
1552 includefile=`echo "$includes" \
1553 | sed -n -e "$sed_choose_unconditional_nonstandard_include" \
1554 | sed -e "$sed_escape_dot" | tr -d "$trnl"`
1555 sed_choose_lib_files='s,^lib/\(.*\)$,\1,p'
1556 element=`echo "$files" \
1558 | sed -n -e "$sed_choose_lib_files" \
1559 | sed -e '\|^'"${includefile}"'$|d' \
1560 -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>,' \
1561 -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1562 test -n "$element" || element='---'
1563 func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1565 sed_choose_m4_files='s,^m4/\(.*\)$,\1,p'
1566 element=`(echo "$files" \
1567 | sed -e "$sed_remove_trailing_empty_line" \
1568 | sed -n -e "$sed_choose_m4_files" \
1569 | sed -e '/^onceonly/d' \
1570 -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'm4/\1'$repo_url_suffix_repl'">\1</A>,'; \
1571 gnulib-tool --extract-autoconf-snippet $1 \
1572 | sed -e "$sed_remove_trailing_empty_line") \
1573 | sed -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1574 test -n "$element" || element='---'
1575 func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1577 element=`gnulib-tool --extract-dependencies $1 \
1578 | sed -e "$sed_remove_trailing_empty_line" \
1579 -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1580 test -n "$element" || element='---'
1581 func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1585 func_append seen_modules " $1"
1586 func_append seen_files " $files"
1599 element="Support for obsolete systems lacking ANSI C 89"
1600 func_section_wrap ansic_sup_obsolete
1602 func_echo "$element"
1617 func_echo 'These modules are not listed among dependencies below, for simplicity.'
1618 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.'
1620 element="Support for systems lacking ANSI C 89"
1621 func_section_wrap ansic_sup
1623 func_echo "$element"
1628 func_module strerror
1632 element="Enhancements for ANSI C 89 functions"
1633 func_section_wrap ansic_enh
1635 func_echo "$element"
1637 element="Diagnostics <assert.h>"
1638 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1639 func_section_wrap ansic_enh_assert_diagnostics
1641 func_echo "$element"
1648 element="Mathematics <math.h>"
1649 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1650 func_section_wrap ansic_enh_math
1652 func_echo "$element"
1658 element="Input/output <stdio.h>"
1659 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1660 func_section_wrap ansic_enh_stdio
1662 func_echo "$element"
1670 element="Memory management functions <stdlib.h>"
1671 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1672 func_section_wrap ansic_enh_stdlib_memory
1674 func_echo "$element"
1682 func_module pagealign_alloc
1685 element="Sorting functions <stdlib.h>"
1686 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1687 func_section_wrap ansic_enh_stdlib_sorting
1689 func_echo "$element"
1695 element="Date and time <time.h>"
1696 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1697 func_section_wrap ansic_enh_time_datetime
1699 func_echo "$element"
1702 func_module fprintftime
1703 func_module strftime
1706 element="Extra functions based on ANSI C 89"
1707 func_section_wrap ansic_ext
1709 func_echo "$element"
1711 element="Memory management functions <stdlib.h>"
1712 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1713 func_section_wrap ansic_ext_stdlib_memory
1715 func_echo "$element"
1720 func_module xalloc-die
1722 func_module alloca-opt
1724 func_module xmalloca
1725 func_module xmemdup0
1726 func_module safe-alloc
1729 element="Integer arithmetic functions <stdlib.h>"
1730 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1731 func_section_wrap ansic_ext_stdlib_arith
1733 func_echo "$element"
1736 func_module count-one-bits
1741 element="Environment variables <stdlib.h>"
1742 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1743 func_section_wrap ansic_ext_stdlib_env
1745 func_echo "$element"
1750 func_module unsetenv
1754 element="Character handling <ctype.h>"
1755 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1756 func_section_wrap ansic_ext_ctype
1758 func_echo "$element"
1764 element="String handling <string.h>"
1765 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1766 func_section_wrap ansic_ext_string
1768 func_echo "$element"
1775 func_module memmem-simple
1778 func_module rawmemchr
1781 func_module c-strcase
1783 func_module c-strcaseeq
1784 func_module c-strcasestr
1785 func_module strcasestr
1786 func_module strcasestr-simple
1787 func_module strchrnul
1790 func_module strnlen1
1794 func_module strstr-simple
1795 func_module c-strstr
1798 func_module xstrndup
1801 element="Mathematics <math.h>"
1802 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1803 func_section_wrap ansic_ext_math
1805 func_echo "$element"
1808 func_module printf-frexp
1811 element="Numeric conversion functions <stdlib.h>"
1812 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1813 func_section_wrap ansic_ext_stdlib_conv
1815 func_echo "$element"
1818 func_module c-strtod
1819 func_module c-strtold
1822 func_module xstrtold
1825 element="Date and time <time.h>"
1826 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1827 func_section_wrap ansic_ext_time_datetime
1829 func_echo "$element"
1837 element="Input/Output <stdio.h>"
1838 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1839 func_section_wrap ansic_ext_stdio
1841 func_echo "$element"
1844 func_module unlocked-io
1845 func_module fwriteerror
1846 func_module vasnprintf
1847 func_module vasprintf
1849 func_module xvasprintf
1852 element="Signal handling <signal.h>"
1853 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1854 func_section_wrap ansic_ext_signal
1856 func_echo "$element"
1859 func_module fatal-signal
1861 func_module strsignal
1864 element="Command-line arguments"
1865 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1866 func_section_wrap ansic_ext_argv
1868 func_echo "$element"
1871 func_module argmatch
1872 func_module argv-iter
1873 func_module version-etc
1874 func_module version-etc-fsf
1875 func_module long-options
1878 element="Container data structures"
1879 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1880 func_section_wrap ansic_ext_container
1882 func_echo "$element"
1886 func_module array-list
1887 func_module carray-list
1888 func_module linked-list
1889 func_module avltree-list
1890 func_module rbtree-list
1891 func_module linkedhash-list
1892 func_module avltreehash-list
1893 func_module rbtreehash-list
1896 func_module array-oset
1897 func_module avltree-oset
1898 func_module rbtree-oset
1901 element="Cryptographic computations (low-level)"
1902 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1903 func_section_wrap ansic_ext_crypto
1905 func_echo "$element"
1908 func_module crypto/arcfour
1909 func_module crypto/arctwo
1910 func_module crypto/des
1911 func_module crypto/hmac-md5
1912 func_module crypto/hmac-sha1
1913 func_module crypto/md2
1914 func_module crypto/md4
1915 func_module crypto/md5
1916 func_module crypto/rijndael
1917 func_module crypto/sha1
1918 func_module crypto/sha256
1919 func_module crypto/sha512
1922 element="Cryptographic computations (high-level)"
1923 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1924 func_section_wrap ansic_ext_crypto2
1926 func_echo "$element"
1929 func_module crypto/gc
1930 func_module crypto/gc-arcfour
1931 func_module crypto/gc-arctwo
1932 func_module crypto/gc-camellia
1933 func_module crypto/gc-des
1934 func_module crypto/gc-hmac-md5
1935 func_module crypto/gc-hmac-sha1
1936 func_module crypto/gc-md2
1937 func_module crypto/gc-md4
1938 func_module crypto/gc-md5
1939 func_module crypto/gc-pbkdf2-sha1
1940 func_module crypto/gc-random
1941 func_module crypto/gc-rijndael
1942 func_module crypto/gc-sha1
1945 element="Compiler warning management"
1946 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1947 func_section_wrap ansic_ext_misc
1949 func_echo "$element"
1952 func_module ignore-value
1956 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1957 func_section_wrap ansic_ext_misc
1959 func_echo "$element"
1963 func_module check-version
1968 func_module getdelim
1969 func_module getnline
1970 func_module getndelim2
1971 func_module linebuffer
1974 func_module obstack-printf
1975 func_module obstack-printf-posix
1976 func_module hash-pjw
1978 func_module readline
1979 func_module readtokens
1980 func_module readtokens0
1981 func_module strverscmp
1982 func_module filevercmp
1985 element="Support for systems lacking ISO C 99"
1986 func_section_wrap isoc_sup
1988 func_echo "$element"
1990 element="Core language properties"
1991 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1992 func_section_wrap isoc_core_properties
1994 func_echo "$element"
1997 func_module flexmember
2001 func_module longlong
2002 func_module vararrays
2005 element="Sizes of integer types <limits.h>"
2006 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2007 func_section_wrap isoc_sup_limits
2009 func_echo "$element"
2012 func_module size_max
2015 element="Variable arguments <stdarg.h>"
2016 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2017 func_section_wrap isoc_sup_stdarg
2019 func_echo "$element"
2025 element="Boolean type and values <stdbool.h>"
2026 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2027 func_section_wrap isoc_sup_stdbool
2029 func_echo "$element"
2035 element="Basic types <stddef.h>"
2036 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2037 func_section_wrap isoc_sup_stddef
2039 func_echo "$element"
2045 element="Integer types and values <stdint.h>"
2046 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2047 func_section_wrap isoc_sup_stdint
2049 func_echo "$element"
2055 element="Input/output <stdio.h>"
2056 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2057 func_section_wrap isoc_sup_stdio
2059 func_echo "$element"
2063 func_module snprintf
2064 func_module vsnprintf
2067 element="Numeric conversion functions <stdlib.h>"
2068 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2069 func_section_wrap isoc_sup_stdlib_conv
2071 func_echo "$element"
2075 func_module strtoull
2078 element="Functions for greatest-width integer types <inttypes.h>"
2079 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2080 func_section_wrap isoc_sup_inttypes
2082 func_echo "$element"
2087 func_module inttypes
2088 func_module strtoimax
2089 func_module strtoumax
2092 element="Extended multibyte and wide character utilities <wchar.h>"
2093 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2094 func_section_wrap isoc_sup_wchar
2096 func_echo "$element"
2105 func_module mbsrtowcs
2107 func_module wcsrtombs
2110 element="Wide character classification and mapping utilities <wctype.h>"
2111 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2112 func_section_wrap isoc_sup_wctype
2114 func_echo "$element"
2120 element="Characteristics of floating types <float.h>"
2121 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2122 func_section_wrap isoc_sup_float
2124 func_echo "$element"
2130 element="Mathematics <math.h>"
2131 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2132 func_section_wrap isoc_sup_math
2134 func_echo "$element"
2144 func_module frexp-nolibm
2146 func_module frexpl-nolibm
2147 func_module isfinite
2151 func_module isnanf-nolibm
2153 func_module isnand-nolibm
2155 func_module isnanl-nolibm
2168 element="Enhancements for ISO C 99 functions"
2169 func_section_wrap isoc_enh
2171 func_echo "$element"
2173 element="Input/output <stdio.h>"
2174 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2175 func_section_wrap isoc_enh_stdio
2177 func_echo "$element"
2180 func_module printf-safe
2183 element="Extra functions based on ISO C 99"
2184 func_section_wrap isoc_ext
2186 func_echo "$element"
2188 element="Mathematics <math.h>"
2189 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2190 func_section_wrap isoc_ext_math
2192 func_echo "$element"
2195 func_module printf-frexpl
2198 element="Numeric conversion functions <stdlib.h>"
2199 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2200 func_section_wrap isoc_ext_stdlib_conv
2202 func_echo "$element"
2205 func_module intprops
2206 func_module inttostr
2207 func_module xstrtoimax
2208 func_module xstrtoumax
2211 element="Extended multibyte and wide character utilities <wchar.h>"
2212 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2213 func_section_wrap isoc_ext_wchar_mb
2215 func_echo "$element"
2224 element="Support for obsolete systems lacking POSIX:2008"
2225 func_section_wrap posix_sup_obsolete
2227 func_echo "$element"
2233 func_echo 'These modules are not listed among dependencies below, for simplicity.'
2234 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.'
2236 element="Support for systems lacking POSIX:2008"
2237 func_section_wrap posix_sup
2239 func_echo "$element"
2243 func_module arpa_inet
2245 func_module calloc-posix
2257 func_module fprintf-posix
2264 func_module ftruncate
2265 func_module getaddrinfo
2267 func_module getgroups
2268 func_module gethostname
2269 func_module getlogin_r
2270 func_module getpeername
2271 func_module getsockname
2272 func_module getsockopt
2273 func_module getsubopt
2274 func_module gettimeofday
2276 func_module iconv_open
2277 func_module inet_ntop
2278 func_module inet_pton
2283 func_module malloc-posix
2284 func_module mbsnrtowcs
2289 func_module netinet_in
2294 func_module posix_spawn
2295 func_module posix_spawnattr_destroy
2296 func_module posix_spawnattr_getflags
2297 func_module posix_spawnattr_getpgroup
2298 func_module posix_spawnattr_getschedparam
2299 func_module posix_spawnattr_getschedpolicy
2300 func_module posix_spawnattr_getsigdefault
2301 func_module posix_spawnattr_getsigmask
2302 func_module posix_spawnattr_init
2303 func_module posix_spawnattr_setflags
2304 func_module posix_spawnattr_setpgroup
2305 func_module posix_spawnattr_setschedparam
2306 func_module posix_spawnattr_setschedpolicy
2307 func_module posix_spawnattr_setsigdefault
2308 func_module posix_spawnattr_setsigmask
2309 func_module posix_spawn_file_actions_addclose
2310 func_module posix_spawn_file_actions_adddup2
2311 func_module posix_spawn_file_actions_addopen
2312 func_module posix_spawn_file_actions_destroy
2313 func_module posix_spawn_file_actions_init
2314 func_module posix_spawn-internal
2315 func_module posix_spawnp
2316 func_module printf-posix
2318 func_module readlink
2319 func_module realloc-posix
2321 func_module recvfrom
2326 func_module setsockopt
2327 func_module shutdown
2330 func_module snprintf-posix
2333 func_module sprintf-posix
2334 func_module strdup-posix
2337 func_module tempname
2341 func_module timespec
2342 func_module nanosleep
2347 func_module sigaction
2348 func_module sigprocmask
2351 func_module strptime
2352 func_module strtok_r
2353 func_module sys_select
2354 func_module sys_socket
2355 func_module sys_stat
2356 func_module sys_time
2357 func_module sys_times
2358 func_module sys_wait
2362 func_module vasnprintf-posix
2363 func_module vasprintf-posix
2364 func_module vfprintf-posix
2365 func_module vprintf-posix
2366 func_module vsnprintf-posix
2367 func_module vsprintf-posix
2368 func_module wcsnrtombs
2373 element="Compatibility checks for POSIX:2008 functions"
2374 func_section_wrap posix_compat
2376 func_echo "$element"
2379 func_module clock-time
2382 func_module link-follow
2383 func_module rename-dest-slash
2384 func_module rmdir-errno
2385 func_module unlink-busy
2386 func_module winsz-ioctl
2387 func_module winsz-termios
2390 element="Enhancements for POSIX:2008 functions"
2391 func_section_wrap posix_enh
2393 func_echo "$element"
2396 func_module chdir-long
2397 func_module dirent-safer
2400 func_module iconv_open-utf
2401 func_module unistd-safer
2403 func_module fnmatch-posix
2404 func_module fnmatch-gnu
2409 element="Extra functions based on POSIX:2008"
2410 func_section_wrap posix_ext
2412 func_echo "$element"
2414 element="Input/output"
2415 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2416 func_section_wrap posix_ext_stdio
2418 func_echo "$element"
2421 func_module xprintf-posix
2422 func_module xvasprintf-posix
2425 element="Numeric conversion functions"
2426 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2427 func_section_wrap posix_ext_conv
2429 func_echo "$element"
2435 element="File system functions"
2436 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2437 func_section_wrap posix_ext_filesys
2439 func_echo "$element"
2443 func_module areadlink
2444 func_module areadlink-with-size
2445 func_module backupfile
2446 func_module canonicalize
2447 func_module canonicalize-lgpl
2448 func_module chdir-safer
2449 func_module clean-temp
2450 func_module copy-file
2453 func_module double-slash-root
2454 func_module euidaccess
2455 func_module fdopendir
2456 func_module file-type
2457 func_module fileblocks
2458 func_module filemode
2459 func_module filename
2460 func_module filenamecat
2462 func_module fts-lgpl
2466 func_module mkancesdirs
2468 func_module modechange
2469 func_module mountlist
2471 func_module openat-die
2473 func_module read-file
2475 func_module save-cwd
2478 func_module stat-macros
2479 func_module stat-time
2481 func_module unlinkdir
2482 func_module utimecmp
2484 func_module write-any-file
2486 func_module xreadlink
2489 element="File system as inode set"
2490 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2491 func_section_wrap posix_ext_inodeset
2493 func_echo "$element"
2496 func_module cycle-check
2498 func_module file-set
2499 func_module hash-triple
2501 func_module same-inode
2504 element="File descriptor based Input/Output"
2505 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2506 func_section_wrap posix_ext_filedesc
2508 func_echo "$element"
2511 func_module fcntl-safer
2512 func_module safe-read
2513 func_module safe-write
2514 func_module full-read
2515 func_module full-write
2516 func_module binary-io
2520 element="File stream based Input/Output"
2521 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2522 func_section_wrap posix_ext_filestream
2524 func_echo "$element"
2527 func_module close-stream
2529 func_module closeout
2530 func_module fbufmode
2531 func_module fopen-safer
2532 func_module fpending
2534 func_module freadable
2535 func_module freadahead
2536 func_module freading
2537 func_module freadptr
2538 func_module freadseek
2539 func_module fwritable
2540 func_module fwriting
2542 func_module getpass-gnu
2543 func_module popen-safer
2544 func_module stdlib-safer
2545 func_module tmpfile-safer
2548 element="Users and groups"
2549 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2550 func_section_wrap posix_ext_uidgid
2552 func_echo "$element"
2555 func_module getugroups
2556 func_module group-member
2558 func_module userspec
2561 element="Date and time"
2562 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2563 func_section_wrap posix_ext_datetime
2565 func_echo "$element"
2568 func_module gethrxtime
2572 func_module xnanosleep
2575 element="Networking functions"
2576 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2577 func_section_wrap posix_ext_net
2579 func_echo "$element"
2582 func_module xgethostname
2583 func_module canon-host
2587 element="Multithreading"
2588 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2589 func_section_wrap posix_ext_thread
2591 func_echo "$element"
2594 func_module threadlib
2603 element="Signal handling"
2604 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2605 func_section_wrap posix_ext_signal
2607 func_echo "$element"
2611 func_module libsigsegv
2613 func_module sigpipe-die
2616 element="Internationalization functions"
2617 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2618 func_section_wrap posix_ext_i18n
2620 func_echo "$element"
2624 func_module gettext-h
2625 func_module propername
2627 func_module striconv
2628 func_module xstriconv
2629 func_module striconveh
2630 func_module striconveha
2631 func_module localcharset
2632 func_module hard-locale
2633 func_module localename
2639 func_module mbscasecmp
2640 func_module mbsncasecmp
2641 func_module mbspcasecmp
2642 func_module mbscasestr
2647 func_module mbstok_r
2648 func_module mbswidth
2649 func_module memcasecmp
2651 func_module xmemcoll
2652 func_module unicodeio
2655 func_module bison-i18n
2658 element="Unicode string functions"
2659 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2660 func_section_wrap posix_ext_unicode
2662 func_echo "$element"
2665 func_module libunistring
2666 func_module unitypes
2667 func_module ucs4-utf8
2668 func_module ucs4-utf16
2669 func_module utf8-ucs4-unsafe
2670 func_module utf16-ucs4-unsafe
2671 func_module utf8-ucs4
2672 func_module utf16-ucs4
2673 func_module unistr/base
2674 func_module unistr/u8-to-u16
2675 func_module unistr/u8-to-u32
2676 func_module unistr/u16-to-u8
2677 func_module unistr/u16-to-u32
2678 func_module unistr/u32-to-u8
2679 func_module unistr/u32-to-u16
2680 func_module unistr/u8-check
2681 func_module unistr/u16-check
2682 func_module unistr/u32-check
2683 func_module unistr/u8-chr
2684 func_module unistr/u16-chr
2685 func_module unistr/u32-chr
2686 func_module unistr/u8-cmp
2687 func_module unistr/u16-cmp
2688 func_module unistr/u32-cmp
2689 func_module unistr/u8-cpy
2690 func_module unistr/u16-cpy
2691 func_module unistr/u32-cpy
2692 func_module unistr/u8-cpy-alloc
2693 func_module unistr/u16-cpy-alloc
2694 func_module unistr/u32-cpy-alloc
2695 func_module unistr/u8-endswith
2696 func_module unistr/u16-endswith
2697 func_module unistr/u32-endswith
2698 func_module unistr/u8-mblen
2699 func_module unistr/u16-mblen
2700 func_module unistr/u32-mblen
2701 func_module unistr/u8-mbsnlen
2702 func_module unistr/u16-mbsnlen
2703 func_module unistr/u32-mbsnlen
2704 func_module unistr/u8-mbtouc-unsafe
2705 func_module unistr/u16-mbtouc-unsafe
2706 func_module unistr/u32-mbtouc-unsafe
2707 func_module unistr/u8-mbtouc
2708 func_module unistr/u16-mbtouc
2709 func_module unistr/u32-mbtouc
2710 func_module unistr/u8-mbtoucr
2711 func_module unistr/u16-mbtoucr
2712 func_module unistr/u32-mbtoucr
2713 func_module unistr/u8-move
2714 func_module unistr/u16-move
2715 func_module unistr/u32-move
2716 func_module unistr/u8-next
2717 func_module unistr/u16-next
2718 func_module unistr/u32-next
2719 func_module unistr/u8-prev
2720 func_module unistr/u16-prev
2721 func_module unistr/u32-prev
2722 func_module unistr/u8-set
2723 func_module unistr/u16-set
2724 func_module unistr/u32-set
2725 func_module unistr/u8-startswith
2726 func_module unistr/u16-startswith
2727 func_module unistr/u32-startswith
2728 func_module unistr/u8-stpcpy
2729 func_module unistr/u16-stpcpy
2730 func_module unistr/u32-stpcpy
2731 func_module unistr/u8-stpncpy
2732 func_module unistr/u16-stpncpy
2733 func_module unistr/u32-stpncpy
2734 func_module unistr/u8-strcat
2735 func_module unistr/u16-strcat
2736 func_module unistr/u32-strcat
2737 func_module unistr/u8-strchr
2738 func_module unistr/u16-strchr
2739 func_module unistr/u32-strchr
2740 func_module unistr/u8-strcmp
2741 func_module unistr/u16-strcmp
2742 func_module unistr/u32-strcmp
2743 func_module unistr/u8-strcpy
2744 func_module unistr/u16-strcpy
2745 func_module unistr/u32-strcpy
2746 func_module unistr/u8-strcspn
2747 func_module unistr/u16-strcspn
2748 func_module unistr/u32-strcspn
2749 func_module unistr/u8-strdup
2750 func_module unistr/u16-strdup
2751 func_module unistr/u32-strdup
2752 func_module unistr/u8-strlen
2753 func_module unistr/u16-strlen
2754 func_module unistr/u32-strlen
2755 func_module unistr/u8-strmblen
2756 func_module unistr/u16-strmblen
2757 func_module unistr/u32-strmblen
2758 func_module unistr/u8-strmbtouc
2759 func_module unistr/u16-strmbtouc
2760 func_module unistr/u32-strmbtouc
2761 func_module unistr/u8-strncat
2762 func_module unistr/u16-strncat
2763 func_module unistr/u32-strncat
2764 func_module unistr/u8-strncmp
2765 func_module unistr/u16-strncmp
2766 func_module unistr/u32-strncmp
2767 func_module unistr/u8-strncpy
2768 func_module unistr/u16-strncpy
2769 func_module unistr/u32-strncpy
2770 func_module unistr/u8-strnlen
2771 func_module unistr/u16-strnlen
2772 func_module unistr/u32-strnlen
2773 func_module unistr/u8-strpbrk
2774 func_module unistr/u16-strpbrk
2775 func_module unistr/u32-strpbrk
2776 func_module unistr/u8-strrchr
2777 func_module unistr/u16-strrchr
2778 func_module unistr/u32-strrchr
2779 func_module unistr/u8-strspn
2780 func_module unistr/u16-strspn
2781 func_module unistr/u32-strspn
2782 func_module unistr/u8-strstr
2783 func_module unistr/u16-strstr
2784 func_module unistr/u32-strstr
2785 func_module unistr/u8-strtok
2786 func_module unistr/u16-strtok
2787 func_module unistr/u32-strtok
2788 func_module unistr/u8-uctomb
2789 func_module unistr/u16-uctomb
2790 func_module unistr/u32-uctomb
2791 func_module uniconv/base
2792 func_module uniconv/u8-conv-from-enc
2793 func_module uniconv/u16-conv-from-enc
2794 func_module uniconv/u32-conv-from-enc
2795 func_module uniconv/u8-conv-to-enc
2796 func_module uniconv/u16-conv-to-enc
2797 func_module uniconv/u32-conv-to-enc
2798 func_module uniconv/u8-strconv-from-enc
2799 func_module uniconv/u16-strconv-from-enc
2800 func_module uniconv/u32-strconv-from-enc
2801 func_module uniconv/u8-strconv-to-enc
2802 func_module uniconv/u16-strconv-to-enc
2803 func_module uniconv/u32-strconv-to-enc
2804 func_module uniconv/u8-strconv-from-locale
2805 func_module uniconv/u16-strconv-from-locale
2806 func_module uniconv/u32-strconv-from-locale
2807 func_module uniconv/u8-strconv-to-locale
2808 func_module uniconv/u16-strconv-to-locale
2809 func_module uniconv/u32-strconv-to-locale
2810 func_module unistdio/base
2811 func_module unistdio/u-printf-args
2812 func_module unistdio/ulc-asnprintf
2813 func_module unistdio/ulc-asprintf
2814 func_module unistdio/ulc-fprintf
2815 func_module unistdio/ulc-printf-parse
2816 func_module unistdio/ulc-snprintf
2817 func_module unistdio/ulc-sprintf
2818 func_module unistdio/ulc-vasnprintf
2819 func_module unistdio/ulc-vasprintf
2820 func_module unistdio/ulc-vfprintf
2821 func_module unistdio/ulc-vsnprintf
2822 func_module unistdio/ulc-vsprintf
2823 func_module unistdio/u8-asnprintf
2824 func_module unistdio/u8-asprintf
2825 func_module unistdio/u8-printf-parse
2826 func_module unistdio/u8-snprintf
2827 func_module unistdio/u8-sprintf
2828 func_module unistdio/u8-vasnprintf
2829 func_module unistdio/u8-vasprintf
2830 func_module unistdio/u8-vsnprintf
2831 func_module unistdio/u8-vsprintf
2832 func_module unistdio/u8-u8-asnprintf
2833 func_module unistdio/u8-u8-asprintf
2834 func_module unistdio/u8-u8-snprintf
2835 func_module unistdio/u8-u8-sprintf
2836 func_module unistdio/u8-u8-vasnprintf
2837 func_module unistdio/u8-u8-vasprintf
2838 func_module unistdio/u8-u8-vsnprintf
2839 func_module unistdio/u8-u8-vsprintf
2840 func_module unistdio/u16-asnprintf
2841 func_module unistdio/u16-asprintf
2842 func_module unistdio/u16-printf-parse
2843 func_module unistdio/u16-snprintf
2844 func_module unistdio/u16-sprintf
2845 func_module unistdio/u16-vasnprintf
2846 func_module unistdio/u16-vasprintf
2847 func_module unistdio/u16-vsnprintf
2848 func_module unistdio/u16-vsprintf
2849 func_module unistdio/u16-u16-asnprintf
2850 func_module unistdio/u16-u16-asprintf
2851 func_module unistdio/u16-u16-snprintf
2852 func_module unistdio/u16-u16-sprintf
2853 func_module unistdio/u16-u16-vasnprintf
2854 func_module unistdio/u16-u16-vasprintf
2855 func_module unistdio/u16-u16-vsnprintf
2856 func_module unistdio/u16-u16-vsprintf
2857 func_module unistdio/u32-asnprintf
2858 func_module unistdio/u32-asprintf
2859 func_module unistdio/u32-printf-parse
2860 func_module unistdio/u32-snprintf
2861 func_module unistdio/u32-sprintf
2862 func_module unistdio/u32-vasnprintf
2863 func_module unistdio/u32-vasprintf
2864 func_module unistdio/u32-vsnprintf
2865 func_module unistdio/u32-vsprintf
2866 func_module unistdio/u32-u32-asnprintf
2867 func_module unistdio/u32-u32-asprintf
2868 func_module unistdio/u32-u32-snprintf
2869 func_module unistdio/u32-u32-sprintf
2870 func_module unistdio/u32-u32-vasnprintf
2871 func_module unistdio/u32-u32-vasprintf
2872 func_module unistdio/u32-u32-vsnprintf
2873 func_module unistdio/u32-u32-vsprintf
2874 func_module uniname/base
2875 func_module uniname/uniname
2876 func_module unictype/base
2877 func_module unictype/bidicategory-byname
2878 func_module unictype/bidicategory-name
2879 func_module unictype/bidicategory-of
2880 func_module unictype/bidicategory-test
2881 func_module unictype/bidicategory-all
2882 func_module unictype/block-list
2883 func_module unictype/block-of
2884 func_module unictype/block-test
2885 func_module unictype/block-all
2886 func_module unictype/category-C
2887 func_module unictype/category-Cc
2888 func_module unictype/category-Cf
2889 func_module unictype/category-Cn
2890 func_module unictype/category-Co
2891 func_module unictype/category-Cs
2892 func_module unictype/category-L
2893 func_module unictype/category-Ll
2894 func_module unictype/category-Lm
2895 func_module unictype/category-Lo
2896 func_module unictype/category-Lt
2897 func_module unictype/category-Lu
2898 func_module unictype/category-M
2899 func_module unictype/category-Mc
2900 func_module unictype/category-Me
2901 func_module unictype/category-Mn
2902 func_module unictype/category-N
2903 func_module unictype/category-Nd
2904 func_module unictype/category-Nl
2905 func_module unictype/category-No
2906 func_module unictype/category-P
2907 func_module unictype/category-Pc
2908 func_module unictype/category-Pd
2909 func_module unictype/category-Pe
2910 func_module unictype/category-Pf
2911 func_module unictype/category-Pi
2912 func_module unictype/category-Po
2913 func_module unictype/category-Ps
2914 func_module unictype/category-S
2915 func_module unictype/category-Sc
2916 func_module unictype/category-Sk
2917 func_module unictype/category-Sm
2918 func_module unictype/category-So
2919 func_module unictype/category-Z
2920 func_module unictype/category-Zl
2921 func_module unictype/category-Zp
2922 func_module unictype/category-Zs
2923 func_module unictype/category-and
2924 func_module unictype/category-and-not
2925 func_module unictype/category-byname
2926 func_module unictype/category-name
2927 func_module unictype/category-none
2928 func_module unictype/category-of
2929 func_module unictype/category-or
2930 func_module unictype/category-test
2931 func_module unictype/category-test-withtable
2932 func_module unictype/category-all
2933 func_module unictype/combining-class
2934 func_module unictype/ctype-alnum
2935 func_module unictype/ctype-alpha
2936 func_module unictype/ctype-blank
2937 func_module unictype/ctype-cntrl
2938 func_module unictype/ctype-digit
2939 func_module unictype/ctype-graph
2940 func_module unictype/ctype-lower
2941 func_module unictype/ctype-print
2942 func_module unictype/ctype-punct
2943 func_module unictype/ctype-space
2944 func_module unictype/ctype-upper
2945 func_module unictype/ctype-xdigit
2946 func_module unictype/decimal-digit
2947 func_module unictype/digit
2948 func_module unictype/mirror
2949 func_module unictype/numeric
2950 func_module unictype/property-alphabetic
2951 func_module unictype/property-ascii-hex-digit
2952 func_module unictype/property-bidi-arabic-digit
2953 func_module unictype/property-bidi-arabic-right-to-left
2954 func_module unictype/property-bidi-block-separator
2955 func_module unictype/property-bidi-boundary-neutral
2956 func_module unictype/property-bidi-common-separator
2957 func_module unictype/property-bidi-control
2958 func_module unictype/property-bidi-embedding-or-override
2959 func_module unictype/property-bidi-eur-num-separator
2960 func_module unictype/property-bidi-eur-num-terminator
2961 func_module unictype/property-bidi-european-digit
2962 func_module unictype/property-bidi-hebrew-right-to-left
2963 func_module unictype/property-bidi-left-to-right
2964 func_module unictype/property-bidi-non-spacing-mark
2965 func_module unictype/property-bidi-other-neutral
2966 func_module unictype/property-bidi-pdf
2967 func_module unictype/property-bidi-segment-separator
2968 func_module unictype/property-bidi-whitespace
2969 func_module unictype/property-byname
2970 func_module unictype/property-combining
2971 func_module unictype/property-composite
2972 func_module unictype/property-currency-symbol
2973 func_module unictype/property-dash
2974 func_module unictype/property-decimal-digit
2975 func_module unictype/property-default-ignorable-code-point
2976 func_module unictype/property-deprecated
2977 func_module unictype/property-diacritic
2978 func_module unictype/property-extender
2979 func_module unictype/property-format-control
2980 func_module unictype/property-grapheme-base
2981 func_module unictype/property-grapheme-extend
2982 func_module unictype/property-grapheme-link
2983 func_module unictype/property-hex-digit
2984 func_module unictype/property-hyphen
2985 func_module unictype/property-id-continue
2986 func_module unictype/property-id-start
2987 func_module unictype/property-ideographic
2988 func_module unictype/property-ids-binary-operator
2989 func_module unictype/property-ids-trinary-operator
2990 func_module unictype/property-ignorable-control
2991 func_module unictype/property-iso-control
2992 func_module unictype/property-join-control
2993 func_module unictype/property-left-of-pair
2994 func_module unictype/property-line-separator
2995 func_module unictype/property-logical-order-exception
2996 func_module unictype/property-lowercase
2997 func_module unictype/property-math
2998 func_module unictype/property-non-break
2999 func_module unictype/property-not-a-character
3000 func_module unictype/property-numeric
3001 func_module unictype/property-other-alphabetic
3002 func_module unictype/property-other-default-ignorable-code-point
3003 func_module unictype/property-other-grapheme-extend
3004 func_module unictype/property-other-id-continue
3005 func_module unictype/property-other-id-start
3006 func_module unictype/property-other-lowercase
3007 func_module unictype/property-other-math
3008 func_module unictype/property-other-uppercase
3009 func_module unictype/property-paired-punctuation
3010 func_module unictype/property-paragraph-separator
3011 func_module unictype/property-pattern-syntax
3012 func_module unictype/property-pattern-white-space
3013 func_module unictype/property-private-use
3014 func_module unictype/property-punctuation
3015 func_module unictype/property-quotation-mark
3016 func_module unictype/property-radical
3017 func_module unictype/property-sentence-terminal
3018 func_module unictype/property-soft-dotted
3019 func_module unictype/property-space
3020 func_module unictype/property-terminal-punctuation
3021 func_module unictype/property-test
3022 func_module unictype/property-titlecase
3023 func_module unictype/property-unassigned-code-value
3024 func_module unictype/property-unified-ideograph
3025 func_module unictype/property-uppercase
3026 func_module unictype/property-variation-selector
3027 func_module unictype/property-white-space
3028 func_module unictype/property-xid-continue
3029 func_module unictype/property-xid-start
3030 func_module unictype/property-zero-width
3031 func_module unictype/property-all
3032 func_module unictype/scripts
3033 func_module unictype/scripts-all
3034 func_module unictype/syntax-c-ident
3035 func_module unictype/syntax-c-whitespace
3036 func_module unictype/syntax-java-ident
3037 func_module unictype/syntax-java-whitespace
3038 func_module uniwidth/base
3039 func_module uniwidth/u8-strwidth
3040 func_module uniwidth/u8-width
3041 func_module uniwidth/u16-strwidth
3042 func_module uniwidth/u16-width
3043 func_module uniwidth/u32-strwidth
3044 func_module uniwidth/u32-width
3045 func_module uniwidth/width
3046 func_module unilbrk/base
3047 func_module unilbrk/tables
3048 func_module unilbrk/ulc-common
3049 func_module unilbrk/u8-possible-linebreaks
3050 func_module unilbrk/u16-possible-linebreaks
3051 func_module unilbrk/u32-possible-linebreaks
3052 func_module unilbrk/ulc-possible-linebreaks
3053 func_module unilbrk/u8-width-linebreaks
3054 func_module unilbrk/u16-width-linebreaks
3055 func_module unilbrk/u32-width-linebreaks
3056 func_module unilbrk/ulc-width-linebreaks
3059 element="Executing programs"
3060 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3061 func_section_wrap posix_ext_exec
3063 func_echo "$element"
3067 func_module findprog
3068 func_module wait-process
3071 func_module sh-quote
3075 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3076 func_section_wrap posix_ext_java
3078 func_echo "$element"
3081 func_module classpath
3082 func_module javacomp-script
3083 func_module javacomp
3084 func_module javaexec-script
3085 func_module javaexec
3086 func_module javaversion
3091 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3092 func_section_wrap posix_ext_csharp
3094 func_echo "$element"
3097 func_module csharpcomp-script
3098 func_module csharpcomp
3099 func_module csharpexec-script
3100 func_module csharpexec
3104 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3105 func_section_wrap posix_ext_misc
3107 func_echo "$element"
3112 func_module bitrotate
3113 func_module byteswap
3114 func_module exitfail
3116 func_module extensions
3117 func_module getdomainname
3118 func_module xgetdomainname
3119 func_module getloadavg
3120 func_module getpagesize
3121 func_module getusershell
3122 func_module lib-symbol-visibility
3125 func_module posixver
3126 func_module progname
3127 func_module quotearg
3129 func_module readutmp
3130 func_module random_r
3131 func_module selinux-at
3132 func_module sysexits
3137 element="Support for building libraries and executables"
3138 func_section_wrap build_lib
3140 func_echo "$element"
3143 func_module absolute-header
3144 func_module config-h
3145 func_module configmake
3147 func_module elisp-comp
3150 func_module include_next
3152 func_module lib-ignore
3153 func_module lib-msvc-compat
3154 func_module lib-symbol-versions
3155 func_module link-warning
3157 func_module relocatable-lib
3158 func_module relocatable-lib-lgpl
3159 func_module relocatable-prog
3160 func_module relocatable-prog-wrapper
3161 func_module relocatable-script
3162 func_module warnings
3163 func_module manywarnings
3166 element="Support for building documentation"
3167 func_section_wrap build_doc
3169 func_echo "$element"
3172 func_module agpl-3.0
3178 func_module lgpl-2.1
3179 func_module pmccabe2html
3180 func_module regexprops-generic
3183 element="Support for maintaining and releasing projects"
3184 func_section_wrap maintain
3186 func_echo "$element"
3189 func_module announce-gen
3190 func_module autobuild
3191 func_module git-version-gen
3192 func_module gitlog-to-changelog
3193 func_module gnumakefile
3194 func_module gnupload
3195 func_module maintainer-makefile
3197 func_module update-copyright
3198 func_module useless-if-before-free
3199 func_module vc-list-files
3203 func_section_wrap misc
3205 func_echo "$element"
3208 func_module gnu-make
3212 func_module posix-shell
3219 trap 'exit_status=$?
3220 if test "$signal" != 0; then
3221 echo "caught signal $signal" >&2
3224 exit $exit_status' 0
3225 for signal in 1 2 3 13 15; do
3226 trap '{ signal='$signal'; func_exit 1; }' $signal
3230 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">'
3235 element="Gnulib Module List"
3237 func_echo "$element"
3239 modules=`gnulib-tool --list`
3240 modules=`for m in $modules; do printf "%s, " $m; done | sed -e 's/, $//'`
3241 func_echo '<META NAME="keywords" CONTENT="'"${modules}"'">'
3247 element="Gnulib Module List"
3249 func_echo "$element"
3251 func_echo 'This is a list of the modules which make up gnulib, with dependencies.'
3260 gnulib-tool --list > "$tmp/all-modules"
3261 missed_modules=`for module in $seen_modules; do echo $module; done \
3262 | LC_ALL=C sort -u \
3263 | LC_ALL=C join -v 2 - "$tmp/all-modules"`
3265 if test -n "$missed_modules"; then
3267 element="Unclassified modules - please update MODULES.html.sh"
3268 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3270 func_echo "$element"
3273 for module in $missed_modules; do
3280 { find lib -type f -print; find m4 -type f -print; } | LC_ALL=C sort | sed -e '/\/\./d' -e /CVS/d -e /README/d -e /ChangeLog/d -e /Makefile/d -e /TODO/d -e '/tags$/d' -e '/TAGS$/d' -e '/~$/d' > "$tmp/all-files"
3281 missed_files=`for file in $seen_files; do echo $file; done \
3282 | LC_ALL=C sort -u \
3283 | LC_ALL=C join -v 2 - "$tmp/all-files"`
3285 if test -n "$missed_files"; then
3287 element="Lone files - please create new modules containing them"
3288 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3290 func_echo "$element"
3293 echo "$missed_files" | sed -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'\1'$repo_url_suffix_repl'">\1</A>,'
3298 element="Future developments"
3299 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
3301 func_echo "$element"
3303 func_echo 'Ideally a module could consist of:'
3305 func_echo '<LI>A header file: lib/<VAR>module</VAR>.h'
3306 func_echo '<LI>One or more implementation files: lib/<VAR>module</VAR>.c et al.'
3307 func_echo '<LI>One or more autoconf macro files: m4/<VAR>module</VAR>.m4 et al.'
3308 func_echo '<LI>A configure.ac fragment, Makefile.am fragment, dependency list: modules/<VAR>module</VAR>'
3309 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'
3310 func_echo '<LI>Some documentation'
3311 func_echo '<LI>A POT file and some PO files'
3315 func_echo 'Generated from <CODE>MODULES.html.sh</CODE> on '`LC_ALL=C date +"%e %B %Y"`.
3322 # Undo the effect of the previous 'trap' command.
3324 trap 'func_exit $?' 1 2 3 13 15
3329 # indent-tabs-mode: nil
3330 # whitespace-check-buffer-indent: nil