Salome HOME
Test1967: Update tolerance ratio for moving vs creating.
[modules/shaper.git] / CMakeCommon / FindSphinx.cmake
index 6035307c0f744967638178ff7d2ceab9ab1c7871..9a4bff8884800604dcd3768b48085f080854024b 100644 (file)
@@ -5,7 +5,7 @@
 #   SPHINX_PYTHONPATH - path to the Sphinx Python modules
 #
 ###########################################################################
-# Copyright (C) 2013-2019  CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2013-2023  CEA, EDF, OPEN CASCADE
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
@@ -45,6 +45,13 @@ INCLUDE(FindPackageHandleStandardArgs)
 FIND_PACKAGE_HANDLE_STANDARD_ARGS(Sphinx REQUIRED_VARS SPHINX_EXECUTABLE SPHINX_APIDOC_EXECUTABLE)
 
 IF(SPHINX_EXECUTABLE)
+  IF(WIN32)
+    # Call Sphinx through the Python executable to eliminate the problem related to starting the Sphinx's process.
+    GET_FILENAME_COMPONENT(_tmp_ROOT_DIR "${SPHINX_EXECUTABLE}" PATH)
+    GET_FILENAME_COMPONENT(_tmp_FILENAME "${SPHINX_EXECUTABLE}" NAME_WE)
+    SET(SPHINX_EXECUTABLE "${PYTHON_EXECUTABLE}" "${_tmp_ROOT_DIR}/${_tmp_FILENAME}-script.py")
+  ENDIF()
+
   EXECUTE_PROCESS(COMMAND ${SPHINX_EXECUTABLE} "--version" OUTPUT_VARIABLE SPHINX_VERSION OUTPUT_STRIP_TRAILING_WHITESPACE)
   STRING(REGEX REPLACE ".* ([0-9.]+)$" "\\1" SPHINX_VERSION "${SPHINX_VERSION}" )
   MESSAGE(STATUS "Sphinx version is ${SPHINX_VERSION}")