+FUNCTION(SPHINX_CHECK_EXTENSIONS)
+ CMAKE_PARSE_ARGUMENTS(CHECK_EXTENSIONS "REQUIRED" "" "" ${ARGN})
+ FOREACH(_ext ${CHECK_EXTENSIONS_UNPARSED_ARGUMENTS})
+ EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "import ${_ext}; print('ok')" OUTPUT_VARIABLE _has_ext ERROR_QUIET)
+ IF(_has_ext)
+ MESSAGE(STATUS "Required Sphinx extension '${_ext}' has been found!")
+ ELSE()
+ IF(CHECK_EXTENSIONS_REQUIRED)
+ MESSAGE(FATAL_ERROR "Required Sphinx extension '${_ext}' is not found!")
+ ELSE()
+ MESSAGE(WARNING "Required Sphinx extension '${_ext}' is not found!")
+ ENDIF()
+ ENDIF()
+ ENDFOREACH()
+ENDFUNCTION()
+