Annotation of gforth/config.sub, revision 1.2

1.2     ! anton       1: #! /bin/sh
1.1       pazsan      2: # Configuration validation subroutine script, version 1.1.
1.2     ! anton       3: #   Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
1.1       pazsan      4: # This file is (in principle) common to ALL GNU software.
                      5: # The presence of a machine in this file suggests that SOME GNU software
                      6: # can handle that machine.  It does not imply ALL GNU software can. 
                      7: #
                      8: # This file is free software; you can redistribute it and/or modify
                      9: # it under the terms of the GNU General Public License as published by
                     10: # the Free Software Foundation; either version 2 of the License, or
                     11: # (at your option) any later version.
                     12: #
                     13: # This program is distributed in the hope that it will be useful,
                     14: # but WITHOUT ANY WARRANTY; without even the implied warranty of
                     15: # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     16: # GNU General Public License for more details.
                     17: #
                     18: # You should have received a copy of the GNU General Public License
                     19: # along with this program; if not, write to the Free Software
1.2     ! anton      20: # Foundation, Inc., 59 Temple Place - Suite 330,
        !            21: # Boston, MA 02111-1307, USA.
1.1       pazsan     22: 
                     23: # As a special exception to the GNU General Public License, if you
                     24: # distribute this file as part of a program that contains a
                     25: # configuration script generated by Autoconf, you may include it under
                     26: # the same distribution terms that you use for the rest of that program.
                     27: 
                     28: # Configuration subroutine to validate and canonicalize a configuration type.
                     29: # Supply the specified configuration type as an argument.
                     30: # If it is invalid, we print an error message on stderr and exit with code 1.
                     31: # Otherwise, we print the canonical config type on stdout and succeed.
                     32: 
                     33: # This file is supposed to be the same for all GNU packages
                     34: # and recognize all the CPU types, system types and aliases
                     35: # that are meaningful with *any* GNU software.
                     36: # Each package is responsible for reporting which valid configurations
                     37: # it does not support.  The user should be able to distinguish
                     38: # a failure to support a valid configuration from a meaningless
                     39: # configuration.
                     40: 
                     41: # The goal of this file is to map all the various variations of a given
                     42: # machine specification into a single specification in the form:
                     43: #      CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
                     44: # It is wrong to echo any other type of specification.
                     45: 
1.2     ! anton      46: if [ x$1 = x ]
        !            47: then
        !            48:        echo Configuration name missing. 1>&2
        !            49:        echo "Usage: $0 CPU-MFR-OPSYS" 1>&2
        !            50:        echo "or     $0 ALIAS" 1>&2
        !            51:        echo where ALIAS is a recognized configuration type. 1>&2
        !            52:        exit 1
        !            53: fi
        !            54: 
1.1       pazsan     55: # First pass through any local machine types.
                     56: case $1 in
                     57:        *local*)
                     58:                echo $1
                     59:                exit 0
                     60:                ;;
                     61:        *)
                     62:        ;;
                     63: esac
                     64: 
                     65: # Separate what the user gave into CPU-COMPANY and OS (if any).
                     66: basic_machine=`echo $1 | sed 's/-[^-]*$//'`
                     67: if [ $basic_machine != $1 ]
                     68: then os=`echo $1 | sed 's/.*-/-/'`
                     69: else os=; fi
                     70: 
                     71: ### Let's recognize common machines as not being operating systems so
                     72: ### that things like config.sub decstation-3100 work.  We also
                     73: ### recognize some manufacturers as not being operating systems, so we
                     74: ### can provide default operating systems below.
                     75: case $os in
                     76:        -sun*os*)
                     77:                # Prevent following clause from handling this invalid input.
                     78:                ;;
                     79:        -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
                     80:        -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
                     81:        -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
                     82:        -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
                     83:        -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
                     84:        -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp )
                     85:                os=
                     86:                basic_machine=$1
                     87:                ;;
                     88:        -hiux*)
                     89:                os=-hiuxwe2
                     90:                ;;
                     91:        -sco4)
                     92:                os=-sco3.2v4
                     93:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                     94:                ;;
                     95:        -sco3.2.[4-9]*)
                     96:                os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
                     97:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                     98:                ;;
                     99:        -sco3.2v[4-9]*)
                    100:                # Don't forget version if it is 3.2v4 or newer.
                    101:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                    102:                ;;
                    103:        -sco*)
                    104:                os=-sco3.2v2
                    105:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                    106:                ;;
                    107:        -isc)
                    108:                os=-isc2.2
                    109:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                    110:                ;;
                    111:        -clix*)
                    112:                basic_machine=clipper-intergraph
                    113:                ;;
                    114:        -isc*)
                    115:                basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
                    116:                ;;
1.2     ! anton     117:        -lynx*)
1.1       pazsan    118:                os=-lynxos
                    119:                ;;
                    120:        -ptx*)
                    121:                basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
                    122:                ;;
                    123:        -windowsnt*)
                    124:                os=`echo $os | sed -e 's/windowsnt/winnt/'`
                    125:                ;;
                    126: esac
                    127: 
                    128: # Decode aliases for certain CPU-COMPANY combinations.
                    129: case $basic_machine in
                    130:        # Recognize the basic CPU types without company name.
                    131:        # Some are omitted here because they have special meanings below.
1.2     ! anton     132:        tahoe | i[345]86 | i860 | m68k | m68000 | m88k | ns32k | arm \
        !           133:                | arme[lb] | pyramid \
1.1       pazsan    134:                | tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
                    135:                | alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
1.2     ! anton     136:                | powerpc | powerpcle | sparc64 | 1750a | dsp16xx | mips64 | mipsel \
        !           137:                | pdp11 | mips64el | mips64orion | mips64orionel \
        !           138:                | sparc)
1.1       pazsan    139:                basic_machine=$basic_machine-unknown
                    140:                ;;
                    141:        # Object if more than one company name word.
                    142:        *-*-*)
                    143:                echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
                    144:                exit 1
                    145:                ;;
                    146:        # Recognize the basic CPU types with company name.
                    147:        vax-* | tahoe-* | i[345]86-* | i860-* | m68k-* | m68000-* | m88k-* \
                    148:              | sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
1.2     ! anton     149:              | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* | power-* \
1.1       pazsan    150:              | none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
                    151:              | hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
                    152:              | pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
1.2     ! anton     153:              | pdp11-* | sh-* | powerpc-* | powerpcle-* | sparc64-* | mips64-* | mipsel-* \
        !           154:              | mips64el-* | mips64orion-* | mips64orionel-*)
1.1       pazsan    155:                ;;
                    156:        # Recognize the various machine names and aliases which stand
                    157:        # for a CPU type and a company and sometimes even an OS.
                    158:        3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
                    159:                basic_machine=m68000-att
                    160:                ;;
                    161:        3b*)
                    162:                basic_machine=we32k-att
                    163:                ;;
                    164:        alliant | fx80)
                    165:                basic_machine=fx80-alliant
                    166:                ;;
                    167:        altos | altos3068)
                    168:                basic_machine=m68k-altos
                    169:                ;;
                    170:        am29k)
                    171:                basic_machine=a29k-none
                    172:                os=-bsd
                    173:                ;;
                    174:        amdahl)
                    175:                basic_machine=580-amdahl
                    176:                os=-sysv
                    177:                ;;
                    178:        amiga | amiga-*)
                    179:                basic_machine=m68k-cbm
                    180:                ;;
                    181:        amigados)
                    182:                basic_machine=m68k-cbm
                    183:                os=-amigados
                    184:                ;;
                    185:        amigaunix | amix)
                    186:                basic_machine=m68k-cbm
                    187:                os=-sysv4
                    188:                ;;
                    189:        apollo68)
                    190:                basic_machine=m68k-apollo
                    191:                os=-sysv
                    192:                ;;
                    193:        balance)
                    194:                basic_machine=ns32k-sequent
                    195:                os=-dynix
                    196:                ;;
                    197:        convex-c1)
                    198:                basic_machine=c1-convex
                    199:                os=-bsd
                    200:                ;;
                    201:        convex-c2)
                    202:                basic_machine=c2-convex
                    203:                os=-bsd
                    204:                ;;
                    205:        convex-c32)
                    206:                basic_machine=c32-convex
                    207:                os=-bsd
                    208:                ;;
                    209:        convex-c34)
                    210:                basic_machine=c34-convex
                    211:                os=-bsd
                    212:                ;;
                    213:        convex-c38)
                    214:                basic_machine=c38-convex
                    215:                os=-bsd
                    216:                ;;
                    217:        cray | ymp)
                    218:                basic_machine=ymp-cray
                    219:                os=-unicos
                    220:                ;;
                    221:        cray2)
                    222:                basic_machine=cray2-cray
                    223:                os=-unicos
                    224:                ;;
                    225:        crds | unos)
                    226:                basic_machine=m68k-crds
                    227:                ;;
                    228:        da30 | da30-*)
                    229:                basic_machine=m68k-da30
                    230:                ;;
                    231:        decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
                    232:                basic_machine=mips-dec
                    233:                ;;
                    234:        delta | 3300 | motorola-3300 | motorola-delta \
                    235:              | 3300-motorola | delta-motorola)
                    236:                basic_machine=m68k-motorola
                    237:                ;;
                    238:        delta88)
                    239:                basic_machine=m88k-motorola
                    240:                os=-sysv3
                    241:                ;;
                    242:        dpx20 | dpx20-*)
                    243:                basic_machine=rs6000-bull
                    244:                os=-bosx
                    245:                ;;
                    246:        dpx2* | dpx2*-bull)
                    247:                basic_machine=m68k-bull
                    248:                os=-sysv3
                    249:                ;;
                    250:        ebmon29k)
                    251:                basic_machine=a29k-amd
                    252:                os=-ebmon
                    253:                ;;
                    254:        elxsi)
                    255:                basic_machine=elxsi-elxsi
                    256:                os=-bsd
                    257:                ;;
                    258:        encore | umax | mmax)
                    259:                basic_machine=ns32k-encore
                    260:                ;;
                    261:        fx2800)
                    262:                basic_machine=i860-alliant
                    263:                ;;
                    264:        genix)
                    265:                basic_machine=ns32k-ns
                    266:                ;;
                    267:        gmicro)
                    268:                basic_machine=tron-gmicro
                    269:                os=-sysv
                    270:                ;;
                    271:        h3050r* | hiux*)
                    272:                basic_machine=hppa1.1-hitachi
                    273:                os=-hiuxwe2
                    274:                ;;
                    275:        h8300hms)
                    276:                basic_machine=h8300-hitachi
                    277:                os=-hms
                    278:                ;;
                    279:        harris)
                    280:                basic_machine=m88k-harris
                    281:                os=-sysv3
                    282:                ;;
                    283:        hp300-*)
                    284:                basic_machine=m68k-hp
                    285:                ;;
                    286:        hp300bsd)
                    287:                basic_machine=m68k-hp
                    288:                os=-bsd
                    289:                ;;
                    290:        hp300hpux)
                    291:                basic_machine=m68k-hp
                    292:                os=-hpux
                    293:                ;;
                    294:        hp9k2[0-9][0-9] | hp9k31[0-9])
                    295:                basic_machine=m68000-hp
                    296:                ;;
                    297:        hp9k3[2-9][0-9])
                    298:                basic_machine=m68k-hp
                    299:                ;;
                    300:        hp9k7[0-9][0-9] | hp7[0-9][0-9] | hp9k8[0-9]7 | hp8[0-9]7)
                    301:                basic_machine=hppa1.1-hp
                    302:                ;;
                    303:        hp9k8[0-9][0-9] | hp8[0-9][0-9])
                    304:                basic_machine=hppa1.0-hp
                    305:                ;;
                    306:        i370-ibm* | ibm*)
                    307:                basic_machine=i370-ibm
                    308:                os=-mvs
                    309:                ;;
                    310: # I'm not sure what "Sysv32" means.  Should this be sysv3.2?
                    311:        i[345]86v32)
                    312:                basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
                    313:                os=-sysv32
                    314:                ;;
                    315:        i[345]86v4*)
                    316:                basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
                    317:                os=-sysv4
                    318:                ;;
                    319:        i[345]86v)
                    320:                basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
                    321:                os=-sysv
                    322:                ;;
                    323:        i[345]86sol2)
                    324:                basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
                    325:                os=-solaris2
                    326:                ;;
                    327:        iris | iris4d)
                    328:                basic_machine=mips-sgi
                    329:                case $os in
                    330:                    -irix*)
                    331:                        ;;
                    332:                    *)
                    333:                        os=-irix4
                    334:                        ;;
                    335:                esac
                    336:                ;;
                    337:        isi68 | isi)
                    338:                basic_machine=m68k-isi
                    339:                os=-sysv
                    340:                ;;
                    341:        m88k-omron*)
                    342:                basic_machine=m88k-omron
                    343:                ;;
                    344:        magnum | m3230)
                    345:                basic_machine=mips-mips
                    346:                os=-sysv
                    347:                ;;
                    348:        merlin)
                    349:                basic_machine=ns32k-utek
                    350:                os=-sysv
                    351:                ;;
                    352:        miniframe)
                    353:                basic_machine=m68000-convergent
                    354:                ;;
                    355:        mips3*-*)
                    356:                basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
                    357:                ;;
                    358:        mips3*)
                    359:                basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
                    360:                ;;
                    361:        ncr3000)
                    362:                basic_machine=i486-ncr
                    363:                os=-sysv4
                    364:                ;;
                    365:        news | news700 | news800 | news900)
                    366:                basic_machine=m68k-sony
                    367:                os=-newsos
                    368:                ;;
                    369:        news1000)
                    370:                basic_machine=m68030-sony
                    371:                os=-newsos
                    372:                ;;
                    373:        news-3600 | risc-news)
                    374:                basic_machine=mips-sony
                    375:                os=-newsos
                    376:                ;;
                    377:        next | m*-next )
                    378:                basic_machine=m68k-next
                    379:                case $os in
                    380:                    -nextstep* )
                    381:                        ;;
                    382:                    -ns2*)
                    383:                      os=-nextstep2
                    384:                        ;;
                    385:                    *)
                    386:                      os=-nextstep3
                    387:                        ;;
                    388:                esac
                    389:                ;;
                    390:        nh3000)
                    391:                basic_machine=m68k-harris
                    392:                os=-cxux
                    393:                ;;
                    394:        nh[45]000)
                    395:                basic_machine=m88k-harris
                    396:                os=-cxux
                    397:                ;;
                    398:        nindy960)
                    399:                basic_machine=i960-intel
                    400:                os=-nindy
                    401:                ;;
                    402:        np1)
                    403:                basic_machine=np1-gould
                    404:                ;;
                    405:        pa-hitachi)
                    406:                basic_machine=hppa1.1-hitachi
                    407:                os=-hiuxwe2
                    408:                ;;
                    409:        paragon)
                    410:                basic_machine=i860-intel
                    411:                os=-osf
                    412:                ;;
                    413:        pbd)
                    414:                basic_machine=sparc-tti
                    415:                ;;
                    416:        pbb)
                    417:                basic_machine=m68k-tti
                    418:                ;;
                    419:         pc532 | pc532-*)
                    420:                basic_machine=ns32k-pc532
                    421:                ;;
1.2     ! anton     422:        pentium | p5 | p6)
        !           423:                # We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
        !           424:                basic_machine=i586-intel
        !           425:                ;;
        !           426:        pentium-* | p5-* | p6-*)
        !           427:                # We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
        !           428:                basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
        !           429:                ;;
        !           430:        k5)
        !           431:                # We don't have specific support for AMD's K5 yet, so just call it a Pentium
        !           432:                basic_machine=i586-amd
        !           433:                ;;
        !           434:        nexen)
        !           435:                # We don't have specific support for Nexgen yet, so just call it a Pentium
        !           436:                basic_machine=i586-nexgen
1.1       pazsan    437:                ;;
                    438:        pn)
                    439:                basic_machine=pn-gould
                    440:                ;;
1.2     ! anton     441:        power)  basic_machine=rs6000-ibm
        !           442:                ;;
        !           443:        ppc)    basic_machine=powerpc-unknown
        !           444:                ;;
        !           445:        ppc-*)  basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
        !           446:                ;;
        !           447:        ppcle | powerpclittle | ppc-le | powerpc-little)
        !           448:                basic_machine=powerpcle-unknown
        !           449:                ;;
        !           450:        ppcle-* | powerpclittle-*)
        !           451:                basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
        !           452:                ;;
1.1       pazsan    453:        ps2)
                    454:                basic_machine=i386-ibm
                    455:                ;;
1.2     ! anton     456:        rm[46]00)
        !           457:                basic_machine=mips-siemens
        !           458:                ;;
1.1       pazsan    459:        rtpc | rtpc-*)
                    460:                basic_machine=romp-ibm
                    461:                ;;
                    462:        sequent)
                    463:                basic_machine=i386-sequent
                    464:                ;;
                    465:        sh)
                    466:                basic_machine=sh-hitachi
                    467:                os=-hms
                    468:                ;;
                    469:        sps7)
                    470:                basic_machine=m68k-bull
                    471:                os=-sysv2
                    472:                ;;
                    473:        spur)
                    474:                basic_machine=spur-unknown
                    475:                ;;
                    476:        sun2)
                    477:                basic_machine=m68000-sun
                    478:                ;;
                    479:        sun2os3)
                    480:                basic_machine=m68000-sun
                    481:                os=-sunos3
                    482:                ;;
                    483:        sun2os4)
                    484:                basic_machine=m68000-sun
                    485:                os=-sunos4
                    486:                ;;
                    487:        sun3os3)
                    488:                basic_machine=m68k-sun
                    489:                os=-sunos3
                    490:                ;;
                    491:        sun3os4)
                    492:                basic_machine=m68k-sun
                    493:                os=-sunos4
                    494:                ;;
                    495:        sun4os3)
                    496:                basic_machine=sparc-sun
                    497:                os=-sunos3
                    498:                ;;
                    499:        sun4os4)
                    500:                basic_machine=sparc-sun
                    501:                os=-sunos4
                    502:                ;;
1.2     ! anton     503:        sun4sol2)
        !           504:                basic_machine=sparc-sun
        !           505:                os=-solaris2
        !           506:                ;;
1.1       pazsan    507:        sun3 | sun3-*)
                    508:                basic_machine=m68k-sun
                    509:                ;;
                    510:        sun4)
                    511:                basic_machine=sparc-sun
                    512:                ;;
                    513:        sun386 | sun386i | roadrunner)
                    514:                basic_machine=i386-sun
                    515:                ;;
                    516:        symmetry)
                    517:                basic_machine=i386-sequent
                    518:                os=-dynix
                    519:                ;;
                    520:        tower | tower-32)
                    521:                basic_machine=m68k-ncr
                    522:                ;;
1.2     ! anton     523:        udi29k)
        !           524:                basic_machine=a29k-amd
        !           525:                os=-udi
        !           526:                ;;
1.1       pazsan    527:        ultra3)
                    528:                basic_machine=a29k-nyu
                    529:                os=-sym1
                    530:                ;;
                    531:        vaxv)
                    532:                basic_machine=vax-dec
                    533:                os=-sysv
                    534:                ;;
                    535:        vms)
                    536:                basic_machine=vax-dec
                    537:                os=-vms
                    538:                ;;
                    539:        vxworks960)
                    540:                basic_machine=i960-wrs
                    541:                os=-vxworks
                    542:                ;;
                    543:        vxworks68)
                    544:                basic_machine=m68k-wrs
                    545:                os=-vxworks
                    546:                ;;
1.2     ! anton     547:        vxworks29k)
        !           548:                basic_machine=a29k-wrs
        !           549:                os=-vxworks
        !           550:                ;;
1.1       pazsan    551:        xmp)
                    552:                basic_machine=xmp-cray
                    553:                os=-unicos
                    554:                ;;
                    555:         xps | xps100)
                    556:                basic_machine=xps100-honeywell
                    557:                ;;
                    558:        none)
                    559:                basic_machine=none-none
                    560:                os=-none
                    561:                ;;
                    562: 
                    563: # Here we handle the default manufacturer of certain CPU types.  It is in
                    564: # some cases the only manufacturer, in others, it is the most popular.
                    565:        mips)
                    566:                basic_machine=mips-mips
                    567:                ;;
                    568:        romp)
                    569:                basic_machine=romp-ibm
                    570:                ;;
                    571:        rs6000)
                    572:                basic_machine=rs6000-ibm
                    573:                ;;
                    574:        vax)
                    575:                basic_machine=vax-dec
                    576:                ;;
                    577:        pdp11)
                    578:                basic_machine=pdp11-dec
                    579:                ;;
                    580:        we32k)
                    581:                basic_machine=we32k-att
                    582:                ;;
                    583:        sparc)
                    584:                basic_machine=sparc-sun
                    585:                ;;
                    586:         cydra)
                    587:                basic_machine=cydra-cydrome
                    588:                ;;
                    589:        orion)
                    590:                basic_machine=orion-highlevel
                    591:                ;;
                    592:        orion105)
                    593:                basic_machine=clipper-highlevel
                    594:                ;;
                    595:        *)
                    596:                echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
                    597:                exit 1
                    598:                ;;
                    599: esac
                    600: 
                    601: # Here we canonicalize certain aliases for manufacturers.
                    602: case $basic_machine in
                    603:        *-digital*)
                    604:                basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
                    605:                ;;
                    606:        *-commodore*)
                    607:                basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
                    608:                ;;
                    609:        *)
                    610:                ;;
                    611: esac
                    612: 
                    613: # Decode manufacturer-specific aliases for certain operating systems.
                    614: 
                    615: if [ x"$os" != x"" ]
                    616: then
                    617: case $os in
                    618:        # -solaris* is a basic system type, with this one exception.
                    619:        -solaris1 | -solaris1.*)
                    620:                os=`echo $os | sed -e 's|solaris1|sunos4|'`
                    621:                ;;
                    622:        -solaris)
                    623:                os=-solaris2
                    624:                ;;
1.2     ! anton     625:        -unixware* | svr4*)
        !           626:                os=-sysv4
        !           627:                ;;
1.1       pazsan    628:        -gnu/linux*)
                    629:                os=`echo $os | sed -e 's|gnu/linux|linux|'`
                    630:                ;;
                    631:        # First accept the basic system types.
                    632:        # The portable systems comes first.
1.2     ! anton     633:        # Each alternative MUST END IN A *, to match a version number.
1.1       pazsan    634:        # -sysv* is not here because it comes later, after sysvr4.
                    635:        -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
                    636:              | -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \
                    637:              | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
                    638:              | -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
                    639:              | -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
                    640:              | -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
                    641:              | -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
                    642:              | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
1.2     ! anton     643:              | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
        !           644:              | -udi* | -eabi* | -lites* )
        !           645:        # Remember, each alternative MUST END IN *, to match a version number.
1.1       pazsan    646:                ;;
                    647:        -sunos5*)
                    648:                os=`echo $os | sed -e 's|sunos5|solaris2|'`
                    649:                ;;
                    650:        -sunos6*)
                    651:                os=`echo $os | sed -e 's|sunos6|solaris3|'`
                    652:                ;;
                    653:        -osfrose*)
                    654:                os=-osfrose
                    655:                ;;
                    656:        -osf*)
                    657:                os=-osf
                    658:                ;;
                    659:        -utek*)
                    660:                os=-bsd
                    661:                ;;
                    662:        -dynix*)
                    663:                os=-bsd
                    664:                ;;
                    665:        -acis*)
                    666:                os=-aos
                    667:                ;;
                    668:        -ctix* | -uts*)
                    669:                os=-sysv
                    670:                ;;
1.2     ! anton     671:        # Preserve the version number of sinix5.
        !           672:        -sinix5.*)
        !           673:                os=`echo $os | sed -e 's|sinix|sysv|'`
        !           674:                ;;
        !           675:        -sinix*)
        !           676:                os=-sysv4
        !           677:                ;;
1.1       pazsan    678:        -triton*)
                    679:                os=-sysv3
                    680:                ;;
                    681:        -oss*)
                    682:                os=-sysv3
                    683:                ;;
                    684:        -svr4)
                    685:                os=-sysv4
                    686:                ;;
                    687:        -svr3)
                    688:                os=-sysv3
                    689:                ;;
                    690:        -sysvr4)
                    691:                os=-sysv4
                    692:                ;;
                    693:        # This must come after -sysvr4.
                    694:        -sysv*)
                    695:                ;;
                    696:        -xenix)
                    697:                os=-xenix
                    698:                ;;
                    699:        -none)
                    700:                ;;
                    701:        *)
                    702:                # Get rid of the `-' at the beginning of $os.
                    703:                os=`echo $os | sed 's/[^-]*-//'`
                    704:                echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
                    705:                exit 1
                    706:                ;;
                    707: esac
                    708: else
                    709: 
                    710: # Here we handle the default operating systems that come with various machines.
                    711: # The value should be what the vendor currently ships out the door with their
                    712: # machine or put another way, the most popular os provided with the machine.
                    713: 
                    714: # Note that if you're going to try to match "-MANUFACTURER" here (say,
                    715: # "-sun"), then you have to tell the case statement up towards the top
                    716: # that MANUFACTURER isn't an operating system.  Otherwise, code above
                    717: # will signal an error saying that MANUFACTURER isn't an operating
                    718: # system, and we'll never get to this point.
                    719: 
                    720: case $basic_machine in
                    721:        *-acorn)
                    722:                os=-riscix1.2
                    723:                ;;
1.2     ! anton     724:        arm*-semi)
        !           725:                os=-aout
        !           726:                ;;
1.1       pazsan    727:         pdp11-*)
                    728:                os=-none
                    729:                ;;
                    730:        *-dec | vax-*)
                    731:                os=-ultrix4.2
                    732:                ;;
1.2     ! anton     733:        m68*-apollo)
        !           734:                os=-domain
        !           735:                ;;
1.1       pazsan    736:        i386-sun)
                    737:                os=-sunos4.0.2
                    738:                ;;
                    739:        m68000-sun)
                    740:                os=-sunos3
                    741:                # This also exists in the configure program, but was not the
                    742:                # default.
                    743:                # os=-sunos4
                    744:                ;;
                    745:        *-tti)  # must be before sparc entry or we get the wrong os.
                    746:                os=-sysv3
                    747:                ;;
                    748:        sparc-* | *-sun)
                    749:                os=-sunos4.1.1
                    750:                ;;
                    751:        *-ibm)
                    752:                os=-aix
                    753:                ;;
                    754:        *-hp)
                    755:                os=-hpux
                    756:                ;;
                    757:        *-hitachi)
                    758:                os=-hiux
                    759:                ;;
                    760:        i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
                    761:                os=-sysv
                    762:                ;;
                    763:        *-cbm)
                    764:                os=-amigados
                    765:                ;;
                    766:        *-dg)
                    767:                os=-dgux
                    768:                ;;
                    769:        *-dolphin)
                    770:                os=-sysv3
                    771:                ;;
                    772:        m68k-ccur)
                    773:                os=-rtu
                    774:                ;;
                    775:        m88k-omron*)
                    776:                os=-luna
                    777:                ;;
                    778:        *-sequent)
                    779:                os=-ptx
                    780:                ;;
                    781:        *-crds)
                    782:                os=-unos
                    783:                ;;
                    784:        *-ns)
                    785:                os=-genix
                    786:                ;;
                    787:        i370-*)
                    788:                os=-mvs
                    789:                ;;
                    790:        *-next)
                    791:                os=-nextstep3
                    792:                ;;
                    793:         *-gould)
                    794:                os=-sysv
                    795:                ;;
                    796:         *-highlevel)
                    797:                os=-bsd
                    798:                ;;
                    799:        *-encore)
                    800:                os=-bsd
                    801:                ;;
                    802:         *-sgi)
                    803:                os=-irix
                    804:                ;;
1.2     ! anton     805:         *-siemens)
        !           806:                os=-sysv4
        !           807:                ;;
1.1       pazsan    808:        *-masscomp)
                    809:                os=-rtu
                    810:                ;;
                    811:        *)
                    812:                os=-none
                    813:                ;;
                    814: esac
                    815: fi
                    816: 
                    817: # Here we handle the case where we know the os, and the CPU type, but not the
                    818: # manufacturer.  We pick the logical manufacturer.
                    819: vendor=unknown
                    820: case $basic_machine in
                    821:        *-unknown)
                    822:                case $os in
                    823:                        -riscix*)
                    824:                                vendor=acorn
                    825:                                ;;
                    826:                        -sunos*)
                    827:                                vendor=sun
                    828:                                ;;
                    829:                        -lynxos*)
                    830:                                vendor=lynx
                    831:                                ;;
                    832:                        -aix*)
                    833:                                vendor=ibm
                    834:                                ;;
                    835:                        -hpux*)
                    836:                                vendor=hp
                    837:                                ;;
                    838:                        -hiux*)
                    839:                                vendor=hitachi
                    840:                                ;;
                    841:                        -unos*)
                    842:                                vendor=crds
                    843:                                ;;
                    844:                        -dgux*)
                    845:                                vendor=dg
                    846:                                ;;
                    847:                        -luna*)
                    848:                                vendor=omron
                    849:                                ;;
                    850:                        -genix*)
                    851:                                vendor=ns
                    852:                                ;;
                    853:                        -mvs*)
                    854:                                vendor=ibm
                    855:                                ;;
                    856:                        -ptx*)
                    857:                                vendor=sequent
1.2     ! anton     858:                                ;;
        !           859:                        -vxworks*)
        !           860:                                vendor=wrs
1.1       pazsan    861:                                ;;
                    862:                esac
                    863:                basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
                    864:                ;;
                    865: esac
                    866: 
                    867: echo $basic_machine$os

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>