aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Eggert2013-02-21 14:42:56 -0800
committerPaul Eggert2013-02-21 14:42:56 -0800
commitb59a2e9edb562fce9c63a73242db323cd4a9dc0f (patch)
tree01cbe11459af48d73a2d069260f5971d83bdf637
parente224eb4172db7a9203ccf4a3c74954e1168e520b (diff)
downloademacs-b59a2e9edb562fce9c63a73242db323cd4a9dc0f.tar.gz
emacs-b59a2e9edb562fce9c63a73242db323cd4a9dc0f.zip
Parallelize documentation builds.
This speeds up building of documentation on multiprocessor platforms, and is motivated by Texinfo 5.0, which is much slower. Add a toplevel rule 'make docs' to make all the documentation. * .bzrignore: Add .dvi, .html, .ps. * Makefile.in (DVIS, HTMLS, INFOS, PSS, DOCS): New macros. ($(DOCS), docs, vi, html, pdf, ps): New rules. (info-real): Depend on $(INFOS) rather than doing it sequentially. (dvi): Depend on $(DVIS) rather than doing it sequentially. * doc/misc/Makefile.in (html): New rule.
-rw-r--r--ChangeLog12
-rw-r--r--Makefile.in31
-rw-r--r--doc/misc/ChangeLog4
-rw-r--r--doc/misc/Makefile.in2
4 files changed, 38 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index e59e0646cb7..2720997a6c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
12013-02-21 Paul Eggert <eggert@cs.ucla.edu>
2
3 Parallelize documentation builds.
4 This speeds up building of documentation on multiprocessor
5 platforms, and is motivated by Texinfo 5.0, which is much slower.
6 Add a toplevel rule 'make docs' to make all the documentation.
7 * .bzrignore: Add .dvi, .html, .ps.
8 * Makefile.in (DVIS, HTMLS, INFOS, PSS, DOCS): New macros.
9 ($(DOCS), docs, vi, html, pdf, ps): New rules.
10 (info-real): Depend on $(INFOS) rather than doing it sequentially.
11 (dvi): Depend on $(DVIS) rather than doing it sequentially.
12
12013-02-18 Aidan Gauland <aidalgol@no8wireless.co.nz> 132013-02-18 Aidan Gauland <aidalgol@no8wireless.co.nz>
2 14
3 * doc/misc/eshell.texi: Added documentation for Eshell insert 15 * doc/misc/eshell.texi: Added documentation for Eshell insert
diff --git a/Makefile.in b/Makefile.in
index a2de4f3b164..42b900401f7 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -54,6 +54,9 @@
54# make bootstrap 54# make bootstrap
55# Removes all the compiled files to force a new bootstrap from a 55# Removes all the compiled files to force a new bootstrap from a
56# clean slate, and then build in the normal way. 56# clean slate, and then build in the normal way.
57#
58# make docs
59# Make Emacs documentation files from their sources; requires makeinfo.
57 60
58SHELL = /bin/sh 61SHELL = /bin/sh
59 62
@@ -859,13 +862,25 @@ check:
859dist: 862dist:
860 cd ${srcdir}; ./make-dist 863 cd ${srcdir}; ./make-dist
861 864
865DVIS = lispref-dvi lispintro-dvi emacs-dvi misc-dvi
866HTMLS = lispref-html lispintro-html emacs-html misc-html
867INFOS = lispref-info lispintro-info emacs-info misc-info
868PDFS = lispref-pdf lispintro-pdf emacs-pdf misc-pdf
869PSS = lispref-ps lispintro-ps emacs-ps # no misc-ps
870
871DOCS = $(DVIS) $(HTMLS) $(INFOS) $(PDFS) $(PSS)
872$(DOCS):
873 t=$@; IFS=-; set $$t; IFS=; cd doc/$$1 && $(MAKE) $(MFLAGS) $$2
874
875.PHONY: $(DOCS) docs pdf ps
862.PHONY: info dvi dist check html info-real force-info check-info-dir 876.PHONY: info dvi dist check html info-real force-info check-info-dir
863 877
864info-real: 878docs: $(DOCS)
865 (cd doc/emacs; $(MAKE) $(MFLAGS) info) 879dvi: $(DVIS)
866 (cd doc/misc; $(MAKE) $(MFLAGS) info) 880html: $(HTMLS)
867 (cd doc/lispref; $(MAKE) $(MFLAGS) info) 881info-real: $(INFOS)
868 (cd doc/lispintro; $(MAKE) $(MFLAGS) info) 882pdf: $(PDFS)
883ps: $(PSS)
869 884
870force-info: 885force-info:
871# Note that man/Makefile knows how to put the info files in $(srcdir), 886# Note that man/Makefile knows how to put the info files in $(srcdir),
@@ -904,12 +919,6 @@ check-info-dir: info
904 fi ; \ 919 fi ; \
905 echo "info/dir is OK" 920 echo "info/dir is OK"
906 921
907dvi:
908 (cd doc/emacs; $(MAKE) $(MFLAGS) dvi)
909 (cd doc/misc; $(MAKE) $(MFLAGS) dvi)
910 (cd doc/lispref; $(MAKE) $(MFLAGS) elisp.dvi)
911 (cd doc/lispintro; $(MAKE) $(MFLAGS) emacs-lisp-intro.dvi)
912
913#### Bootstrapping. 922#### Bootstrapping.
914 923
915### This first cleans the lisp subdirectory, removing all compiled 924### This first cleans the lisp subdirectory, removing all compiled
diff --git a/doc/misc/ChangeLog b/doc/misc/ChangeLog
index 41eb17415b7..4f827073b2f 100644
--- a/doc/misc/ChangeLog
+++ b/doc/misc/ChangeLog
@@ -1,3 +1,7 @@
12013-02-21 Paul Eggert <eggert@cs.ucla.edu>
2
3 * Makefile.in (html): New rule.
4
12013-02-20 Michael Albinus <michael.albinus@gmx.de> 52013-02-20 Michael Albinus <michael.albinus@gmx.de>
2 6
3 * tramp.texi (Android shell setup): Improve. Reported by Thierry 7 * tramp.texi (Android shell setup): Improve. Reported by Thierry
diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in
index 3dac35aafee..add1b42a545 100644
--- a/doc/misc/Makefile.in
+++ b/doc/misc/Makefile.in
@@ -192,6 +192,8 @@ webhack: clean
192 192
193dvi: $(DVI_TARGETS) 193dvi: $(DVI_TARGETS)
194 194
195html: $(HTML_TARGETS)
196
195pdf: $(PDF_TARGETS) 197pdf: $(PDF_TARGETS)
196 198
197# Note that all the Info targets build the Info files in srcdir. 199# Note that all the Info targets build the Info files in srcdir.