mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-04 12:15:46 +00:00
[cmake] Include project name in Sphinx doctree dir to fix race conditions
Modify add_sphinx_target() to include the project name alongside builder in Sphinx doctree directory. This aims to avoid crashes due to race conditions between multiple Sphinx instances running in parallel that attempt to create or read that directory simultaneously. This problem has originally been addressed in r283188. However, that commit presumed that there will be only one target per builder being run. However, r314863 introduced a second manpage target, reintroducing the race condition. Differential Revision: https://reviews.llvm.org/D40656 llvm-svn: 319461
This commit is contained in:
parent
9ecb33edbe
commit
b661757cd1
@ -19,7 +19,7 @@ endif()
|
|||||||
# ``project`` should be the project name
|
# ``project`` should be the project name
|
||||||
function (add_sphinx_target builder project)
|
function (add_sphinx_target builder project)
|
||||||
set(SPHINX_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/${builder}")
|
set(SPHINX_BUILD_DIR "${CMAKE_CURRENT_BINARY_DIR}/${builder}")
|
||||||
set(SPHINX_DOC_TREE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_doctrees-${builder}")
|
set(SPHINX_DOC_TREE_DIR "${CMAKE_CURRENT_BINARY_DIR}/_doctrees-${project}-${builder}")
|
||||||
set(SPHINX_TARGET_NAME docs-${project}-${builder})
|
set(SPHINX_TARGET_NAME docs-${project}-${builder})
|
||||||
|
|
||||||
if (SPHINX_WARNINGS_AS_ERRORS)
|
if (SPHINX_WARNINGS_AS_ERRORS)
|
||||||
|
Loading…
Reference in New Issue
Block a user