revert unwanted commit
[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 exit
1494   func_module atexit
1495   func_module strtod
1496   func_module strtol
1497   func_module strtoul
1498   func_module memchr
1499   func_module memcmp
1500   func_module memcpy
1501   func_module memmove
1502   func_module memset
1503   func_module strcspn
1504   func_module strpbrk
1505   func_module strstr
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="Memory management functions <stdlib.h>"
1529   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1530   func_section_wrap ansic_enh_stdlib_memory
1531   func_wrap H3
1532   func_echo "$element"
1533
1534   func_begin_table
1535   func_module calloc
1536   func_module eealloc
1537   func_module free
1538   func_module malloc
1539   func_module realloc
1540   func_module pagealign_alloc
1541   func_end_table
1542
1543   element="Date and time <time.h>"
1544   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1545   func_section_wrap ansic_enh_time_datetime
1546   func_wrap H3
1547   func_echo "$element"
1548
1549   func_begin_table
1550   func_module fprintftime
1551   func_module strftime
1552   func_end_table
1553
1554   element="Extra functions based on ANSI C 89"
1555   func_section_wrap ansic_ext
1556   func_wrap H2
1557   func_echo "$element"
1558
1559   element="Memory management functions <stdlib.h>"
1560   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1561   func_section_wrap ansic_ext_stdlib_memory
1562   func_wrap H3
1563   func_echo "$element"
1564
1565   func_begin_table
1566   func_module xsize
1567   func_module xalloc
1568   func_module xalloc-die
1569   func_module alloca
1570   func_module alloca-opt
1571   func_module allocsa
1572   func_module xallocsa
1573   func_end_table
1574
1575   element="Integer arithmetic functions <stdlib.h>"
1576   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1577   func_section_wrap ansic_ext_stdlib_arith
1578   func_wrap H3
1579   func_echo "$element"
1580
1581   func_begin_table
1582   func_module gcd
1583   func_module minmax
1584   func_end_table
1585
1586   element="Environment variables <stdlib.h>"
1587   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1588   func_section_wrap ansic_ext_stdlib_env
1589   func_wrap H3
1590   func_echo "$element"
1591
1592   func_begin_table
1593   func_module putenv
1594   func_module setenv
1595   func_module xsetenv
1596   func_end_table
1597
1598   element="Character handling <ctype.h>"
1599   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1600   func_section_wrap ansic_ext_ctype
1601   func_wrap H3
1602   func_echo "$element"
1603
1604   func_begin_table
1605   func_module c-ctype
1606   func_end_table
1607
1608   element="String handling <string.h>"
1609   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1610   func_section_wrap ansic_ext_string
1611   func_wrap H3
1612   func_echo "$element"
1613
1614   func_begin_table
1615   func_module bcopy
1616   func_module memmem
1617   func_module mempcpy
1618   func_module memrchr
1619   func_module stpcpy
1620   func_module stpncpy
1621   func_module c-strcase
1622   func_module strcase
1623   func_module c-strcasestr
1624   func_module strcasestr
1625   func_module strchrnul
1626   func_module strdup
1627   func_module strnlen
1628   func_module strnlen1
1629   func_module strndup
1630   func_module strsep
1631   func_module c-strstr
1632   func_module trim
1633   #func_module fstrcmp
1634   func_module xstrndup
1635   func_end_table
1636
1637   element="Numeric conversion functions <stdlib.h>"
1638   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1639   func_section_wrap ansic_ext_stdlib_conv
1640   func_wrap H3
1641   func_echo "$element"
1642
1643   func_begin_table
1644   func_module c-strtod
1645   func_module c-strtold
1646   func_module xstrtod
1647   func_module xstrtol
1648   func_module xstrtold
1649   func_end_table
1650
1651   element="Date and time <time.h>"
1652   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1653   func_section_wrap ansic_ext_time_datetime
1654   func_wrap H3
1655   func_echo "$element"
1656
1657   func_begin_table
1658   func_module getdate
1659   func_module timegm
1660   func_module tzset
1661   func_end_table
1662
1663   element="Input/Output <stdio.h>"
1664   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1665   func_section_wrap ansic_ext_stdio
1666   func_wrap H3
1667   func_echo "$element"
1668
1669   func_begin_table
1670   func_module unlocked-io
1671   func_module fwriteerror
1672   func_module vasnprintf
1673   func_module vasprintf
1674   func_module xvasprintf
1675   func_end_table
1676
1677   element="Signal handling <signal.h>"
1678   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1679   func_section_wrap ansic_ext_signal
1680   func_wrap H3
1681   func_echo "$element"
1682
1683   func_begin_table
1684   func_module fatal-signal
1685   func_module raise
1686   func_end_table
1687
1688   element="Command-line arguments"
1689   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1690   func_section_wrap ansic_ext_argv
1691   func_wrap H3
1692   func_echo "$element"
1693
1694   func_begin_table
1695   func_module argmatch
1696   func_module version-etc
1697   func_module version-etc-fsf
1698   func_module long-options
1699   func_end_table
1700
1701   element="Container data structures"
1702   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1703   func_section_wrap ansic_ext_container
1704   func_wrap H3
1705   func_echo "$element"
1706
1707   func_begin_table
1708   func_module list
1709   func_module array-list
1710   func_module carray-list
1711   func_module linked-list
1712   func_module avltree-list
1713   func_module rbtree-list
1714   func_module linkedhash-list
1715   func_module avltreehash-list
1716   func_module rbtreehash-list
1717   func_module oset
1718   func_module array-oset
1719   func_module avltree-oset
1720   func_module rbtree-oset
1721   func_end_table
1722
1723   element="Cryptographic computations"
1724   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1725   func_section_wrap ansic_ext_crypto
1726   func_wrap H3
1727   func_echo "$element"
1728
1729   func_begin_table
1730   func_module md5
1731   func_module sha1
1732   func_end_table
1733
1734   element="Misc"
1735   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1736   func_section_wrap ansic_ext_misc
1737   func_wrap H3
1738   func_echo "$element"
1739
1740   func_begin_table
1741   func_module base64
1742   func_module check-version
1743   func_module diacrit
1744   func_module getline
1745   func_module getdelim
1746   func_module getnline
1747   func_module getndelim2
1748   func_module linebuffer
1749   func_module obstack
1750   func_module hash-pjw
1751   func_module hash
1752   func_module readline
1753   func_module readtokens
1754   func_module readtokens0
1755   func_module strverscmp
1756   func_end_table
1757
1758   element="Support for systems lacking ISO C 99"
1759   func_section_wrap isoc_sup
1760   func_wrap H2
1761   func_echo "$element"
1762
1763   element="Core language properties"
1764   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1765   func_section_wrap isoc_core_properties
1766   func_wrap H3
1767   func_echo "$element"
1768
1769   func_begin_table
1770   func_module flexmember
1771   func_module vararrays
1772   func_end_table
1773
1774   element="Sizes of integer types <limits.h>"
1775   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1776   func_section_wrap isoc_sup_limits
1777   func_wrap H3
1778   func_echo "$element"
1779
1780   func_begin_table
1781   func_module size_max
1782   func_end_table
1783
1784   element="Variable arguments <stdarg.h>"
1785   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1786   func_section_wrap isoc_sup_stdarg
1787   func_wrap H3
1788   func_echo "$element"
1789
1790   func_begin_table
1791   func_module stdarg
1792   func_end_table
1793
1794   element="Boolean type and values <stdbool.h>"
1795   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1796   func_section_wrap isoc_sup_stdbool
1797   func_wrap H3
1798   func_echo "$element"
1799
1800   func_begin_table
1801   func_module stdbool
1802   func_end_table
1803
1804   element="Integer types and values <stdint.h>"
1805   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1806   func_section_wrap isoc_sup_stdint
1807   func_wrap H3
1808   func_echo "$element"
1809
1810   func_begin_table
1811   func_module stdint
1812   func_end_table
1813
1814   element="Input/output <stdio.h>"
1815   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1816   func_section_wrap isoc_sup_stdio
1817   func_wrap H3
1818   func_echo "$element"
1819
1820   func_begin_table
1821   func_module snprintf
1822   func_module vsnprintf
1823   func_end_table
1824
1825   element="Numeric conversion functions <stdlib.h>"
1826   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1827   func_section_wrap isoc_sup_stdlib_conv
1828   func_wrap H3
1829   func_echo "$element"
1830
1831   func_begin_table
1832   func_module strtoll
1833   func_module strtoull
1834   func_end_table
1835
1836   element="Functions for greatest-width integer types <inttypes.h>"
1837   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1838   func_section_wrap isoc_sup_inttypes
1839   func_wrap H3
1840   func_echo "$element"
1841
1842   func_begin_table
1843   func_module strtoimax
1844   func_module strtoumax
1845   func_end_table
1846
1847   element="Extended multibyte and wide character utilities <wchar.h>"
1848   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1849   func_section_wrap isoc_sup_wchar
1850   func_wrap H3
1851   func_echo "$element"
1852
1853   func_begin_table
1854   func_module wchar
1855   func_end_table
1856
1857   element="Wide character classification and mapping utilities <wctype.h>"
1858   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1859   func_section_wrap isoc_sup_wctype
1860   func_wrap H3
1861   func_echo "$element"
1862
1863   func_begin_table
1864   func_module wctype
1865   func_end_table
1866
1867   element="Mathematics <math.h>"
1868   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1869   func_section_wrap isoc_sup_math
1870   func_wrap H3
1871   func_echo "$element"
1872
1873   func_begin_table
1874   func_module mathl
1875   func_end_table
1876
1877   element="Enhancements for ISO C 99 functions"
1878   func_section_wrap isoc_enh
1879   func_wrap H2
1880   func_echo "$element"
1881
1882   func_begin_table
1883   func_end_table
1884
1885   element="Extra functions based on ISO C 99"
1886   func_section_wrap isoc_ext
1887   func_wrap H2
1888   func_echo "$element"
1889
1890   element="Numeric conversion functions <stdlib.h>"
1891   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1892   func_section_wrap isoc_ext_stdlib_conv
1893   func_wrap H3
1894   func_echo "$element"
1895
1896   func_begin_table
1897   func_module intprops
1898   func_module inttostr
1899   func_module xstrtoimax
1900   func_module xstrtoumax
1901   func_end_table
1902
1903   element="Extended multibyte and wide character utilities <wchar.h>"
1904   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1905   func_section_wrap isoc_ext_wchar_mb
1906   func_wrap H3
1907   func_echo "$element"
1908
1909   func_begin_table
1910   func_module mbchar
1911   func_module mbiter
1912   func_module mbuiter
1913   func_module mbfile
1914   func_end_table
1915
1916   element="Support for systems lacking POSIX:2001"
1917   func_section_wrap posix_sup
1918   func_wrap H2
1919   func_echo "$element"
1920
1921   func_begin_table
1922   func_module chown
1923   func_module dup2
1924   func_module fchdir
1925   func_module ftruncate
1926   func_module getaddrinfo
1927   func_module getcwd
1928   func_module getgroups
1929   func_module gethostname
1930   func_module getlogin_r
1931   func_module getsubopt
1932   func_module gettimeofday
1933   func_module inet_ntop
1934   func_module inet_pton
1935   func_module mkdir
1936   func_module mkdtemp
1937   func_module mkstemp
1938   func_module poll
1939   func_module readlink
1940   func_module lstat
1941   func_module tempname
1942   func_module time_r
1943   func_module timespec
1944   func_module nanosleep
1945   func_module regex
1946   func_module rename
1947   func_module rmdir
1948   func_module sigprocmask
1949   func_module ssize_t
1950   func_module strtok_r
1951   func_module sys_stat
1952   func_module tsearch
1953   func_module unistd
1954   func_module utime
1955   func_module wcwidth
1956   func_end_table
1957
1958   element="Compatibility checks for POSIX:2001 functions"
1959   func_section_wrap posix_compat
1960   func_wrap H2
1961   func_echo "$element"
1962
1963   func_begin_table
1964   func_module d-ino
1965   func_module d-type
1966   func_module link-follow
1967   func_module rename-dest-slash
1968   func_module rmdir-errno
1969   func_module unlink-busy
1970   func_module winsz-ioctl
1971   func_module winsz-termios
1972   func_end_table
1973
1974   element="Enhancements for POSIX:2001 functions"
1975   func_section_wrap posix_enh
1976   func_wrap H2
1977   func_echo "$element"
1978
1979   func_begin_table
1980   func_module dirname
1981   func_module getopt
1982   func_module unistd-safer
1983   func_module fnmatch
1984   func_module fnmatch-posix
1985   func_module fnmatch-gnu
1986   func_module glob
1987   func_module exclude
1988   func_end_table
1989
1990   element="Extra functions based on POSIX:2001"
1991   func_section_wrap posix_ext
1992   func_wrap H2
1993   func_echo "$element"
1994
1995   element="Numeric conversion functions"
1996   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
1997   func_section_wrap posix_ext_conv
1998   func_wrap H3
1999   func_echo "$element"
2000
2001   func_begin_table
2002   func_module human
2003   func_end_table
2004
2005   element="File system functions"
2006   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2007   func_section_wrap posix_ext_filesys
2008   func_wrap H3
2009   func_echo "$element"
2010
2011   func_begin_table
2012   func_module acl
2013   func_module backupfile
2014   func_module canonicalize
2015   func_module canonicalize-lgpl
2016   func_module clean-temp
2017   func_module copy-file
2018   func_module cycle-check
2019   func_module fsusage
2020   func_module dirfd
2021   func_module double-slash-root
2022   func_module euidaccess
2023   func_module file-type
2024   func_module fileblocks
2025   func_module filemode
2026   func_module filenamecat
2027   func_module fts
2028   func_module fts-lgpl
2029   func_module isdir
2030   func_module lchmod
2031   func_module lchown
2032   func_module mkancesdirs
2033   func_module mkdir-p
2034   func_module modechange
2035   func_module mountlist
2036   func_module openat
2037   func_module pathname
2038   func_module pathmax
2039   func_module same
2040   func_module save-cwd
2041   func_module savedir
2042   func_module savewd
2043   func_module stat-time
2044   func_module tmpdir
2045   func_module unlinkdir
2046   func_module utimecmp
2047   func_module utimens
2048   func_module xgetcwd
2049   func_module xreadlink
2050   func_end_table
2051
2052   element="File descriptor based Input/Output"
2053   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2054   func_section_wrap posix_ext_filedesc
2055   func_wrap H3
2056   func_echo "$element"
2057
2058   func_begin_table
2059   func_module fcntl-safer
2060   func_module safe-read
2061   func_module safe-write
2062   func_module full-read
2063   func_module full-write
2064   func_module binary-io
2065   func_module isapipe
2066   func_end_table
2067
2068   element="File stream based Input/Output"
2069   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2070   func_section_wrap posix_ext_filestream
2071   func_wrap H3
2072   func_echo "$element"
2073
2074   func_begin_table
2075   func_module close-stream
2076   func_module closeout
2077   func_module fopen-safer
2078   func_module fpending
2079   func_module getpass
2080   func_module getpass-gnu
2081   func_module stdlib-safer
2082   func_module tmpfile-safer
2083   func_end_table
2084
2085   element="Users and groups"
2086   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2087   func_section_wrap posix_ext_uidgid
2088   func_wrap H3
2089   func_echo "$element"
2090
2091   func_begin_table
2092   func_module getugroups
2093   func_module group-member
2094   func_module idcache
2095   func_module userspec
2096   func_end_table
2097
2098   element="Date and time"
2099   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2100   func_section_wrap posix_ext_datetime
2101   func_wrap H3
2102   func_echo "$element"
2103
2104   func_begin_table
2105   func_module gettime
2106   func_module settime
2107   func_module posixtm
2108   func_module xnanosleep
2109   func_end_table
2110
2111   element="Networking functions"
2112   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2113   func_section_wrap posix_ext_net
2114   func_wrap H3
2115   func_echo "$element"
2116
2117   func_begin_table
2118   func_module xgethostname
2119   func_module canon-host
2120   func_end_table
2121
2122   element="Multithreading"
2123   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2124   func_section_wrap posix_ext_thread
2125   func_wrap H3
2126   func_echo "$element"
2127
2128   func_begin_table
2129   func_module lock
2130   func_module tls
2131   func_end_table
2132
2133   element="Internationalization functions"
2134   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2135   func_section_wrap posix_ext_i18n
2136   func_wrap H3
2137   func_echo "$element"
2138
2139   func_begin_table
2140   func_module gettext
2141   func_module gettext-h
2142   func_module iconv
2143   func_module striconv
2144   func_module xstriconv
2145   func_module striconveh
2146   func_module iconvme
2147   func_module localcharset
2148   func_module hard-locale
2149   func_module mbswidth
2150   func_module memcasecmp
2151   func_module memcoll
2152   func_module xmemcoll
2153   func_module unicodeio
2154   func_module rpmatch
2155   func_module yesno
2156   func_module linebreak
2157   func_module bison-i18n
2158   func_end_table
2159
2160   element="Unicode string functions"
2161   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2162   func_section_wrap posix_ext_unicode
2163   func_wrap H3
2164   func_echo "$element"
2165
2166   func_begin_table
2167   func_module unitypes
2168   func_module ucs4-utf8
2169   func_module ucs4-utf16
2170   func_module utf8-ucs4
2171   func_module utf16-ucs4
2172   func_module utf8-ucs4-safe
2173   func_module utf16-ucs4-safe
2174   func_module unistr/base
2175   func_module unistr/u8-to-u16
2176   func_module unistr/u8-to-u32
2177   func_module unistr/u16-to-u8
2178   func_module unistr/u16-to-u32
2179   func_module unistr/u32-to-u8
2180   func_module unistr/u32-to-u16
2181   func_module unistr/u8-check
2182   func_module unistr/u16-check
2183   func_module unistr/u32-check
2184   func_module unistr/u8-chr
2185   func_module unistr/u16-chr
2186   func_module unistr/u32-chr
2187   func_module unistr/u8-cmp
2188   func_module unistr/u16-cmp
2189   func_module unistr/u32-cmp
2190   func_module unistr/u8-cpy
2191   func_module unistr/u16-cpy
2192   func_module unistr/u32-cpy
2193   func_module unistr/u8-cpy-alloc
2194   func_module unistr/u16-cpy-alloc
2195   func_module unistr/u32-cpy-alloc
2196   func_module unistr/u8-endswith
2197   func_module unistr/u16-endswith
2198   func_module unistr/u32-endswith
2199   func_module unistr/u8-mblen
2200   func_module unistr/u16-mblen
2201   func_module unistr/u32-mblen
2202   func_module unistr/u8-mbtouc
2203   func_module unistr/u16-mbtouc
2204   func_module unistr/u32-mbtouc
2205   func_module unistr/u8-mbtouc-safe
2206   func_module unistr/u16-mbtouc-safe
2207   func_module unistr/u32-mbtouc-safe
2208   func_module unistr/u8-move
2209   func_module unistr/u16-move
2210   func_module unistr/u32-move
2211   func_module unistr/u8-next
2212   func_module unistr/u16-next
2213   func_module unistr/u32-next
2214   func_module unistr/u8-prev
2215   func_module unistr/u16-prev
2216   func_module unistr/u32-prev
2217   func_module unistr/u8-set
2218   func_module unistr/u16-set
2219   func_module unistr/u32-set
2220   func_module unistr/u8-startswith
2221   func_module unistr/u16-startswith
2222   func_module unistr/u32-startswith
2223   func_module unistr/u8-stpcpy
2224   func_module unistr/u16-stpcpy
2225   func_module unistr/u32-stpcpy
2226   func_module unistr/u8-stpncpy
2227   func_module unistr/u16-stpncpy
2228   func_module unistr/u32-stpncpy
2229   func_module unistr/u8-strcat
2230   func_module unistr/u16-strcat
2231   func_module unistr/u32-strcat
2232   func_module unistr/u8-strchr
2233   func_module unistr/u16-strchr
2234   func_module unistr/u32-strchr
2235   func_module unistr/u8-strcmp
2236   func_module unistr/u16-strcmp
2237   func_module unistr/u32-strcmp
2238   func_module unistr/u8-strcpy
2239   func_module unistr/u16-strcpy
2240   func_module unistr/u32-strcpy
2241   func_module unistr/u8-strcspn
2242   func_module unistr/u16-strcspn
2243   func_module unistr/u32-strcspn
2244   func_module unistr/u8-strdup
2245   func_module unistr/u16-strdup
2246   func_module unistr/u32-strdup
2247   func_module unistr/u8-strlen
2248   func_module unistr/u16-strlen
2249   func_module unistr/u32-strlen
2250   func_module unistr/u8-strmblen
2251   func_module unistr/u16-strmblen
2252   func_module unistr/u32-strmblen
2253   func_module unistr/u8-strmbtouc
2254   func_module unistr/u16-strmbtouc
2255   func_module unistr/u32-strmbtouc
2256   func_module unistr/u8-strncat
2257   func_module unistr/u16-strncat
2258   func_module unistr/u32-strncat
2259   func_module unistr/u8-strncmp
2260   func_module unistr/u16-strncmp
2261   func_module unistr/u32-strncmp
2262   func_module unistr/u8-strncpy
2263   func_module unistr/u16-strncpy
2264   func_module unistr/u32-strncpy
2265   func_module unistr/u8-strnlen
2266   func_module unistr/u16-strnlen
2267   func_module unistr/u32-strnlen
2268   func_module unistr/u8-strpbrk
2269   func_module unistr/u16-strpbrk
2270   func_module unistr/u32-strpbrk
2271   func_module unistr/u8-strrchr
2272   func_module unistr/u16-strrchr
2273   func_module unistr/u32-strrchr
2274   func_module unistr/u8-strspn
2275   func_module unistr/u16-strspn
2276   func_module unistr/u32-strspn
2277   func_module unistr/u8-strstr
2278   func_module unistr/u16-strstr
2279   func_module unistr/u32-strstr
2280   func_module unistr/u8-strtok
2281   func_module unistr/u16-strtok
2282   func_module unistr/u32-strtok
2283   func_module unistr/u8-uctomb
2284   func_module unistr/u16-uctomb
2285   func_module unistr/u32-uctomb
2286   func_end_table
2287
2288   element="Executing programs"
2289   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2290   func_section_wrap posix_ext_exec
2291   func_wrap H3
2292   func_echo "$element"
2293
2294   func_begin_table
2295   func_module cloexec
2296   func_module findprog
2297   func_module wait-process
2298   func_module execute
2299   func_module pipe
2300   func_module sh-quote
2301   func_end_table
2302
2303   element="Java"
2304   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2305   func_section_wrap posix_ext_java
2306   func_wrap H3
2307   func_echo "$element"
2308
2309   func_begin_table
2310   func_module classpath
2311   func_module javacomp
2312   func_module javaexec
2313   func_module javaversion
2314   #func_module gcj
2315   func_end_table
2316
2317   element="C#"
2318   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2319   func_section_wrap posix_ext_csharp
2320   func_wrap H3
2321   func_echo "$element"
2322
2323   func_begin_table
2324   func_module csharpcomp
2325   func_module csharpexec
2326   func_end_table
2327
2328   element="Misc"
2329   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2330   func_section_wrap posix_ext_misc
2331   func_wrap H3
2332   func_echo "$element"
2333
2334   func_begin_table
2335   func_module argp
2336   func_module argz
2337   func_module byteswap
2338   func_module exitfail
2339   func_module c-stack
2340   func_module error
2341   func_module extensions
2342   func_module getdomainname
2343   func_module xgetdomainname
2344   func_module getloadavg
2345   func_module getpagesize
2346   func_module getusershell
2347   func_module physmem
2348   func_module posixver
2349   func_module progname
2350   func_module quotearg
2351   func_module quote
2352   func_module readutmp
2353   func_module sig2str
2354   func_module sysexits
2355   func_module verror
2356   func_module visibility
2357   func_end_table
2358
2359   element="Support for building libraries and executables"
2360   func_section_wrap build_lib
2361   func_wrap H2
2362   func_echo "$element"
2363
2364   func_begin_table
2365   func_module absolute-header
2366   func_module config-h
2367   func_module configmake
2368   func_module dummy
2369   func_module elisp-comp
2370   func_module ldd
2371   func_module lib-ignore
2372   func_module no-c++
2373   func_end_table
2374
2375   element="Support for building documentation"
2376   func_section_wrap build_doc
2377   func_wrap H2
2378   func_echo "$element"
2379
2380   func_begin_table
2381   func_module fdl
2382   func_module gendocs
2383   func_module gpl
2384   func_module lgpl
2385   func_module regexprops-generic
2386   func_end_table
2387
2388   element="Support for maintaining and release projects"
2389   func_section_wrap maintain
2390   func_wrap H2
2391   func_echo "$element"
2392
2393   func_begin_table
2394   func_module gnupload
2395   func_module maintainer-makefile
2396   func_end_table
2397
2398   element="Misc"
2399   func_section_wrap misc
2400   func_wrap H2
2401   func_echo "$element"
2402
2403   func_begin_table
2404   func_module host-os
2405   func_module perl
2406   func_module uptime
2407   func_end_table
2408 }
2409
2410
2411 func_tmpdir
2412 trap 'exit_status=$?
2413       if test "$signal" != 0; then
2414         echo "caught signal $signal" >&2
2415       fi
2416       rm -rf "$tmp"
2417       exit $exit_status' 0
2418 for signal in 1 2 3 13 15; do
2419   trap '{ signal='$signal'; func_exit 1; }' $signal
2420 done
2421 signal=0
2422
2423 echo '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">'
2424 func_begin HTML
2425
2426 func_begin HEAD
2427
2428 element="Gnulib Module List"
2429 func_wrap TITLE
2430 func_echo "$element"
2431
2432 modules=`gnulib-tool --list`
2433 modules=`for m in $modules; do printf "%s, " $m; done | sed -e 's/, $//'`
2434 func_echo '<META NAME="keywords" CONTENT="'"${modules}"'">'
2435
2436 func_end HEAD
2437
2438 func_begin BODY
2439
2440 element="Gnulib Module List"
2441 func_wrap H1
2442 func_echo "$element"
2443
2444 func_echo 'This is a list of the modules which make up gnulib, with dependencies.'
2445
2446 in_toc=yes
2447 func_all_modules
2448
2449 in_toc=
2450 func_all_modules
2451
2452
2453 gnulib-tool --list > "$tmp/all-modules"
2454 missed_modules=`for module in $seen_modules; do echo $module; done \
2455                   | LC_ALL=C sort -u \
2456                   | LC_ALL=C join -v 2 - "$tmp/all-modules"`
2457
2458 if test -n "$missed_modules"; then
2459
2460   element="Unclassified modules - please update MODULES.html.sh"
2461   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2462   func_wrap H2
2463   func_echo "$element"
2464
2465   func_begin_table
2466   for module in $missed_modules; do
2467     func_module $module
2468   done
2469   func_end_table
2470
2471 fi
2472
2473 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"
2474 missed_files=`for file in $seen_files; do echo $file; done \
2475                 | LC_ALL=C sort -u \
2476                 | LC_ALL=C join -v 2 - "$tmp/all-files"`
2477
2478 if test -n "$missed_files"; then
2479
2480   element="Lone files - please create new modules containing them"
2481   element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2482   func_wrap H2
2483   func_echo "$element"
2484
2485   func_echo '<PRE>'
2486   echo "$missed_files" | sed -e 's,^\(.*\)$,<A HREF="'$repo_url_prefix'\1'$repo_url_suffix_repl'">\1</A>,'
2487   echo '</PRE>'
2488
2489 fi
2490
2491 element="Future developments"
2492 element=`printf "%s" "$element" | sed -e "$sed_lt" -e "$sed_gt"`
2493 func_wrap H2
2494 func_echo "$element"
2495
2496 func_echo 'Ideally a module could consist of:'
2497 func_begin UL
2498 func_echo '<LI>A header file: lib/<VAR>module</VAR>.h'
2499 func_echo '<LI>One or more implementation files: lib/<VAR>module</VAR>.c et al.'
2500 func_echo '<LI>One or more autoconf macro files: m4/<VAR>module</VAR>.m4 et al.'
2501 func_echo '<LI>A configure.ac fragment, Makefile.am fragment, dependency list: modules/<VAR>module</VAR>'
2502 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'
2503 func_echo '<LI>Some documentation'
2504 func_echo '<LI>A POT file and some PO files'
2505 func_end UL
2506
2507 func_echo '<HR>'
2508 func_echo 'Generated from <CODE>MODULES.html.sh</CODE> on '`LC_ALL=C date +"%e %B %Y"`.
2509
2510 func_end BODY
2511
2512 func_end HTML
2513
2514 rm -rf "$tmp"
2515 # Undo the effect of the previous 'trap' command.
2516 trap '' 0
2517 trap 'func_exit $?' 1 2 3 13 15
2518
2519 exit 0
2520
2521 # Local Variables:
2522 # indent-tabs-mode: nil
2523 # whitespace-check-buffer-indent: nil
2524 # End: