home *** CD-ROM | disk | FTP | other *** search
/ APDL Public Domain 1 / APDL_PD1A.iso / program / language / gofer / Sources / original / Makefile next >
Encoding:
Makefile  |  1993-02-12  |  2.7 KB  |  89 lines

  1. .SUFFIXES    : .y .c .h .o .gs
  2. HFILES        = prelude.h storage.h connect.h errors.h command.h
  3. CFILES        = gofer.c storage.c input.c static.c type.c \
  4.           output.c compiler.c machine.c builtin.c  \
  5.           gofc.c cmachine.c cbuiltin.c runtime.c
  6. INCFILES    = parser.c preds.c prims.c kind.c subst.c \
  7.           machdep.c commonui.c
  8. GC_SRC        = markscan.c twospace.c
  9. YFILES        = parser.y
  10. SOURCES        = $(HFILES) $(CFILES) $(INCFILES) $(YFILES) prelude
  11. OBJECTS        = storage.o input.o static.o type.o compiler.o
  12. IOBJECTS    = gofer.o builtin.o  machine.o output.o $(OBJECTS)
  13. COBJECTS    = gofc.o cbuiltin.o cmachine.o $(OBJECTS)
  14. TESTS        = apr0 apr1 apr2 apr3 apr4 apr5 apr6 apr7 apr8 apr9 apr10
  15.  
  16. # Edit the following settings as required.
  17. # There are two choices of command line editor that can be used with Gofer:
  18. #
  19. #  GNU readline:        usual GNU sources (e.g. bash distribution)
  20. #  add -DUSE_READLINE=1 to CFLAGS and libreadline.a -ltermcap to LDFLAGS
  21. #                      (or maybe -lreadline -ltermcap)
  22. #
  23. #  editline:            (comp.sources.misc, vol 31, issue 71)
  24. #  add -DUSE_READLINE=1 to CFLAGS and libedit.a to LDFLAGS
  25. #                      (or maybe -ledit)
  26. #
  27. # The best bet is to `touch prelude.h' after changing these settings to
  28. # ensure that the whole collection of files is recompiled with the correct
  29. # settings.
  30.  
  31. CC        = gcc
  32. CFLAGS        = 
  33. LDFLAGS        = -lm
  34. OPTFLAGS    = -O
  35.  
  36. all        : gofer gofc runtime.o
  37.  
  38. tests        : $(TESTS)
  39.  
  40. gofer        : $(IOBJECTS)
  41.           $(CC) $(CFLAGS) $(OPTFLAGS) $(IOBJECTS) -o gofer $(LDFLAGS)
  42.           strip gofer
  43.  
  44. gofc        : $(COBJECTS)
  45.           $(CC) $(CFLAGS) $(OPTFLAGS) $(COBJECTS) -o gofc $(LDFLAGS)
  46.           strip gofc
  47.  
  48. .c.o        :
  49.           $(CC) -c $(CFLAGS) $(OPTFLAGS) $<
  50.  
  51. clean        :
  52.           rm *.o $(TESTS)
  53.  
  54. install        :
  55.           mv gofer ..
  56.  
  57. .gs        :
  58.           ./gofc $*.gs
  59.           $(CC) $(OPTFLAGS) $*.c runtime.o -o $* $(LDFLAGS)
  60.           rm $*.c
  61.           strip $*
  62.  
  63. .gp        :
  64.           ./gofc + $*.gp
  65.           $(CC) $(OPTFLAGS) $*.c runtime.o -o $* $(LDFLAGS)
  66.           rm $*.c
  67.           strip $*
  68.  
  69. parser.c    : parser.y
  70.           yacc parser.y
  71.           mv y.tab.c parser.c
  72.  
  73. gofer.o        : prelude.h storage.h connect.h errors.h \
  74.           command.h machdep.c commonui.c
  75. gofc.o        : prelude.h storage.h connect.h errors.h \
  76.           command.h machdep.c commonui.c output.c
  77. runtime.o    : prelude.h gofc.h machdep.c $(GC_SRC)
  78. storage.o    : prelude.h storage.h connect.h errors.h
  79. input.o        : prelude.h storage.h connect.h errors.h parser.c command.h
  80. static.o    : prelude.h storage.h connect.h errors.h
  81. type.o        : prelude.h storage.h connect.h errors.h preds.c kind.c subst.c
  82. output.o    : prelude.h storage.h connect.h errors.h
  83. compiler.o    : prelude.h storage.h connect.h errors.h
  84.           $(CC) -c -O1 $(CFLAGS) compiler.c
  85. machine.o    : prelude.h storage.h connect.h errors.h
  86. cmachine.o    : prelude.h storage.h connect.h errors.h
  87. builtin.o    : prelude.h storage.h connect.h errors.h prims.c
  88. cbuiltin.o    : prelude.h storage.h connect.h errors.h prims.c
  89.