2 include $(top_builddir
)/Makefile.config
6 HTML_DIR
= $(DESTDIR
)html
7 MAN_DIR
= $(DESTDIR
)man
8 PDF_DIR
= $(DESTDIR
)pdf
9 XML_DIR
= $(DESTDIR
)xml
11 # Keep generated .txt files relative to the source directory
12 # and files they are included in.
13 TXT_DIR
= $(top_srcdir
)/doc
/txt
23 # TODO: perl.pod should be pod2ized during make install. --pasky
25 # XXX: manual.txt is the master document and must be first.
45 ### Script Dependencies
48 ELINKS
= $(top_builddir
)/src
/elinks
49 KBDBIND
= $(top_srcdir
)/src
/config
/kbdbind.c
50 FEATURES
= $(top_srcdir
)/features.conf
52 ### Locale env vars to override system one to ensure commands
53 # using elinks binary will generate texts in english
55 LOCALES
= LC_ALL
=C LANGUAGE
=en
60 CODE2DOC
= $(top_srcdir
)/doc
/tools
/code2doc
61 HELP2DOC
= $(top_srcdir
)/doc
/tools
/help2doc
62 IMPORT_FEATURES_CONF
= $(top_srcdir
)/doc
/tools
/import-features.conf
63 MAKE_ELINKS_MANPAGE
= $(top_srcdir
)/doc
/tools
/make-elinks-manpage
64 MAKE_ELINKSKEYS_MANPAGE
= $(top_srcdir
)/doc
/tools
/make-elinkskeys-manpage
66 HTML_DOCS-
$(CONFIG_ASCIIDOC
) += \
73 HTML_DOCS-
$(CONFIG_XMLTO
) += \
76 HTML_DOCS-
$(CONFIG_POD2HTML
) += \
80 MAN_DOCS-
$(CONFIG_XMLTO
) += \
84 # Only jw is used for generating PDF.
85 PDF_DOCS-
$(CONFIG_JW
) += \
88 MAN_DOCS
+= man5
/elinks.conf
.5
90 MAN_DOCS
+= $(MAN_DOCS-yes
)
91 HTML_DOCS
+= $(HTML_DOCS-yes
)
92 PDF_DOCS
+= $(PDF_DOCS-yes
)
94 man-docs
: doc-dirs
$(addprefix $(MAN_DIR
)/,$(MAN_DOCS
))
95 html-docs
: doc-dirs
$(addprefix $(HTML_DIR
)/,$(HTML_DOCS
))
96 pdf-docs
: doc-dirs
$(addprefix $(PDF_DIR
)/,$(PDF_DOCS
))
98 all-docs
: man-docs html-docs pdf-docs
104 $(INSTALL
) -d
$(DOC_DIRS
)
106 # $(MAN_DIR) intentionally left out
108 @
$(RM
) -r
$(HTML_DIR
) $(XML_DIR
) $(TXT_DIR
) $(PDF_DIR
) *.tmp
111 # Autogenerated asciidoc files.
113 $(TXT_DIR
)/import-features.conf.txt
: $(FEATURES
) $(IMPORT_FEATURES_CONF
)
114 $(IMPORT_FEATURES_CONF
) > $@
116 $(TXT_DIR
)/elinks
.1.
%.txt
: $(MAKE_ELINKS_MANPAGE
) $(ELINKS
) $(HELP2DOC
) Makefile
117 $(LOCALES
) $(MAKE_ELINKS_MANPAGE
) $@
$(ELINKS
) $(HELP2DOC
) > $@
119 $(TXT_DIR
)/elinkskeys
.5.
%.txt
: $(MAKE_ELINKSKEYS_MANPAGE
) $(KBDBIND
) Makefile
120 $(LOCALES
) $(MAKE_ELINKSKEYS_MANPAGE
) $@
$(KBDBIND
) > $@
125 $(XML_DIR
)/%.man.xml
: $(TXT_DIR
)/%.man.txt
126 $(ASCIIDOC
) -b docbook
-d manpage
-o
$@
$<
128 $(MAN_DIR
)/man1
/elinks
.1.in
: $(XML_DIR
)/elinks
.1.man.xml
129 $(XMLTO
) -o
$(MAN_DIR
)/man1 man
$<
130 sed
's/^\.TH "ELINKS" 1 .*/.TH "ELINKS" 1 "The ELinks text-browser" "$(shell date -I)" "The ELinks text-browser"/' \
131 < $(MAN_DIR
)/man1
/elinks
.1 > $@
132 rm $(MAN_DIR
)/man1
/elinks
.1
134 $(MAN_DIR
)/man5
/elinkskeys
.5: $(XML_DIR
)/elinkskeys
.5.man.xml
135 $(XMLTO
) -o
$(MAN_DIR
)/man5 man
$<
136 sed
-e
's/\\fI\\fR'\''/\\fI\\'\''\\fR/' < $@
> $@.tmp
137 sed
's/^\.TH "ELINKSKEYS" 5 .*/.TH "ELINKSKEYS" 5 "ELinks keybindings" "$(shell date -I)" "ELinks keybindings"/' \
141 $(MAN_DIR
)/man5
/elinks.conf
.5: $(ELINKS
) $(HELP2DOC
) Makefile
142 $(LOCALES
) $(HELP2DOC
) --elinks
=$(ELINKS
) --elinksconf
> $@
144 # XHTML/CSS Man Pages
146 $(HTML_DIR
)/%.html
: $(TXT_DIR
)/%.html.txt
147 $(ASCIIDOC
) -b xhtml11
-d manpage
-o
$@
$<
151 MANUAL_EXTRA_FILES
= \
152 $(TXT_DIR
)/import-features.conf.txt \
153 $(TXT_DIR
)/elinks
.1.html.txt \
154 $(TXT_DIR
)/elinkskeys
.5.html.txt
156 $(HTML_DIR
)/manual.html
: $(MANUAL_FILES
) $(MANUAL_EXTRA_FILES
)
157 $(ASCIIDOC
) -b xhtml11
-d book
-o
$@
-n
$<
159 $(HTML_DIR
)/hacking.html
: $(top_srcdir
)/doc
/hacking.txt
160 $(ASCIIDOC
) -b xhtml11
-d book
-o
$@
-n
$<
162 $(HTML_DIR
)/dev-intro.html
: $(top_srcdir
)/doc
/dev-intro.txt
163 $(ASCIIDOC
) -b xhtml11
-d book
-o
$@
-n
$<
165 $(XML_DIR
)/manual.xml
: $(MANUAL_FILES
) $(MANUAL_EXTRA_FILES
)
166 $(ASCIIDOC
) -b docbook
-d book
-o
$@
$<
168 $(HTML_DIR
)/manual.html-chunked
: $(XML_DIR
)/manual.xml
169 $(XMLTO
) -o
$@ html
$<
171 $(PDF_DIR
)/manual.pdf
: $(XML_DIR
)/manual.xml
172 $(JW
) -o
$(PDF_DIR
) -b pdf
$<
174 $(HTML_DIR
)/perl.html
: $(top_srcdir
)/doc
/perl.pod
175 $(POD2HTML
) --outfile
=$@
< $<
177 $(HTML_DIR
)/perl-hooks.html
: $(top_srcdir
)/contrib
/perl
/hooks.pl
178 $(POD2HTML
) --outfile
=$@
< $<
184 $(top_srcdir
)/src
/dom
/scanner.h \
185 $(top_srcdir
)/src
/dom
/stack.h \
186 $(top_srcdir
)/src
/dom
/sgml
/parser.h
188 $(HTML_DIR
)/api
/dom.html
: $(DOM_API
)
189 $(CODE2DOC
) $(DOM_API
) |
$(ASCIIDOC
) -f code2doc.conf
-b xhtml11
-d book
-o
$@
-n
-
191 include $(top_srcdir
)/Makefile.lib