| #!/bin/sh |
| # Copyright (C) 1991, 1992, 1995, 1997 Free Software Foundation, Inc. |
| # This file is part of the GNU C Library. |
| |
| # The GNU C Library is free software; you can redistribute it and/or |
| # modify it under the terms of the GNU Lesser General Public |
| # License as published by the Free Software Foundation; either |
| # version 2.1 of the License, or (at your option) any later version. |
| |
| # The GNU C Library is distributed in the hope that it will be useful, |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| # Lesser General Public License for more details. |
| |
| # You should have received a copy of the GNU Lesser General Public |
| # License along with the GNU C Library; if not, write to the Free |
| # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA |
| # 02111-1307 USA. |
| |
| sysincludedir=${sysincludedir-/usr/include} |
| |
| if [ ! "$snarfexclude" ]; then |
| # Filter out some headers which cause trouble. |
| # Reportedly a bug in sunos4.1.2's sed makes this lose if |
| # the two cmds are in a single sed invocation. |
| snarfexclude="`echo !${sysincludedir}/sys/param.h! \ |
| !${sysincludedir}/sys/time.h! \ |
| !${sysincludedir}/sys/types.h! \ |
| | sed 's,/,\\\\/,g' \ |
| | sed 's,!\\([^!]*\\)!,-e /\\1/d,g'`" |
| fi |
| |
| for file in $*; do |
| sed -n 's/^#define[ ]*\([A-Z][A-Z0-9_]*\)[ ][ ]*[^ ].*$/\1/p' \ |
| < $file |
| |
| snarfexclude="$snarfexclude \ |
| `echo $file | sed -e 's,/,\\\\/,g' -e 's,^.*$,-e /&/d,'`" |
| export snarfexclude |
| |
| included="`sed -n < $file \ |
| -e 's,^#include[ ]*<\(.*\)>.*$,'${sysincludedir}'/\1,p'\ |
| | sed $snarfexclude`" |
| if [ "$included" ]; then |
| $0 $included |
| fi |
| done |
| |
| exit 0 |