kpvdr commented on a change in pull request #186: PROTON-2086: Changed API
documentation from epydoc to Sphinx
URL: https://github.com/apache/qpid-proton/pull/186#discussion_r315299683
##########
File path: python/CMakeLists.txt
##########
@@ -112,35 +112,46 @@ endmacro(py_compile)
py_compile(${CMAKE_CURRENT_BINARY_DIR} ${pysrc-generated} CPROTON_ARTIFACTS)
py_compile(${CMAKE_CURRENT_SOURCE_DIR} "${pysrc}" PROTON_ARTIFACTS)
-find_program(EPYDOC_EXE epydoc)
-mark_as_advanced (EPYDOC_EXE)
-if (EPYDOC_EXE)
- foreach (py_src_doc ${pysrc})
- list(APPEND PY_DOC_FILES "${CMAKE_CURRENT_SOURCE_DIR}/${py_src_doc}")
- endforeach(py_src_doc)
+
+find_program(SPHINX_EXE_PY2 sphinx-build-2 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY2)
+find_program(SPHINX_EXE_PY3 sphinx-build-3 HINTS "/usr/bin")
+mark_as_advanced (SPHINX_EXE_PY3)
+
+# Version of Python used to build API must match version of Sphinx used to
build the docs
+get_filename_component(PYTHON_EXECUTABLE_NAME ${PYTHON_EXECUTABLE} NAME)
+# Try matching for Python 3 first
+if ((SPHINX_EXE_PY3) AND (PYTHON_EXECUTABLE_NAME STREQUAL "python3"))
+ set(BUILD_SPHINX_DOCS TRUE)
Review comment:
In the event the appropriate Sphinx for the version of Python in use is not
installed, this approach will result in an error when using `make docs`:
```
/usr/bin/python: No module named sphinx
make[3]: *** [python/CMakeFiles/docs-py.dir/build.make:57:
python/CMakeFiles/docs-py] Error 1
make[2]: *** [CMakeFiles/Makefile2:3866: python/CMakeFiles/docs-py.dir/all]
Error 2
make[1]: *** [CMakeFiles/Makefile2:115: CMakeFiles/docs.dir/rule] Error 2
make: *** [Makefile:188: docs] Error 2
```
But it certainly would address the other issues raised above. I'll look for
a way to handle the error more gracefully.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
With regards,
Apache Git Services
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]