home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d1xx / d156 / flex.lha / Flex / Flex2 / Makefile < prev    next >
Makefile  |  1988-10-02  |  2KB  |  105 lines

  1. # make file for "flex" tool
  2.  
  3. # modified for Amiga and Aztec C. uses bison instead of yacc
  4.  
  5. # the first time around use "make first_flex"
  6.  
  7. SKEL_FILE = ":lib/flex.skel"
  8. F_SKEL_FILE = ":lib/flex.fastskel"
  9. SKEL = -DDEFAULT_SKELETON_FILE=$(SKEL_FILE) -DFAST_SKELETON_FILE=$(F_SKEL_FILE)
  10. CC = cc
  11. LD = ln
  12. CFLAGS = -b -n -dAMIGA
  13. LDFLAGS = -g
  14. LIBS = -lgnu -lc
  15.  
  16. FLEX_FLAGS = -ist
  17. FLEX = :c/flex
  18.  
  19. FLEXOBJS = \
  20.     ccl.o \
  21.     dfa.o \
  22.     ecs.o \
  23.     main.o \
  24.     misc.o \
  25.     nfa.o \
  26.     parse.o \
  27.     scan.o \
  28.     sym.o \
  29.     tblcmp.o \
  30.     yylex.o
  31.  
  32. FLEX_C_SOURCES = \
  33.     ccl.c \
  34.     dfa.c \
  35.     ecs.c \
  36.     main.c \
  37.     misc.c \
  38.     nfa.c \
  39.     parse.c \
  40.     scan.c \
  41.     sym.c \
  42.     tblcmp.c \
  43.     yylex.c
  44.  
  45. flex : $(FLEXOBJS)
  46.     $(LD) -o ram:flex $(LDFLAGS) $(FLEXOBJS) $(LIBS)
  47.     cp ram:flex* .
  48.     delete ram:flex*
  49.  
  50. first_flex:
  51.     cp scan.c.dist scan.c
  52.     make $(MFLAGS) flex
  53.  
  54. parse.h parse.c : parse.y
  55.     - delete parse.c parse.h
  56.     :c/bison -d parse.y
  57.     rename parse.tab.c parse.c
  58.     rename parse.tab.h parse.h
  59.  
  60. # comment-out the next two lines after a successful "make test" and
  61. # comment-in the following two lines.
  62.  
  63. scan.c : scan.l
  64.     $(FLEX) >scan.c $(FLEX_FLAGS) scan.l
  65.  
  66. scan.o : scan.c parse.h flexskeldef.h flexdef.h
  67.     cc $(CFLAGS) -Y150 -o scan.o scan.c
  68.  
  69. #scan.o : scan.c.dist parse.h flexskeldef.h flexdef.h
  70. #    cc $(CFLAGS) -Y150 -o scan.o scan.c.dist
  71.  
  72. main.o : main.c flexdef.h
  73.     cc $(CFLAGS) $(SKEL) main.c
  74.  
  75. parse.o : parse.c flexdef.h
  76.  
  77. tblcmp.o : tblcmp.c flexdef.h
  78.     cc $(CFLAGS) -E160 tblcmp.c
  79.  
  80. ccl.o : ccl.c flexdef.h
  81.  
  82. dfa.o : dfa.c flexdef.h
  83.  
  84. ecs.o : ecs.c flexdef.h
  85.  
  86. misc.o : misc.c flexdef.h
  87.  
  88. nfa.o : nfa.c flexdef.h
  89.  
  90. scan.o : scan.c flexskeldef.h flexdef.h parse.h flexskelcom.h
  91.  
  92. sym.o : sym.c flexdef.h
  93.  
  94. yylex.o : yylex.c flexdef.h parse.h
  95.  
  96. flex.lint : $(FLEX_C_SOURCES)
  97.     @echo "Expect a \"may be used before set\" and 2 \"unused\"'s
  98.     lint $(FLEX_C_SOURCES) > flex.lint
  99.  
  100. clean :
  101.     rm -f core errs flex *.o parse.c *.lint parse.h
  102.  
  103. test :
  104.     $(FLEX) $(FLEX_FLAGS) scan.l | diff scan.c -
  105.