Blame scripts/documented.sh

Packit 6c4009
#!/bin/sh
Packit 6c4009
bindir=$1
Packit 6c4009
Packit 6c4009
VERSION=1.0
Packit 6c4009
Packit 6c4009
egrep -h @deftypefu?nx? *.texi ../linuxthreads/*.texi |
Packit 6c4009
sed -e 's/@deftypefunx*[[:space:]]*\({[^{]*}\|[[:alnum:]_]*\)[[:space:]]*\([[:alnum:]_]*\).*/\2/' -e 's/@deftypefn {[^}]*function}*[[:space:]]*\({[^{]*}\|[[:alnum:]_]*\)[[:space:]]*\([[:alnum:]_]*\).*/\2/' -e '/^@/d' |
Packit 6c4009
sed -e '/^obstack_/d' -e '/^\([lf]\|\)stat\(\|64\)$/d' -e '/^mknod$/d' |
Packit 6c4009
sed -e '/^signbit$/d' -e '/^sigsetjmp$/d' |
Packit 6c4009
sed -e '/^pthread_cleanup/d' -e '/^IFTODT$/d' -e '/^DTTOIF$/d' |
Packit 6c4009
sed -e '/^__fwriting$/d' -e '/^__fwritable$/d' -e '/^__fsetlocking$/d' |
Packit 6c4009
sed -e '/^__freading$/d' -e '/^__freadable$/d' -e '/^__fpurge$/d' |
Packit 6c4009
sed -e '/^__fpending$/d' -e '/^__flbf$/d' -e '/^__fbufsize$/d' |
Packit 6c4009
sed -e '/^alloca$/d' |
Packit 6c4009
sort -u > DOCUMENTED
Packit 6c4009
Packit 6c4009
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 |
Packit 6c4009
egrep " [TW] ([[:alpha:]]|_[[:alpha:]])" |
Packit 6c4009
sed 's/\(@.*\)//' |
Packit 6c4009
cut -b 12- |
Packit 6c4009
sed -e '/^_IO/d' -e '/^_dl/d' -e '/^_pthread/d' -e '/^_obstack/d' |
Packit 6c4009
sed -e '/^_argp/d' -e '/^_authenticate$/d' -e '/^_environ$/d' |
Packit 6c4009
sed -e '/^_errno$/d' -e '/^_h_errno$/d' -e '/^_longjmp$/d' |
Packit 6c4009
sed -e '/^_mcleanup$/d' -e '/^_rpc_dtablesize$/d' -e '/^_seterr_reply$/d' |
Packit 6c4009
sed -e '/^_nss/d' -e '/^_setjmp$/d' |
Packit 6c4009
sort -u > AVAILABLE
Packit 6c4009
Packit 6c4009
cat <
Packit 6c4009
Packit 6c4009
<html>
Packit 6c4009
  <head>
Packit 6c4009
    <title>Undocumented glibc functions</title>
Packit 6c4009
  </head>
Packit 6c4009
Packit 6c4009
  <body>
Packit 6c4009
    <center>

Undocumented <tt>glibc</tt> functions

</center>
Packit 6c4009
Packit 6c4009
    

The following table includes names of the function in glibc

Packit 6c4009
    which are not yet documented in the manual.  This list is
Packit 6c4009
    automatically created and therefore might contain errors.  Please
Packit 6c4009
    check the latest manual (available from the CVS archive) before
Packit 6c4009
    starting to work.  It might also be good to let me know in
Packit 6c4009
    advanace on which functions you intend to work to avoid
Packit 6c4009
    duplication.

Packit 6c4009
Packit 6c4009
    

A few comments:

Packit 6c4009
Packit 6c4009
    
    Packit 6c4009
          
  • Some functions in the list are much less important than
  • Packit 6c4009
          others.  Please prioritize.
    Packit 6c4009
    Packit 6c4009
          
  • Similarly for the LFS functions (those ending in 64).
  • Packit 6c4009
        
    Packit 6c4009
    Packit 6c4009
        

    The function sombody already volunteered to document are marked

    Packit 6c4009
        with a reference to the person.

    Packit 6c4009
    Packit 6c4009
        <center>
    Packit 6c4009
    EOF
    Packit 6c4009
    Packit 6c4009
    n=0
    Packit 6c4009
    diff -y --width=60 --suppress-common-lines DOCUMENTED AVAILABLE |
    Packit 6c4009
    expand | cut -b 33- | sed '/^[[:space:]]*$/d' |
    Packit 6c4009
    while read name; do
    Packit 6c4009
      line="$line
    Packit 6c4009
    <tt>$name</tt>"
    Packit 6c4009
      n=$(expr $n + 1)
    Packit 6c4009
      if [ $n -eq 4 ]; then
    Packit 6c4009
        echo "
    Packit 6c4009
    $line
    Packit 6c4009
    "
    Packit 6c4009
        line=""
    Packit 6c4009
        n=0
    Packit 6c4009
      fi
    Packit 6c4009
    done
    Packit 6c4009
    if [ $n -gt 0 ]; then
    Packit 6c4009
      if [ $n -eq 1 ]; then
    Packit 6c4009
        line="$line
    Packit 6c4009
    "
    Packit 6c4009
      fi
    Packit 6c4009
      if [ $n -eq 2 ]; then
    Packit 6c4009
        line="$line
    Packit 6c4009
    "
    Packit 6c4009
      fi
    Packit 6c4009
      if [ $n -eq 3 ]; then
    Packit 6c4009
        line="$line
    Packit 6c4009
    "
    Packit 6c4009
      fi
    Packit 6c4009
      echo "
    Packit 6c4009
    $line
    Packit 6c4009
    "
    Packit 6c4009
    fi
    Packit 6c4009
    Packit 6c4009
    cat <
    Packit 6c4009
        </center>
    Packit 6c4009
    Packit 6c4009
        
    Packit 6c4009
        <address>Ulrich Drepper</address>
    Packit 6c4009
    Generated on $(date) with documented.sh version $VERSION
    Packit 6c4009
      </body>
    Packit 6c4009
    </html>
    Packit 6c4009
    EOF