Annotation of gcc/fixinc.svr4, revision 1.1.1.1

1.1       root        1: #! /bin/sh
                      2: #
                      3: #   fixinc.svr4  --  Install modified versions of certain ANSI-incompatible
                      4: #   native System V Release 4 system include files.
                      5: #
                      6: #   Written by Ron Guilmette ([email protected]).
                      7: #
                      8: # This file is part of GNU CC.
                      9: # 
                     10: # GNU CC is free software; you can redistribute it and/or modify
                     11: # it under the terms of the GNU General Public License as published by
                     12: # the Free Software Foundation; either version 2, or (at your option)
                     13: # any later version.
                     14: # 
                     15: # GNU CC is distributed in the hope that it will be useful,
                     16: # but WITHOUT ANY WARRANTY; without even the implied warranty of
                     17: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     18: # GNU General Public License for more details.
                     19: # 
                     20: # You should have received a copy of the GNU General Public License
                     21: # along with GNU CC; see the file COPYING.  If not, write to
                     22: # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
                     23: #
                     24: #      This script munges the native include files provided with System V
                     25: #      Release 4 systems so as to remove things which are violations of the
                     26: #      ANSI C standard.  Once munged, the resulting new system include files
                     27: #      are placed in a directory that GNU C will search *before* searching
                     28: #      the /usr/include directory. This script should work properly for most
                     29: #      System V Release 4 systems.  For other types of systems, you should
                     30: #      use the `fixincludes' script instead.
                     31: #
                     32: #      See README-fixinc for more information.
                     33: 
                     34: # Directory containing the original header files.
                     35: INPUT=${2-${INPUT-/usr/include}}
                     36: 
                     37: # Fail if no arg to specify a directory for the output.
                     38: if [ x$1 = x ]
                     39: then echo fixincludes: no output directory specified
                     40: exit 1
                     41: fi
                     42: 
                     43: # Directory in which to store the results.
                     44: LIB=${1-${LIB-/usr/local/lib/gcc-include}}
                     45: 
                     46: # Make sure it exists.
                     47: if [ ! -d $LIB ]; then
                     48:   mkdir $LIB || exit 1
                     49: fi
                     50: 
                     51: ORIG_DIR=`pwd`
                     52: 
                     53: # Make LIB absolute.
                     54: cd $LIB; LIB=`pwd`
                     55: 
                     56: # This prevents /bin/ex from failing if the current terminal type is
                     57: # unrecognizable.
                     58: TERM=unknown
                     59: export TERM
                     60: 
                     61: echo 'Building fixincludes in ' ${LIB}
                     62: 
                     63: # Determine whether this system has symbolic links.
                     64: if ln -s X $LIB/ShouldNotExist 2>/dev/null; then
                     65:   rm -f $LIB/ShouldNotExist
                     66:   LINKS=true
                     67: else
                     68:   LINKS=false
                     69: fi
                     70: 
                     71: echo 'Making directories:'
                     72: cd ${INPUT}
                     73: if $LINKS; then
                     74:   files=`ls -LR | sed -n s/:$//p`
                     75: else
                     76:   files=`find . -type d -print | sed '/^.$/d'`
                     77: fi
                     78: for file in $files; do
                     79:   rm -rf $LIB/$file
                     80:   if [ ! -d $LIB/$file ]
                     81:   then mkdir $LIB/$file
                     82:   fi
                     83: done
                     84: 
                     85: # treetops gets an alternating list
                     86: # of old directories to copy
                     87: # and the new directories to copy to.
                     88: treetops="${INPUT} ${LIB}"
                     89: 
                     90: if $LINKS; then
                     91:   echo 'Making internal symbolic directory links'
                     92:   for file in $files; do
                     93:     dest=`ls -ld $file | sed -n 's/.*-> //p'`
                     94:     if [ "$dest" ]; then    
                     95:       cwd=`pwd`
                     96:       # In case $dest is relative, get to $file's dir first.
                     97:       cd ${INPUT}
                     98:       cd `echo ./$file | sed -n 's&[^/]*$&&p'`
                     99:       # Check that the target directory exists.
                    100:       # Redirections changed to avoid bug in sh on Ultrix.
                    101:       (cd $dest) > /dev/null 2>&1
                    102:       if [ $? = 0 ]; then
                    103:        cd $dest
                    104:        # X gets the dir that the link actually leads to.
                    105:        x=`pwd`
                    106:        # If link leads back into ${INPUT},
                    107:        # make a similar link here.
                    108:        if expr $x : "${INPUT}/.*" > /dev/null; then
                    109:          # Y gets the actual target dir name, relative to ${INPUT}.
                    110:          y=`echo $x | sed -n "s&${INPUT}/&&p"`
                    111:          echo $file '->' $y ': Making link'
                    112:          rm -fr ${LIB}/$file > /dev/null 2>&1
                    113:          ln -s ${LIB}/$y ${LIB}/$file > /dev/null 2>&1
                    114:        else
                    115:          # If the link is to outside ${INPUT},
                    116:          # treat this directory as if it actually contained the files.
                    117: # This line used to have $dest instead of $x.
                    118: # $dest seemed to be wrong for links found in subdirectories
                    119: # of ${INPUT}.  Does this change break anything?
                    120:          treetops="$treetops $x ${LIB}/$file"
                    121:        fi
                    122:       fi
                    123:       cd $cwd
                    124:     fi
                    125:   done
                    126: fi
                    127: 
                    128: set - $treetops
                    129: while [ $# != 0 ]; do
                    130:   # $1 is an old directory to copy, and $2 is the new directory to copy to.
                    131:   echo "Finding header files in $1:"
                    132:   cd ${INPUT}
                    133:   cd $1
                    134:   files=`find . -name '*.h' -type f -print`
                    135:   echo 'Checking header files:'
                    136:   for file in $files; do
                    137:       echo Fixing $file
                    138:       if [ -r $file ]; then
                    139:        cp $file $2/$file >/dev/null 2>&1 || echo "Can't copy $file"
                    140:        chmod +w $2/$file
                    141: 
                    142: # The following have been removed from the sed command below
                    143: # because it is more useful to leave these things in.
                    144: # The only reason to remove them was for -pedantic,
                    145: # which isn't much of a reason. -- rms.
                    146: #        /^[   ]*#[    ]*ident/d
                    147: 
                    148: # The change of u_char, etc, to u_int
                    149: # applies to bit fields.
                    150:        sed -e '
                    151:          s%^[  ]*#else[        ][      ]*\([^/         ].*\)%#else /* \1 */%
                    152:          s%^[  ]*#endif[       ][      ]*\([^/         ].*\)%#endif /* \1 */%
                    153:          s/#lint(on)/defined(lint)/g
                    154:          s/#lint(off)/!defined(lint)/g
                    155:          s/#machine(\([^)]*\))/defined(__\1__)/g
                    156:          s/#system(\([^)]*\))/defined(__\1__)/g
                    157:          s/#cpu(\([^)]*\))/defined(__\1__)/g
                    158:          /#[a-z]*if.*[ (]m68k/         s/m68k/__m68k__/g
                    159:          /#[a-z]*if.*[ (]__i386/       s/__i386/__i386__/g
                    160:          /#[a-z]*if.*[ (]i386/         s/i386/__i386__/g
                    161:          /#[a-z]*if.*[ (]sparc/        s/sparc/__sparc__/g
                    162:          /#[a-z]*if.*[ (]mc68000/      s/mc68000/__mc68000__/g
                    163:          /#[a-z]*if.*[ (]vax/          s/vax/__vax__/g
                    164:          /#[a-z]*if.*[ (]sun3x/        s/sun3x/__sun3x__/g
                    165:          /#[a-z]*if.*[ (]sun3/         s/sun3/__sun3__/g
                    166:          /#[a-z]*if.*[ (]sun2/         s/sun2/__sun2__/g
                    167:          /#[a-z]*if.*[ (]sun4c/        s/sun4c/__sun4c__/g
                    168:          /#[a-z]*if.*[ (]sun4/         s/sun4/__sun4__/g
                    169:          /#[a-z]*if.*[ (]sun/          s/sun/__sun__/g
                    170:          /#[a-z]*if.*[ (]ns32000/      s/ns32000/__ns32000__/g
                    171:          /#[a-z]*if.*[ (]pyr/          s/pyr/__pyr__/g
                    172:          /#[a-z]*if.*[ (]is68k/        s/is68k/__is68k__/g
                    173:          /#[a-z]*if.*[ (]sun386/       s/sun386/__sun386__/g
                    174:          s/u_char\([   ][      ]*[a-zA-Z0-9_][a-zA-Z0-9_]*[    ]*:[    ]*[0-9][0-9]*\)/u_int\1/
                    175:          s/u_short\([  ][      ]*[a-zA-Z0-9_][a-zA-Z0-9_]*[    ]*:[    ]*[0-9][0-9]*\)/u_int\1/
                    176:          s/ushort\([   ][      ]*[a-zA-Z0-9_][a-zA-Z0-9_]*[    ]*:[    ]*[0-9][0-9]*\)/u_int\1/
                    177:          s/evcm_t\([   ][      ]*[a-zA-Z0-9_][a-zA-Z0-9_]*[    ]*:[    ]*[0-9][0-9]*\)/u_int\1/
                    178:          s/Pbyte\([    ][      ]*[a-zA-Z0-9_][a-zA-Z0-9_]*[    ]*:[    ]*SEQSIZ\)/unsigned int\1/
                    179:          s/__STDC__ == 0/!defined (__STRICT_ANSI__)/g
                    180:          s/__STDC__ != 0/defined (__STRICT_ANSI__)/g
                    181:          s/__STDC__ - 0 == 0/!defined (__STRICT_ANSI__)/g
                    182:        ' $2/$file > $2/$file.sed
                    183:        mv $2/$file.sed $2/$file
                    184:        if cmp $file $2/$file >/dev/null 2>&1; then
                    185:           echo Deleting $2/$file\; no fixes were needed.
                    186:           rm $2/$file
                    187:        fi
                    188:       fi
                    189:   done
                    190:   shift; shift
                    191: done
                    192: 
                    193: # Fix first broken decl of getcwd present on some svr4 systems.
                    194: 
                    195: file=stdlib.h
                    196: base=`basename $file`
                    197: if [ -r ${LIB}/$file ]; then
                    198:   file_to_fix=${LIB}/$file
                    199: else
                    200:   if [ -r ${INPUT}/$file ]; then
                    201:     file_to_fix=${INPUT}/$file
                    202:   else
                    203:     file_to_fix=""
                    204:   fi
                    205: fi
                    206: if [ \! -z "$file_to_fix" ]; then
                    207:   echo Checking $file_to_fix
                    208:   sed -e 's/getcwd(char \*, int)/getcwd(char *, size_t)/' $file_to_fix > /tmp/$base
                    209:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    210:     echo No change needed in $file_to_fix
                    211:   else
                    212:     echo Fixed $file_to_fix
                    213:     rm -f ${LIB}/$file
                    214:     cp /tmp/$base ${LIB}/$file
                    215:   fi
                    216:   rm -f /tmp/$base
                    217: fi
                    218: 
                    219: # Fix second broken decl of getcwd present on some svr4 systems.  Also
                    220: # fix the incorrect decl of profil present on some svr4 systems.
                    221: 
                    222: file=unistd.h
                    223: base=`basename $file`
                    224: if [ -r ${LIB}/$file ]; then
                    225:   file_to_fix=${LIB}/$file
                    226: else
                    227:   if [ -r ${INPUT}/$file ]; then
                    228:     file_to_fix=${INPUT}/$file
                    229:   else
                    230:     file_to_fix=""
                    231:   fi
                    232: fi
                    233: if [ \! -z "$file_to_fix" ]; then
                    234:   echo Checking $file_to_fix
                    235:   sed -e 's/getcwd(char \*, int)/getcwd(char *, size_t)/' $file_to_fix \
                    236:     | sed -e 's/profil(unsigned short \*, unsigned int, unsigned int, unsigned int)/profil(unsigned short *, size_t, int, unsigned)/' > /tmp/$base
                    237:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    238:     echo No change needed in $file_to_fix
                    239:   else
                    240:     echo Fixed $file_to_fix
                    241:     rm -f ${LIB}/$file
                    242:     cp /tmp/$base ${LIB}/$file
                    243:   fi
                    244:   rm -f /tmp/$base
                    245: fi
                    246: 
                    247: # Fix the definition of NULL in <sys/param.h> so that it is conditional
                    248: # and so that it is correct for both C and C++.
                    249: 
                    250: file=sys/param.h
                    251: base=`basename $file`
                    252: if [ -r ${LIB}/$file ]; then
                    253:   file_to_fix=${LIB}/$file
                    254: else
                    255:   if [ -r ${INPUT}/$file ]; then
                    256:     file_to_fix=${INPUT}/$file
                    257:   else
                    258:     file_to_fix=""
                    259:   fi
                    260: fi
                    261: if [ \! -z "$file_to_fix" ]; then
                    262:   echo Checking $file_to_fix
                    263:   cp $file_to_fix /tmp/$base
                    264:   chmod +w /tmp/$base
                    265:   ex /tmp/$base <<EOF
                    266:   /^#define[   ]*NULL[         ]*0$/c
                    267: #ifndef NULL
                    268: #ifdef __cplusplus
                    269: #define __NULL_TYPE
                    270: #else /* !defined(__cplusplus) */
                    271: #define __NULL_TYPE (void *)
                    272: #endif /* !defined(__cplusplus) */
                    273: #define NULL (__NULL_TYPE 0)
                    274: #endif /* !defined(NULL) */
                    275: .
                    276:   wq
                    277: EOF
                    278:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    279:     echo No change needed in $file_to_fix
                    280:   else
                    281:     echo Fixed $file_to_fix
                    282:     rm -f ${LIB}/$file
                    283:     cp /tmp/$base ${LIB}/$file
                    284:   fi
                    285:   rm -f /tmp/$base
                    286: fi
                    287: 
                    288: # Likewise fix the definition of NULL in <stdio.h> so that it is conditional
                    289: # and so that it is correct for both C and C++.
                    290: 
                    291: file=stdio.h
                    292: base=`basename $file`
                    293: if [ -r ${LIB}/$file ]; then
                    294:   file_to_fix=${LIB}/$file
                    295: else
                    296:   if [ -r ${INPUT}/$file ]; then
                    297:     file_to_fix=${INPUT}/$file
                    298:   else
                    299:     file_to_fix=""
                    300:   fi
                    301: fi
                    302: if [ \! -z "$file_to_fix" ]; then
                    303:   echo Checking $file_to_fix
                    304:   cp $file_to_fix /tmp/$base
                    305:   chmod +w /tmp/$base
                    306:   ex /tmp/$base <<EOF
                    307:   /^#define[   ]*NULL[         ]*0$/c
                    308: #ifdef __cplusplus
                    309: #define __NULL_TYPE
                    310: #else /* !defined(__cplusplus) */
                    311: #define __NULL_TYPE (void *)
                    312: #endif /* !defined(__cplusplus) */
                    313: #define NULL (__NULL_TYPE 0)
                    314: .
                    315:   wq
                    316: EOF
                    317:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    318:     echo No change needed in $file_to_fix
                    319:   else
                    320:     echo Fixed $file_to_fix
                    321:     rm -f ${LIB}/$file
                    322:     cp /tmp/$base ${LIB}/$file
                    323:   fi
                    324:   rm -f /tmp/$base
                    325: fi
                    326: 
                    327: # Add some missing declarations to <sys/mman.h>.
                    328: 
                    329: file=sys/mman.h
                    330: base=`basename $file`
                    331: if [ -r ${LIB}/$file ]; then
                    332:   file_to_fix=${LIB}/$file
                    333: else
                    334:   if [ -r ${INPUT}/$file ]; then
                    335:     file_to_fix=${INPUT}/$file
                    336:   else
                    337:     file_to_fix=""
                    338:   fi
                    339: fi
                    340: if [ \! -z "$file_to_fix" ]; then
                    341:   echo Checking $file_to_fix
                    342:   cp $file_to_fix /tmp/$base
                    343:   chmod +w /tmp/$base
                    344:   ex /tmp/$base <<EOF
                    345:   /^extern caddr_t mmap();$/c
                    346: #ifdef __STDC__
                    347: extern caddr_t mmap (caddr_t addr, size_t len, int prot, int flags,
                    348:                      int fd, off_t off);
                    349: #else /* !defined(__STDC__) */
                    350: extern caddr_t mmap ();
                    351: #endif /* !defined(__STDC__) */
                    352: .
                    353:   wq
                    354: EOF
                    355:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    356:     echo No changed needed in $file_to_fix
                    357:   else
                    358:     echo Fixed $file_to_fix
                    359:     rm -f ${LIB}/$file
                    360:     cp /tmp/$base ${LIB}/$file
                    361:   fi
                    362:   rm -f /tmp/$base
                    363: fi
                    364: 
                    365: # Fix declarations of `ftw' and `nftw' in <ftw.h>.
                    366: 
                    367: file=ftw.h
                    368: base=`basename $file`
                    369: if [ -r ${LIB}/$file ]; then
                    370:   file_to_fix=${LIB}/$file
                    371: else
                    372:   if [ -r ${INPUT}/$file ]; then
                    373:     file_to_fix=${INPUT}/$file
                    374:   else
                    375:     file_to_fix=""
                    376:   fi
                    377: fi
                    378: if [ \! -z "$file_to_fix" ]; then
                    379:   echo Checking $file_to_fix
                    380:   cp $file_to_fix /tmp/$base
                    381:   chmod +w /tmp/$base
                    382:   ex /tmp/$base <<EOF
                    383:   /^extern int ftw(const/c
                    384: #if !defined(_STYPES)
                    385: static
                    386: #else
                    387: extern
                    388: #endif
                    389:   int ftw(const char *, int (*)(const char *, const struct stat *, int), int);
                    390: .
                    391:   /^extern int nftw/c
                    392: #if defined(_STYPES)
                    393: static
                    394: #else
                    395: extern
                    396: #endif
                    397:   int nftw(const char *, int (*)(const char *, const struct stat *, int, struct FTW *),int, int);
                    398: .
                    399:   /^extern int ftw(),/c
                    400: #if !defined(_STYPES)
                    401: static
                    402: #else
                    403: extern
                    404: #endif
                    405:   int ftw();
                    406: #if defined(_STYPES)
                    407: static
                    408: #else
                    409: extern
                    410: #endif
                    411:   int nftw();
                    412: .
                    413:   wq
                    414: EOF
                    415:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    416:     echo No change needed in $file_to_fix
                    417:   else
                    418:     echo Fixed $file_to_fix
                    419:     rm -f ${LIB}/$file
                    420:     cp /tmp/$base ${LIB}/$file
                    421:   fi
                    422:   rm -f /tmp/$base
                    423: fi
                    424: 
                    425: # Add a `static' declaration of `getrnge' into <regexp.h>.
                    426: 
                    427: file=regexp.h
                    428: base=`basename $file`
                    429: if [ -r ${LIB}/$file ]; then
                    430:   file_to_fix=${LIB}/$file
                    431: else
                    432:   if [ -r ${INPUT}/$file ]; then
                    433:     file_to_fix=${INPUT}/$file
                    434:   else
                    435:     file_to_fix=""
                    436:   fi
                    437: fi
                    438: if [ \! -z "$file_to_fix" ]; then
                    439:   echo Checking $file_to_fix
                    440:   cp $file_to_fix /tmp/$base
                    441:   chmod +w /tmp/$base
                    442:   ex /tmp/$base <<EOF
                    443:   /^static int[        ]*size;/c
                    444: static int     size ;
                    445: 
                    446: static int getrnge ();
                    447: .
                    448:   wq
                    449: EOF
                    450:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    451:     echo No change needed in $file_to_fix
                    452:   else
                    453:     echo Fixed $file_to_fix
                    454:     rm -f ${LIB}/$file
                    455:     cp /tmp/$base ${LIB}/$file
                    456:   fi
                    457:   rm -f /tmp/$base
                    458: fi
                    459: 
                    460: # Add a #define of _SIGACTION_ into <sys/signal.h>.
                    461: 
                    462: file=sys/signal.h
                    463: base=`basename $file`
                    464: if [ -r ${LIB}/$file ]; then
                    465:   file_to_fix=${LIB}/$file
                    466: else
                    467:   if [ -r ${INPUT}/$file ]; then
                    468:     file_to_fix=${INPUT}/$file
                    469:   else
                    470:     file_to_fix=""
                    471:   fi
                    472: fi
                    473: if [ \! -z "$file_to_fix" ]; then
                    474:   echo Checking $file_to_fix
                    475:   cp $file_to_fix /tmp/$base
                    476:   chmod +w /tmp/$base
                    477:   ex /tmp/$base <<EOF
                    478:   /^struct sigaction {/c
                    479: #define _SIGACTION_
                    480: struct  sigaction  {
                    481: .
                    482:   wq
                    483: EOF
                    484:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    485:     echo No change needed in $file_to_fix
                    486:   else
                    487:     echo Fixed $file_to_fix
                    488:     rm -f ${LIB}/$file
                    489:     cp /tmp/$base ${LIB}/$file
                    490:   fi
                    491:   rm -f /tmp/$base
                    492: fi
                    493: 
                    494: # Fix declarations of `makedev', `major', and `minor' in <sys/mkdev.h>.
                    495: 
                    496: file=sys/mkdev.h
                    497: base=`basename $file`
                    498: if [ -r ${LIB}/$file ]; then
                    499:   file_to_fix=${LIB}/$file
                    500: else
                    501:   if [ -r ${INPUT}/$file ]; then
                    502:     file_to_fix=${INPUT}/$file
                    503:   else
                    504:     file_to_fix=""
                    505:   fi
                    506: fi
                    507: if [ \! -z "$file_to_fix" ]; then
                    508:   echo Checking $file_to_fix
                    509:   cp $file_to_fix /tmp/$base
                    510:   chmod +w /tmp/$base
                    511:   ex /tmp/$base <<EOF
                    512:   /^dev_t makedev(const/c
                    513: static dev_t makedev(const major_t, const minor_t);
                    514: .
                    515:   /^dev_t makedev()/c
                    516: static dev_t makedev();
                    517: .
                    518:   /^major_t major(const/c
                    519: static major_t major(const dev_t);
                    520: .
                    521:   /^major_t major()/c
                    522: static major_t major();
                    523: .
                    524:   /^minor_t minor(const/c
                    525: static minor_t minor(const dev_t);
                    526: .
                    527:   /^minor_t minor()/c
                    528: static minor_t minor();
                    529: .
                    530:   wq
                    531: EOF
                    532:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    533:     echo No change needed in $file_to_fix
                    534:   else
                    535:     echo Fixed $file_to_fix
                    536:     rm -f ${LIB}/$file
                    537:     cp /tmp/$base ${LIB}/$file
                    538:   fi
                    539:   rm -f /tmp/$base
                    540: fi
                    541: 
                    542: # Fix reference to NMSZ in <sys/adv.h>.
                    543: 
                    544: file=sys/adv.h
                    545: base=`basename $file`
                    546: if [ -r ${LIB}/$file ]; then
                    547:   file_to_fix=${LIB}/$file
                    548: else
                    549:   if [ -r ${INPUT}/$file ]; then
                    550:     file_to_fix=${INPUT}/$file
                    551:   else
                    552:     file_to_fix=""
                    553:   fi
                    554: fi
                    555: if [ \! -z "$file_to_fix" ]; then
                    556:   echo Checking $file_to_fix
                    557:   sed 's/\[NMSZ\]/\[RFS_NMSZ\]/g' $file_to_fix > /tmp/$base
                    558:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    559:     echo No change needed in $file_to_fix
                    560:   else
                    561:     echo Fixed $file_to_fix
                    562:     rm -f ${LIB}/$file
                    563:     cp /tmp/$base ${LIB}/$file
                    564:   fi
                    565:   rm -f /tmp/$base
                    566: fi
                    567: 
                    568: # Fix reference to NC_NPI_RAW in <sys/netcspace.h>.  Also fix types of
                    569: # array initializers.
                    570: 
                    571: file=sys/netcspace.h
                    572: base=`basename $file`
                    573: if [ -r ${LIB}/$file ]; then
                    574:   file_to_fix=${LIB}/$file
                    575: else
                    576:   if [ -r ${INPUT}/$file ]; then
                    577:     file_to_fix=${INPUT}/$file
                    578:   else
                    579:     file_to_fix=""
                    580:   fi
                    581: fi
                    582: if [ \! -z "$file_to_fix" ]; then
                    583:   echo Checking $file_to_fix
                    584:   sed 's/NC_NPI_RAW/NC_TPI_RAW/g' $file_to_fix \
                    585:     | sed 's/NC_/(unsigned long) NC_/' > /tmp/$base
                    586:   if cmp $file_to_fix /tmp/$base >/dev/null 2>&1; then \
                    587:     echo No change needed in $file_to_fix
                    588:   else
                    589:     echo Fixed $file_to_fix
                    590:     rm -f ${LIB}/$file
                    591:     cp /tmp/$base ${LIB}/$file
                    592:   fi
                    593:   rm -f /tmp/$base
                    594: fi
                    595: 
                    596: # Conditionalize all of <fs/rfs/rf_cache.h> on _KERNEL being defined.
                    597: 
                    598: file=fs/rfs/rf_cache.h
                    599: base=`basename $file`
                    600: if [ -r ${LIB}/$file ]; then
                    601:   file_to_fix=${LIB}/$file
                    602: else
                    603:   if [ -r ${INPUT}/$file ]; then
                    604:     file_to_fix=${INPUT}/$file
                    605:   else
                    606:     file_to_fix=""
                    607:   fi
                    608: fi
                    609: if [ \! -z "$file_to_fix" ]; then
                    610:   echo Checking $file_to_fix
                    611:   if grep _KERNEL $file_to_fix > /dev/null; then
                    612:     echo No change needed in $file_to_fix
                    613:   else
                    614:     echo '#ifdef _KERNEL' > /tmp/$base
                    615:     cat $file_to_fix >> /tmp/$base
                    616:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    617:     echo Fixed $file_to_fix
                    618:     rm -f ${LIB}/$file
                    619:     cp /tmp/$base ${LIB}/$file
                    620:     rm -f /tmp/$base
                    621:   fi
                    622: fi
                    623: 
                    624: # Conditionalize all of <sys/erec.h> on _KERNEL being defined.
                    625: 
                    626: file=sys/erec.h
                    627: base=`basename $file`
                    628: if [ -r ${LIB}/$file ]; then
                    629:   file_to_fix=${LIB}/$file
                    630: else
                    631:   if [ -r ${INPUT}/$file ]; then
                    632:     file_to_fix=${INPUT}/$file
                    633:   else
                    634:     file_to_fix=""
                    635:   fi
                    636: fi
                    637: if [ \! -z "$file_to_fix" ]; then
                    638:   echo Checking $file_to_fix
                    639:   if grep _KERNEL $file_to_fix > /dev/null; then
                    640:     echo No change needed in $file_to_fix
                    641:   else
                    642:     echo '#ifdef _KERNEL' > /tmp/$base
                    643:     cat $file_to_fix >> /tmp/$base
                    644:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    645:     echo Fixed $file_to_fix
                    646:     rm -f ${LIB}/$file
                    647:     cp /tmp/$base ${LIB}/$file
                    648:     rm -f /tmp/$base
                    649:   fi
                    650: fi
                    651: 
                    652: # Conditionalize all of <sys/err.h> on _KERNEL being defined.
                    653: 
                    654: file=sys/err.h
                    655: base=`basename $file`
                    656: if [ -r ${LIB}/$file ]; then
                    657:   file_to_fix=${LIB}/$file
                    658: else
                    659:   if [ -r ${INPUT}/$file ]; then
                    660:     file_to_fix=${INPUT}/$file
                    661:   else
                    662:     file_to_fix=""
                    663:   fi
                    664: fi
                    665: if [ \! -z "$file_to_fix" ]; then
                    666:   echo Checking $file_to_fix
                    667:   if grep _KERNEL $file_to_fix > /dev/null; then
                    668:     echo No change needed in $file_to_fix
                    669:   else
                    670:     echo '#ifdef _KERNEL' > /tmp/$base
                    671:     cat $file_to_fix >> /tmp/$base
                    672:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    673:     echo Fixed $file_to_fix
                    674:     rm -f ${LIB}/$file
                    675:     cp /tmp/$base ${LIB}/$file
                    676:     rm -f /tmp/$base
                    677:   fi
                    678: fi
                    679: 
                    680: # Conditionalize all of <sys/char.h> on _KERNEL being defined.
                    681: 
                    682: file=sys/char.h
                    683: base=`basename $file`
                    684: if [ -r ${LIB}/$file ]; then
                    685:   file_to_fix=${LIB}/$file
                    686: else
                    687:   if [ -r ${INPUT}/$file ]; then
                    688:     file_to_fix=${INPUT}/$file
                    689:   else
                    690:     file_to_fix=""
                    691:   fi
                    692: fi
                    693: if [ \! -z "$file_to_fix" ]; then
                    694:   echo Checking $file_to_fix
                    695:   if grep _KERNEL $file_to_fix > /dev/null; then
                    696:     echo No change needed in $file_to_fix
                    697:   else
                    698:     echo '#ifdef _KERNEL' > /tmp/$base
                    699:     cat $file_to_fix >> /tmp/$base
                    700:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    701:     echo Fixed $file_to_fix
                    702:     rm -f ${LIB}/$file
                    703:     cp /tmp/$base ${LIB}/$file
                    704:     rm -f /tmp/$base
                    705:   fi
                    706: fi
                    707: 
                    708: # Conditionalize all of <sys/getpages.h> on _KERNEL being defined.
                    709: 
                    710: file=sys/getpages.h
                    711: base=`basename $file`
                    712: if [ -r ${LIB}/$file ]; then
                    713:   file_to_fix=${LIB}/$file
                    714: else
                    715:   if [ -r ${INPUT}/$file ]; then
                    716:     file_to_fix=${INPUT}/$file
                    717:   else
                    718:     file_to_fix=""
                    719:   fi
                    720: fi
                    721: if [ \! -z "$file_to_fix" ]; then
                    722:   echo Checking $file_to_fix
                    723:   if grep _KERNEL $file_to_fix > /dev/null; then
                    724:     echo No change needed in $file_to_fix
                    725:   else
                    726:     echo '#ifdef _KERNEL' > /tmp/$base
                    727:     cat $file_to_fix >> /tmp/$base
                    728:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    729:     echo Fixed $file_to_fix
                    730:     rm -f ${LIB}/$file
                    731:     cp /tmp/$base ${LIB}/$file
                    732:     rm -f /tmp/$base
                    733:   fi
                    734: fi
                    735: 
                    736: # Conditionalize all of <sys/map.h> on _KERNEL being defined.
                    737: 
                    738: file=sys/map.h
                    739: base=`basename $file`
                    740: if [ -r ${LIB}/$file ]; then
                    741:   file_to_fix=${LIB}/$file
                    742: else
                    743:   if [ -r ${INPUT}/$file ]; then
                    744:     file_to_fix=${INPUT}/$file
                    745:   else
                    746:     file_to_fix=""
                    747:   fi
                    748: fi
                    749: if [ \! -z "$file_to_fix" ]; then
                    750:   echo Checking $file_to_fix
                    751:   if grep _KERNEL $file_to_fix > /dev/null; then
                    752:     echo No change needed in $file_to_fix
                    753:   else
                    754:     echo '#ifdef _KERNEL' > /tmp/$base
                    755:     cat $file_to_fix >> /tmp/$base
                    756:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    757:     echo Fixed $file_to_fix
                    758:     rm -f ${LIB}/$file
                    759:     cp /tmp/$base ${LIB}/$file
                    760:     rm -f /tmp/$base
                    761:   fi
                    762: fi
                    763: 
                    764: # Conditionalize all of <sys/cmn_err.h> on _KERNEL being defined.
                    765: 
                    766: file=sys/cmn_err.h
                    767: base=`basename $file`
                    768: if [ -r ${LIB}/$file ]; then
                    769:   file_to_fix=${LIB}/$file
                    770: else
                    771:   if [ -r ${INPUT}/$file ]; then
                    772:     file_to_fix=${INPUT}/$file
                    773:   else
                    774:     file_to_fix=""
                    775:   fi
                    776: fi
                    777: if [ \! -z "$file_to_fix" ]; then
                    778:   echo Checking $file_to_fix
                    779:   if grep _KERNEL $file_to_fix > /dev/null; then
                    780:     echo No change needed in $file_to_fix
                    781:   else
                    782:     echo '#ifdef _KERNEL' > /tmp/$base
                    783:     cat $file_to_fix >> /tmp/$base
                    784:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    785:     echo Fixed $file_to_fix
                    786:     rm -f ${LIB}/$file
                    787:     cp /tmp/$base ${LIB}/$file
                    788:     rm -f /tmp/$base
                    789:   fi
                    790: fi
                    791: 
                    792: # Conditionalize all of <sys/kdebugger.h> on _KERNEL being defined.
                    793: 
                    794: file=sys/kdebugger.h
                    795: base=`basename $file`
                    796: if [ -r ${LIB}/$file ]; then
                    797:   file_to_fix=${LIB}/$file
                    798: else
                    799:   if [ -r ${INPUT}/$file ]; then
                    800:     file_to_fix=${INPUT}/$file
                    801:   else
                    802:     file_to_fix=""
                    803:   fi
                    804: fi
                    805: if [ \! -z "$file_to_fix" ]; then
                    806:   echo Checking $file_to_fix
                    807:   if grep _KERNEL $file_to_fix > /dev/null; then
                    808:     echo No change needed in $file_to_fix
                    809:   else
                    810:     echo '#ifdef _KERNEL' > /tmp/$base
                    811:     cat $file_to_fix >> /tmp/$base
                    812:     echo '#endif /* defined(_KERNEL) */' >> /tmp/$base
                    813:     echo Fixed $file_to_fix
                    814:     rm -f ${LIB}/$file
                    815:     cp /tmp/$base ${LIB}/$file
                    816:     rm -f /tmp/$base
                    817:   fi
                    818: fi
                    819: 
                    820: echo 'Removing unneeded directories:'
                    821: cd $LIB
                    822: files=`find . -type d -print | sort -r`
                    823: for file in $files; do
                    824:   rmdir $LIB/$file > /dev/null 2>&1
                    825: done
                    826: 
                    827: if $LINKS; then
                    828:   echo 'Making internal symbolic non-directory links'
                    829:   cd ${INPUT}
                    830:   files=`find . -type l -print`
                    831:   for file in $files; do
                    832:     dest=`ls -ld $file | sed -n 's/.*-> //p'`
                    833:     if expr "$dest" : '[^/].*' > /dev/null; then    
                    834:       target=${LIB}/`echo file | sed "s|[^/]*\$|$dest|"`
                    835:       if [ -f $target ]; then
                    836:         ln -s $dest ${LIB}/$file >/dev/null 2>&1
                    837:       fi
                    838:     fi
                    839:   done
                    840: fi
                    841: 
                    842: cd ${ORIG_DIR}
                    843: 
                    844: echo 'Replacing <sys/byteorder.h>'
                    845: rm -f ${LIB}/sys/byteorder.h
                    846: cp byteorder.h ${LIB}/sys/byteorder.h
                    847: 
                    848: exit 0
                    849: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.