home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Internet Tools 1993 July / Internet Tools.iso / RockRidge / mail / mm / ccmd / makefile.bsd < prev    next >
Encoding:
Makefile  |  1990-12-18  |  7.0 KB  |  383 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. OS          =    BSD
  8.  
  9. MAKEFILE      = Makefile
  10.  
  11. DEBUGOPT      = -O
  12.  
  13. DEFINES          =    -D$(OS)
  14.  
  15. CFLAGS        = $(DEBUGOPT) $(DEFINES)
  16.  
  17. OSLIBS          =
  18.  
  19. DEST          = /usr/local/lib
  20.  
  21. CPP          =    /lib/cpp $(DEFINES)
  22.  
  23. CO          =    co
  24. CI          =    ci
  25.  
  26. SHELL          = /bin/sh
  27.  
  28. M4FILES       = cmfnc.h4 \
  29.         cmconf.h4 \
  30.         cmfnc.top \
  31.         cmfncs.top \
  32.         cmcfm.cnf \
  33.         cmchar.cnf \
  34.         cmfil.cnf \
  35.         cmfld.cnf \
  36.         cmgnrc.cnf \
  37.         cmgrp.cnf \
  38.         cmkey.cnf \
  39.         cmnoi.cnf \
  40.         cmnum.cnf \
  41.         cmpara.cnf \
  42.         cmqst.cnf \
  43.         cmswi.cnf \
  44.         cmtad.cnf \
  45.         cmtok.cnf \
  46.         cmtxt.cnf \
  47.         cmusr.cnf
  48.  
  49. HDRS          = ccmd.h \
  50.         ccmdmd.h \
  51.         cmfil.h \
  52.         cmfnc.h \
  53.         cmfncs.h \
  54.         cmgrp.h \
  55.         cmkeyval.h \
  56.         cmusr.h \
  57.         cmver.h \
  58.         datime.h \
  59.         dtpat.h \
  60.         filelist.h \
  61.         machdep.h \
  62.         tzone.h
  63.  
  64. LIBRARY          = ccmd.a
  65.  
  66. OBJS          =    ccmd.o \
  67.         ccmdio.o \
  68.         ccmdmd.o \
  69.         ccmdst.o \
  70.         ccmdut.o \
  71.         cmcfm.o \
  72.         cmchar.o \
  73.         cmfil.o \
  74.         cmfld.o \
  75.         cmgrp.o \
  76.         cmkey.o \
  77.         cmmisc.o \
  78.         cmnoi.o \
  79.         cmnum.o \
  80.         cmpara.o \
  81.         cmqst.o \
  82.         cmswi.o \
  83.         cmtad.o \
  84.         cmtok.o \
  85.         cmtxt.o \
  86.         cmusr.o \
  87.         cmver.o \
  88.         datime.o \
  89.         dir.o \
  90.         filelist.o \
  91.         stdact.o \
  92.         wild.o
  93.  
  94. SRCS          = ccmd.c \
  95.         ccmdio.c \
  96.         ccmdmd.c \
  97.         ccmdst.c \
  98.         ccmdut.c \
  99.         cmcfm.c \
  100.         cmchar.c \
  101.         cmfil.c \
  102.         cmfld.c \
  103.         cmgrp.c \
  104.         cmkey.c \
  105.         cmmisc.c \
  106.         cmnoi.c \
  107.         cmnum.c \
  108.         cmpara.c \
  109.         cmqst.c \
  110.         cmswi.c \
  111.         cmtad.c \
  112.         cmtok.c \
  113.         cmtxt.c \
  114.         cmusr.c \
  115.         cmver.c \
  116.         datime.c \
  117.         dir.c \
  118.         filelist.c \
  119.         stdact.c \
  120.         wild.c \
  121.         incversion.c \
  122.         cmkeyval.c \
  123.         test.c \
  124.         skel.c
  125.  
  126. PROGS          = test \
  127.         skel
  128.  
  129. all:        $(LIBRARY) $(PROGS)
  130.  
  131. $(LIBRARY):    $(OBJS)
  132.         ar cru $(LIBRARY) $(OBJS)
  133.         ranlib $(LIBRARY)
  134.  
  135. test:        test.o $(LIBRARY)
  136.         $(CC) -o $@ $@.o $(LIBRARY) -ltermlib $(OSLIBS)
  137.  
  138. skel:        skel.o $(LIBRARY)
  139.         $(CC) -o $@ $@.o $(LIBRARY) -ltermlib $(OSLIBS)
  140.  
  141. split.awk:;    rm -f split.awk
  142.         echo 'BEGIN { output = "/dev/null" }' > split.awk
  143.         echo '/^#file/ { output = $$2; next }' >> split.awk
  144.         echo '{ print >output; next }' >> split.awk
  145.  
  146. cmfncs.h cmfnc.h: $(M4FILES) split.awk
  147.         m4 cmfnc.h4 | awk -f split.awk
  148.  
  149. site.h:;    touch site.h
  150.  
  151. cmkeyval.h:    cmkeyval.c
  152.         $(CC) $(CFLAGS) -o cmkeyval cmkeyval.c
  153.         ./cmkeyval > cmkeyval.h
  154.         rm cmkeyval
  155.  
  156. clean:;        rm -f $(OBJS) cmkeyval incversion
  157.  
  158. realclean:;    rm -f $(OBJS) cmkeyval cmkeyval.h cmfncs.h cmfnc.h \
  159.             split.awk dependencies
  160.  
  161. checkout:;    $(CO) $(HDRS) $(SRCS) $(M4FILES) README Makefile
  162.  
  163. newversion:    incversion
  164.         PATH=/bin:/usr/bin test -t 0
  165.         $(CO) -l cmver.h
  166.         ./incversion < cmver.h > cmver.h.new
  167.         mv cmver.h.new cmver.h
  168.         $(CI) -u cmver.h
  169.  
  170. incversion:    incversion.c    
  171.         $(CC) $(CFLAGS) -o $@ $@.c
  172.  
  173. depend:        dependencies
  174.         rm -f junk
  175.         sed '/^# DO NOT DELETE THIS LINE/,$$d' < $(MAKEFILE) > junk
  176.         (echo '# DO NOT DELETE THIS LINE'; cat dependencies) >> junk
  177.         mv junk $(MAKEFILE)
  178.         rm dependencies
  179.  
  180. localdepend:;    rm -f junk
  181.         sed -e '1,/^# DO NOT DELETE/!{ /:[     ]*\//d; }' \
  182.             < $(MAKEFILE) > junk
  183.         mv junk $(MAKEFILE)
  184.  
  185. dependencies:    $(HDRS) site.h ccmdmd.c cmfbrk.unx
  186.         for f in $(SRCS); do $(CPP) < $$f | \
  187.             sed -n '/^#[ 0-9line]*"\(..*\)\".*$$/ '"s||$$f: \1|p" | \
  188.             sort -u ; \
  189.         done | sed -e 's|\.c: |.o: |' -e 's|: *\./|: |' > dependencies
  190.  
  191. cmfbrk.unx:;    $(CO) $@    
  192.  
  193. ccmdmd.c:;    $(CO) -p ccmdmd.unx > $@
  194.  
  195. install:    $(LIBRARY)
  196.         install -c $(LIBRARY) $(DEST)/lib$(LIBRARY)
  197.         ranlib $(DEST)/lib$(LIBRARY)
  198.  
  199. tags:           $(HDRS) $(SRCS); ctags $(HDRS) $(SRCS)
  200.  
  201. TAGS:        $(HDRS) $(SRCS); etags $(HDRS) $(SRCS)
  202.  
  203. ccmd.tar:    $(HDRS) $(SRCS) $(M4FILES) cmfbrk.unx ccmdmd.c README Makefile
  204.         tar cf $@ README Makefile $(HDRS) $(SRCS) $(M4FILES) \
  205.             cmfbrk.unx ccmdmd.c
  206.  
  207. update:         $(DEST)/$(LIBRARY)
  208.  
  209. $(DEST)/$(LIBRARY): $(SRCS) $(HDRS) $(EXTHDRS)
  210.         @-ar xo $(DEST)/$(LIBRARY)
  211.         @make -f $(MAKEFILE) DEST=$(DEST) install clean
  212.  
  213. # The rest of this file contains dependencies generated with
  214. # "make depend" -- don't add anything below or it will go away.
  215. # DO NOT DELETE THIS LINE
  216. ccmd.o: ccmd.h
  217. ccmd.o: ccmdmd.h
  218. ccmd.o: cmfnc.h
  219. ccmd.o: cmfncs.h
  220. ccmd.o: cmkeyval.h
  221. ccmd.o: datime.h
  222. ccmd.o: machdep.h
  223. ccmd.o: site.h
  224. ccmdio.o: ccmd.h
  225. ccmdio.o: ccmdmd.h
  226. ccmdio.o: cmfnc.h
  227. ccmdio.o: cmfncs.h
  228. ccmdio.o: cmkeyval.h
  229. ccmdio.o: datime.h
  230. ccmdmd.o: ccmd.h
  231. ccmdmd.o: ccmdmd.h
  232. ccmdmd.o: cmfnc.h
  233. ccmdmd.o: cmfncs.h
  234. ccmdmd.o: cmkeyval.h
  235. ccmdmd.o: datime.h
  236. ccmdst.o: ccmd.h
  237. ccmdst.o: ccmdmd.h
  238. ccmdst.o: cmfnc.h
  239. ccmdst.o: cmfncs.h
  240. ccmdst.o: cmkeyval.h
  241. ccmdst.o: datime.h
  242. ccmdut.o: ccmd.h
  243. ccmdut.o: ccmdmd.h
  244. ccmdut.o: cmfnc.h
  245. ccmdut.o: cmfncs.h
  246. ccmdut.o: cmkeyval.h
  247. ccmdut.o: datime.h
  248. cmcfm.o: ccmd.h
  249. cmcfm.o: ccmdmd.h
  250. cmcfm.o: cmfnc.h
  251. cmcfm.o: cmfncs.h
  252. cmcfm.o: cmkeyval.h
  253. cmcfm.o: datime.h
  254. cmchar.o: ccmd.h
  255. cmchar.o: ccmdmd.h
  256. cmchar.o: cmfnc.h
  257. cmchar.o: cmfncs.h
  258. cmchar.o: cmkeyval.h
  259. cmchar.o: datime.h
  260. cmfil.o: ccmd.h
  261. cmfil.o: ccmdmd.h
  262. cmfil.o: cmfbrk.unx
  263. cmfil.o: cmfil.h
  264. cmfil.o: cmfnc.h
  265. cmfil.o: cmfncs.h
  266. cmfil.o: cmkeyval.h
  267. cmfil.o: datime.h
  268. cmfil.o: filelist.h
  269. cmfld.o: ccmd.h
  270. cmfld.o: ccmdmd.h
  271. cmfld.o: cmfnc.h
  272. cmfld.o: cmfncs.h
  273. cmfld.o: cmkeyval.h
  274. cmfld.o: datime.h
  275. cmgrp.o: ccmd.h
  276. cmgrp.o: ccmdmd.h
  277. cmgrp.o: cmfnc.h
  278. cmgrp.o: cmfncs.h
  279. cmgrp.o: cmgrp.h
  280. cmgrp.o: cmkeyval.h
  281. cmgrp.o: datime.h
  282. cmkey.o: ccmd.h
  283. cmkey.o: ccmdmd.h
  284. cmkey.o: cmfnc.h
  285. cmkey.o: cmfncs.h
  286. cmkey.o: cmkeyval.h
  287. cmkey.o: datime.h
  288. cmmisc.o: ccmd.h
  289. cmmisc.o: ccmdmd.h
  290. cmmisc.o: cmfnc.h
  291. cmmisc.o: cmfncs.h
  292. cmmisc.o: cmkeyval.h
  293. cmmisc.o: datime.h
  294. cmnoi.o: ccmd.h
  295. cmnoi.o: ccmdmd.h
  296. cmnoi.o: cmfnc.h
  297. cmnoi.o: cmfncs.h
  298. cmnoi.o: cmkeyval.h
  299. cmnoi.o: datime.h
  300. cmnum.o: ccmd.h
  301. cmnum.o: ccmdmd.h
  302. cmnum.o: cmfnc.h
  303. cmnum.o: cmfncs.h
  304. cmnum.o: cmkeyval.h
  305. cmnum.o: datime.h
  306. cmpara.o: ccmd.h
  307. cmpara.o: ccmdmd.h
  308. cmpara.o: cmfnc.h
  309. cmpara.o: cmfncs.h
  310. cmpara.o: cmkeyval.h
  311. cmpara.o: datime.h
  312. cmpara.o: machdep.h
  313. cmpara.o: site.h
  314. cmqst.o: ccmd.h
  315. cmqst.o: ccmdmd.h
  316. cmqst.o: cmfnc.h
  317. cmqst.o: cmfncs.h
  318. cmqst.o: cmkeyval.h
  319. cmqst.o: datime.h
  320. cmswi.o: ccmd.h
  321. cmswi.o: ccmdmd.h
  322. cmswi.o: cmfnc.h
  323. cmswi.o: cmfncs.h
  324. cmswi.o: cmkeyval.h
  325. cmswi.o: datime.h
  326. cmtad.o: ccmd.h
  327. cmtad.o: ccmdmd.h
  328. cmtad.o: cmfnc.h
  329. cmtad.o: cmfncs.h
  330. cmtad.o: cmkeyval.h
  331. cmtad.o: datime.h
  332. cmtok.o: ccmd.h
  333. cmtok.o: ccmdmd.h
  334. cmtok.o: cmfnc.h
  335. cmtok.o: cmfncs.h
  336. cmtok.o: cmkeyval.h
  337. cmtok.o: datime.h
  338. cmtxt.o: ccmd.h
  339. cmtxt.o: ccmdmd.h
  340. cmtxt.o: cmfnc.h
  341. cmtxt.o: cmfncs.h
  342. cmtxt.o: cmkeyval.h
  343. cmtxt.o: datime.h
  344. cmusr.o: ccmd.h
  345. cmusr.o: ccmdmd.h
  346. cmusr.o: cmfnc.h
  347. cmusr.o: cmfncs.h
  348. cmusr.o: cmkeyval.h
  349. cmusr.o: cmusr.h
  350. cmusr.o: datime.h
  351. cmusr.o: machdep.h
  352. cmusr.o: site.h
  353. cmver.o: cmver.h
  354. datime.o: datime.h
  355. datime.o: dtpat.h
  356. datime.o: tzone.h
  357. dir.o: machdep.h
  358. dir.o: site.h
  359. filelist.o: ccmd.h
  360. filelist.o: ccmdmd.h
  361. filelist.o: cmfnc.h
  362. filelist.o: cmkeyval.h
  363. filelist.o: datime.h
  364. filelist.o: filelist.h
  365. filelist.o: machdep.h
  366. filelist.o: site.h
  367. stdact.o: ccmd.h
  368. stdact.o: ccmdmd.h
  369. stdact.o: cmfnc.h
  370. stdact.o: cmfncs.h
  371. stdact.o: cmkeyval.h
  372. stdact.o: datime.h
  373. test.o: ccmd.h
  374. test.o: ccmdmd.h
  375. test.o: cmfnc.h
  376. test.o: cmkeyval.h
  377. test.o: datime.h
  378. skel.o: ccmd.h
  379. skel.o: ccmdmd.h
  380. skel.o: cmfnc.h
  381. skel.o: cmkeyval.h
  382. skel.o: datime.h
  383.