Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
glibc/scripts/documented.sh
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
102 lines (88 sloc)
2.94 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
bindir=$1 | |
VERSION=1.0 | |
egrep -h @deftypefu?nx? *.texi ../linuxthreads/*.texi | | |
sed -e 's/@deftypefunx*[[:space:]]*\({[^{]*}\|[[:alnum:]_]*\)[[:space:]]*\([[:alnum:]_]*\).*/\2/' -e 's/@deftypefn {[^}]*function}*[[: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 |