New module 'stdlib'.
[gnulib.git] / MODULES.html.sh
1 #!/bin/sh
2 #
3 # Copyright (C) 2002-2007 Free Software Foundation, Inc.
4 #
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 2, or (at your option)
8 # any later version.
9 #
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.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
18 #
19
20 # Usage: MODULES.html.sh [--cvs-urls|--git-urls] > MODULES.html
21
22 # Extend the PATH so that gnulib-tool is found.
23 PATH=`dirname "$0"`:$PATH; export PATH
24
25 POSIX2001_URL='http://www.opengroup.org/susv3'
26 case $USER in
27   bruno )
28     POSIX2001_URL='file:/packages/www/www.opengroup.org/susv3' ;;
29 esac
30
31 repo_url_prefix=
32 repo_url_suffix=
33 if test $# != 0; then
34   case "$1" in
35     --cvs-urls)
36       # Generate URLs to the official gnulib CVS repository.
37       repo_url_prefix='http://cvs.sv.gnu.org/viewcvs/*checkout*/gnulib/'
38       repo_url_suffix='?root=gnulib&content-type=text/plain'
39       ;;
40     --git-urls)
41       # Generate URLs to the official gnulib git repository.
42       repo_url_prefix='http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=blob_plain;f='
43       repo_url_suffix=''
44       ;;
45   esac
46 fi
47 # For sed replacements: Escape the '&'.
48 repo_url_suffix_repl=`echo "$repo_url_suffix" | sed -e 's,[&],\\\&,'`
49
50 sed_lt='s,<,\&lt;,g'
51 sed_gt='s,>,\&gt;,g'
52 sed_escape_dot='s,\.,\\.,g'
53 sed_escape_slash='s,/,\\/,g'
54 trnl='\012'
55 sed_alt1='s,$,\\|,'
56 sed_alt2='s,^\\|,\\(,'
57 sed_alt3='s,\\|\\|$,\\),'
58 posix_headers=`echo '
59 aio
60 arpa/inet
61 assert
62 complex
63 cpio
64 ctype
65 dirent
66 dlfcn
67 errno
68 fcntl
69 fenv
70 float
71 fmtmsg
72 fnmatch
73 ftw
74 glob
75 grp
76 iconv
77 inttypes
78 iso646
79 langinfo
80 libgen
81 limits
82 locale
83 math
84 monetary
85 mqueue
86 ndbm
87 net/if
88 netdb
89 netinet/in
90 netinet/tcp
91 nl_types
92 poll
93 pthread
94 pwd
95 regex
96 sched
97 search
98 semaphore
99 setjmp
100 signal
101 spawn
102 stdarg
103 stdbool
104 stddef
105 stdint
106 stdio
107 stdlib
108 string
109 strings
110 stropts
111 sys/ipc
112 sys/mman
113 sys/msg
114 sys/resource
115 sys/select
116 sys/sem
117 sys/shm
118 sys/socket
119 sys/stat
120 sys/statvfs
121 sys/time
122 sys/timeb
123 sys/times
124 sys/types
125 sys/uio
126 sys/un
127 sys/utsname
128 sys/wait
129 syslog
130 tar
131 termios
132 tgmath
133 time
134 trace
135 ucontext
136 ulimit
137 unistd
138 utime
139 utmpx
140 wchar
141 wctype
142 wordexp
143 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
144 posix_functions=`echo '
145 FD_CLR
146 FD_ISSET
147 FD_SET
148 FD_ZERO
149 _Exit
150 _exit
151 _longjmp
152 _setjmp
153 _tolower
154 _toupper
155 a64l
156 abort
157 abs
158 accept
159 access
160 acos
161 acosf
162 acosh
163 acoshf
164 acoshl
165 acosl
166 aio_cancel
167 aio_error
168 aio_fsync
169 aio_read
170 aio_return
171 aio_suspend
172 aio_write
173 alarm
174 asctime
175 asctime_r
176 asin
177 asinf
178 asinh
179 asinhf
180 asinhl
181 asinl
182 assert
183 atan
184 atan2
185 atan2f
186 atan2l
187 atanf
188 atanh
189 atanhf
190 atanhl
191 atanl
192 atexit
193 atof
194 atoi
195 atol
196 atoll
197 basename
198 bcmp
199 bcopy
200 bind
201 bsd_signal
202 bsearch
203 btowc
204 bzero
205 cabs
206 cabsf
207 cabsl
208 cacos
209 cacosf
210 cacosh
211 cacoshf
212 cacoshl
213 cacosl
214 calloc
215 carg
216 cargf
217 cargl
218 casin
219 casinf
220 casinh
221 casinhf
222 casinhl
223 casinl
224 catan
225 catanf
226 catanh
227 catanhf
228 catanhl
229 catanl
230 catclose
231 catgets
232 catopen
233 cbrt
234 cbrtf
235 cbrtl
236 ccos
237 ccosf
238 ccosh
239 ccoshf
240 ccoshl
241 ccosl
242 ceil
243 ceilf
244 ceill
245 cexp
246 cexpf
247 cexpl
248 cfgetispeed
249 cfgetospeed
250 cfsetispeed
251 cfsetospeed
252 chdir
253 chmod
254 chown
255 cimag
256 cimagf
257 cimagl
258 clearerr
259 clock
260 clock_getcpuclockid
261 clock_getres
262 clock_gettime
263 clock_nanosleep
264 clock_settime
265 clog
266 clogf
267 clogl
268 close
269 closedir
270 closelog
271 confstr
272 conj
273 conjf
274 conjl
275 connect
276 contents
277 copysign
278 copysignf
279 copysignl
280 cos
281 cosf
282 cosh
283 coshf
284 coshl
285 cosl
286 cpow
287 cpowf
288 cpowl
289 cproj
290 cprojf
291 cprojl
292 creal
293 crealf
294 creall
295 creat
296 crypt
297 csin
298 csinf
299 csinh
300 csinhf
301 csinhl
302 csinl
303 csqrt
304 csqrtf
305 csqrtl
306 ctan
307 ctanf
308 ctanh
309 ctanhf
310 ctanhl
311 ctanl
312 ctermid
313 ctime
314 ctime_r
315 daylight
316 dbm_clearerr
317 dbm_close
318 dbm_delete
319 dbm_error
320 dbm_fetch
321 dbm_firstkey
322 dbm_nextkey
323 dbm_open
324 dbm_store
325 difftime
326 dirname
327 div
328 dlclose
329 dlerror
330 dlopen
331 dlsym
332 drand48
333 dup
334 dup2
335 ecvt
336 encrypt
337 endgrent
338 endhostent
339 endnetent
340 endprotoent
341 endpwent
342 endservent
343 endutxent
344 environ
345 erand48
346 erf
347 erfc
348 erfcf
349 erfcl
350 erff
351 erfl
352 errno
353 exec
354 execl
355 execle
356 execlp
357 execv
358 execve
359 execvp
360 exit
361 exp
362 exp2
363 exp2f
364 exp2l
365 expf
366 expl
367 expm1
368 expm1f
369 expm1l
370 fabs
371 fabsf
372 fabsl
373 fattach
374 fchdir
375 fchmod
376 fchown
377 fclose
378 fcntl
379 fcvt
380 fdatasync
381 fdetach
382 fdim
383 fdimf
384 fdiml
385 fdopen
386 feclearexcept
387 fegetenv
388 fegetexceptflag
389 fegetround
390 feholdexcept
391 feof
392 feraiseexcept
393 ferror
394 fesetenv
395 fesetexceptflag
396 fesetround
397 fetestexcept
398 feupdateenv
399 fflush
400 ffs
401 fgetc
402 fgetpos
403 fgets
404 fgetwc
405 fgetws
406 fileno
407 flockfile
408 floor
409 floorf
410 floorl
411 fma
412 fmaf
413 fmal
414 fmax
415 fmaxf
416 fmaxl
417 fmin
418 fminf
419 fminl
420 fmod
421 fmodf
422 fmodl
423 fmtmsg
424 fnmatch
425 fopen
426 fork
427 fpathconf
428 fpclassify
429 fprintf
430 fputc
431 fputs
432 fputwc
433 fputws
434 fread
435 free
436 freeaddrinfo
437 freopen
438 frexp
439 frexpf
440 frexpl
441 fscanf
442 fseek
443 fseeko
444 fsetpos
445 fstat
446 fstatvfs
447 fsync
448 ftell
449 ftello
450 ftime
451 ftok
452 ftruncate
453 ftrylockfile
454 ftw
455 funlockfile
456 fwide
457 fwprintf
458 fwrite
459 fwscanf
460 gai_strerror
461 gcvt
462 getaddrinfo
463 getc
464 getc_unlocked
465 getchar
466 getchar_unlocked
467 getcontext
468 getcwd
469 getdate
470 getegid
471 getenv
472 geteuid
473 getgid
474 getgrent
475 getgrgid
476 getgrgid_r
477 getgrnam
478 getgrnam_r
479 getgroups
480 gethostbyaddr
481 gethostbyname
482 gethostent
483 gethostid
484 gethostname
485 getitimer
486 getlogin
487 getlogin_r
488 getmsg
489 getnameinfo
490 getnetbyaddr
491 getnetbyname
492 getnetent
493 getopt
494 getpeername
495 getpgid
496 getpgrp
497 getpid
498 getpmsg
499 getppid
500 getpriority
501 getprotobyname
502 getprotobynumber
503 getprotoent
504 getpwent
505 getpwnam
506 getpwnam_r
507 getpwuid
508 getpwuid_r
509 getrlimit
510 getrusage
511 gets
512 getservbyname
513 getservbyport
514 getservent
515 getsid
516 getsockname
517 getsockopt
518 getsubopt
519 gettimeofday
520 getuid
521 getutxent
522 getutxid
523 getutxline
524 getwc
525 getwchar
526 getwd
527 glob
528 globfree
529 gmtime
530 gmtime_r
531 grantpt
532 h_errno
533 hcreate
534 hdestroy
535 hsearch
536 htonl
537 htons
538 hypot
539 hypotf
540 hypotl
541 iconv
542 iconv_close
543 iconv_open
544 if_freenameindex
545 if_indextoname
546 if_nameindex
547 if_nametoindex
548 ilogb
549 ilogbf
550 ilogbl
551 imaxabs
552 imaxdiv
553 index
554 inet_addr
555 inet_ntoa
556 inet_ntop
557 inet_pton
558 initstate
559 insque
560 ioctl
561 isalnum
562 isalpha
563 isascii
564 isastream
565 isatty
566 isblank
567 iscntrl
568 isdigit
569 isfinite
570 isgraph
571 isgreater
572 isgreaterequal
573 isinf
574 isless
575 islessequal
576 islessgreater
577 islower
578 isnan
579 isnormal
580 isprint
581 ispunct
582 isspace
583 isunordered
584 isupper
585 iswalnum
586 iswalpha
587 iswblank
588 iswcntrl
589 iswctype
590 iswdigit
591 iswgraph
592 iswlower
593 iswprint
594 iswpunct
595 iswspace
596 iswupper
597 iswxdigit
598 isxdigit
599 j0
600 j1
601 jn
602 jrand48
603 kill
604 killpg
605 l64a
606 labs
607 lchown
608 lcong48
609 ldexp
610 ldexpf
611 ldexpl
612 ldiv
613 lfind
614 lgamma
615 lgammaf
616 lgammal
617 link
618 lio_listio
619 listen
620 llabs
621 lldiv
622 llrint
623 llrintf
624 llrintl
625 llround
626 llroundf
627 llroundl
628 localeconv
629 localtime
630 localtime_r
631 lockf
632 log
633 log10
634 log10f
635 log10l
636 log1p
637 log1pf
638 log1pl
639 log2
640 log2f
641 log2l
642 logb
643 logbf
644 logbl
645 logf
646 logl
647 longjmp
648 lrand48
649 lrint
650 lrintf
651 lrintl
652 lround
653 lroundf
654 lroundl
655 lsearch
656 lseek
657 lstat
658 makecontext
659 malloc
660 mblen
661 mbrlen
662 mbrtowc
663 mbsinit
664 mbsrtowcs
665 mbstowcs
666 mbtowc
667 memccpy
668 memchr
669 memcmp
670 memcpy
671 memmove
672 memset
673 mkdir
674 mkfifo
675 mknod
676 mkstemp
677 mktemp
678 mktime
679 mlock
680 mlockall
681 mmap
682 modf
683 modff
684 modfl
685 mprotect
686 mq_close
687 mq_getattr
688 mq_notify
689 mq_open
690 mq_receive
691 mq_send
692 mq_setattr
693 mq_timedreceive
694 mq_timedsend
695 mq_unlink
696 mrand48
697 msgctl
698 msgget
699 msgrcv
700 msgsnd
701 msync
702 munlock
703 munlockall
704 munmap
705 nan
706 nanf
707 nanl
708 nanosleep
709 nearbyint
710 nearbyintf
711 nearbyintl
712 nextafter
713 nextafterf
714 nextafterl
715 nexttoward
716 nexttowardf
717 nexttowardl
718 nftw
719 nice
720 nl_langinfo
721 nrand48
722 ntohl
723 ntohs
724 open
725 opendir
726 openlog
727 optarg
728 pathconf
729 pause
730 pclose
731 perror
732 pipe
733 poll
734 popen
735 posix_fadvise
736 posix_fallocate
737 posix_madvise
738 posix_mem_offset
739 posix_memalign
740 posix_openpt
741 posix_spawn
742 posix_spawn_file_actions_addclose
743 posix_spawn_file_actions_adddup2
744 posix_spawn_file_actions_addopen
745 posix_spawn_file_actions_destroy
746 posix_spawn_file_actions_init
747 posix_spawnattr_destroy
748 posix_spawnattr_getflags
749 posix_spawnattr_getpgroup
750 posix_spawnattr_getschedparam
751 posix_spawnattr_getschedpolicy
752 posix_spawnattr_getsigdefault
753 posix_spawnattr_getsigmask
754 posix_spawnattr_init
755 posix_spawnattr_setflags
756 posix_spawnattr_setpgroup
757 posix_spawnattr_setschedparam
758 posix_spawnattr_setschedpolicy
759 posix_spawnattr_setsigdefault
760 posix_spawnattr_setsigmask
761 posix_spawnp
762 posix_trace_attr_destroy
763 posix_trace_attr_getclockres
764 posix_trace_attr_getcreatetime
765 posix_trace_attr_getgenversion
766 posix_trace_attr_getinherited
767 posix_trace_attr_getlogfullpolicy
768 posix_trace_attr_getlogsize
769 posix_trace_attr_getmaxdatasize
770 posix_trace_attr_getmaxsystemeventsize
771 posix_trace_attr_getmaxusereventsize
772 posix_trace_attr_getname
773 posix_trace_attr_getstreamfullpolicy
774 posix_trace_attr_getstreamsize
775 posix_trace_attr_init
776 posix_trace_attr_setinherited
777 posix_trace_attr_setlogfullpolicy
778 posix_trace_attr_setlogsize
779 posix_trace_attr_setmaxdatasize
780 posix_trace_attr_setname
781 posix_trace_attr_setstreamfullpolicy
782 posix_trace_attr_setstreamsize
783 posix_trace_clear
784 posix_trace_close
785 posix_trace_create
786 posix_trace_create_withlog
787 posix_trace_event
788 posix_trace_eventid_equal
789 posix_trace_eventid_get_name
790 posix_trace_eventid_open
791 posix_trace_eventset_add
792 posix_trace_eventset_del
793 posix_trace_eventset_empty
794 posix_trace_eventset_fill
795 posix_trace_eventset_ismember
796 posix_trace_eventtypelist_getnext_id
797 posix_trace_eventtypelist_rewind
798 posix_trace_flush
799 posix_trace_get_attr
800 posix_trace_get_filter
801 posix_trace_get_status
802 posix_trace_getnext_event
803 posix_trace_open
804 posix_trace_rewind
805 posix_trace_set_filter
806 posix_trace_shutdown
807 posix_trace_start
808 posix_trace_stop
809 posix_trace_timedgetnext_event
810 posix_trace_trid_eventid_open
811 posix_trace_trygetnext_event
812 posix_typed_mem_get_info
813 posix_typed_mem_open
814 pow
815 powf
816 powl
817 pread
818 printf
819 pselect
820 pthread_atfork
821 pthread_attr_destroy
822 pthread_attr_getdetachstate
823 pthread_attr_getguardsize
824 pthread_attr_getinheritsched
825 pthread_attr_getschedparam
826 pthread_attr_getschedpolicy
827 pthread_attr_getscope
828 pthread_attr_getstack
829 pthread_attr_getstackaddr
830 pthread_attr_getstacksize
831 pthread_attr_init
832 pthread_attr_setdetachstate
833 pthread_attr_setguardsize
834 pthread_attr_setinheritsched
835 pthread_attr_setschedparam
836 pthread_attr_setschedpolicy
837 pthread_attr_setscope
838 pthread_attr_setstack
839 pthread_attr_setstackaddr
840 pthread_attr_setstacksize
841 pthread_barrier_destroy
842 pthread_barrier_init
843 pthread_barrier_wait
844 pthread_barrierattr_destroy
845 pthread_barrierattr_getpshared
846 pthread_barrierattr_init
847 pthread_barrierattr_setpshared
848 pthread_cancel
849 pthread_cleanup_pop
850 pthread_cleanup_push
851 pthread_cond_broadcast
852 pthread_cond_destroy
853 pthread_cond_init
854 pthread_cond_signal
855 pthread_cond_timedwait
856 pthread_cond_wait
857 pthread_condattr_destroy
858 pthread_condattr_getclock
859 pthread_condattr_getpshared
860 pthread_condattr_init
861 pthread_condattr_setclock
862 pthread_condattr_setpshared
863 pthread_create
864 pthread_detach
865 pthread_equal
866 pthread_exit
867 pthread_getconcurrency
868 pthread_getcpuclockid
869 pthread_getschedparam
870 pthread_getspecific
871 pthread_join
872 pthread_key_create
873 pthread_key_delete
874 pthread_kill
875 pthread_mutex_destroy
876 pthread_mutex_getprioceiling
877 pthread_mutex_init
878 pthread_mutex_lock
879 pthread_mutex_setprioceiling
880 pthread_mutex_timedlock
881 pthread_mutex_trylock
882 pthread_mutex_unlock
883 pthread_mutexattr_destroy
884 pthread_mutexattr_getprioceiling
885 pthread_mutexattr_getprotocol
886 pthread_mutexattr_getpshared
887 pthread_mutexattr_gettype
888 pthread_mutexattr_init
889 pthread_mutexattr_setprioceiling
890 pthread_mutexattr_setprotocol
891 pthread_mutexattr_setpshared
892 pthread_mutexattr_settype
893 pthread_once
894 pthread_rwlock_destroy
895 pthread_rwlock_init
896 pthread_rwlock_rdlock
897 pthread_rwlock_timedrdlock
898 pthread_rwlock_timedwrlock
899 pthread_rwlock_tryrdlock
900 pthread_rwlock_trywrlock
901 pthread_rwlock_unlock
902 pthread_rwlock_wrlock
903 pthread_rwlockattr_destroy
904 pthread_rwlockattr_getpshared
905 pthread_rwlockattr_init
906 pthread_rwlockattr_setpshared
907 pthread_self
908 pthread_setcancelstate
909 pthread_setcanceltype
910 pthread_setconcurrency
911 pthread_setschedparam
912 pthread_setschedprio
913 pthread_setspecific
914 pthread_sigmask
915 pthread_spin_destroy
916 pthread_spin_init
917 pthread_spin_lock
918 pthread_spin_trylock
919 pthread_spin_unlock
920 pthread_testcancel
921 ptsname
922 putc
923 putc_unlocked
924 putchar
925 putchar_unlocked
926 putenv
927 putmsg
928 putpmsg
929 puts
930 pututxline
931 putwc
932 putwchar
933 pwrite
934 qsort
935 raise
936 rand
937 rand_r
938 random
939 read
940 readdir
941 readdir_r
942 readlink
943 readv
944 realloc
945 realpath
946 recv
947 recvfrom
948 recvmsg
949 regcomp
950 regerror
951 regexec
952 regfree
953 remainder
954 remainderf
955 remainderl
956 remove
957 remque
958 remquo
959 remquof
960 remquol
961 rename
962 rewind
963 rewinddir
964 rindex
965 rint
966 rintf
967 rintl
968 rmdir
969 round
970 roundf
971 roundl
972 scalb
973 scalbln
974 scalblnf
975 scalblnl
976 scalbn
977 scalbnf
978 scalbnl
979 scanf
980 sched_get_priority_max
981 sched_getparam
982 sched_getscheduler
983 sched_rr_get_interval
984 sched_setparam
985 sched_setscheduler
986 sched_yield
987 seed48
988 seekdir
989 select
990 sem_close
991 sem_destroy
992 sem_getvalue
993 sem_init
994 sem_open
995 sem_post
996 sem_timedwait
997 sem_trywait
998 sem_unlink
999 sem_wait
1000 semctl
1001 semget
1002 semop
1003 send
1004 sendmsg
1005 sendto
1006 setbuf
1007 setcontext
1008 setegid
1009 setenv
1010 seteuid
1011 setgid
1012 setgrent
1013 sethostent
1014 setitimer
1015 setjmp
1016 setkey
1017 setlocale
1018 setlogmask
1019 setnetent
1020 setpgid
1021 setpgrp
1022 setpriority
1023 setprotoent
1024 setpwent
1025 setregid
1026 setreuid
1027 setrlimit
1028 setservent
1029 setsid
1030 setsockopt
1031 setstate
1032 setuid
1033 setutxent
1034 setvbuf
1035 shm_open
1036 shm_unlink
1037 shmat
1038 shmctl
1039 shmdt
1040 shmget
1041 shutdown
1042 sigaction
1043 sigaddset
1044 sigaltstack
1045 sigdelset
1046 sigemptyset
1047 sigfillset
1048 sighold
1049 sigignore
1050 siginterrupt
1051 sigismember
1052 siglongjmp
1053 signal
1054 signbit
1055 sigpause
1056 sigpending
1057 sigprocmask
1058 sigqueue
1059 sigrelse
1060 sigset
1061 sigsetjmp
1062 sigsuspend
1063 sigtimedwait
1064 sigwait
1065 sigwaitinfo
1066 sin
1067 sinf
1068 sinh
1069 sinhf
1070 sinhl
1071 sinl
1072 sleep
1073 snprintf
1074 sockatmark
1075 socket
1076 socketpair
1077 sprintf
1078 sqrt
1079 sqrtf
1080 sqrtl
1081 srand
1082 srand48
1083 srandom
1084 sscanf
1085 stat
1086 statvfs
1087 stdin
1088 strcasecmp
1089 strcat
1090 strchr
1091 strcmp
1092 strcoll
1093 strcpy
1094 strcspn
1095 strdup
1096 strerror
1097 strerror_r
1098 strfmon
1099 strftime
1100 strlen
1101 strncasecmp
1102 strncat
1103 strncmp
1104 strncpy
1105 strpbrk
1106 strptime
1107 strrchr
1108 strspn
1109 strstr
1110 strtod
1111 strtof
1112 strtoimax
1113 strtok
1114 strtok_r
1115 strtol
1116 strtold
1117 strtoll
1118 strtoul
1119 strtoull
1120 strtoumax
1121 strxfrm
1122 swab
1123 swapcontext
1124 swprintf
1125 swscanf
1126 symlink
1127 sync
1128 sysconf
1129 syslog
1130 system
1131 tan
1132 tanf
1133 tanh
1134 tanhf
1135 tanhl
1136 tanl
1137 tcdrain
1138 tcflow
1139 tcflush
1140 tcgetattr
1141 tcgetpgrp
1142 tcgetsid
1143 tcsendbreak
1144 tcsetattr
1145 tcsetpgrp
1146 tdelete
1147 telldir
1148 tempnam
1149 tfind
1150 tgamma
1151 tgammaf
1152 tgammal
1153 time
1154 timer_create
1155 timer_delete
1156 timer_getoverrun
1157 timer_settime
1158 times
1159 timezone
1160 tmpfile
1161 tmpnam
1162 toascii
1163 toc
1164 tolower
1165 toupper
1166 towctrans
1167 towlower
1168 towupper
1169 trunc
1170 truncate
1171 truncf
1172 truncl
1173 tsearch
1174 ttyname
1175 ttyname_r
1176 twalk
1177 tzname
1178 tzset
1179 ualarm
1180 ulimit
1181 umask
1182 uname
1183 ungetc
1184 ungetwc
1185 unlink
1186 unlockpt
1187 unsetenv
1188 usleep
1189 utime
1190 utimes
1191 va_arg
1192 va_copy
1193 va_end
1194 va_start
1195 vfork
1196 vfprintf
1197 vfscanf
1198 vfwprintf
1199 vfwscanf
1200 vprintf
1201 vscanf
1202 vsnprintf
1203 vsprintf
1204 vsscanf
1205 vswprintf
1206 vswscanf
1207 vwprintf
1208 vwscanf
1209 wait
1210 waitid
1211 waitpid
1212 wcrtomb
1213 wcscat
1214 wcschr
1215 wcscmp
1216 wcscoll
1217 wcscpy
1218 wcscspn
1219 wcsftime
1220 wcslen
1221 wcsncat
1222 wcsncmp
1223 wcsncpy
1224 wcspbrk
1225 wcsrchr
1226 wcsrtombs
1227 wcsspn
1228 wcsstr
1229 wcstod
1230 wcstof
1231 wcstoimax
1232 wcstok
1233 wcstol
1234 wcstold
1235 wcstoll
1236 wcstombs
1237 wcstoul
1238 wcstoull
1239 wcstoumax
1240 wcswcs
1241 wcswidth
1242 wcsxfrm
1243 wctob
1244 wctomb
1245 wctrans
1246 wctype
1247 wcwidth
1248 wmemchr
1249 wmemcmp
1250 wmemcpy
1251 wmemmove
1252 wmemset
1253 wordexp
1254 wordfree
1255 wprintf
1256 write
1257 writev
1258 wscanf
1259 y0
1260 y1
1261 yn
1262 ' | sed -e "$sed_alt1" | tr -d "$trnl" | sed -e "$sed_alt2" -e "$sed_alt3"`
1263
1264 indent=""
1265 seen_modules=
1266 seen_files=
1267
1268 # func_exit STATUS
1269 # exit with status
1270 func_exit ()
1271 {
1272   (exit $1); exit $1
1273 }
1274
1275 # func_tmpdir
1276 # creates a temporary directory.
1277 # Sets variable
1278 # - tmp             pathname of freshly created temporary directory
1279 func_tmpdir ()
1280 {
1281   # Use the environment variable TMPDIR, falling back to /tmp. This allows
1282   # users to specify a different temporary directory, for example, if their
1283   # /tmp is filled up or too small.
1284   : ${TMPDIR=/tmp}
1285   {
1286     # Use the mktemp program if available. If not available, hide the error
1287     # message.
1288     tmp=`(umask 077 && mktemp -d "$TMPDIR/MDXXXXXX") 2>/dev/null` &&
1289     test -n "$tmp" && test -d "$tmp"
1290   } ||
1291   {
1292     # Use a simple mkdir command. It is guaranteed to fail if the directory
1293     # already exists.  $RANDOM is bash specific and expands to empty in shells
1294     # other than bash, ksh and zsh.  Its use does not increase security;
1295     # rather, it minimizes the probability of failure in a very cluttered /tmp
1296     # directory.
1297     tmp=$TMPDIR/MD$$-$RANDOM
1298     (umask 077 && mkdir "$tmp")
1299   } ||
1300   {
1301     echo "$0: cannot create a temporary directory in $TMPDIR" >&2
1302     func_exit 1
1303   }
1304 }
1305
1306 # func_append var value
1307 # appends the given value to the shell variable var.
1308 if ( foo=bar; foo+=baz && test "$foo" = barbaz ) >/dev/null 2>&1; then
1309   # Use bash's += operator. It reduces complexity of appending repeatedly to
1310   # a single variable from O(n^2) to O(n).
1311   func_append ()
1312   {
1313     eval "$1+=\"\$2\""
1314   }
1315 else
1316   func_append ()
1317   {
1318     eval "$1=\"\$$1\$2\""
1319   }
1320 fi
1321
1322 # func_echo line
1323 # outputs line with indentation.
1324 func_echo ()
1325 {
1326   echo "${indent}$*"
1327 }
1328
1329 # func_indent
1330 # increases the indentation.
1331 func_indent ()
1332 {
1333   indent="$indent  "
1334 }
1335
1336 # func_unindent
1337 # decreases the indentation.
1338 func_unindent ()
1339 {
1340   indent=`echo "$indent" | sed -e 's/  $//'`
1341 }
1342
1343 # func_begin tag [attribute...]
1344 # opens a HTML tag.
1345 func_begin ()
1346 {
1347   func_echo "<$*>"
1348   func_indent
1349 }
1350
1351 # func_end tag
1352 # closes a HTML tag.
1353 func_end ()
1354 {
1355   func_unindent
1356   func_echo "</$1>"
1357 }
1358
1359 # func_wrap tag [attribute...]
1360 # encloses $element in a HTML tag, without line breaks.
1361 func_wrap ()
1362 {
1363   element="<$*>${element}</$1>"
1364 }
1365
1366 # func_section_wrap sectiontag
1367 # encloses $element in a HTML tag referring to the given tag.
1368 func_section_wrap ()
1369 {
1370   if test -n "$in_toc"; then
1371     func_wrap A "HREF=\"#$1\""
1372   else
1373     func_wrap A "NAME=\"$1\""
1374   fi
1375 }
1376
1377 # func_begin_table
1378 func_begin_table ()
1379 {
1380   func_begin TABLE
1381   if test -z "$in_toc"; then
1382     func_begin TR
1383     func_echo "<TH ALIGN=LEFT>modules/"
1384     func_echo "<TH ALIGN=LEFT>lib/"
1385     func_echo "<TH ALIGN=LEFT>lib/"
1386     func_echo "<TH ALIGN=LEFT>m4/"
1387     func_echo "<TH ALIGN=LEFT>&nbsp;"
1388     func_end TR
1389     func_begin TR
1390     func_echo "<TH ALIGN=LEFT>Module"
1391     func_echo "<TH ALIGN=LEFT>Header"
1392     func_echo "<TH ALIGN=LEFT>Implementation"
1393     func_echo "<TH ALIGN=LEFT>Autoconf macro"
1394     func_echo "<TH ALIGN=LEFT>Depends on"
1395     func_end TR
1396   fi
1397 }
1398
1399 # func_module module
1400 func_module ()
1401 {
1402     sed_remove_trailing_empty_line='${
1403 /^$/d
1404 }'
1405
1406   if test -n "$in_toc"; then
1407
1408     func_begin TR "WIDTH=\"100%\""
1409
1410     element='<A HREF="#module='$1'">'$1'</A>'
1411     func_echo "<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"20%\">$element"
1412
1413     element=`gnulib-tool --extract-description $1 \
1414              | sed -e "$sed_lt" -e "$sed_gt" -e "$sed_remove_trailing_empty_line" \
1415                    -e 's,^, ,' \
1416                    -e 's,\([^a-zA-Z]\)'"${posix_functions}"'(),\1<A HREF="'"$POSIX2001_URL"'xsh/\2.html">\2</A>(),g' \
1417                    -e 's,^ ,,'`
1418     func_echo "<TD ALIGN=LEFT VALIGN=TOP WIDTH=\"80%\">$element"
1419
1420     func_end TR
1421
1422   else
1423
1424     func_begin TR
1425
1426     element='<A NAME="module='$1'"></A><A HREF="'$repo_url_prefix'modules/'$1$repo_url_suffix'">'$1'</A>'
1427     func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1428
1429     includes=`gnulib-tool --extract-include-directive $1`
1430     files=`gnulib-tool --extract-filelist $1`
1431     element=`echo "$includes" \
1432              | sed -e "$sed_lt" -e "$sed_gt" -e "$sed_remove_trailing_empty_line" \
1433                    -e 's,^#include "\(.*\)"$,#include "<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>",' \
1434                    -e 's,^#include &lt;'"${posix_headers}"'\.h&gt;$,#include \&lt;<A HREF="'"$POSIX2001_URL"'xbd/\1.h.html">\1.h</A>\&gt;,' \
1435                    -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1436     test -n "$element" || element='---'
1437     func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1438
1439     sed_choose_unconditional_nonstandard_include='s,^#include "\(.*\)"$,\1,p'
1440     includefile=`echo "$includes" \
1441                  | sed -n -e "$sed_choose_unconditional_nonstandard_include" \
1442                  | sed -e "$sed_escape_dot" | tr -d "$trnl"`
1443     sed_choose_lib_files='s,^lib/\(.*\)$,\1,p'
1444     element=`echo "$files" \
1445              | sed -e '/^$/d' \
1446              | sed -n -e "$sed_choose_lib_files" \
1447              | sed -e '/^'"${includefile}"'$/d' \
1448                    -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'lib/\1'$repo_url_suffix_repl'">\1</A>,' \
1449                    -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1450     test -n "$element" || element='---'
1451     func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1452
1453     sed_choose_m4_files='s,^m4/\(.*\)$,\1,p'
1454     element=`(echo "$files" \
1455               | sed -e "$sed_remove_trailing_empty_line" \
1456               | sed -n -e "$sed_choose_m4_files" \
1457               | sed -e '/^onceonly/d' \
1458                     -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'm4/\1'$repo_url_suffix_repl'">\1</A>,'; \
1459               gnulib-tool --extract-autoconf-snippet $1 \
1460               | sed -e "$sed_remove_trailing_empty_line") \
1461               | sed -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1462     test -n "$element" || element='---'
1463     func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1464
1465     element=`gnulib-tool --extract-dependencies $1 \
1466              | sed -e "$sed_remove_trailing_empty_line" \
1467                    -e 's/$/<BR>/' | tr -d "$trnl" | sed -e 's/<BR>$//'`
1468     test -n "$element" || element='---'
1469     func_echo "<TD ALIGN=LEFT VALIGN=TOP>$element"
1470
1471     func_end TR
1472
1473     func_append seen_modules " $1"
1474     func_append seen_files " $files"
1475   fi
1476 }
1477
1478 # func_end_table
1479 func_end_table ()
1480 {
1481   func_end TABLE
1482 }
1483
1484 # func_all_modules
1485 func_all_modules ()
1486 {
1487   element="Support for systems lacking ANSI C 89"
1488   func_section_wrap ansic_sup
1489   func_wrap H2
1490   func_echo "$element"
1491
1492   func_begin_table
1493   func_module stdlib
1494   func_module exit
1495   func_module atexit
1496   func_module strtod
1497   func_module strtol
1498   func_module strtoul
1499   func_module memchr
1500   func_module memcmp
1501   func_module memcpy
1502   func_module memmove
1503   func_module memset
1504   func_module strcspn
1505   func_module strpbrk
1506   func_module strerror
1507   func_module mktime
1508   func_end_table
1509
1510   func_echo 'Most of these modules are not listed among dependencies below, for simplicity.'
1511
1512   element="Enhancements for ANSI C 89 functions"
1513   func_section_wrap ansic_enh
1514   func_wrap H2
1515   func_echo "$element"
1516
1517   element="Diagnostics <assert.h>"
1518   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1519   func_section_wrap ansic_enh_assert_diagnostics
1520   func_wrap H3
1521   func_echo "$element"
1522
1523   func_begin_table
1524   func_module assert
1525   func_module verify
1526   func_end_table
1527
1528   element="Input/output <stdio.h>"
1529   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1530   func_section_wrap ansic_enh_stdio
1531   func_wrap H3
1532   func_echo "$element"
1533
1534   func_begin_table
1535   func_module tmpfile
1536   func_end_table
1537
1538   element="Memory management functions <stdlib.h>"
1539   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1540   func_section_wrap ansic_enh_stdlib_memory
1541   func_wrap H3
1542   func_echo "$element"
1543
1544   func_begin_table
1545   func_module calloc
1546   func_module eealloc
1547   func_module free
1548   func_module malloc
1549   func_module realloc
1550   func_module pagealign_alloc
1551   func_end_table
1552
1553   element="Sorting functions <stdlib.h>"
1554   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1555   func_section_wrap ansic_enh_stdlib_sorting
1556   func_wrap H3
1557   func_echo "$element"
1558
1559   func_begin_table
1560   func_module mpsort
1561   func_end_table
1562
1563   element="Date and time <time.h>"
1564   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1565   func_section_wrap ansic_enh_time_datetime
1566   func_wrap H3
1567   func_echo "$element"
1568
1569   func_begin_table
1570   func_module fprintftime
1571   func_module strftime
1572   func_end_table
1573
1574   element="Extra functions based on ANSI C 89"
1575   func_section_wrap ansic_ext
1576   func_wrap H2
1577   func_echo "$element"
1578
1579   element="Memory management functions <stdlib.h>"
1580   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1581   func_section_wrap ansic_ext_stdlib_memory
1582   func_wrap H3
1583   func_echo "$element"
1584
1585   func_begin_table
1586   func_module xsize
1587   func_module xalloc
1588   func_module xalloc-die
1589   func_module alloca
1590   func_module alloca-opt
1591   func_module allocsa
1592   func_module xallocsa
1593   func_end_table
1594
1595   element="Integer arithmetic functions <stdlib.h>"
1596   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1597   func_section_wrap ansic_ext_stdlib_arith
1598   func_wrap H3
1599   func_echo "$element"
1600
1601   func_begin_table
1602   func_module gcd
1603   func_module minmax
1604   func_end_table
1605
1606   element="Environment variables <stdlib.h>"
1607   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1608   func_section_wrap ansic_ext_stdlib_env
1609   func_wrap H3
1610   func_echo "$element"
1611
1612   func_begin_table
1613   func_module putenv
1614   func_module setenv
1615   func_module xsetenv
1616   func_end_table
1617
1618   element="Character handling <ctype.h>"
1619   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1620   func_section_wrap ansic_ext_ctype
1621   func_wrap H3
1622   func_echo "$element"
1623
1624   func_begin_table
1625   func_module c-ctype
1626   func_end_table
1627
1628   element="String handling <string.h>"
1629   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1630   func_section_wrap ansic_ext_string
1631   func_wrap H3
1632   func_echo "$element"
1633
1634   func_begin_table
1635   func_module bcopy
1636   func_module memmem
1637   func_module mempcpy
1638   func_module memrchr
1639   func_module stpcpy
1640   func_module stpncpy
1641   func_module c-strcase
1642   func_module strcase
1643   func_module c-strcaseeq
1644   func_module c-strcasestr
1645   func_module strcasestr
1646   func_module strchrnul
1647   func_module strdup
1648   func_module streq
1649   func_module strnlen
1650   func_module strnlen1
1651   func_module strndup
1652   func_module strsep
1653   func_module c-strstr
1654   func_module trim
1655   #func_module fstrcmp
1656   func_module xstrndup
1657   func_end_table
1658
1659   element="Numeric conversion functions <stdlib.h>"
1660   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1661   func_section_wrap ansic_ext_stdlib_conv
1662   func_wrap H3
1663   func_echo "$element"
1664
1665   func_begin_table
1666   func_module c-strtod
1667   func_module c-strtold
1668   func_module xstrtod
1669   func_module xstrtol
1670   func_module xstrtold
1671   func_end_table
1672
1673   element="Date and time <time.h>"
1674   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1675   func_section_wrap ansic_ext_time_datetime
1676   func_wrap H3
1677   func_echo "$element"
1678
1679   func_begin_table
1680   func_module getdate
1681   func_module timegm
1682   func_module tzset
1683   func_end_table
1684
1685   element="Input/Output <stdio.h>"
1686   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1687   func_section_wrap ansic_ext_stdio
1688   func_wrap H3
1689   func_echo "$element"
1690
1691   func_begin_table
1692   func_module unlocked-io
1693   func_module fwriteerror
1694   func_module vasnprintf
1695   func_module vasprintf
1696   func_module xvasprintf
1697   func_end_table
1698
1699   element="Signal handling <signal.h>"
1700   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1701   func_section_wrap ansic_ext_signal
1702   func_wrap H3
1703   func_echo "$element"
1704
1705   func_begin_table
1706   func_module fatal-signal
1707   func_module raise
1708   func_end_table
1709
1710   element="Command-line arguments"
1711   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1712   func_section_wrap ansic_ext_argv
1713   func_wrap H3
1714   func_echo "$element"
1715
1716   func_begin_table
1717   func_module argmatch
1718   func_module version-etc
1719   func_module version-etc-fsf
1720   func_module long-options
1721   func_end_table
1722
1723   element="Container data structures"
1724   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1725   func_section_wrap ansic_ext_container
1726   func_wrap H3
1727   func_echo "$element"
1728
1729   func_begin_table
1730   func_module list
1731   func_module array-list
1732   func_module carray-list
1733   func_module linked-list
1734   func_module avltree-list
1735   func_module rbtree-list
1736   func_module linkedhash-list
1737   func_module avltreehash-list
1738   func_module rbtreehash-list
1739   func_module oset
1740   func_module array-oset
1741   func_module avltree-oset
1742   func_module rbtree-oset
1743   func_end_table
1744
1745   element="Cryptographic computations"
1746   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1747   func_section_wrap ansic_ext_crypto
1748   func_wrap H3
1749   func_echo "$element"
1750
1751   func_begin_table
1752   func_module md5
1753   func_module sha1
1754   func_end_table
1755
1756   element="Misc"
1757   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1758   func_section_wrap ansic_ext_misc
1759   func_wrap H3
1760   func_echo "$element"
1761
1762   func_begin_table
1763   func_module base64
1764   func_module check-version
1765   func_module diacrit
1766   func_module getline
1767   func_module getdelim
1768   func_module getnline
1769   func_module getndelim2
1770   func_module linebuffer
1771   func_module obstack
1772   func_module hash-pjw
1773   func_module hash
1774   func_module readline
1775   func_module readtokens
1776   func_module readtokens0
1777   func_module strverscmp
1778   func_end_table
1779
1780   element="Support for systems lacking ISO C 99"
1781   func_section_wrap isoc_sup
1782   func_wrap H2
1783   func_echo "$element"
1784
1785   element="Core language properties"
1786   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1787   func_section_wrap isoc_core_properties
1788   func_wrap H3
1789   func_echo "$element"
1790
1791   func_begin_table
1792   func_module flexmember
1793   func_module vararrays
1794   func_end_table
1795
1796   element="Sizes of integer types <limits.h>"
1797   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1798   func_section_wrap isoc_sup_limits
1799   func_wrap H3
1800   func_echo "$element"
1801
1802   func_begin_table
1803   func_module size_max
1804   func_end_table
1805
1806   element="Variable arguments <stdarg.h>"
1807   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1808   func_section_wrap isoc_sup_stdarg
1809   func_wrap H3
1810   func_echo "$element"
1811
1812   func_begin_table
1813   func_module stdarg
1814   func_end_table
1815
1816   element="Boolean type and values <stdbool.h>"
1817   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1818   func_section_wrap isoc_sup_stdbool
1819   func_wrap H3
1820   func_echo "$element"
1821
1822   func_begin_table
1823   func_module stdbool
1824   func_end_table
1825
1826   element="Integer types and values <stdint.h>"
1827   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1828   func_section_wrap isoc_sup_stdint
1829   func_wrap H3
1830   func_echo "$element"
1831
1832   func_begin_table
1833   func_module stdint
1834   func_end_table
1835
1836   element="Input/output <stdio.h>"
1837   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1838   func_section_wrap isoc_sup_stdio
1839   func_wrap H3
1840   func_echo "$element"
1841
1842   func_begin_table
1843   func_module snprintf
1844   func_module vsnprintf
1845   func_end_table
1846
1847   element="Numeric conversion functions <stdlib.h>"
1848   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1849   func_section_wrap isoc_sup_stdlib_conv
1850   func_wrap H3
1851   func_echo "$element"
1852
1853   func_begin_table
1854   func_module strtoll
1855   func_module strtoull
1856   func_end_table
1857
1858   element="Functions for greatest-width integer types <inttypes.h>"
1859   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1860   func_section_wrap isoc_sup_inttypes
1861   func_wrap H3
1862   func_echo "$element"
1863
1864   func_begin_table
1865   func_module strtoimax
1866   func_module strtoumax
1867   func_end_table
1868
1869   element="Extended multibyte and wide character utilities <wchar.h>"
1870   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1871   func_section_wrap isoc_sup_wchar
1872   func_wrap H3
1873   func_echo "$element"
1874
1875   func_begin_table
1876   func_module wchar
1877   func_end_table
1878
1879   element="Wide character classification and mapping utilities <wctype.h>"
1880   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1881   func_section_wrap isoc_sup_wctype
1882   func_wrap H3
1883   func_echo "$element"
1884
1885   func_begin_table
1886   func_module wctype
1887   func_end_table
1888
1889   element="Mathematics <math.h>"
1890   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1891   func_section_wrap isoc_sup_math
1892   func_wrap H3
1893   func_echo "$element"
1894
1895   func_begin_table
1896   func_module math
1897   func_module mathl
1898   func_end_table
1899
1900   element="Enhancements for ISO C 99 functions"
1901   func_section_wrap isoc_enh
1902   func_wrap H2
1903   func_echo "$element"
1904
1905   func_begin_table
1906   func_end_table
1907
1908   element="Extra functions based on ISO C 99"
1909   func_section_wrap isoc_ext
1910   func_wrap H2
1911   func_echo "$element"
1912
1913   element="Numeric conversion functions <stdlib.h>"
1914   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1915   func_section_wrap isoc_ext_stdlib_conv
1916   func_wrap H3
1917   func_echo "$element"
1918
1919   func_begin_table
1920   func_module intprops
1921   func_module inttostr
1922   func_module xstrtoimax
1923   func_module xstrtoumax
1924   func_end_table
1925
1926   element="Extended multibyte and wide character utilities <wchar.h>"
1927   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1928   func_section_wrap isoc_ext_wchar_mb
1929   func_wrap H3
1930   func_echo "$element"
1931
1932   func_begin_table
1933   func_module mbchar
1934   func_module mbiter
1935   func_module mbuiter
1936   func_module mbfile
1937   func_end_table
1938
1939   element="Support for systems lacking POSIX:2001"
1940   func_section_wrap posix_sup
1941   func_wrap H2
1942   func_echo "$element"
1943
1944   func_begin_table
1945   func_module chown
1946   func_module dup2
1947   func_module fchdir
1948   func_module ftruncate
1949   func_module getaddrinfo
1950   func_module getcwd
1951   func_module getgroups
1952   func_module gethostname
1953   func_module getlogin_r
1954   func_module getsubopt
1955   func_module gettimeofday
1956   func_module inet_ntop
1957   func_module inet_pton
1958   func_module mkdir
1959   func_module mkdtemp
1960   func_module mkstemp
1961   func_module poll
1962   func_module readlink
1963   func_module lstat
1964   func_module tempname
1965   func_module time
1966   func_module time_r
1967   func_module timespec
1968   func_module nanosleep
1969   func_module regex
1970   func_module rename
1971   func_module rmdir
1972   func_module sigprocmask
1973   func_module ssize_t
1974   func_module strptime
1975   func_module strtok_r
1976   func_module sys_stat
1977   func_module sys_time
1978   func_module tsearch
1979   func_module unistd
1980   func_module utime
1981   func_module wcwidth
1982   func_end_table
1983
1984   element="Compatibility checks for POSIX:2001 functions"
1985   func_section_wrap posix_compat
1986   func_wrap H2
1987   func_echo "$element"
1988
1989   func_begin_table
1990   func_module d-ino
1991   func_module d-type
1992   func_module link-follow
1993   func_module rename-dest-slash
1994   func_module rmdir-errno
1995   func_module unlink-busy
1996   func_module winsz-ioctl
1997   func_module winsz-termios
1998   func_end_table
1999
2000   element="Enhancements for POSIX:2001 functions"
2001   func_section_wrap posix_enh
2002   func_wrap H2
2003   func_echo "$element"
2004
2005   func_begin_table
2006   func_module dirname
2007   func_module getopt
2008   func_module unistd-safer
2009   func_module fnmatch
2010   func_module fnmatch-posix
2011   func_module fnmatch-gnu
2012   func_module glob
2013   func_module exclude
2014   func_end_table
2015
2016   element="Extra functions based on POSIX:2001"
2017   func_section_wrap posix_ext
2018   func_wrap H2
2019   func_echo "$element"
2020
2021   element="Numeric conversion functions"
2022   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2023   func_section_wrap posix_ext_conv
2024   func_wrap H3
2025   func_echo "$element"
2026
2027   func_begin_table
2028   func_module human
2029   func_end_table
2030
2031   element="File system functions"
2032   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2033   func_section_wrap posix_ext_filesys
2034   func_wrap H3
2035   func_echo "$element"
2036
2037   func_begin_table
2038   func_module acl
2039   func_module backupfile
2040   func_module canonicalize
2041   func_module canonicalize-lgpl
2042   func_module clean-temp
2043   func_module copy-file
2044   func_module cycle-check
2045   func_module fsusage
2046   func_module dirfd
2047   func_module double-slash-root
2048   func_module euidaccess
2049   func_module file-type
2050   func_module fileblocks
2051   func_module filemode
2052   func_module filenamecat
2053   func_module fts
2054   func_module fts-lgpl
2055   func_module isdir
2056   func_module lchmod
2057   func_module lchown
2058   func_module mkancesdirs
2059   func_module mkdir-p
2060   func_module modechange
2061   func_module mountlist
2062   func_module openat
2063   func_module pathname
2064   func_module pathmax
2065   func_module same
2066   func_module save-cwd
2067   func_module savedir
2068   func_module savewd
2069   func_module stat-time
2070   func_module tmpdir
2071   func_module unlinkdir
2072   func_module utimecmp
2073   func_module utimens
2074   func_module xgetcwd
2075   func_module xreadlink
2076   func_end_table
2077
2078   element="File descriptor based Input/Output"
2079   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2080   func_section_wrap posix_ext_filedesc
2081   func_wrap H3
2082   func_echo "$element"
2083
2084   func_begin_table
2085   func_module fcntl-safer
2086   func_module safe-read
2087   func_module safe-write
2088   func_module full-read
2089   func_module full-write
2090   func_module binary-io
2091   func_module isapipe
2092   func_end_table
2093
2094   element="File stream based Input/Output"
2095   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2096   func_section_wrap posix_ext_filestream
2097   func_wrap H3
2098   func_echo "$element"
2099
2100   func_begin_table
2101   func_module close-stream
2102   func_module closeout
2103   func_module fopen-safer
2104   func_module fpending
2105   func_module getpass
2106   func_module getpass-gnu
2107   func_module stdlib-safer
2108   func_module tmpfile-safer
2109   func_end_table
2110
2111   element="Users and groups"
2112   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2113   func_section_wrap posix_ext_uidgid
2114   func_wrap H3
2115   func_echo "$element"
2116
2117   func_begin_table
2118   func_module getugroups
2119   func_module group-member
2120   func_module idcache
2121   func_module userspec
2122   func_end_table
2123
2124   element="Date and time"
2125   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2126   func_section_wrap posix_ext_datetime
2127   func_wrap H3
2128   func_echo "$element"
2129
2130   func_begin_table
2131   func_module gettime
2132   func_module settime
2133   func_module posixtm
2134   func_module xnanosleep
2135   func_end_table
2136
2137   element="Networking functions"
2138   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2139   func_section_wrap posix_ext_net
2140   func_wrap H3
2141   func_echo "$element"
2142
2143   func_begin_table
2144   func_module xgethostname
2145   func_module canon-host
2146   func_end_table
2147
2148   element="Multithreading"
2149   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2150   func_section_wrap posix_ext_thread
2151   func_wrap H3
2152   func_echo "$element"
2153
2154   func_begin_table
2155   func_module lock
2156   func_module tls
2157   func_end_table
2158
2159   element="Internationalization functions"
2160   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2161   func_section_wrap posix_ext_i18n
2162   func_wrap H3
2163   func_echo "$element"
2164
2165   func_begin_table
2166   func_module gettext
2167   func_module gettext-h
2168   func_module iconv
2169   func_module striconv
2170   func_module xstriconv
2171   func_module striconveh
2172   func_module striconveha
2173   func_module iconvme
2174   func_module localcharset
2175   func_module hard-locale
2176   func_module mbslen
2177   func_module mbschr
2178   func_module mbsrchr
2179   func_module mbsstr
2180   func_module mbscasecmp
2181   func_module mbsncasecmp
2182   func_module mbspcasecmp
2183   func_module mbscasestr
2184   func_module mbscspn
2185   func_module mbspbrk
2186   func_module mbsspn
2187   func_module mbssep
2188   func_module mbstok_r
2189   func_module mbswidth
2190   func_module memcasecmp
2191   func_module memcoll
2192   func_module xmemcoll
2193   func_module unicodeio
2194   func_module rpmatch
2195   func_module yesno
2196   func_module linebreak
2197   func_module bison-i18n
2198   func_end_table
2199
2200   element="Unicode string functions"
2201   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2202   func_section_wrap posix_ext_unicode
2203   func_wrap H3
2204   func_echo "$element"
2205
2206   func_begin_table
2207   func_module unitypes
2208   func_module ucs4-utf8
2209   func_module ucs4-utf16
2210   func_module utf8-ucs4-unsafe
2211   func_module utf16-ucs4-unsafe
2212   func_module utf8-ucs4
2213   func_module utf16-ucs4
2214   func_module unistr/base
2215   func_module unistr/u8-to-u16
2216   func_module unistr/u8-to-u32
2217   func_module unistr/u16-to-u8
2218   func_module unistr/u16-to-u32
2219   func_module unistr/u32-to-u8
2220   func_module unistr/u32-to-u16
2221   func_module unistr/u8-check
2222   func_module unistr/u16-check
2223   func_module unistr/u32-check
2224   func_module unistr/u8-chr
2225   func_module unistr/u16-chr
2226   func_module unistr/u32-chr
2227   func_module unistr/u8-cmp
2228   func_module unistr/u16-cmp
2229   func_module unistr/u32-cmp
2230   func_module unistr/u8-cpy
2231   func_module unistr/u16-cpy
2232   func_module unistr/u32-cpy
2233   func_module unistr/u8-cpy-alloc
2234   func_module unistr/u16-cpy-alloc
2235   func_module unistr/u32-cpy-alloc
2236   func_module unistr/u8-endswith
2237   func_module unistr/u16-endswith
2238   func_module unistr/u32-endswith
2239   func_module unistr/u8-mblen
2240   func_module unistr/u16-mblen
2241   func_module unistr/u32-mblen
2242   func_module unistr/u8-mbtouc-unsafe
2243   func_module unistr/u16-mbtouc-unsafe
2244   func_module unistr/u32-mbtouc-unsafe
2245   func_module unistr/u8-mbtouc
2246   func_module unistr/u16-mbtouc
2247   func_module unistr/u32-mbtouc
2248   func_module unistr/u8-move
2249   func_module unistr/u16-move
2250   func_module unistr/u32-move
2251   func_module unistr/u8-next
2252   func_module unistr/u16-next
2253   func_module unistr/u32-next
2254   func_module unistr/u8-prev
2255   func_module unistr/u16-prev
2256   func_module unistr/u32-prev
2257   func_module unistr/u8-set
2258   func_module unistr/u16-set
2259   func_module unistr/u32-set
2260   func_module unistr/u8-startswith
2261   func_module unistr/u16-startswith
2262   func_module unistr/u32-startswith
2263   func_module unistr/u8-stpcpy
2264   func_module unistr/u16-stpcpy
2265   func_module unistr/u32-stpcpy
2266   func_module unistr/u8-stpncpy
2267   func_module unistr/u16-stpncpy
2268   func_module unistr/u32-stpncpy
2269   func_module unistr/u8-strcat
2270   func_module unistr/u16-strcat
2271   func_module unistr/u32-strcat
2272   func_module unistr/u8-strchr
2273   func_module unistr/u16-strchr
2274   func_module unistr/u32-strchr
2275   func_module unistr/u8-strcmp
2276   func_module unistr/u16-strcmp
2277   func_module unistr/u32-strcmp
2278   func_module unistr/u8-strcpy
2279   func_module unistr/u16-strcpy
2280   func_module unistr/u32-strcpy
2281   func_module unistr/u8-strcspn
2282   func_module unistr/u16-strcspn
2283   func_module unistr/u32-strcspn
2284   func_module unistr/u8-strdup
2285   func_module unistr/u16-strdup
2286   func_module unistr/u32-strdup
2287   func_module unistr/u8-strlen
2288   func_module unistr/u16-strlen
2289   func_module unistr/u32-strlen
2290   func_module unistr/u8-strmblen
2291   func_module unistr/u16-strmblen
2292   func_module unistr/u32-strmblen
2293   func_module unistr/u8-strmbtouc
2294   func_module unistr/u16-strmbtouc
2295   func_module unistr/u32-strmbtouc
2296   func_module unistr/u8-strncat
2297   func_module unistr/u16-strncat
2298   func_module unistr/u32-strncat
2299   func_module unistr/u8-strncmp
2300   func_module unistr/u16-strncmp
2301   func_module unistr/u32-strncmp
2302   func_module unistr/u8-strncpy
2303   func_module unistr/u16-strncpy
2304   func_module unistr/u32-strncpy
2305   func_module unistr/u8-strnlen
2306   func_module unistr/u16-strnlen
2307   func_module unistr/u32-strnlen
2308   func_module unistr/u8-strpbrk
2309   func_module unistr/u16-strpbrk
2310   func_module unistr/u32-strpbrk
2311   func_module unistr/u8-strrchr
2312   func_module unistr/u16-strrchr
2313   func_module unistr/u32-strrchr
2314   func_module unistr/u8-strspn
2315   func_module unistr/u16-strspn
2316   func_module unistr/u32-strspn
2317   func_module unistr/u8-strstr
2318   func_module unistr/u16-strstr
2319   func_module unistr/u32-strstr
2320   func_module unistr/u8-strtok
2321   func_module unistr/u16-strtok
2322   func_module unistr/u32-strtok
2323   func_module unistr/u8-uctomb
2324   func_module unistr/u16-uctomb
2325   func_module unistr/u32-uctomb
2326   func_module uniconv/base
2327   func_module uniconv/u8-conv-from-enc
2328   func_module uniconv/u16-conv-from-enc
2329   func_module uniconv/u32-conv-from-enc
2330   func_module uniconv/u8-strconv-from-enc
2331   func_module uniconv/u16-strconv-from-enc
2332   func_module uniconv/u32-strconv-from-enc
2333   func_module uniconv/u8-strconv-to-enc
2334   func_module uniconv/u16-strconv-to-enc
2335   func_module uniconv/u32-strconv-to-enc
2336   func_module uniconv/u8-strconv-from-locale
2337   func_module uniconv/u16-strconv-from-locale
2338   func_module uniconv/u32-strconv-from-locale
2339   func_module uniconv/u8-strconv-to-locale
2340   func_module uniconv/u16-strconv-to-locale
2341   func_module uniconv/u32-strconv-to-locale
2342   func_end_table
2343
2344   element="Executing programs"
2345   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2346   func_section_wrap posix_ext_exec
2347   func_wrap H3
2348   func_echo "$element"
2349
2350   func_begin_table
2351   func_module cloexec
2352   func_module findprog
2353   func_module wait-process
2354   func_module execute
2355   func_module pipe
2356   func_module sh-quote
2357   func_end_table
2358
2359   element="Java"
2360   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2361   func_section_wrap posix_ext_java
2362   func_wrap H3
2363   func_echo "$element"
2364
2365   func_begin_table
2366   func_module classpath
2367   func_module javacomp
2368   func_module javaexec
2369   func_module javaversion
2370   #func_module gcj
2371   func_end_table
2372
2373   element="C#"
2374   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2375   func_section_wrap posix_ext_csharp
2376   func_wrap H3
2377   func_echo "$element"
2378
2379   func_begin_table
2380   func_module csharpcomp
2381   func_module csharpexec
2382   func_end_table
2383
2384   element="Misc"
2385   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2386   func_section_wrap posix_ext_misc
2387   func_wrap H3
2388   func_echo "$element"
2389
2390   func_begin_table
2391   func_module argp
2392   func_module argz
2393   func_module byteswap
2394   func_module exitfail
2395   func_module c-stack
2396   func_module error
2397   func_module extensions
2398   func_module getdomainname
2399   func_module xgetdomainname
2400   func_module getloadavg
2401   func_module getpagesize
2402   func_module getusershell
2403   func_module physmem
2404   func_module posixver
2405   func_module progname
2406   func_module quotearg
2407   func_module quote
2408   func_module readutmp
2409   func_module sig2str
2410   func_module sysexits
2411   func_module verror
2412   func_module visibility
2413   func_end_table
2414
2415   element="Support for building libraries and executables"
2416   func_section_wrap build_lib
2417   func_wrap H2
2418   func_echo "$element"
2419
2420   func_begin_table
2421   func_module absolute-header
2422   func_module config-h
2423   func_module configmake
2424   func_module dummy
2425   func_module elisp-comp
2426   func_module ldd
2427   func_module lib-ignore
2428   func_module link-warning
2429   func_module no-c++
2430   func_end_table
2431
2432   element="Support for building documentation"
2433   func_section_wrap build_doc
2434   func_wrap H2
2435   func_echo "$element"
2436
2437   func_begin_table
2438   func_module fdl
2439   func_module gendocs
2440   func_module gpl
2441   func_module lgpl
2442   func_module regexprops-generic
2443   func_end_table
2444
2445   element="Support for maintaining and release projects"
2446   func_section_wrap maintain
2447   func_wrap H2
2448   func_echo "$element"
2449
2450   func_begin_table
2451   func_module gnupload
2452   func_module maintainer-makefile
2453   func_end_table
2454
2455   element="Misc"
2456   func_section_wrap misc
2457   func_wrap H2
2458   func_echo "$element"
2459
2460   func_begin_table
2461   func_module host-os
2462   func_module perl
2463   func_module uptime
2464   func_end_table
2465 }
2466
2467
2468 func_tmpdir
2469 trap 'exit_status=$?
2470       if test "$signal" != 0; then
2471         echo "caught signal $signal" >&2
2472       fi
2473       rm -rf "$tmp"
2474       exit $exit_status' 0
2475 for signal in 1 2 3 13 15; do
2476   trap '{ signal='$signal'; func_exit 1; }' $signal
2477 done
2478 signal=0
2479
2480 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">'
2481 func_begin HTML
2482
2483 func_begin HEAD
2484
2485 element="Gnulib Module List"
2486 func_wrap TITLE
2487 func_echo "$element"
2488
2489 modules=`gnulib-tool --list`
2490 modules=`for m in $modules; do printf "%s, " $m; done | sed -e 's/, $//'`
2491 func_echo '<META NAME="keywords" CONTENT="'"${modules}"'">'
2492
2493 func_end HEAD
2494
2495 func_begin BODY
2496
2497 element="Gnulib Module List"
2498 func_wrap H1
2499 func_echo "$element"
2500
2501 func_echo 'This is a list of the modules which make up gnulib, with dependencies.'
2502
2503 in_toc=yes
2504 func_all_modules
2505
2506 in_toc=
2507 func_all_modules
2508
2509
2510 gnulib-tool --list > "$tmp/all-modules"
2511 missed_modules=`for module in $seen_modules; do echo $module; done \
2512                   | LC_ALL=C sort -u \
2513                   | LC_ALL=C join -v 2 - "$tmp/all-modules"`
2514
2515 if test -n "$missed_modules"; then
2516
2517   element="Unclassified modules - please update MODULES.html.sh"
2518   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2519   func_wrap H2
2520   func_echo "$element"
2521
2522   func_begin_table
2523   for module in $missed_modules; do
2524     func_module $module
2525   done
2526   func_end_table
2527
2528 fi
2529
2530 LC_ALL=C ls -d lib/* m4/* | sed -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"
2531 missed_files=`for file in $seen_files; do echo $file; done \
2532                 | LC_ALL=C sort -u \
2533                 | LC_ALL=C join -v 2 - "$tmp/all-files"`
2534
2535 if test -n "$missed_files"; then
2536
2537   element="Lone files - please create new modules containing them"
2538   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2539   func_wrap H2
2540   func_echo "$element"
2541
2542   func_echo '<PRE>'
2543   echo "$missed_files" | sed -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'\1'$repo_url_suffix_repl'">\1</A>,'
2544   echo '</PRE>'
2545
2546 fi
2547
2548 element="Future developments"
2549 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2550 func_wrap H2
2551 func_echo "$element"
2552
2553 func_echo 'Ideally a module could consist of:'
2554 func_begin UL
2555 func_echo '<LI>A header file: lib/<VAR>module</VAR>.h'
2556 func_echo '<LI>One or more implementation files: lib/<VAR>module</VAR>.c et al.'
2557 func_echo '<LI>One or more autoconf macro files: m4/<VAR>module</VAR>.m4 et al.'
2558 func_echo '<LI>A configure.ac fragment, Makefile.am fragment, dependency list: modules/<VAR>module</VAR>'
2559 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'
2560 func_echo '<LI>Some documentation'
2561 func_echo '<LI>A POT file and some PO files'
2562 func_end UL
2563
2564 func_echo '<HR>'
2565 func_echo 'Generated from <CODE>MODULES.html.sh</CODE> on '`LC_ALL=C date +"%e %B %Y"`.
2566
2567 func_end BODY
2568
2569 func_end HTML
2570
2571 rm -rf "$tmp"
2572 # Undo the effect of the previous 'trap' command.
2573 trap '' 0
2574 trap 'func_exit $?' 1 2 3 13 15
2575
2576 exit 0
2577
2578 # Local Variables:
2579 # indent-tabs-mode: nil
2580 # whitespace-check-buffer-indent: nil
2581 # End: