doc/Makefile
changeset 369 7920ca086e5c
equal deleted inserted replaced
368:5526520f323f 369:7920ca086e5c
       
     1 #------------------------------------------------------------------------------
       
     2 #
       
     3 #  LaTeX Makefile
       
     4 #
       
     5 #  $Id$
       
     6 #
       
     7 #------------------------------------------------------------------------------
       
     8 
       
     9 FILE := ethercat_doc
       
    10 
       
    11 DVI_DEPEND := images/*.eps
       
    12 PDF_DEPEND := images/*.pdf
       
    13 
       
    14 LATEX_OPTIONS := -file-line-error-style
       
    15 
       
    16 LATEX_CMD := latex $(LATEX_OPTIONS) \\nonstopmode\\input{$(FILE).tex}
       
    17 PDFLATEX_CMD := pdflatex $(LATEX_OPTIONS) $(FILE)
       
    18 
       
    19 #------------------------------------------------------------------------------
       
    20 
       
    21 dvi: $(FILE).dvi
       
    22 
       
    23 pdf: $(FILE).pdf
       
    24 
       
    25 all: dvi pdf
       
    26 
       
    27 $(FILE).dvi: $(FILE).tex $(DVI_DEPEND)
       
    28 	@if [ ! -f $(FILE).toc ]; then touch $(FILE).toc; fi
       
    29 	@if [ ! -f $(FILE).idx ]; then touch $(FILE).idx; fi
       
    30 	@if [ ! -f $(FILE).glo ]; then touch $(FILE).glo; fi
       
    31 	@cp $(FILE).toc $(FILE).toc.bak
       
    32 	@cp $(FILE).idx $(FILE).idx.bak
       
    33 	@cp $(FILE).glo $(FILE).glo.bak
       
    34 	$(LATEX_CMD)
       
    35 	@count=5; \
       
    36 	while (grep -s 'cross-references' $(FILE).log || \
       
    37 		! diff -q $(FILE).toc $(FILE).toc.bak) && \
       
    38 		[ $$count -gt 0 ]; \
       
    39 	do \
       
    40 		cp $(FILE).toc $(FILE).toc.bak; \
       
    41 		$(LATEX_CMD); \
       
    42 		count=`expr $$count - 1`; \
       
    43 	done
       
    44 	@rerunlatex=0
       
    45 	@if ! diff -q $(FILE).idx $(FILE).idx.bak; then \
       
    46 		echo "Rebuilding Index"; \
       
    47 		makeindex $(FILE); \
       
    48 		rerunlatex=1; \
       
    49 	fi
       
    50 	@if ! diff -q $(FILE).glo $(FILE).glo.bak; then \
       
    51 		echo "Rebuilding Glossary"; \
       
    52 		makeindex $(FILE).glo -s nomencl.ist -o $(FILE).gls; \
       
    53 		rerunlatex=1; \
       
    54 	fi
       
    55 	@if [ ! $$rerunlatex ]; then \
       
    56 		echo "Re-running LaTeX..."; \
       
    57 		$(LATEX_CMD); \
       
    58 	fi
       
    59 	@rm -f $(FILE).toc.bak
       
    60 	@rm -f $(FILE).idx.bak
       
    61 	@rm -f $(FILE).glo.bak
       
    62 
       
    63 $(FILE).pdf: $(FILE).tex $(PDF_DEPEND)
       
    64 	@if [ ! -f $(FILE).toc ]; then touch $(FILE).toc; fi
       
    65 	@if [ ! -f $(FILE).idx ]; then touch $(FILE).idx; fi
       
    66 	@if [ ! -f $(FILE).glo ]; then touch $(FILE).glo; fi
       
    67 	@cp $(FILE).toc $(FILE).toc.bak
       
    68 	@cp $(FILE).idx $(FILE).idx.bak
       
    69 	@cp $(FILE).glo $(FILE).glo.bak
       
    70 	$(PDFLATEX_CMD)
       
    71 	@count=5; \
       
    72 	while (grep -s 'cross-references' $(FILE).log || \
       
    73 		! diff -q $(FILE).toc $(FILE).toc.bak) && \
       
    74 		[ $$count -gt 0 ]; \
       
    75 	do \
       
    76 		cp $(FILE).toc $(FILE).toc.bak; \
       
    77 		$(PDFLATEX_CMD); \
       
    78 		count=`expr $$count - 1`; \
       
    79 	done
       
    80 	@rerunlatex=0
       
    81 	@if ! diff -q $(FILE).idx $(FILE).idx.bak; then \
       
    82 		echo "Rebuilding Index"; \
       
    83 		makeindex $(FILE); \
       
    84 		rerunlatex=1; \
       
    85 	fi
       
    86 	@if ! diff -q $(FILE).glo $(FILE).glo.bak; then \
       
    87 		echo "Rebuilding Glossary"; \
       
    88 		makeindex $(FILE).glo -s nomencl.ist -o $(FILE).gls; \
       
    89 		rerunlatex=1; \
       
    90 	fi
       
    91 	@if [ ! $$rerunlatex ]; then \
       
    92 		echo "Re-running LaTeX..."; \
       
    93 		$(PDFLATEX_CMD); \
       
    94 	fi
       
    95 	@rm -f $(FILE).toc.bak
       
    96 	@rm -f $(FILE).idx.bak
       
    97 	@rm -f $(FILE).glo.bak
       
    98 
       
    99 clean:
       
   100 	@rm -f $(FILE).aux $(FILE).dvi $(FILE).idx \
       
   101 			$(FILE).ilg $(FILE).ind $(FILE).log \
       
   102 			$(FILE).out $(FILE).pdf $(FILE).ps \
       
   103 			$(FILE).toc $(FILE).lot $(FILE).lof \
       
   104 			$(FILE).lol $(FILE).glo $(FILE).gls \
       
   105 			images/*.bak *~
       
   106 
       
   107 #------------------------------------------------------------------------------