make.em.gen 665 B

123456789101112131415161718
  1. #!/bin/sh
  2. echo "/* this part is generated from $1 at: " `date` "*/"
  3. ed -s $1 <<'EOI'
  4. 1,/^$/d
  5. 1,/^$/d
  6. 1,$s/^\(...\) \(.\).*/\1:\2/
  7. g/:d/s/^\(...\):\(.\).*/#define C_\1(c) CC_opcst(op_\1, c)/
  8. g/:[cslnfzor]/s/^\(...\):\(.\).*/#define C_\1(c) CC_opcst(op_\1, c)/
  9. g/:w/s/^\(...\).*/#define C_\1(w) CC_opcst(op_\1, w)\
  10. #define C_\1_narg() CC_opnarg(op_\1)/
  11. g/:g/s/^\(...\).*/#define C_\1(g) CC_opcst(op_\1, g)\
  12. #define C_\1_dnam(g, o) CC_opdnam(op_\1, g, o)\
  13. #define C_\1_dlb(g, o) CC_opdlb(op_\1, g, o)/
  14. g/:p/s/^\(...\).*/#define C_\1(p) CC_oppnam(op_\1, p)/
  15. g/:b/s/^\(...\).*/#define C_\1(b) CC_opilb(op_\1, b)/
  16. g/:-/s/^\(...\).*/#define C_\1() CC_op(op_\1)/
  17. 1,$p
  18. EOI