Annotation of coherent/b/kernel/i386/bld, revision 1.1.1.1

1.1       root        1: # bld - make 386 kernel
                      2: #
                      3: # requires a running 386 kernel
                      4: #
                      5: 
                      6: # make sure the environment is set for kernel objects
                      7: if [ $K386OBJ ]
                      8: then
                      9:        :
                     10: else
                     11:        echo "Error - K386OBJ environment variable not set!"
                     12:        exit 1
                     13: fi
                     14: 
                     15: # make sure the environment is set for kernel libraries
                     16: if [ $K386LIB ]
                     17: then
                     18:        :
                     19: else
                     20:        echo "Error - K386LIB environment variable not set!"
                     21:        exit 1
                     22: fi
                     23: 
                     24: #CFLAGS=${CFLAGS-"-DTRACER -VPSTR -D__COHERENT__"}
                     25: CFLAGS=${CFLAGS-"-DTRACER -VPSTR"}
                     26: CC=${CC-"exec /bin/cc"}
                     27: 
                     28: OPTS="${K386OBJ}/tty.o ${K386OBJ}/pipe.o ${K386OBJ}/putchar.o"
                     29: OPTS=${OPTS}" ${K386OBJ}/rm.o ${K386OBJ}/fdc.o ${K386OBJ}/fl386.o"
                     30: OPTS=${OPTS}" ${K386OBJ}/ipc.o"
                     31: 
                     32: DEFAULT_KB=y
                     33: DEFAULT_ASYNC=y
                     34: DEFAULT_MM=y
                     35: DEFAULT_HD=y
                     36: USE_ASY=n
                     37: USE_LP=y
                     38: USE_PTY=y
                     39: USE_ASYNC=y
                     40: MAKE_LIBS=y
                     41: PATCH="flCon=fl386con"
                     42: KEROBJ=${K386LIB}/ker386.o
                     43: TARGET=/at386.tst
                     44: ASYNC=/etc/default/async
                     45: 
                     46: # Each drvl entry is 0x14, or 20 decimal, bytes.
                     47: 
                     48: while [ $# -gt 0 ]
                     49: do
                     50:        ARG=$1
                     51:        case $ARG in
                     52:        aha)
                     53:        OPTS=${OPTS}" ${K386OBJ}/aha_dsl.o ${K386OBJ}/aha.o ${K386OBJ}/scsi.o"
                     54:                PATCH="${PATCH} drvl+260=sdcon"
                     55:                ;;
                     56:        al)
                     57:                OPTS=${OPTS}" ${K386OBJ}/alx.o ${K386OBJ}/com1.o ${K386OBJ}/com2.o"
                     58:                PATCH="${PATCH} drvl+100=a0con drvl+120=a1con"
                     59:                DEFAULT_ASYNC=n
                     60:                ;;
                     61:        asy)
                     62:                OPTS=${OPTS}" ${K386OBJ}/asy.o"
                     63:                PATCH="${PATCH} drvl+100=asycon"
                     64:                USE_ASY=y
                     65:                DEFAULT_ASYNC=n
                     66:                ;;
                     67:        at)
                     68:                OPTS=${OPTS}" ${K386OBJ}/$ARG.o"
                     69:                PATCH="${PATCH} drvl+220=atcon"
                     70:                DEFAULT_HD=n
                     71:                ;;
                     72:        emu)
                     73:                OPTS=${OPTS}" em87.o "
                     74:                ;;
                     75:        hs)
                     76:                OPTS=${OPTS}" ${K386OBJ}/hs.o"
                     77:                PATCH="${PATCH} drvl+140=hscon"
                     78:                DEFAULT_ASYNC=n
                     79:                ;;
                     80:        fha)
                     81: OPTS=${OPTS}" ${K386OBJ}/stubs.o ${K386OBJ}/at.o ${K386OBJ}/ss.o"
                     82: OPTS=${OPTS}" ${K386OBJ}/aha_dsl.o ${K386OBJ}/aha.o ${K386OBJ}/scsi.o"
                     83: PATCH="${PATCH} rootdev=makedev(4,14) pipedev=makedev(8,131) ronflag=1"
                     84: PATCH="${PATCH} NBUF=64 NHASH=61 NCLIST=16 ALLSIZE=32768"
                     85:                DEFAULT_HD=n
                     86:                USE_PTY=n
                     87:                USE_LP=n
                     88:                USE_ASYNC=n
                     89:                DEFAULT_ASYNC=n
                     90:                ;;
                     91:        fva)
                     92: OPTS=${OPTS}" stubs.o ${K386OBJ}/at.o ${K386OBJ}/ss.o"
                     93: OPTS=${OPTS}" ${K386OBJ}/aha_dsl.o ${K386OBJ}/aha.o ${K386OBJ}/scsi.o"
                     94: PATCH="${PATCH} rootdev=makedev(4,15) pipedev=makedev(8,131) ronflag=1"
                     95: PATCH="${PATCH} NBUF=64 NHASH=61 NCLIST=16 ALLSIZE=32768"
                     96:                DEFAULT_HD=n
                     97:                USE_PTY=n
                     98:                USE_LP=n
                     99:                USE_ASYNC=n
                    100:                DEFAULT_ASYNC=n
                    101:                ;;
                    102:        kb|kb_d|kb_f|nkb)
                    103:                OPTS=${OPTS}" ${K386OBJ}/$ARG.o"
                    104:                DEFAULT_KB=n
                    105:                ;;
                    106:        nl)
                    107:                MAKE_LIBS=n
                    108:                ;;
                    109:        sc)
                    110:                CFLAGS=${CFLAGS}" -DSERIAL_CONSOLE"
                    111:                ;;
                    112:        ss)
                    113:                OPTS=${OPTS}" ${K386OBJ}/$ARG.o"
                    114:                PATCH="${PATCH} drvl+260=sscon"
                    115:                ;;
                    116:        ticom)  # piggy's Tiwanese 4 port card
                    117:                PATCH="${PATCH} AL_ADDR+8=0x2b0 AL_ADDR+12=0x2b8"
                    118:                ;;
                    119:        vt)
                    120:                DEFAULT_KB=n
                    121:                DEFAULT_MM=n
                    122: OPTS=${OPTS}" ${K386OBJ}/vtmm.o ${K386OBJ}/vtmmas.o ${K386OBJ}/vtnkb.o"
                    123:                ;;
                    124:        vtkb)
                    125:                DEFAULT_KB=n
                    126:                DEFAULT_MM=n
                    127: OPTS=${OPTS}" ${K386OBJ}/vtmm.o ${K386OBJ}/vtmmas.o ${K386OBJ}/vtkb.o"
                    128:                ;;
                    129:        vtkb_d)
                    130:                DEFAULT_KB=n
                    131:                DEFAULT_MM=n
                    132: OPTS=${OPTS}" ${K386OBJ}/vtmm.o ${K386OBJ}/vtmmas.o ${K386OBJ}/vtkb_d.o"
                    133:                ;;
                    134:        vtkb_f)
                    135:                DEFAULT_KB=n
                    136:                DEFAULT_MM=n
                    137: OPTS=${OPTS}" ${K386OBJ}/vtmm.o ${K386OBJ}/vtmmas.o ${K386OBJ}/vtkb_f.o"
                    138:                ;;
                    139:        xl)
                    140:                PATCH="${PATCH} ftCon=ftxlcon PHYS_MEM=589824"
                    141: OPTS=${OPTS}" ${K386OBJ}/xlft.o ${K386OBJ}/xla.o ${K386OBJ}/xl_dec.o"
                    142:                ;;
                    143:        -a)
                    144:                shift
                    145:                ASYNC=$1
                    146:                ;;
                    147:        -c)
                    148:                shift
                    149:                CFLAGS="$CFLAGS $1"
                    150:                ;;
                    151:        -o)
                    152:                shift
                    153:                TARGET=$1
                    154:                ;;
                    155:        *=*)
                    156:                PATCH="${PATCH} ${ARG}"
                    157:                ;;
                    158:        *)
                    159: echo "Usage:  $0"
                    160: echo "  {aha|al|asy|at|fha|fva|hs|inst|kb|kb_d|kb_f|nkb"
                    161: echo "    |sc|ss|ticom|vt|vtkb|vtkb_d|vtkb_f|xl}"
                    162: echo "  {-o target} {-a async_file} {-c cflags} {addr=value}..."
                    163:                exit 1
                    164:                ;;
                    165:        esac
                    166:        shift
                    167: done
                    168: 
                    169: if [ ${USE_LP} = "y" ]
                    170: then
                    171:        OPTS=${OPTS}" ${K386OBJ}/lp.o"
                    172:        PATCH="${PATCH} drvl+60=lpcon"
                    173: fi
                    174: if [ ${USE_PTY} = "y" ]
                    175: then
                    176:        OPTS=${OPTS}" ${K386OBJ}/pty.o"
                    177:        PATCH="${PATCH} drvl+180=ptycon"
                    178: fi
                    179: if [ ${USE_ASYNC} = "y" ]
                    180: then
                    181:        OPTS=${OPTS}" ${K386OBJ}/albaud.o"
                    182: fi
                    183: if [ ${DEFAULT_KB} = "y" ]
                    184: then
                    185:        OPTS=${OPTS}" ${K386OBJ}/kb.o"
                    186: fi
                    187: if [ $DEFAULT_ASYNC = "y" ]
                    188: then
                    189:        OPTS=${OPTS}" ${K386OBJ}/asy.o"
                    190:        PATCH="${PATCH} drvl+100=asycon"
                    191:        USE_ASY=y
                    192: fi
                    193: if [ $DEFAULT_HD = "y" ]
                    194: then
                    195:        OPTS=${OPTS}" ${K386OBJ}/at.o"
                    196:        PATCH="${PATCH} drvl+220=atcon"
                    197: fi
                    198: if [ ${DEFAULT_MM} = "y" ]
                    199: then
                    200:        OPTS=${OPTS}" ${K386OBJ}/mmas.o ${K386OBJ}/mm.o"
                    201: fi
                    202: make "CFLAGS=$CFLAGS" "CC=$CC" ${KEROBJ}       || exit 1
                    203: if [ ${MAKE_LIBS} = "y" ]
                    204: then
                    205:        make "CFLAGS=$CFLAGS" "CC=$CC" libs     || exit 1
                    206: fi
                    207: set -x
                    208: 
                    209: #if [ -f $TARGET ]
                    210: #then
                    211: #      mv $TARGET $TARGET.old || exit 1
                    212: #fi
                    213: 
                    214: ld -K -o $TARGET -e stext ${KEROBJ} ${OPTS} || exit 1
                    215: if [ -n "${PATCH}" ]
                    216: then
                    217:        /conf/patch $TARGET $PATCH || exit 1
                    218: fi
                    219: if [ ${USE_ASY} = "y" ]
                    220: then
                    221:        su root /conf/asypatch -v $TARGET < $ASYNC
                    222: fi

unix.superglobalmegacorp.com

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