[sagemath] 01/01: Temporarily disable parallel sphinx build to make the GAP failure more obvious
Ximin Luo
infinity0 at debian.org
Fri Jul 8 10:53:38 UTC 2016
This is an automated email from the git hooks/post-receive script.
infinity0 pushed a commit to branch master
in repository sagemath.
commit 35d1226a129633281ab7a2bb9fb367474c906af5
Author: Ximin Luo <infinity0 at debian.org>
Date: Fri Jul 8 12:53:00 2016 +0200
Temporarily disable parallel sphinx build to make the GAP failure more obvious
- also fix previous python-userdir update to make it more efficient
---
debian/README.Debian | 3 +-
debian/patches/python_installs_in_userdir.patch | 15 +++++----
debian/patches/series | 1 +
debian/patches/sphinx-update.patch | 2 +-
debian/patches/temp-disable-parallel-sphinx.patch | 39 +++++++++++++++++++++++
5 files changed, 50 insertions(+), 10 deletions(-)
diff --git a/debian/README.Debian b/debian/README.Debian
index fcb6b1e..5c16d76 100644
--- a/debian/README.Debian
+++ b/debian/README.Debian
@@ -18,8 +18,7 @@ also need sage to -lflint-arb instead of -larb (or perhaps Debian needs to
install it as libarb.so; check upstream to see what they prefer). as a temp
workaround you can `ln -s libflint-arb.so /usr/lib/libarb.so`.
-3. Post-compilation docbuild hangs after successfully building the
-doc/sage/inventory/en/reference/tensor component. Figure out why..
+3. Post-compilation docbuild segfaults whilst building GAP docs.
## TODO (required to get into Debian archives)
diff --git a/debian/patches/python_installs_in_userdir.patch b/debian/patches/python_installs_in_userdir.patch
index faba1d2..3dabdfd 100644
--- a/debian/patches/python_installs_in_userdir.patch
+++ b/debian/patches/python_installs_in_userdir.patch
@@ -135,12 +135,13 @@ This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
from .build_options import (LANGUAGES, SPHINXOPTS, PAPER, OMIT,
PAPEROPTS, ALLSPHINXOPTS, NUM_THREADS, WEBSITESPHINXOPTS,
-@@ -151,6 +151,8 @@
- """
- d = os.path.join(SAGE_DOC, type, self.lang, self.name)
- sage_makedirs(d)
+@@ -327,6 +327,9 @@
+ and os.path.isdir(os.path.join(SAGE_DOC_SRC, lang, document))):
+ documents.append(os.path.join(lang, document))
+
+ subprocess.check_call(['sh', '-c',
+ 'for i in /usr/share/sagemath/*; do ln -Tsf "$i" %s/"$(basename $i)"; done' % SAGE_SHARE])
- return d
-
- def _doctrees_dir(self):
++
+ # Ensure that the reference guide is compiled first so that links from
+ # the other documents to it are correctly resolved.
+ if 'en/reference' in documents:
diff --git a/debian/patches/series b/debian/patches/series
index 222a6af..6a24a56 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -15,3 +15,4 @@ mpfi-fix-api.patch
cysignals-multiarch-path.patch
python_installs_in_userdir.patch
sphinx-update.patch
+temp-disable-parallel-sphinx.patch
diff --git a/debian/patches/sphinx-update.patch b/debian/patches/sphinx-update.patch
index 5b0684c..d49361f 100644
--- a/debian/patches/sphinx-update.patch
+++ b/debian/patches/sphinx-update.patch
@@ -7,7 +7,7 @@ Forwarded: not-needed
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/sage/src/sage_setup/docbuild/__init__.py
+++ b/sage/src/sage_setup/docbuild/__init__.py
-@@ -769,7 +769,7 @@
+@@ -770,7 +770,7 @@
env_pickle = os.path.join(self._doctrees_dir(), 'environment.pickle')
try:
diff --git a/debian/patches/temp-disable-parallel-sphinx.patch b/debian/patches/temp-disable-parallel-sphinx.patch
new file mode 100644
index 0000000..87be176
--- /dev/null
+++ b/debian/patches/temp-disable-parallel-sphinx.patch
@@ -0,0 +1,39 @@
+Description: Temporarily disable parallel sphinx build to make the GAP failure more obvious
+Author: Ximin Luo <infinity0 at debian.org>
+Forwarded: not-needed
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- a/sage/src/sage_setup/docbuild/__init__.py
++++ b/sage/src/sage_setup/docbuild/__init__.py
+@@ -489,19 +489,20 @@
+ if not os.path.exists(refdir):
+ continue
+ output_dir = self._output_dir(format, lang)
+- from multiprocessing import Pool
+- pool = Pool(NUM_THREADS, maxtasksperchild=1)
++ #from multiprocessing import Pool
++ #pool = Pool(NUM_THREADS, maxtasksperchild=1)
+ L = [(doc, lang, format, kwds) + args for doc in self.get_all_documents(refdir)]
+ # (See comment in AllBuilder._wrapper about using map instead of apply.)
+- x = pool.map_async(build_ref_doc, L, 1)
+- try:
+- x.get(99999)
+- pool.close()
+- pool.join()
+- except Exception:
+- pool.terminate()
+- if ABORT_ON_ERROR:
+- raise
++ #x = pool.map_async(build_ref_doc, L, 1)
++ map(build_ref_doc, L)
++ #try:
++ # x.get(99999)
++ # pool.close()
++ # pool.join()
++ #except Exception:
++ # pool.terminate()
++ # if ABORT_ON_ERROR:
++ # raise
+ # The html refman must be build at the end to ensure correct
+ # merging of indexes and inventories.
+ # Sphinx is run here in the current process (not in a
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/sagemath.git
More information about the debian-science-commits
mailing list