home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mm / ccmd / makefile.debug < prev    next >
Encoding:
Makefile  |  1990-12-18  |  3.4 KB  |  150 lines

  1. #
  2. # Copyright (c) 1986, 1990 by The Trustees of Columbia University in
  3. # the City of New York.  Permission is granted to any individual or
  4. # institution to use, copy, or redistribute this software so long as it
  5. # is not sold for profit, provided this copyright notice is retained.
  6. #
  7. # Author: Howie Kaye
  8.  
  9. .SUFFIXES: .c .o .obj .exe .a .lib .h .h4 .tmp
  10.  
  11. LOCAL=./local
  12. MACHINE=BSD
  13. CFLAGS= -g -DCCMDEBUG -I. -I$(LOCAL) -D$(MACHINE)
  14.  
  15. LIBNAME=ccmd-noran.a
  16.  
  17. INCLUDES=ccmd.h cmfnc.h cmfncs.h datime.h ccmdmd.h cmkeyval.h
  18. LOCALINCLUDES= ${LOCAL}/ccmd.h ${LOCAL}/cmfnc.h ${LOCAL}/cmfncs.h ${LOCAL}/datime.h $(LOCAL)/ccmdmd.h $(LOCAL)/cmkeyval.h
  19.  
  20. OBJ=.o
  21. EXE=
  22.  
  23. COBJS=ccmd$(OBJ) ccmdut$(OBJ) ccmdio$(OBJ) ccmdmd$(OBJ) ccmdst$(OBJ) \
  24.     stdact$(OBJ) cmcfm$(OBJ) cmkey$(OBJ) cmnum$(OBJ) cmqst$(OBJ) \
  25.     cmnoi$(OBJ) cmtxt$(OBJ) cmfld$(OBJ) cmtok$(OBJ) cmswi$(OBJ) \
  26.     cmpara$(OBJ) cmtad$(OBJ) cmmisc$(OBJ)
  27.  
  28. OBJS=ccmd$(OBJ) ccmdut$(OBJ) ccmdio$(OBJ) ccmdmd$(OBJ) ccmdst$(OBJ) \
  29.     stdact$(OBJ) cmcfm$(OBJ) cmkey$(OBJ) cmnum$(OBJ) cmqst$(OBJ) \
  30.     cmnoi$(OBJ) cmtxt$(OBJ) cmfld$(OBJ) cmtok$(OBJ) cmswi$(OBJ) \
  31.     cmpara$(OBJ) cmtad$(OBJ) cmmisc$(OBJ) cmusr$(OBJ) datime$(OBJ) \
  32.     cmfil$(OBJ) filelist$(OBJ) wild$(OBJ) cmchar$(OBJ) cmgrp$(OBJ) \
  33.     cmver$(OBJ) 
  34.  
  35. LIBS=ccmd.a -ltermlib
  36. #LIBS=-lccmd -ltermlib
  37.  
  38. RM=rm
  39. LINK=cc $(CFLAGS) -o $@ $@${OBJ} $(LIBS)
  40. COPY=cp
  41. CHMOD=chmod u+w
  42. LIBADD=ar r $(LIBNAME) $?
  43. RANLIB=ranlib $@
  44. EXT=unx
  45. SPLIT=./split$(EXE)
  46. MKDIR=mkdir
  47. RENAME=mv
  48. MAKE=make
  49.  
  50. all: test$(EXE) skel$(EXE)
  51.  
  52. ccmd: ccmd.a
  53.  
  54. split$(EXE): split$(OBJ)
  55.     $(CC) -o split split$(OBJ)
  56.  
  57. cmkeyval: cmkeyval$(OBJ)
  58.     $(CC) -o cmkeyval cmkeyval$(OBJ)
  59.  
  60. cmkeyval.h: cmkeyval
  61.     cmkeyval > cmkeyval.h
  62.  
  63. cmfnc.h: cmfnc.h4 cmconf.h4 cmcfm.cnf cmkey.cnf cmnum.cnf cmfld.cnf \
  64.      cmqst.cnf cmtxt.cnf cmswi.cnf cmtad.cnf cmtok.cnf cmnoi.cnf \
  65.      cmgnrc.cnf cmfil.cnf cmusr.cnf cmgrp.cnf cmpara.cnf split$(EXE) \
  66.      cmfnc.top cmfncs.top cmchar.cnf cmkeyval.h
  67.     m4 cmfnc.h4 > cmfnc.tmp
  68.     $(SPLIT) < cmfnc.tmp
  69.     $(RM) cmfnc.tmp
  70.  
  71. cmfncs.h: cmfnc.h
  72.  
  73. $(LOCAL): $(INCLUDES)
  74.     -$(MKDIR) $(LOCAL)
  75.  
  76. $(LOCALINCLUDES): $(INCLUDES)
  77.     -$(MKDIR) $(LOCAL)
  78.     -$(COPY) $(INCLUDES) $(LOCAL)
  79.     -$(CHMOD) $(LOCALINCLUDES)
  80.  
  81. ccmdmd.c: ccmdmd.$(EXT)
  82.     -$(COPY) ccmdmd.$(EXT) ccmdmd.c
  83.  
  84. $(COBJS): $(LOCAL) $(LOCALINCLUDES)
  85.  
  86. cmusr$(OBJ): cmusr.c $(LOCALINCLUDES) cmusr.h
  87.  
  88. datime$(OBJ): datime.c datime.h tzone.h dtpat.h
  89.  
  90. cmfil$(OBJ): cmfil.c $(LOCALINCLUDES) cmfbrk.$(EXT) filelist.h cmfil.h 
  91.  
  92. filelist$(OBJ): filelist.c $(LOCALINCLUDES) filelist.h
  93.  
  94. wild$(OBJ): wild.c
  95.  
  96. cmchar$(OBJ): cmchar.c
  97.  
  98. cmgrp$(OBJ): cmgrp.c $(LOCALINCLUDES) cmgrp.h
  99.  
  100. cmver$(OBJ): cmver.c cmver.h
  101.  
  102. $(LIBNAME): $(OBJS)
  103.     $(LIBADD)
  104.  
  105. #only for msdos
  106. # dir.${OBJ}: dir.c
  107. #    $(CC) dir.c 
  108. #
  109. # $(LIBNAME):: dir$(OBJ)
  110. #    $(LIBADD) 
  111. #end msdos only
  112.  
  113. ccmd.a:    $(LIBNAME)
  114.     $(COPY) $(LIBNAME) ccmd.a
  115.     $(RANLIB)
  116.  
  117. ask$(EXE): ask.$(OBJ)
  118.     cc -o ask ask.$(OBJ)
  119.  
  120. newversion1: ask
  121.     @echo 'Answer no unless you wish to update version info.'
  122.     -@if ( ask 'make a new version? ') then make newversion1 ; fi
  123.  
  124. newversion:
  125.     co -l cmver.h
  126.     incversion$(EXE) < cmver.h > cmver.h.new
  127.     $(RENAME) cmver.h cmver.h.old
  128.     $(RENAME) cmver.h.new cmver.h
  129.     ci -u cmver.h
  130.     $(MAKE) ccmd.a
  131.  
  132. #install: $(LOCALINCLUDES) ccmd.a newversion1
  133. install: $(LOCALINCLUDES) ccmd.a
  134.     $(COPY) ccmd.a /usr/local/lib/libccmd.a
  135.     $(RANLIB) /usr/local/lib/libccmd.a
  136.  
  137. /usr/local/lib/libccmd.a: $(LOCALINCLUDES) ccmd.a
  138.     $(MAKE) install
  139.  
  140. test$(OBJ): test.c $(LOCALINCLUDES)
  141.  
  142. test$(EXE): test$(OBJ) ccmd.a
  143.     $(LINK)
  144.  
  145. skel$(OBJ): skel.c $(LOCALINCLUDES)
  146.  
  147. skel$(EXE): skel$(OBJ) ccmd.a
  148.     $(LINK)
  149.  
  150.