Annotation of researchv10dc/vol2/Ucds/hw.mkfile, revision 1.1.1.1

1.1       root        1: NPROC=3
                      2: HWLIB=/n/coma/usr/tom/hw/lib
                      3: PINLIB=$HWLIB/*.pins /n/coma/usr/ucds/lib/lib/pins
                      4: PKGLIB=$HWLIB/*.pkg
                      5: 
                      6: ENVIRON="$ENVIRON
                      7: upper(){
                      8:        echo \$* | tr a-z A-Z
                      9: }
                     10: paltype(){
                     11:        sed -n '/^\.t[  ]/{
                     12:                s/.*PAL//p
                     13:                q
                     14:        }' \$1
                     15: }"
                     16: 
                     17: WFILES=${JFILES:%.j=%.w}
                     18: GFILES=${JFILES:%.j=%.g}
                     19: AFILES=${JFILES:%.j=%.a}
                     20: FILES=${JFILES:%.j=%}
                     21: PALP=${PAL:%.e=%.p}
                     22: MIN=${PAL:%.e=%.min}
                     23: 
                     24: WHAT='again|annotate|check|clip|commit|draw|fix|list|net|pins|place|schematics|smoke|wr|wrap'
                     25: 
                     26: ^($WHAT)\$:RN: $NAME.\\1
                     27: 
                     28: %.p: %.e
                     29:        lde -W $stem.e >$stem.p
                     30: 
                     31: %.min: %.e %.p
                     32:        lde -a $stem.e | quine | cover | hazard >$stem.ng
                     33:        pal -d `paltype $stem.p` $stem.ng >/dev/null
                     34:        mv $stem.ng $stem.min
                     35: 
                     36: '^([^.]+)\.drom\.([^.]+)$':R: \\1.min \\1.p
                     37:        man=`upper $stem2`
                     38:        type=`paltype $stem1.p`
                     39:        pal -d $type $stem1.min | tee to | drom -w -t$man$type
                     40:        sleep 5
                     41:        drom -t$man$type >from
                     42:        cmp to from
                     43: 
                     44: %.w: %.j
                     45:        jraw -w -k $stem.j | sed 's/\$N00/$'$stem'/' >$stem.w
                     46: 
                     47: %.w: %.g
                     48:        jraw -w $stem.g | sed 's/\$N00/$'$stem'/' >$stem.w
                     49: 
                     50: %.a: %.j %.w $NAME.wx
                     51:        annotate $NAME.wx $stem.w
                     52:        cat $stem.j >>$stem.a   
                     53: 
                     54: %.A:V: %.g %.w $NAME.wx
                     55:        Annotate $NAME.wx $stem.w
                     56:        cat $stem.g >>$stem.a   
                     57: 
                     58: %.annotate: $WFILES $NAME.wx
                     59:        Annotate $NAME.wx $WFILES
                     60:        for i in $FILES
                     61:        do
                     62:                cat $i.g >>$i.a
                     63:        done
                     64: 
                     65: %.schematics: %.annotate
                     66:        grawp $AFILES | pic | troff | gcan
                     67: 
                     68: %.list:Q: $NAME.wx
                     69:        wxlist $prereq
                     70: 
                     71: %.smoke: %.wx %.pins
                     72:        smoke -px $prereq >eyes
                     73: 
                     74: %.fx: %.wx
                     75:        fizz cvt $stem.wx >$stem.fx
                     76: 
                     77: %.place: %.brd %.pkg %.fx
                     78:        if [ ! -f $stem.pos ]; then touch $stem.pos; fi
                     79:        cat $prereq >$stem.-pos
                     80:        fizz place $stem.-pos $stem.pos
                     81:        rm $stem.-pos
                     82: 
                     83: %.check: %.brd %.pkg %.fx %.pos
                     84:        fizz check -uw $prereq
                     85: 
                     86: %.clip: %.brd %.pkg %.fx %.pos
                     87:        fizz clip $prereq
                     88: 
                     89: %.draw:Q: %.brd %.pkg %.fx %.pos
                     90:        fizz draw -p $prereq
                     91: 
                     92: %.wr: %.brd %.pkg %.fx %.pos
                     93:        fizz wrap -c -v $prereq >N$target
                     94:        if [ -f $target ]; then
                     95:                rework $target N$target && mv NEW.wr N$target
                     96:        else
                     97:                mv N$target $target
                     98:        fi
                     99: 
                    100: %.wrap:Q:
                    101:        if [ -f N$stem.wr ]; then
                    102:                wrap -s -r$ORIENT -d30 UN.wr
                    103:                wrap -s -r$ORIENT -d30 RE.wr
                    104:        else
                    105:                wrap -s -r$ORIENT -d30 $stem.wr
                    106:        fi
                    107: 
                    108: %.fix:
                    109:        wrap -s -r$ORIENT -d30 fix.wr
                    110: 
                    111: %.commit:
                    112:        mv N$stem.wr $stem.wr && rm -f UN.wr RE.wr .lastwire
                    113: 
                    114: $NAME.pins: $WFILES $PALP my.pins io.pins
                    115:        ucds mkpins $prereq $PINLIB >pins.ng 2>errors
                    116:        sed '/^\.[tT][tT]/s/[zZ]/g/g' pins.ng >$target
                    117:        rm pins.ng
                    118: 
                    119: $NAME.wx: $NAME.pins $WFILES 
                    120:        ucds cdmglob -f -v $prereq >$NAME.wX 2>errors
                    121:        sed '
                    122:                /\/\//s/        .*\/\// /
                    123:                /\.\//s/\([     ][      ]*[^/][^/]*\)\/.*\/\.\(\/.*\)/\1\2/
                    124:                s/      \//     /
                    125:        ' $NAME.wX >$target
                    126:        rm $NAME.wX
                    127: 
                    128: $NAME.pkg: $NAME.wx my.pkg $PKGLIB
                    129:        getpkgs $prereq >pkg.ng 2>errors
                    130:        mv pkg.ng $target
                    131: 
                    132: pal:Q: $MIN
                    133:        for i in $PALP
                    134:        do
                    135:                echo -n $i
                    136:                echo `paltype $i` | findparts -n
                    137:        done
                    138: 
                    139: my.pkg my.pins io.pins:
                    140:        touch $target
                    141: 
                    142: name:
                    143:        whatis NAME JFILES PAL WFILES GFILES FILES PALP MIN
                    144: 
                    145: TIDYLIST='*.ng fizz.* mon.out core eyes errors from to'
                    146: tidy:
                    147:        rm -f $TIDYLIST
                    148: clean:
                    149:        rm -f $NAME.pins $NAME.pkg *.[pw] *.[fw]x *.min $TIDYLIST

unix.superglobalmegacorp.com

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