Makefile 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. # $Header$
  2. EMHOME=../../..
  3. h=$(EMHOME)/h
  4. m=$(EMHOME)/modules/h
  5. LIBDIR= $(EMHOME)/modules/lib
  6. LIBDIR2= $(EMHOME)/lib
  7. CFLAGS = -I$h -I$m -O
  8. FILES= bem.o symbols.o initialize.o compile.o \
  9. parsepar.o gencode.o util.o graph.o \
  10. eval.o func.o basic.o Lpars.o
  11. CSRCFILES= bem.c symbols.c initialize.c compile.c \
  12. parsepar.c gencode.c util.c graph.c \
  13. eval.c func.c
  14. CGENFILES= basic.c Lpars.c
  15. CFILES=$(CSRCFILES) $(CGENFILES)
  16. LIBFILES= $(LIBDIR)/libem_mes.a $(LIBDIR)/libemk.a \
  17. $(LIBDIR2)/em_data.a $(LIBDIR)/libprint.a \
  18. $(LIBDIR)/liballoc.a \
  19. $(LIBDIR)/libsystem.a $(LIBDIR)/libstring.a
  20. LINTLIBFILES= $(LIBDIR)/llib-lem_mes.ln $(LIBDIR)/llib-lemk.ln \
  21. $(LIBDIR)/llib-lprint.ln \
  22. $(LIBDIR)/llib-lalloc.ln \
  23. $(LIBDIR)/llib-lsystem.ln $(LIBDIR)/llib-lstring.ln
  24. all: dummy bem
  25. dummy: basic.g
  26. LLgen basic.g
  27. touch dummy
  28. install: all
  29. cp bem $(EMHOME)/lib/em_bem
  30. cmp: all
  31. cmp bem $(EMHOME)/lib/em_bem
  32. pr:
  33. @pr Makefile maketokentab bem.h symbols.h graph.h basic.g basic.lex $(CSRCFILES)
  34. opr:
  35. make pr | opr
  36. bem: $(FILES) $(LIBFILES)
  37. $(CC) -o bem $(FILES) $(LIBFILES)
  38. basic.o : basic.c basic.lex Lpars.h llmess.c tokentab.h
  39. $(CC) $(CFLAGS) -c basic.c
  40. $(FILES): bem.h symbols.h graph.h
  41. tokentab.h: Lpars.h
  42. maketokentab
  43. lint: dummy $(CFILES) tokentab.h
  44. lint -b $(CFLAGS) $(CFILES) $(LINTLIBFILES)
  45. clean:
  46. rm -f *.o
  47. rm -f basic.c Lpars.h Lpars.c dummy tokentab.h bem