Annotation of researchv10no/cmd/worm/scsi/mkfile, revision 1.1.1.1

1.1       root        1: SYS=research
                      2: < $SYS.mk
                      3: CFLAGS="$CFLAGS -A"
                      4: JL=juke.a
                      5: X=shelves jinit cold warm load allocate # getstatus iodr_sh lib
                      6: JLIB=${X:%=$JL(%.o)}
                      7: JSRC=${X:%=%.c}
                      8: 
                      9: SL=scsi.a
                     10: X=s_$IO ge_sense s_volid s_pperror s_fixedstr s_longat s_xd
                     11: SLIB=${X:%=$SL(%.o)}
                     12: 
                     13: SHL=scsish.a
                     14: GENERIC=ge_dev ge_inq ge_capacity ge_display ge_stop ge_start\
                     15:        ge_reset ge_tur ge_scsi ge_readt ge_read # ge_sense in $SL
                     16: SONY=so_dev so_inq so_alt so_config so_sense \
                     17:        so_i0.tab so_i1.tab so_scsi.tab so_nesd.tab \
                     18:        so_status so_set so_shelfside so_diskid so_copy so_eject \
                     19:        so_media so_rel so_internal so_readid so_juke
                     20: WREN=wr_dev wr_inq wr_driver wr_elite wr_mpage wr_wren5 #wr_rmode wr_wmode wr_diag
                     21: X=$GENERIC $SONY $WREN
                     22: SHLIB=${X:%=$SHL(%.o)}
                     23: 
                     24: TL=tcl.a
                     25: X=tclAssem tclBasic tclCmdAH tclCmdIZ tclExpr tclGlob tclHistory\
                     26:        tclProc tclUtil
                     27: TLIB=${X:%=$TL(%.o)}
                     28: 
                     29: all:V: scsish jukebox
                     30: 
                     31: both:V:        ../jukebox ../scsish
                     32: 
                     33: ../%:  %
                     34:        cp $prereq $target
                     35: 
                     36: jukebox:       jukebox.o $JL $SHL $SL
                     37:        $CC $CFLAGS -o $target $prereq $LDFLAGS
                     38: 
                     39: scsish:        scsish.o $SHL $SL $TL
                     40:        $CC $CFLAGS -o $target $prereq $LDFLAGS
                     41: 
                     42: jpp:V:
                     43:        pr mkfile juke.h scsi.h jukebox.c $JSRC | lp -ddp -n2
                     44: 
                     45: poot:V:        scsish
                     46:        echo 'id 5; dev wren
                     47:        modesense; modeselect gc maxpref 23' | scsish
                     48:        #echo capacity 0 | scsish
                     49: 
                     50: poot1:V:       scsish
                     51:        echo 'read 0 2644042 10 temp' | scsish
                     52:        ls -l temp
                     53: 
                     54: scsi.cpio:V:   inc/scsi.h
                     55:        find * -print | sed -e '/\.[oa]$/d' -e '/\.cpio$/d' | cpio -oc > $target
                     56: inc/scsi.h:Pcmp -s:    /usr/include/scsi.h
                     57:        cp $prereq $target
                     58: 
                     59: 
                     60: # below is just magic; believe it.
                     61: 
                     62: $JL(%.o):N:    %.o
                     63: $JL:Q: $JLIB
                     64:        names=`membername $newprereq`
                     65:        ar rv $JL $names && rm $names
                     66:        $RANLIB $JL
                     67: 
                     68: $SL(%.o):N:    %.o
                     69: $SL:Q: $SLIB
                     70:        names=`membername $newprereq`
                     71:        ar rv $SL $names && rm $names
                     72:        $RANLIB $SL
                     73: 
                     74: $SHL(%.o):N:   %.o
                     75: $SHL:Q:        $SHLIB
                     76:        names=`membername $newprereq`
                     77:        ar rv $SHL $names && rm $names
                     78:        $RANLIB $SHL
                     79: 
                     80: $TL(%.o):N:    %.o
                     81: $TL:Q: $TLIB
                     82:        names=`membername $newprereq`
                     83:        ar rv $TL $names && rm $names
                     84:        $RANLIB $TL
                     85: 
                     86: s_%.o: scsi/%.c
                     87:        cd scsi; $CC $CFLAGS -c $stem.c && mv $stem.o ../$target
                     88: so_%.o:        sony/%.c
                     89:        cd sony; $CC $CFLAGS -c $stem.c && mv $stem.o ../$target
                     90: so_%.o:        sony/fns.h
                     91: ge_%.o:        generic/%.c
                     92:        cd generic; $CC $CFLAGS -c $stem.c && mv $stem.o ../$target
                     93: ge_%.o:        generic/fns.h
                     94: wr_%.o:        wren/%.c
                     95:        cd wren; $CC $CFLAGS -c $stem.c && mv $stem.o ../$target
                     96: wr_%.o:        wren/fns.h
                     97: so_%.o wr_%.o ge_%.o:  scsish.h scsi.h
                     98: s_%.o: scsi.h
                     99: tcl%.o:        tcl/tcl%.c
                    100:        cd tcl; $CC $CFLAGS -c -I. -DTCL_VERSION=\"3.3\" -I.. tcl$stem.c && mv tcl$stem.o ../$target
                    101: tcl%.o:        tcl.h
                    102: 
                    103: so_%.tab.o:Q:  sony/%.tab
                    104:        cd sony
                    105:        echo generating $target
                    106:        p=$stem.tab
                    107:        awk -F' ' '
                    108:        BEGIN   { h["0"]=0;h["1"]=1;h["2"]=2;h["3"]=3;h["4"]=4;h["5"]=5;h["6"]=6;h["7"]=7;
                    109:                h["8"]=8;h["9"]=9;h["a"]=10;h["b"]=11;h["c"]=12;h["d"]=13;h["e"]=14;h["f"]=15;
                    110:                }
                    111:        function done(  i){
                    112:                for(i = 0; i < 256; i++) if(x[i]){
                    113:                                print "\t\"" x[i] "\","
                    114:                                x[i] = ""
                    115:                        } else printf "\t\"<#%x>\",\n", i
                    116:                print "};"
                    117:        }
                    118:        function hex(n, i){
                    119:                return(h[substr(n, 1, 1)]*16+h[substr(n, 2, 1)]);
                    120:        }
                    121:        NF == 1 { if(NR > 1) done(); print "char *" $1 "[] = {" }
                    122:        NF > 1  { x[hex($1)] = $2; }
                    123:        END     { done(); }' < $p > $p.c && $CC $CFLAGS -c $p.c && mv $p.o ../$target
                    124:        rm $p.c

unix.superglobalmegacorp.com

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