home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fonts 1 / freshfonts1.bin / bbs / programs / amiga / makeindex.lha / makeindex-2.12 / doc / Makefile < prev    next >
Makefile  |  1993-05-26  |  4KB  |  128 lines

  1. #=======================================================================
  2. # Make auxiliary documentation using nroff and LaTeX.  makeindex.l is
  3. # the nroff/troff input file for the UNIX manual pages.  From it, we
  4. # produce:
  5. #    makeindex.hlp (printable ASCII help file),
  6. #    makeindex.info (GNU Emacs INFO node file),
  7. #    makeindex.ps (PostScript version of typeset manual pages), and
  8. #    makeindex.vms (VAX VMS hierarchical help file),
  9. #    manpages.dvi (.dvi file of manual pages)
  10. #
  11. # Targets:
  12. #    all
  13. #    clean
  14. #    clobber
  15. #    distclean
  16. #    install
  17. #    makeindex.dvi
  18. #    makeindex.hlp
  19. #    makeindex.ps
  20. #    makeindex.info
  21. #    makeindex.vms
  22. #    manpages.dvi
  23. #    mostlyclean
  24. #    realclean
  25. #    reallyclean
  26. #    uninstall
  27. #
  28. # [26-May-1993] -- update for 2.12beta release (add GNU Project
  29. #            standard targets)
  30. # [15-Aug-1991]
  31. #=======================================================================
  32.  
  33. CATDIR    =    $(MANTOP)/cat1
  34. CP    =    cp
  35. LATEX    =    latex
  36. MANTOP    =    /usr/local/man
  37. MANDIR    =    $(MANTOP)/man1
  38. MANEXT    =    1
  39. RM    =    /bin/rm -f
  40. SHELL    =    /bin/sh
  41.  
  42. all:    makeindex.dvi makeindex.hlp makeindex.info makeindex.ps \
  43.     makeindex.vms manpages.dvi
  44.  
  45. clean mostlyclean:
  46.     $(RM) *~
  47.     $(RM) \#*
  48.     $(RM) core
  49.     $(RM) makeindex.aux
  50.     $(RM) makeindex.dvi
  51.     $(RM) makeindex.log
  52.  
  53. clobber distclean realclean reallyclean:    clean
  54.     $(RM) makeindex.hlp
  55.     $(RM) makeindex.info
  56.     $(RM) makeindex.ps
  57.     $(RM) makeindex.vms
  58.     $(RM) manpages.dvi
  59.  
  60. install:    uninstall
  61.     $(CP) makeindex.l $(MANDIR)/makeindex.$(MANEXT)
  62.     chmod 774 $(MANDIR)/makeindex.$(MANEXT)
  63.  
  64. makeindex.dvi:    makeindex.tex
  65.     $(LATEX) makeindex.tex
  66.     $(LATEX) makeindex.tex
  67.  
  68. makeindex.hlp:    makeindex.l
  69.     nroff -man makeindex.l | col -b >makeindex.hlp
  70.  
  71. # ======================================================================
  72. # NB: The vmshelp* and uhelp* convertors are available for anonymous ftp
  73. # on math.utah.edu from ~ftp/pub/tex/pub/info or via e-mail from the
  74. # tuglib server with requests "help" and "send index from
  75. # ftp/pub/tex/pub/info"
  76. # ======================================================================
  77. makeindex.info:    makeindex.vms
  78.     vmshelp2 makeindex.vms >makeindex.info
  79.  
  80. makeindex.ps:    makeindex.l
  81. # To convert a manual page to PostScript:
  82. #    on BSD: tbl | eqn | ditroff -man | psdit | psrev
  83. #    on AIX: tbl | eqn | psroff -t -man | psrev
  84. # Omit psrev if your printer stacks pages face down.
  85. # tbl and eqn are not required for makeindex.l.
  86. # This pipeline is hidden in a private script:
  87.     man2ps <makeindex.l >makeindex.ps
  88.  
  89. # Reduce makeindex.hlp to makeindex.vms with the help of sed and awk.
  90. # Alas, the output of nroff recorded in makeindex.hlp is somewhat
  91. # system dependent.  The sed patterns here suffice for SunOS 4.1.1
  92. # and IBM RS/6000 AIX 3.1, but may require modifications on other
  93. # UNIX systems.
  94.  
  95. makeindex.vms:    makeindex.hlp
  96.     echo '1 MAKEINDEX' >makeindex.vms
  97.     expand < makeindex.hlp | \
  98.     sed    -e '/^ *MAKEINDEX(1L).*MAKEINDEX(1L)/d' \
  99.         -e '/^ *Page.*(printed.*)/d' \
  100.         -e '/^Sun Release [0-9]/d' \
  101.         -e 's/^ *INPUT STYLE SPECIFIERS/3 INPUT STYLE SPECIFIERS/' \
  102.         -e 's/^ *OUTPUT STYLE SPECIFIERS/3 OUTPUT STYLE SPECIFIERS/' \
  103.         -e 's/^ *TeX EXAMPLE/3 TeX EXAMPLE/' \
  104.         -e 's/^ *TROFF EXAMPLE/3 TROFF EXAMPLE/' \
  105.         -e 's/^ *CREATING THE INDEX FILE/3 CREATING THE INDEX FILE/' \
  106.         -e 's/^ *COMPLETING THE INDEX/3 COMPLETING THE INDEX/' \
  107.         -e 's/^     / /' \
  108.         -e 's/^ \([A-Z][A-Z /]*\)$$/2 \1/' \
  109.         -e 's/^\([A-Z][A-Z /]*\)$$/2 \1/' |\
  110.     awk -f deblank.awk >> makeindex.vms
  111.  
  112. # We create a .dvi file for the manual pages under a different name to
  113. # avoid a collision with makeindex.dvi.  GNU groff works quite nicely,
  114. # and gives us a .dvi file that anyone can process, even if they do not
  115. # have a PostScript printer.  groff's font selection is a bit unusual;
  116. # it wants a few Computer Modern fonts in magnifications 0.8 and 0.9.
  117. # For manpages.dvi, it needs these additional font files: cmbx10.240pk
  118. # cmbx10.270pk cmcsc10.240pk cmcsc10.270pk cmr10.240pk cmr10.270pk
  119. # cmti10.240pk cmti10.270pk.  If your DVI driver can substitute a nearby
  120. # size, you should be able to manage without them.
  121. manpages.dvi:    makeindex.l
  122.     groff -Tdvi -man makeindex.l >manpages.dvi
  123.  
  124. uninstall:
  125.     if [ -f $(CATDIR)/makeindex.1 ] ; then $(RM) $(CATDIR)/makeindex.1 ; fi
  126.     if [ -f $(MANDIR)/makeindex.1 ] ; then $(RM) $(MANDIR)/makeindex.1 ; fi
  127.  
  128.