Makefile 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. EMHOME = ../../..
  2. ETC = $(EMHOME)/etc
  3. INSTALL = $(EMHOME)/modules/install
  4. COMPARE = $(EMHOME)/modules/compare
  5. CFLAGS = -I$(EMHOME)/h -I$(EMHOME)/modules/h -I$(EMHOME)/modules/src/read_em -I. -O $(COPT)
  6. AR = ar
  7. SUF = o
  8. LIBSUF = a
  9. SRC = bhcst.c bhdlb.c bhdnam.c bhfcon.c bhicon.c bhilb.c bhpnam.c bhucon.c \
  10. crcst.c crdlb.c crdnam.c crxcon.c crilb.c crpnam.c crscon.c \
  11. cst.c dfdlb.c dfdnam.c dfilb.c dlb.c dnam.c end.c endarg.c \
  12. exc.c fcon.c getid.c icon.c ilb.c insert.c internerr.c \
  13. msend.c op.c opcst.c opdlb.c opdnam.c opilb.c opnarg.c oppnam.c pnam.c \
  14. pro.c pronarg.c msstart.c psdlb.c psdnam.c pspnam.c scon.c ucon.c \
  15. C_out.c failed.c em.c
  16. OBS = failed.$(SUF) insert.$(SUF) internerr.$(SUF) getid.$(SUF)
  17. .SUFFIXES: .$(SUF)
  18. .c.$(SUF):
  19. $(CC) -c $(CFLAGS) $*.c
  20. all: em_codeEK.h libeme.$(LIBSUF) libemk.$(LIBSUF) em_code.3
  21. install: all
  22. $(INSTALL) lib/libeme.$(LIBSUF)
  23. $(INSTALL) lib/libemk.$(LIBSUF)
  24. $(INSTALL) man/em_code.3
  25. $(INSTALL) h/em_codeEK.h
  26. compare: all
  27. -$(COMPARE) lib/libeme.$(LIBSUF)
  28. -$(COMPARE) lib/libemk.$(LIBSUF)
  29. -$(COMPARE) man/em_code.3
  30. -$(COMPARE) h/em_codeEK.h
  31. em_code.3: em_code.3X
  32. -sh -c 'tbl < em_code.3X > em_code.3'
  33. -sh -c 'if test -s em_code.3 ; then : ; else cp em_code.3X em_code.3 ; fi '
  34. libeme.$(LIBSUF): em_private.h $(SRC) $(OBS)
  35. EMHOME=$(EMHOME); cc="$(CC)"; suf="$(SUF)"; libsuf="$(LIBSUF)"; cflags="-c -DREADABLE_EM $(CFLAGS)"; ar="$(AR)"; export EMHOME cc ar suf libsuf cflags; sh make.sh e $(SRC)
  36. -sh -c 'ranlib libeme.$(LIBSUF)'
  37. libemk.$(LIBSUF): em_private.h $(SRC) $(OBS)
  38. EMHOME=$(EMHOME); cc="$(CC)"; suf="$(SUF)"; libsuf="$(LIBSUF)"; cflags="-c $(CFLAGS)"; ar="$(AR)"; export EMHOME cc ar suf libsuf cflags; sh make.sh k $(SRC)
  39. -sh -c 'ranlib libemk.$(LIBSUF)'
  40. em_codeEK.h: make.em.gen $(ETC)/em_table em.nogen
  41. make.em.gen $(ETC)/em_table > em_codeEK.h
  42. cat em.nogen >> em_codeEK.h
  43. pr:
  44. @pr Makefile em.nogen make.em.gen make.sh insert.h $(SRC) em_private.h
  45. opr:
  46. make pr | opr
  47. clean:
  48. rm -f *.$(SUF) *.$(LIBSUF) em_code.3 em_codeEK.h
  49. lintlib: make.sh
  50. lint -I. -I../../h -I../../../h -Ceme -DREADABLE_EM $(SRC)
  51. lint -I. -I../../h -I../../../h -Cemk $(SRC)
  52. mv llib-leme.ln llib-lemk.ln $(EMHOME)/modules/lib
  53. insert.$(SUF): insert.c insert.h
  54. $(CC) $(CFLAGS) -c insert.c