summaryrefslogtreecommitdiff
path: root/doc/emacs/Makefile.in
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2013-08-11 17:04:15 -0700
committerGlenn Morris <rgm@gnu.org>2013-08-11 17:04:15 -0700
commit8496d8d7063d93031b65636e8be4c6f1b4208e74 (patch)
treea2e18b9e859323d23dd6ccd7933e843a5964d333 /doc/emacs/Makefile.in
parentd0e615c324db994c8ac0ea2f0725dfc7b6f73f53 (diff)
downloademacs-8496d8d7063d93031b65636e8be4c6f1b4208e74.tar.gz
Add build, install, uninstall rules for all dvi, html, pdf, ps manuals
* configure.ac (etcdocdir): Rename from docdir, to avoid confusion with configure's standard --docdir argument. All uses updated. * Makefile.in (etcdocdir): Rename from docdir. All uses updated. (install-etcdoc): Rename from install-doc. All uses updated. (uninstall): Run uninstall-doc. (PSS): Add misc-ps. (INSTALL_DVI, INSTALL_HTML, INSTALL_PDF, INSTALL_PS) (INSTALL_DOC, UNINSTALL_DVI, UNINSTALL_HTML, UNINSTALL_PDF) (UNINSTALL_PS, UNINSTALL_DOC): New variables. ($(INSTALL_DOC), install-doc, install-dvi, install-html, install-pdf) (install-ps, $(UNINSTALL_DOC), uninstall-doc, uninstall-dvi) (uninstall-html, uninstall-pdf, uninstall-ps): New .PHONY rules. * doc/emacs/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME) (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL) (INSTALL_DATA): New, set by configure. (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS): New variables. (.SUFFIXES): Add .ps and .dvi. (.dvi.ps): New suffix rule. (dvi, html, pdf, ps): Use *_TARGETS variables. (emacs.ps, emacs-xtra.ps): Remove explicit rules. (emacs.html): Use HTML_OPTS. (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS. (.PHONY): install-dvi, install-html, install-pdf, install-ps ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf, uninstall-ps, and uninstall-doc. (install-dvi, install-html, install-pdf, install-ps, install-doc) (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf) (uninstall-doc): New rules. * doc/lispintro/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME) (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL) (INSTALL_DATA): New, set by configure. (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS): New variables. (.SUFFIXES): Add .ps and .dvi. (.dvi.ps): New suffix rule. (dvi, html, pdf, ps): Use *_TARGETS variables. (emacs-lisp-intro.ps): Remove explicit rule. (emacs-lisp-intro.html): Use HTML_OPTS. (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS. (.PHONY): install-dvi, install-html, install-pdf, install-ps ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf, uninstall-ps, and uninstall-doc. (install-dvi, install-html, install-pdf, install-ps, install-doc) (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf) (uninstall-doc): New rules. * doc/lispref/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME) (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL) (INSTALL_DATA): New, set by configure. (HTML_OPTS, DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS): New variables. (.SUFFIXES): Add .ps and .dvi. (.dvi.ps): New suffix rule. (dvi, html, pdf, ps): Use *_TARGETS variables. (elisp.html): Use HTML_OPTS. (elisp.ps): Remove explicit rule. (.PHONY): install-dvi, install-html, install-pdf, install-ps ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf, uninstall-ps, and uninstall-doc. (install-dvi, install-html, install-pdf, install-ps, install-doc) (uninstall-dvi, uninstall-html, uninstall-ps, uninstall-pdf) (uninstall-doc): New rules. (clean): Use DVI_TARGETS, HTML_TARGETS, PDF_TARGETS, PS_TARGETS. * doc/misc/Makefile.in (prefix, datarootdir, datadir, PACKAGE_TARNAME) (docdir, dvidir, htmldir, pdfdir, psdir, GZIP_PROG, INSTALL) (INSTALL_DATA): New, set by configure. (HTML_OPTS, HTML_TARGETS, PS_TARGETS, DVIPS): New variables. (.PHONY): Add html, ps, install-dvi, install-html, install-pdf, install-ps ,install-doc, uninstall-dvi, uninstall-html, uninstall-pdf, uninstall-ps, and uninstall-doc. (.SUFFIXES): Add .ps and .dvi. (.dvi.ps): New suffix rule. (html, ps, ada-mode.html, auth.html, autotype.html, bovine.html) (calc.html, cc-mode.html, cl.html, dbus.html, dired-x.html) (ebrowse.html, ede.html, ediff.html, edt.html, eieio.html) (emacs-gnutls.html, emacs-mime.html, epa.html, erc.html) (ert.html, eshell.html, eudc.html, faq.html, flymake.html) (forms.html, gnus.html, htmlfontify.html, idlwave.html) (ido.html, mairix-el.html, message.html, mh-e.html) (newsticker.html, nxml-mode.html, org.html, pgg.html) (rcirc.html, reftex.html, remember.html, sasl.html, sc.html) (semantic.html, sieve.html, smtpmail.html, speedbar.html) (srecode.html, todo-mode.html, tramp.html, url.html, vip.html) (viper.html, widget.html, wisent.html, woman.html, install-dvi) (install-html, install-pdf, install-ps, install-doc, uninstall-dvi) (uninstall-html, uninstall-ps, uninstall-pdf, uninstall-doc): New rules. (clean): Remove HTML_TARGETS and PS_TARGETS.
Diffstat (limited to 'doc/emacs/Makefile.in')
-rw-r--r--doc/emacs/Makefile.in94
1 files changed, 80 insertions, 14 deletions
diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in
index 32bb39b127a..7aeead4e2f6 100644
--- a/doc/emacs/Makefile.in
+++ b/doc/emacs/Makefile.in
@@ -38,8 +38,22 @@ buildinfodir = $(srcdir)/../../info
# Directory with the (customized) texinfo.tex file.
texinfodir = $(srcdir)/../misc
+prefix = @prefix@
+datarootdir = @datarootdir@
+datadir = @datadir@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+docdir = @docdir@
+dvidir = @dvidir@
+htmldir = @htmldir@
+pdfdir = @pdfdir@
+psdir = @psdir@
+
MKDIR_P = @MKDIR_P@
+GZIP_PROG = @GZIP_PROG@
+
+HTML_OPTS = --no-split --html
+
INFO_EXT=@INFO_EXT@
# Options used only when making info output.
# --no-split is only needed because of MS-DOS.
@@ -47,6 +61,9 @@ INFO_EXT=@INFO_EXT@
# http://lists.gnu.org/archive/html/emacs-devel/2011-01/msg01182.html
INFO_OPTS=@INFO_OPTS@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+
# The makeinfo program is part of the Texinfo distribution.
# Use --force so that it generates output even if there are errors.
MAKEINFO = @MAKEINFO@
@@ -60,6 +77,10 @@ DVIPS = dvips
ENVADD = TEXINPUTS="$(srcdir):$(texinfodir):$(TEXINPUTS)" \
MAKEINFO="$(MAKEINFO) $(MAKEINFO_OPTS)"
+DVI_TARGETS = emacs.dvi emacs-xtra.dvi
+HTML_TARGETS = emacs.html
+PDF_TARGETS = emacs.pdf emacs-xtra.pdf
+PS_TARGETS = emacs.ps emacs-xtra.ps
EMACS_XTRA= \
${srcdir}/emacs-xtra.texi \
@@ -128,11 +149,16 @@ mkinfodir = @${MKDIR_P} ${buildinfodir}
.PHONY: info dvi html pdf ps
+.SUFFIXES: .ps .dvi
+
+.dvi.ps:
+ $(DVIPS) -o $@ $<
+
info: $(buildinfodir)/emacs$(INFO_EXT)
-dvi: emacs.dvi
-html: emacs.html
-pdf: emacs.pdf
-ps: emacs.ps
+dvi: $(DVI_TARGETS)
+html: $(HTML_TARGETS)
+pdf: $(PDF_TARGETS)
+ps: $(PS_TARGETS)
# Note that all the Info targets build the Info files in srcdir.
# There is no provision for Info files to exist in the build directory.
@@ -145,21 +171,15 @@ $(buildinfodir)/emacs$(INFO_EXT): ${EMACSSOURCES}
emacs.dvi: ${EMACSSOURCES}
$(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi
-emacs.ps: emacs.dvi
- $(DVIPS) -o $@ emacs.dvi
-
emacs.pdf: ${EMACSSOURCES}
$(ENVADD) $(TEXI2PDF) ${srcdir}/emacs.texi
emacs.html: ${EMACSSOURCES}
- $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ ${srcdir}/emacs.texi
+ $(MAKEINFO) $(MAKEINFO_OPTS) $(HTML_OPTS) -o $@ ${srcdir}/emacs.texi
emacs-xtra.dvi: $(EMACS_XTRA)
$(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi
-emacs-xtra.ps: emacs-xtra.dvi
- $(DVIPS) -o $@ emacs-xtra.dvi
-
emacs-xtra.pdf: $(EMACS_XTRA)
$(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-xtra.texi
@@ -172,9 +192,7 @@ mostlyclean:
## Products not in the release tarfiles.
clean: mostlyclean
- rm -f emacs.dvi emacs-xtra.dvi emacs.pdf emacs-xtra.pdf \
- emacs.ps emacs-xtra.ps
- rm -rf emacs.html/
+ rm -f $(DVI_TARGETS) $(HTML_TARGETS) $(PDF_TARGETS) $(PS_TARGETS)
rm -f emacs-manual-${version}.tar*
distclean: clean
@@ -207,4 +225,52 @@ dist:
tar -cf emacs-manual-${version}.tar emacs-manual-${version}
rm -rf emacs-manual-${version}
+
+.PHONY: install-dvi install-html install-pdf install-ps install-doc
+
+install-dvi: dvi
+ umask 022; $(MKDIR_P) $(DESTDIR)$(dvidir)
+ $(INSTALL_DATA) $(DVI_TARGETS) $(DESTDIR)$(dvidir)
+install-html: html
+ umask 022; $(MKDIR_P) $(DESTDIR)$(htmldir)
+ $(INSTALL_DATA) $(HTML_TARGETS) $(DESTDIR)$(htmldir)
+install-pdf: pdf
+ umask 022;$(MKDIR_P) $(DESTDIR)$(pdfdir)
+ $(INSTALL_DATA) $(PDF_TARGETS) $(DESTDIR)$(pdfdir)
+install-ps: ps
+ umask 022; $(MKDIR_P) $(DESTDIR)$(psdir)
+ for file in $(PS_TARGETS); do \
+ $(INSTALL_DATA) $${file} $(DESTDIR)$(psdir); \
+ [ -n "${GZIP_PROG}" ] || continue; \
+ rm -f $(DESTDIR)$(psdir)/$${file}.gz; \
+ ${GZIP_PROG} -9n $(DESTDIR)$(psdir)/$${file}; \
+ done
+
+## Top-level Makefile installs the info pages.
+install-doc: install-dvi install-html install-pdf install-ps
+
+
+.PHONY: uninstall-dvi uninstall-html uninstall-pdf uninstall-ps uninstall-doc
+
+uninstall-dvi:
+ for file in $(DVI_TARGETS); do \
+ rm -f $(DESTDIR)$(dvidir)/$${file}; \
+ done
+uninstall-html:
+ for file in $(HTML_TARGETS); do \
+ rm -f $(DESTDIR)$(htmldir)/$${file}; \
+ done
+uninstall-ps:
+ ext= ; [ -n "${GZIP_PROG}" ] && ext=.gz; \
+ for file in $(PS_TARGETS); do \
+ rm -f $(DESTDIR)$(psdir)/$${file}$${ext}; \
+ done
+uninstall-pdf:
+ for file in $(PDF_TARGETS); do \
+ rm -f $(DESTDIR)$(pdfdir)/$${file}; \
+ done
+
+uninstall-doc: uninstall-dvi uninstall-html uninstall-pdf uninstall-ps
+
+
### Makefile ends here