freebsd-ports/math/sage/files/patch-src_doc_common_builder.py
Stephen Montgomery-Smith ef55c5337b - Update to 6.2.
2014-05-15 22:58:01 +00:00

68 lines
2.7 KiB
Python

--- src/doc/common/builder.py.orig 2014-05-06 11:21:42.000000000 +0000
+++ src/doc/common/builder.py 2014-05-15 21:18:06.000000000 +0000
@@ -281,19 +281,22 @@
# build the other documents in parallel
from multiprocessing import Pool
- pool = Pool(NUM_THREADS, maxtasksperchild=1)
+ # pool = Pool(NUM_THREADS, maxtasksperchild=1)
L = [(doc, name, kwds) + args for doc in others]
- # map_async handles KeyboardInterrupt correctly. Plain map and
- # apply_async does not, so don't use it.
- x = pool.map_async(build_other_doc, L, 1)
- try:
- x.get(99999)
- pool.close()
- pool.join()
- except Exception:
- pool.terminate()
- if ABORT_ON_ERROR:
- raise
+ # Pool doesn't work properly in FreeBSD. Instead:
+ for iii in L:
+ build_other_doc(iii)
+ # # map_async handles KeyboardInterrupt correctly. Plain map and
+ # # apply_async does not, so don't use it.
+ # x = pool.map_async(build_other_doc, L, 1)
+ # try:
+ # x.get(99999)
+ # pool.close()
+ # pool.join()
+ # except Exception:
+ # pool.terminate()
+ # if ABORT_ON_ERROR:
+ # raise
logger.warning("Elapsed time: %.1f seconds."%(time.time()-start))
logger.warning("Done building the documentation!")
@@ -479,18 +482,20 @@
continue
output_dir = self._output_dir(format, lang)
from multiprocessing import Pool
- pool = Pool(NUM_THREADS, maxtasksperchild=1)
+ # 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
+ for iii in L:
+ build_ref_doc(iii)
+ # 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
# 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