X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=cmake%2FUseSphinx.cmake;h=02849f7d1b6b50e6e33c8fac6ccfbd47a7eaddb6;hb=ec11e17201ac1f690686f9337b9c1ab368e1f8df;hp=2b46a15aa58e6e12b82df2d6b47208819998b77b;hpb=5826dcea318c6f4e6cdaf4e43a5bf027bd895ee7;p=tools%2Fconfiguration.git diff --git a/cmake/UseSphinx.cmake b/cmake/UseSphinx.cmake index 2b46a15..02849f7 100644 --- a/cmake/UseSphinx.cmake +++ b/cmake/UseSphinx.cmake @@ -1,8 +1,5 @@ ########################################################################### -# Copyright (C) 2007-2019 CEA/DEN, EDF R&D, OPEN CASCADE -# -# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +# Copyright (C) 2007-2022 CEA/DEN, EDF R&D, OPEN CASCADE # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public @@ -27,6 +24,22 @@ IF(NOT Sphinx_FOUND) MESSAGE(FATAL_ERROR "Developer error -> UseSphinx file should be included after detection of the sphinx!") ENDIF() +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() + function(JOIN OUTPUT GLUE) set(_TMP_RESULT "") set(_GLUE "") # effective glue is empty at the beginning @@ -133,4 +146,4 @@ MACRO(ADD_MULTI_LANG_DOCUMENTATION) ENDFOREACH() SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${make_clean_files}") -ENDMACRO(ADD_MULTI_LANG_DOCUMENTATION) \ No newline at end of file +ENDMACRO(ADD_MULTI_LANG_DOCUMENTATION)