diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/documented.sh | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/scripts/documented.sh b/scripts/documented.sh new file mode 100644 index 0000000000..85fb8687c1 --- /dev/null +++ b/scripts/documented.sh @@ -0,0 +1,102 @@ +#! /bin/sh +bindir=$1 + +VERSION=1.0 + +egrep -h @deftypefunx? *.texi ../linuxthreads/*.texi | +sed -e 's/@deftypefunx*[[:space:]]*\({[^{]*}\|[[:alnum:]_]*\)[[:space:]]*\([[:alnum:]_]*\).*/\2/' -e '/^@/d' | +sed -e '/^obstack_/d' -e '/^\([lf]\|\)stat\(\|64\)$/d' -e '/^mknod$/d' | +sed -e '/^signbit$/d' -e '/^sigsetjmp$/d' | +sed -e '/^pthread_cleanup/d' -e '/^IFTODT$/d' -e '/^DTTOIF$/d' | +sed -e '/^__fwriting$/d' -e '/^__fwritable$/d' -e '/^__fsetlocking$/d' | +sed -e '/^__freading$/d' -e '/^__freadable$/d' -e '/^__fpurge$/d' | +sed -e '/^__fpending$/d' -e '/^__flbf$/d' -e '/^__fbufsize$/d' | +sed -e '/^alloca$/d' | +sort -u > DOCUMENTED + +nm --extern --define $bindir/libc.so $bindir/math/libm.so $bindir/rt/librt.so $bindir/linuxthreads/libpthread.so $bindir/dlfcn/libdl.so $bindir/crypt/libcrypt.so $bindir/login/libutil.so | +egrep " [TW] ([[:alpha:]]|_[[:alpha:]])" | +sed 's/\(@.*\)//' | +cut -b 12- | +sed -e '/^_IO/d' -e '/^_dl/d' -e '/^_pthread/d' -e '/^_obstack/d' | +sed -e '/^_argp/d' -e '/^_authenticate$/d' -e '/^_environ$/d' | +sed -e '/^_errno$/d' -e '/^_h_errno$/d' -e '/^_longjmp$/d' | +sed -e '/^_mcleanup$/d' -e '/^_rpc_dtablesize$/d' -e '/^_seterr_reply$/d' | +sed -e '/^_nss/d' -e '/^_setjmp$/d' | +sort -u > AVAILABLE + +cat <<EOF +<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<html> + <head> + <title>Undocumented glibc functions</title> + </head> + + <body> + <center><h1>Undocumented <tt>glibc</tt> functions</h1></center> + + <p>The following table includes names of the function in glibc + which are not yet documented in the manual. This list is + automatically created and therefore might contain errors. Please + check the latest manual (available from the CVS archive) before + starting to work. It might also be good to let me know in + advanace on which functions you intend to work to avoid + duplication.</p> + + <p>A few comments:</p> + + <ul> + <li>Some functions in the list are much less important than + others. Please prioritize.</li> + + <li>Similarly for the LFS functions (those ending in 64).</li> + </ul> + + <p>The function sombody already volunteered to document are marked + with a reference to the person.</p> + + <center><table> +EOF + +n=0 +diff -y --width=60 --suppress-common-lines DOCUMENTED AVAILABLE | +expand | cut -b 33- | sed '/^[[:space:]]*$/d' | +while read name; do + line="$line +<td><tt>$name</tt></td>" + n=$(expr $n + 1) + if [ $n -eq 4 ]; then + echo "<tr> +$line +</tr>" + line="" + n=0 + fi +done +if [ $n -gt 0 ]; then + if [ $n -eq 1 ]; then + line="$line +<td></td>" + fi + if [ $n -eq 2 ]; then + line="$line +<td></td>" + fi + if [ $n -eq 3 ]; then + line="$line +<td></td>" + fi + echo "<tr> +$line +</tr>" +fi + +cat <<EOF + </table></center> + + <hr> + <address><a href="mailto:drepper@redhat.com">Ulrich Drepper</a></address> +Generated on $(date) with documented.sh version $VERSION + </body> +</html> +EOF |