doxygen.am 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202
  1. ## --------------------------------- ##
  2. ## Format-independent Doxygen rules. ##
  3. ## --------------------------------- ##
  4. DOXYGEN_INSTALL=
  5. if DX_COND_doc
  6. ## ------------------------------- ##
  7. ## Rules specific for HTML output. ##
  8. ## ------------------------------- ##
  9. if DX_COND_html
  10. DX_CLEAN_HTML = @DX_DOCDIR@/html
  11. doxygen-install-html:
  12. $(INSTALL) -d $(DESTDIR)$(docdir)/html; \
  13. $(INSTALL_DATA) @DX_DOCDIR@/html/* $(DESTDIR)$(docdir)/html;
  14. DOXYGEN_INSTALL+= doxygen-install-html
  15. endif DX_COND_html
  16. ## ------------------------------ ##
  17. ## Rules specific for CHM output. ##
  18. ## ------------------------------ ##
  19. if DX_COND_chm
  20. DX_CLEAN_CHM = @DX_DOCDIR@/chm
  21. if DX_COND_chi
  22. DX_CLEAN_CHI = @DX_DOCDIR@/@PACKAGE@.chi
  23. endif DX_COND_chi
  24. doxygen-install-chm:
  25. $(INSTALL) -d $(DESTDIR)$(docdir)/chm; \
  26. $(INSTALL_DATA) @DX_DOCDIR@/chm/* $(DESTDIR)$(docdir)/chm;
  27. DOXYGEN_INSTALL+= doxygen-install-chm
  28. endif DX_COND_chm
  29. ## ------------------------------ ##
  30. ## Rules specific for MAN output. ##
  31. ## ------------------------------ ##
  32. if DX_COND_man
  33. DX_CLEAN_MAN = @DX_DOCDIR@/man
  34. doxygen-install-man:
  35. $(INSTALL) -d $(DESTDIR)$(docdir)/man; \
  36. $(INSTALL_DATA) @DX_DOCDIR@/man/* $(DESTDIR)$(docdir)/man;
  37. DOXYGEN_INSTALL+= doxygen-install-man
  38. endif DX_COND_man
  39. ## ------------------------------ ##
  40. ## Rules specific for RTF output. ##
  41. ## ------------------------------ ##
  42. if DX_COND_rtf
  43. DX_CLEAN_RTF = @DX_DOCDIR@/rtf
  44. doxygen-install-rtf:
  45. $(INSTALL) -d $(DESTDIR)$(docdir)/rtf; \
  46. $(INSTALL_DATA) @DX_DOCDIR@/rtf/* $(DESTDIR)$(docdir)/rtf;
  47. DOXYGEN_INSTALL+= doxygen-install-rtf
  48. endif DX_COND_rtf
  49. ## ------------------------------ ##
  50. ## Rules specific for XML output. ##
  51. ## ------------------------------ ##
  52. if DX_COND_xml
  53. DX_CLEAN_XML = @DX_DOCDIR@/xml
  54. doxygen-install-xml:
  55. $(INSTALL) -d $(DESTDIR)$(docdir)/xml; \
  56. $(INSTALL_DATA) @DX_DOCDIR@/xml/* $(DESTDIR)$(docdir)/xml;
  57. DOXYGEN_INSTALL+= doxygen-install-xml
  58. endif DX_COND_xml
  59. ## ----------------------------- ##
  60. ## Rules specific for PS output. ##
  61. ## ----------------------------- ##
  62. if DX_COND_ps
  63. DX_CLEAN_PS = @DX_DOCDIR@/@PACKAGE@.ps
  64. DX_PS_GOAL = doxygen-ps
  65. doxygen-ps: @DX_DOCDIR@/@PACKAGE@.ps
  66. @DX_DOCDIR@/@PACKAGE@.ps: @DX_DOCDIR@/@PACKAGE@.tag
  67. cd @DX_DOCDIR@/latex; \
  68. rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
  69. $(DX_LATEX) refman.tex; \
  70. $(MAKEINDEX_PATH) refman.idx; \
  71. $(DX_LATEX) refman.tex; \
  72. countdown=5; \
  73. while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
  74. refman.log > /dev/null 2>&1 \
  75. && test $$countdown -gt 0; do \
  76. $(DX_LATEX) refman.tex; \
  77. countdown=`expr $$countdown - 1`; \
  78. done; \
  79. $(DX_DVIPS) -o ../@PACKAGE@.ps refman.dvi
  80. doxygen-install-ps:
  81. $(INSTALL_DATA) @DX_DOCDIR@/@PACKAGE@.ps $(DESTDIR)$(docdir);
  82. DOXYGEN_INSTALL+= doxygen-install-ps
  83. endif DX_COND_ps
  84. ## ------------------------------ ##
  85. ## Rules specific for PDF output. ##
  86. ## ------------------------------ ##
  87. if DX_COND_pdf
  88. DX_CLEAN_PDF = @DX_DOCDIR@/@PACKAGE@.pdf
  89. DX_PDF_GOAL = doxygen-pdf
  90. doxygen-pdf: @DX_DOCDIR@/@PACKAGE@.pdf
  91. @DX_DOCDIR@/@PACKAGE@.pdf: @DX_DOCDIR@/@PACKAGE@.tag
  92. cd @DX_DOCDIR@/latex; \
  93. rm -f *.aux *.toc *.idx *.ind *.ilg *.log *.out; \
  94. $(DX_PDFLATEX) refman.tex; \
  95. $(DX_MAKEINDEX) refman.idx; \
  96. $(DX_PDFLATEX) refman.tex; \
  97. countdown=5; \
  98. while $(DX_EGREP) 'Rerun (LaTeX|to get cross-references right)' \
  99. refman.log > /dev/null 2>&1 \
  100. && test $$countdown -gt 0; do \
  101. $(DX_PDFLATEX) refman.tex; \
  102. countdown=`expr $$countdown - 1`; \
  103. done; \
  104. mv refman.pdf ../@PACKAGE@.pdf
  105. doxygen-install-pdf:
  106. $(INSTALL_DATA) @DX_DOCDIR@/@PACKAGE@.pdf $(DESTDIR)$(docdir);
  107. DOXYGEN_INSTALL+= doxygen-install-pdf
  108. endif DX_COND_pdf
  109. ## ------------------------------------------------- ##
  110. ## Rules specific for LaTeX (shared for PS and PDF). ##
  111. ## ------------------------------------------------- ##
  112. if DX_COND_latex
  113. DX_CLEAN_LATEX = @DX_DOCDIR@/latex
  114. doxygen-install-latex:
  115. $(INSTALL) -d $(DESTDIR)$(docdir)/latex; \
  116. $(INSTALL_DATA) @DX_DOCDIR@/latex/* $(DESTDIR)$(docdir)/latex;
  117. DOXYGEN_INSTALL+= doxygen-install-latex
  118. endif DX_COND_latex
  119. .PHONY: doxygen-run doxygen-doc doxygen-install $(DX_PS_GOAL) $(DX_PDF_GOAL)
  120. .INTERMEDIATE: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
  121. doxygen-run: @DX_DOCDIR@/@PACKAGE@.tag
  122. doxygen-doc: doxygen-run $(DX_PS_GOAL) $(DX_PDF_GOAL)
  123. doxygen-install: $(DOXYGEN_INSTALL)
  124. @DX_DOCDIR@/@PACKAGE@.tag: $(DX_CONFIG) $(pkginclude_HEADERS)
  125. rm -rf @DX_DOCDIR@
  126. $(DX_ENV) $(DX_DOXYGEN) $(DX_CONFIG)
  127. DX_CLEANFILES = \
  128. @DX_DOCDIR@/@PACKAGE@.tag \
  129. -r \
  130. $(DX_CLEAN_HTML) \
  131. $(DX_CLEAN_CHM) \
  132. $(DX_CLEAN_CHI) \
  133. $(DX_CLEAN_MAN) \
  134. $(DX_CLEAN_RTF) \
  135. $(DX_CLEAN_XML) \
  136. $(DX_CLEAN_PS) \
  137. $(DX_CLEAN_PDF) \
  138. $(DX_CLEAN_LATEX)
  139. endif DX_COND_doc