include.am 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. # We use a two-step process to generate documentation from asciidoc files.
  2. #
  3. # First, we use asciidoc/a2x to process the asciidoc files into .1.in and
  4. # .html.in files (see the asciidoc-helper.sh script). These are the same as
  5. # the regular .1 and .html files, except that they still have some autoconf
  6. # variables set in them.
  7. #
  8. # Second, we use config.status to turn .1.in files into .1 files and
  9. # .html.in files into .html files.
  10. #
  11. # We do the steps in this order so that we can ship the .*.in files as
  12. # part of the source distribution, so that people without asciidoc can
  13. # just use the .1 and .html files.
  14. base_mans = doc/tor doc/tor-gencert doc/tor-resolve doc/torify
  15. all_mans = $(base_mans) doc/tor-fw-helper
  16. if USE_FW_HELPER
  17. install_mans = $(all_mans)
  18. else
  19. install_mans = $(base_mans)
  20. endif
  21. if USE_ASCIIDOC
  22. nodist_man1_MANS = $(install_mans:=.1)
  23. doc_DATA = $(install_mans:=.html)
  24. html_in = $(all_mans:=.html.in)
  25. man_in = $(all_mans:=.1.in)
  26. txt_in = $(all_mans:=.1.txt)
  27. else
  28. html_in =
  29. man_in =
  30. txt_in =
  31. nodist_man1_MANS =
  32. doc_DATA =
  33. endif
  34. EXTRA_DIST+= doc/HACKING doc/asciidoc-helper.sh \
  35. $(html_in) $(man_in) $(txt_in) \
  36. doc/state-contents.txt
  37. docdir = @docdir@
  38. asciidoc_product = $(nodist_man1_MANS) $(doc_DATA)
  39. # Generate the html documentation from asciidoc, but don't do
  40. # machine-specific replacements yet
  41. $(html_in) :
  42. $(AM_V_GEN)$(top_srcdir)/doc/asciidoc-helper.sh html @ASCIIDOC@ $(top_srcdir)/$@
  43. # Generate the manpage from asciidoc, but don't do
  44. # machine-specific replacements yet
  45. $(man_in) :
  46. $(AM_V_GEN)$(top_srcdir)/doc/asciidoc-helper.sh man @A2X@ $(top_srcdir)/$@
  47. doc/tor.1.in: doc/tor.1.txt
  48. doc/torify.1.in: doc/torify.1.txt
  49. doc/tor-gencert.1.in: doc/tor-gencert.1.txt
  50. doc/tor-resolve.1.in: doc/tor-resolve.1.txt
  51. doc/tor-fw-helper.1.in: doc/tor-fw-helper.1.txt
  52. doc/tor.html.in: doc/tor.1.txt
  53. doc/torify.html.in: doc/torify.1.txt
  54. doc/tor-gencert.html.in: doc/tor-gencert.1.txt
  55. doc/tor-resolve.html.in: doc/tor-resolve.1.txt
  56. doc/tor-fw-helper.html.in: doc/tor-fw-helper.1.txt
  57. # use config.status to swap all machine-specific magic strings
  58. # in the asciidoc with their replacements.
  59. $(asciidoc_product) :
  60. $(AM_V_GEN)$(MKDIR_P) $(@D)
  61. $(AM_V_at)if test -e $(top_srcdir)/$@.in && ! test -e $@.in ; then \
  62. cp $(top_srcdir)/$@.in $@; \
  63. fi
  64. $(AM_V_at)$(top_builddir)/config.status -q --file=$@;
  65. doc/tor.html: doc/tor.html.in
  66. doc/tor-gencert.html: doc/tor-gencert.html.in
  67. doc/tor-resolve.html: doc/tor-resolve.html.in
  68. doc/torify.html: doc/torify.html.in
  69. doc/tor-fw-helper.html: doc/tor-fw-helper.html.in
  70. doc/tor.1: doc/tor.1.in
  71. doc/tor-gencert.1: doc/tor-gencert.1.in
  72. doc/tor-resolve.1: doc/tor-resolve.1.in
  73. doc/torify.1: doc/torify.1.in
  74. doc/tor-fw-helper.1: doc/tor-fw-helper.1.in
  75. CLEANFILES+= $(asciidoc_product) config.log
  76. DISTCLEANFILES+= $(html_in) $(man_in)