home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 1B / DATAFILE_PDCD1B.iso / _languages / languages / cweb / Make_Unix < prev    next >
Text File  |  1993-12-15  |  3KB  |  108 lines

  1. # This file is part of CWEB, version 3.x.
  2.  
  3. # Read the README file, then edit this file to reflect local conditions
  4. #
  5.  
  6. # The C compiler should be ANSI compatible
  7. CC = cc
  8.  
  9. # We run cweave with the `+d' flag, and ctangle with only default settings
  10. CWFLAGS = +d
  11. CTFLAGS =
  12.  
  13. # We keep debugging info around to enable the `+d' option of cweave
  14. CFLAGS = -DDEBUG -DSTAT -g
  15.  
  16. # RM and CP are used below in case rm and cp are aliased
  17. RM= /bin/rm
  18. CP= /bin/cp
  19. RENAME= /bin/mv
  20.  
  21.  
  22. # Set CCHANGES to common-foo.ch if you need changes to common.w in another
  23. # file than common.ch
  24. CCHANGES=
  25.  
  26. # Set TCHANGES to ctangle-foo.ch if you need changes to ctangle.w in another
  27. # file than ctangle.ch
  28. TCHANGES=
  29.  
  30. # Set WCHANGES to cweave-foo.ch if you need changes to cweave.w in another
  31. # file than cweave.ch
  32. WCHANGES=
  33.  
  34. ##########  You shouldn't have to change anything after this point #######
  35.  
  36. CWEAVE = ./cweave
  37. CTANGLE = ./ctangle
  38. SOURCES = cweave.w common.w ctangle.w
  39.  
  40. .SUFFIXES: .tex .dvi .w
  41.  
  42. .w.tex:
  43.     $(CWEAVE) $(CWFLAGS) $*
  44.  
  45. .tex.dvi:
  46.     tex $*.tex
  47.  
  48. .w.c:
  49.     $(CTANGLE) $(CTFLAGS) $*
  50.  
  51. all: cweb doc listings
  52. cweb: ctangle cweave
  53. manual doc: manual.dvi
  54. listings: common.dvi ctangle.dvi cweave.dvi
  55.  
  56. cautiously:
  57.     make common.c ctangle.c cweave.c
  58.     $(RENAME) ctangle SAVEctangle # save version in case things mess up
  59.     make ctangle
  60.     $(RENAME) common.c SAVEcommon.c
  61.     ./ctangle common $(CCHANGES)
  62.     diff common.c SAVEcommon.c
  63.     $(RENAME) SAVEcommon.c common.c # restore date
  64.     $(RENAME) ctangle.c SAVEctangle.c
  65.     ./ctangle ctangle $(TCHANGES)
  66.     diff ctangle.c SAVEctangle.c
  67.     $(RENAME) SAVEctangle.c ctangle.c # restore date
  68.     $(RENAME) cweave.c SAVEcweave.c
  69.     ./ctangle cweave $(WCHANGES)
  70.     diff cweave.c SAVEcweave.c
  71.     $(RENAME) SAVEcweave.c cweave.c # restore date
  72.     $(RM) SAVEctangle # succeded, use new binary from now on
  73.  
  74. SAVEctangle.c:
  75.     $(CP) ctangle.c SAVEctangle.c
  76.  
  77. SAVEcommon.c:
  78.     $(CP) common.c SAVEcommon.c
  79.  
  80. common.c: common.w $(CCHANGES) common.inc
  81.     $(CTANGLE) common $(CCHANGES)
  82. common.h: common.w $(CCHANGES)
  83.     $(CTANGLE) common $(CCHANGES)
  84.  
  85. common.tex:  common.w common.inc
  86.     $(CWEAVE) common $(CCHANGES)
  87.  
  88. ctangle: ctangle.o common.o
  89.     $(CC) $(CFLAGS) -o ctangle ctangle.o common.o 
  90.  
  91. ctangle.c: ctangle.w $(TCHANGES) common.inc common.h
  92.     $(CTANGLE) ctangle $(TCHANGES)
  93.  
  94. ctangle.tex:  ctangle.w $(TCHANGES) common.inc
  95.     $(CWEAVE) ctangle $(TCHANGES)
  96.  
  97. cweave: cweave.o common.o
  98.     $(CC) $(CFLAGS) -o cweave cweave.o common.o
  99.  
  100. cweave.c: cweave.w $(WCHANGES) common.inc common.h parser.w rules.w
  101.     $(CTANGLE) cweave $(WCHANGES)
  102.  
  103. cweave.tex:  cweave.w $(WCHANGES) parser.w rules.w common.inc
  104.     $(CWEAVE) cweave $(WCHANGES)
  105.  
  106. manual.dvi: compare.tex
  107.