proto.make 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. # $Id$
  2. #PARAMS do not remove this line
  3. SRC_DIR = $(SRC_HOME)/util/LLgen/src
  4. LIBDIR = $(TARGET_HOME)/lib/LLgen
  5. INCLUDES = -I$(SRC_DIR) -I.
  6. LIBDIRSTR = \"$(LIBDIR)\"
  7. DEFINES = -DNDEBUG -DNON_CORRECTING
  8. CFLAGS = $(DEFINES) $(INCLUDES) $(COPTIONS)
  9. LDFLAGS=$(LDOPTIONS)
  10. LINTFLAGS=$(LINTOPTIONS) $(DEFINES) $(INCLUDES) -DNORCSID
  11. LLOPT= # -vvv -x
  12. OBJECTS = main.$(SUF) gencode.$(SUF) compute.$(SUF) LLgen.$(SUF) tokens.$(SUF) \
  13. check.$(SUF) reach.$(SUF) global.$(SUF) name.$(SUF) sets.$(SUF) \
  14. Lpars.$(SUF) alloc.$(SUF) machdep.$(SUF) cclass.$(SUF) savegram.$(SUF)
  15. CSRC = $(SRC_DIR)/main.c $(SRC_DIR)/gencode.c $(SRC_DIR)/compute.c \
  16. $(SRC_DIR)/check.c $(SRC_DIR)/reach.c $(SRC_DIR)/global.c \
  17. $(SRC_DIR)/name.c $(SRC_DIR)/sets.c $(SRC_DIR)/alloc.c \
  18. $(SRC_DIR)/machdep.c $(SRC_DIR)/cclass.c $(SRC_DIR)/savegram.c
  19. CFILES = LLgen.c tokens.c Lpars.c $(CSRC)
  20. GFILES = $(SRC_DIR)/tokens.g $(SRC_DIR)/LLgen.g
  21. FILES = $(SRC_DIR)/types.h $(SRC_DIR)/extern.h \
  22. $(SRC_DIR)/io.h $(SRC_DIR)/sets.h \
  23. $(GFILES) $(CSRC) $(SRC_DIR)/proto.make
  24. all: parser
  25. @make LLgen "LDFLAGS=$(LDFLAGS)" "CC=$(CC)" "CFLAGS=$(CFLAGS)" "LIBDIR=$(LIBDIR)"
  26. parser: $(GFILES)
  27. LLgen $(LLOPT) $(GFILES)
  28. @touch parser
  29. first: firstparser
  30. @make LLgen "LDFLAGS=$(LDFLAGS)" "CC=$(CC)" "CFLAGS=$(CFLAGS)" "LIBDIR=$(LIBDIR)"
  31. firstparser:
  32. cp $(SRC_DIR)/LLgen.c.dist LLgen.c
  33. cp $(SRC_DIR)/tokens.c.dist tokens.c
  34. cp $(SRC_DIR)/Lpars.c.dist Lpars.c
  35. cp $(SRC_DIR)/Lpars.h.dist Lpars.h
  36. @touch parser
  37. LLgen: $(OBJECTS)
  38. $(CC) $(LDFLAGS) $(OBJECTS) $(TARGET_HOME)/modules/lib/libsystem.$(LIBSUF) -o LLgen
  39. pr :
  40. @pr $(FILES) $(SRC_HOME)/util/LLgen/lib/rec $(SRC_HOME)/util/LLgen/lib/incl
  41. lint: parser
  42. $(LINT) $(LINTFLAGS) -DLIBDIR=$(LIBDIRSTR) $(CFILES)
  43. clean:
  44. -rm -f *.$(SUF) LL.temp LL.xxx LL.output LLgen LLgen.c tokens.c Lpars.[ch] parser
  45. distr:
  46. -rm -f parser
  47. make parser
  48. cp Lpars.c $(SRC_DIR)/Lpars.c.dist
  49. cp Lpars.h $(SRC_DIR)/Lpars.h.dist
  50. cp LLgen.c $(SRC_DIR)/LLgen.c.dist
  51. cp tokens.c $(SRC_DIR)/tokens.c.dist
  52. LLgen.$(SUF): LLgen.c
  53. $(CC) -c $(CFLAGS) LLgen.c
  54. LLgen.$(SUF): Lpars.h
  55. LLgen.$(SUF): $(SRC_DIR)/cclass.h
  56. LLgen.$(SUF): $(SRC_DIR)/extern.h
  57. LLgen.$(SUF): $(SRC_DIR)/io.h
  58. LLgen.$(SUF): $(SRC_DIR)/types.h
  59. Lpars.$(SUF): Lpars.c
  60. $(CC) -c $(CFLAGS) Lpars.c
  61. Lpars.$(SUF): Lpars.h
  62. alloc.$(SUF): $(SRC_DIR)/alloc.c
  63. $(CC) -c $(CFLAGS) $(SRC_DIR)/alloc.c
  64. alloc.$(SUF): $(SRC_DIR)/extern.h
  65. alloc.$(SUF): $(SRC_DIR)/types.h
  66. cclass.$(SUF): $(SRC_DIR)/cclass.c
  67. $(CC) -c $(CFLAGS) $(SRC_DIR)/cclass.c
  68. cclass.$(SUF): $(SRC_DIR)/cclass.h
  69. check.$(SUF): $(SRC_DIR)/check.c
  70. $(CC) -c $(CFLAGS) $(SRC_DIR)/check.c
  71. check.$(SUF): $(SRC_DIR)/extern.h
  72. check.$(SUF): $(SRC_DIR)/io.h
  73. check.$(SUF): $(SRC_DIR)/sets.h
  74. check.$(SUF): $(SRC_DIR)/types.h
  75. compute.$(SUF): $(SRC_DIR)/compute.c
  76. $(CC) -c $(CFLAGS) $(SRC_DIR)/compute.c
  77. compute.$(SUF): $(SRC_DIR)/extern.h
  78. compute.$(SUF): $(SRC_DIR)/io.h
  79. compute.$(SUF): $(SRC_DIR)/sets.h
  80. compute.$(SUF): $(SRC_DIR)/types.h
  81. gencode.$(SUF): $(SRC_DIR)/gencode.c
  82. $(CC) -c $(CFLAGS) $(SRC_DIR)/gencode.c
  83. gencode.$(SUF): $(SRC_DIR)/cclass.h
  84. gencode.$(SUF): $(SRC_DIR)/extern.h
  85. gencode.$(SUF): $(SRC_DIR)/io.h
  86. gencode.$(SUF): $(SRC_DIR)/sets.h
  87. gencode.$(SUF): $(SRC_DIR)/types.h
  88. global.$(SUF): $(SRC_DIR)/global.c
  89. $(CC) -c $(CFLAGS) $(SRC_DIR)/global.c
  90. global.$(SUF): $(SRC_DIR)/extern.h
  91. global.$(SUF): $(SRC_DIR)/io.h
  92. global.$(SUF): $(SRC_DIR)/types.h
  93. machdep.$(SUF): $(SRC_DIR)/machdep.c
  94. $(CC) -c $(CFLAGS) -DUSE_SYS -DLIBDIR=$(LIBDIRSTR) $(SRC_DIR)/machdep.c
  95. machdep.$(SUF): $(SRC_DIR)/types.h
  96. main.$(SUF): $(SRC_DIR)/main.c
  97. $(CC) -c $(CFLAGS) $(SRC_DIR)/main.c
  98. main.$(SUF): $(SRC_DIR)/extern.h
  99. main.$(SUF): $(SRC_DIR)/io.h
  100. main.$(SUF): $(SRC_DIR)/sets.h
  101. main.$(SUF): $(SRC_DIR)/types.h
  102. name.$(SUF): $(SRC_DIR)/name.c
  103. $(CC) -c $(CFLAGS) $(SRC_DIR)/name.c
  104. name.$(SUF): $(SRC_DIR)/extern.h
  105. name.$(SUF): $(SRC_DIR)/io.h
  106. name.$(SUF): $(SRC_DIR)/types.h
  107. reach.$(SUF): $(SRC_DIR)/reach.c
  108. $(CC) -c $(CFLAGS) $(SRC_DIR)/reach.c
  109. reach.$(SUF): $(SRC_DIR)/extern.h
  110. reach.$(SUF): $(SRC_DIR)/io.h
  111. reach.$(SUF): $(SRC_DIR)/types.h
  112. sets.$(SUF): $(SRC_DIR)/sets.c
  113. $(CC) -c $(CFLAGS) $(SRC_DIR)/sets.c
  114. sets.$(SUF): $(SRC_DIR)/extern.h
  115. sets.$(SUF): $(SRC_DIR)/sets.h
  116. sets.$(SUF): $(SRC_DIR)/types.h
  117. tokens.$(SUF): tokens.c
  118. $(CC) -c $(CFLAGS) tokens.c
  119. tokens.$(SUF): Lpars.h
  120. tokens.$(SUF): $(SRC_DIR)/cclass.h
  121. tokens.$(SUF): $(SRC_DIR)/extern.h
  122. tokens.$(SUF): $(SRC_DIR)/io.h
  123. tokens.$(SUF): $(SRC_DIR)/types.h
  124. savegram.$(SUF): $(SRC_DIR)/savegram.c
  125. $(CC) -c $(CFLAGS) $(SRC_DIR)/savegram.c
  126. savegram.$(SUF): $(SRC_DIR)/types.h
  127. savegram.$(SUF): $(SRC_DIR)/extern.h
  128. savegram.$(SUF): $(SRC_DIR)/io.h
  129. savegram.$(SUF): $(SRC_DIR)/sets.h