pmfile 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. -- $Source$
  2. -- $State$
  3. local d = ROOTDIR.."util/opt/"
  4. local cfile_with_headers = cfile {
  5. class = "cfile_with_headers",
  6. dynamicheaders = {
  7. file (d),
  8. }
  9. }
  10. local local_tool_opt = cprogram {
  11. class = "opt_rule",
  12. cfile_with_headers (d.."main.c"),
  13. cfile_with_headers (d.."getline.c"),
  14. cfile_with_headers (d.."lookup.c"),
  15. cfile_with_headers (d.."var.c"),
  16. cfile_with_headers (d.."process.c"),
  17. cfile_with_headers (d.."backward.c"),
  18. cfile_with_headers (d.."util.c"),
  19. cfile_with_headers (d.."alloc.c"),
  20. cfile_with_headers (d.."putline.c"),
  21. cfile_with_headers (d.."cleanup.c"),
  22. cfile_with_headers (d.."peephole.c"),
  23. cfile_with_headers (d.."flow.c"),
  24. cfile_with_headers (d.."tes.c"),
  25. cfile_with_headers (d.."reg.c"),
  26. cfile_with_headers {
  27. simple {
  28. outputs = {"%U%-pop_push.c"},
  29. command = {
  30. "awk -f %in[1]% < %in[2]% > %out%"
  31. },
  32. file (d.."pop_push.awk"),
  33. file (ROOTDIR.."etc/em_table")
  34. }
  35. },
  36. cfile_with_headers {
  37. simple {
  38. outputs = {"%U%-pattern.c"},
  39. command = {
  40. "%in[1]% %in[2]% > %out%"
  41. },
  42. cprogram {
  43. CLIBRARIES = {PARENT, "fl"},
  44. cfile {
  45. yacc {
  46. file (d.."mktab.y")
  47. },
  48. dynamicheaders = {
  49. file (d),
  50. flex {
  51. file (d.."scan.l")
  52. }
  53. },
  54. },
  55. lib_em_data,
  56. },
  57. file (d.."patterns")
  58. }
  59. },
  60. lib_em_data,
  61. lib_assert,
  62. lib_print,
  63. lib_alloc,
  64. lib_system,
  65. lib_string,
  66. outputs = {"%U%/em_opt"},
  67. }
  68. tool_opt = group {
  69. group {
  70. local_tool_opt,
  71. install = pm.install(BINDIR.."lib.bin/em_opt")
  72. },
  73. group {
  74. CDEFINES = {PARENT, "GLOBAL_OPT"},
  75. local_tool_opt,
  76. install = pm.install(BINDIR.."lib.bin/em_opt2")
  77. },
  78. }
  79. -- Revision history
  80. -- $Log$
  81. -- Revision 1.3 2006-10-15 00:28:12 dtrg
  82. -- Updated to the version 0.1 of Prime Mover (which involves some syntax changes).
  83. --
  84. -- Revision 1.2 2006/07/20 23:10:07 dtrg
  85. -- Fixed revision history.
  86. --