12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- TMP=tmp$$
- cat $* >$TMP
- ed - $TMP <<'--EOI--'
- g/^%/d
- g/^$/d
- g/^ /.-1,.j
- 1,$s/[ ]*|[ ]*/|/g
- g/NOTIMPLEMENTED/d
- 1,$s/\([^|]*\)|\([^|]*\)|\(.*\)$/\
- NAME \1\
- HEAD \1\
- PLST \2\
- DECL \2\
- BODY \3/
- $a
- END
- .
- g/^NAME/m$
- g/^PLST/s/[ ][ ]*\([^:]*\):\([^ ]*\)/,\2/g
- g/^PLST,/s//PLST /
- g/^PLST /s/^PLST \(.*\)$/(\1)/
- g/^HEAD/.,.+1j
- g/^HEAD /s/^HEAD \([^(]*\)\(.*\)$/cat >\1.c <<'--EOF--'\
- #include "em_private.h"\
- \
- \1\2/
- g/^DECL/s/[ ][ ]*\([^:]*\):\([^ ]*\)/\
- \1 \2;/g
- g/^DECL/d
- g/^BODY/s/^BODY \(.*\)$/{\
- \1;\
- }\
- --EOF--/
- 1,/^END/-1p
- 1,/^END/d
- g:^NAME:s:^NAME \(.*\)$:cc -c -O -I$1 -I$EMHOME/modules/h -I$EMHOME/h \1.c:
- 1i
- cat >make.sh <<'--EOF--'
- : script for making lib
- rm -f C_*.o
- .
- $a
- rm -f libem$1.a
- cc -c -O -I. -I$1 -I$EMHOME/modules/h -I$EMHOME/h $1/em.c
- mv em.o em$1.o
- ar rc libem$1.a C_*.o em$1.o insert.o failed.o internerr.o getid.o
- rm -f C_*.o
- --EOF--
- .
- 1,$p
- --EOI--
- rm -f $TMP
|