update from main archive 970124
[glibc.git] / sysdeps / unix / snarf-ioctls
blobba8043f8acab1e8f8a93aa06f340b082531bf561
1 #!/bin/sh
2 # Copyright (C) 1991, 1992, 1995 Free Software Foundation, Inc.
3 # This file is part of the GNU C Library.
5 # The GNU C Library 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.
10 # The GNU C Library 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.
15 # You should have received a copy of the GNU General Public License
16 # along with the GNU C Library; see the file COPYING. If not, write to
17 # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
19 sysincludedir=${sysincludedir-/usr/include}
21 if [ ! "$snarfexclude" ]; then
22 # Filter out some headers which cause trouble.
23 # Reportedly a bug in sunos4.1.2's sed makes this lose if
24 # the two cmds are in a single sed invocation.
25 snarfexclude="`echo !${sysincludedir}/sys/param.h! \
26 !${sysincludedir}/sys/time.h! \
27 !${sysincludedir}/sys/types.h! \
28 | sed 's,/,\\\\/,g' \
29 | sed 's,!\\([^!]*\\)!,-e /\\1/d,g'`"
32 for file in $*; do
33 sed -n 's/^#define[ ]*\([A-Z][A-Z0-9_]*\)[ ][ ]*[^ ].*$/\1/p' \
34 < $file
36 snarfexclude="$snarfexclude \
37 `echo $file | sed -e 's,/,\\\\/,g' -e 's,^.*$,-e /&/d,'`"
38 export snarfexclude
40 included="`sed -n < $file \
41 -e 's,^#include[ ]*<\(.*\)>.*$,'${sysincludedir}'/\1,p'\
42 | sed $snarfexclude`"
43 if [ "$included" ]; then
44 $0 $included
46 done
48 exit 0