Rev 4834: (vila) Fix sphinx < 0.5 output dirs. (Michael Gliwinski) in file:///home/pqm/archives/thelove/bzr/2.1/
Canonical.com Patch Queue Manager
pqm at pqm.ubuntu.com
Thu Apr 22 19:04:11 BST 2010
At file:///home/pqm/archives/thelove/bzr/2.1/
------------------------------------------------------------
revno: 4834 [merge]
revision-id: pqm at pqm.ubuntu.com-20100422180359-1gudlxdq1q7o9ik1
parent: pqm at pqm.ubuntu.com-20100415124640-nweon319jjiunqex
parent: tzeentch.gm at gmail.com-20100325100932-8wpd54a7gk0vpyxd
committer: Canonical.com Patch Queue Manager <pqm at pqm.ubuntu.com>
branch nick: 2.1
timestamp: Thu 2010-04-22 19:03:59 +0100
message:
(vila) Fix sphinx < 0.5 output dirs. (Michael Gliwinski)
modified:
doc/en/Makefile makefile-20090722133816-63ik5s6s5gsnz7zy-11
=== modified file 'doc/en/Makefile'
--- a/doc/en/Makefile 2009-09-08 12:33:30 +0000
+++ b/doc/en/Makefile 2010-03-25 10:09:32 +0000
@@ -11,6 +11,22 @@
PAPEROPT_letter = -D latex_paper_size=letter
ALLSPHINXOPTS = -d _build/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
+# Note that this assumes name of the output dir is same as name of the rule.
+define make_output_dirs
+# Create output directory (only needed for sphinx < 0.5)
+[ -d _build ] || mkdir _build
+[ -d "_build/$@" ] || mkdir "_build/$@"
+# Workaround for a bug in sphinx < 0.5 where it tries to delete
+# nonexistent static dirs and does not catch the exception. This was
+# fixed in svn+ssh://pythondev@svn.python.org/doctools/branches/0.4.x
+# at r65551 and merged as 280b62246342 in hg branch released as 0.5.
+[ -d "_build/$@/_static" ] || mkdir "_build/$@/_static"
+for fn in _static/*; do \
+ [ ! -d "$$fn" ] && continue; \
+ [ -d "_build/$@/$$fn" ] || mkdir "_build/$@/$$fn"; \
+done
+endef
+
.PHONY: help clean html dirhtml pickle json htmlhelp qthelp latex changes linkcheck doctest
help:
@@ -30,32 +46,38 @@
-rm -rf _build/*
html:
+ $(make_output_dirs)
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) _build/html
@echo
@echo "Build finished. The HTML pages are in _build/html."
dirhtml:
+ $(make_output_dirs)
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) _build/dirhtml
@echo
@echo "Build finished. The HTML pages are in _build/dirhtml."
pickle:
+ $(make_output_dirs)
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) _build/pickle
@echo
@echo "Build finished; now you can process the pickle files."
json:
+ $(make_output_dirs)
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) _build/json
@echo
@echo "Build finished; now you can process the JSON files."
htmlhelp:
+ $(make_output_dirs)
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) _build/htmlhelp
@echo
@echo "Build finished; now you can run HTML Help Workshop with the" \
".hhp project file in _build/htmlhelp."
qthelp:
+ $(make_output_dirs)
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) _build/qthelp
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
@@ -65,6 +87,7 @@
@echo "# assistant -collectionFile _build/qthelp/Bazaar.qhc"
latex:
+ $(make_output_dirs)
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) _build/latex
@echo
@echo "Build finished; the LaTeX files are in _build/latex."
@@ -72,17 +95,20 @@
"run these through (pdf)latex."
changes:
+ $(make_output_dirs)
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) _build/changes
@echo
@echo "The overview file is in _build/changes."
linkcheck:
+ $(make_output_dirs)
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) _build/linkcheck
@echo
@echo "Link check complete; look for any errors in the above output " \
"or in _build/linkcheck/output.txt."
doctest:
+ $(make_output_dirs)
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) _build/doctest
@echo "Testing of doctests in the sources finished, look at the " \
"results in _build/doctest/output.txt."
More information about the bazaar-commits
mailing list