From 5826dcea318c6f4e6cdaf4e43a5bf027bd895ee7 Mon Sep 17 00:00:00 2001 From: rnv Date: Mon, 26 Aug 2019 19:15:50 +0300 Subject: [PATCH] Improve documentation generation. --- cmake/FindPyQt5.cmake | 2 +- cmake/FindSalomeLibXml2.cmake | 4 + cmake/FindSalomeOpenCASCADE.cmake | 10 +++ cmake/SalomeMacros.cmake | 134 +++++++++++++++++++++++------- cmake/UseSphinx.cmake | 41 ++------- 5 files changed, 128 insertions(+), 63 deletions(-) diff --git a/cmake/FindPyQt5.cmake b/cmake/FindPyQt5.cmake index 4b1ad34..f893e0f 100644 --- a/cmake/FindPyQt5.cmake +++ b/cmake/FindPyQt5.cmake @@ -65,7 +65,7 @@ ENDIF() MARK_AS_ADVANCED(PYQT_SIP_MAIN_FILE) # Get PyQt compilation flags: -SET(PYQT_PYTHONPATH "${_tmp_ROOT_DIR}/PyQt5;${_tmp_ROOT_DIR}/lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/PyQt5") +SET(PYQT_PYTHONPATH "${_tmp_ROOT_DIR};${_tmp_ROOT_DIR}/PyQt5;${_tmp_ROOT_DIR}/lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages/PyQt5") SET(PYQT_SIPFLAGS) EXECUTE_PROCESS(COMMAND ${PYTHON_EXECUTABLE} -c "import sys; diff --git a/cmake/FindSalomeLibXml2.cmake b/cmake/FindSalomeLibXml2.cmake index e4d58b2..1303c06 100644 --- a/cmake/FindSalomeLibXml2.cmake +++ b/cmake/FindSalomeLibXml2.cmake @@ -31,4 +31,8 @@ ENDIF() IF(LIBXML2_FOUND) SALOME_ACCUMULATE_HEADERS(LIBXML2_INCLUDE_DIR) SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${LIBXML2_LIBRARIES}) + IF(WIN32 AND LIBXML2_XMLLINT_EXECUTABLE) + GET_FILENAME_COMPONENT(LIBXML2_BIN_DIR ${LIBXML2_XMLLINT_EXECUTABLE} DIRECTORY) + SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${LIBXML2_BIN_DIR}) + ENDIF() ENDIF() diff --git a/cmake/FindSalomeOpenCASCADE.cmake b/cmake/FindSalomeOpenCASCADE.cmake index 257b896..8dea8df 100644 --- a/cmake/FindSalomeOpenCASCADE.cmake +++ b/cmake/FindSalomeOpenCASCADE.cmake @@ -43,6 +43,16 @@ IF(OpenCASCADE_FOUND) SALOME_ACCUMULATE_HEADERS(OpenCASCADE_INCLUDE_DIR) SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${OpenCASCADE_LIBRARY_DIR}) + IF(WIN32) + # RNV: Fix bug with OCCT CMake build procedure: + # In Debug ${OpenCASCADE_BINARY_DIR} and ${OpenCASCADE_LIBRARY_DIR} are stored in the + # config file w/o "d" suffix. To be checked with latest version of OCCT. + SET(SUFF "") + IF(${OpenCASCADE_BUILD_TYPE} STREQUAL "Debug") + SET(SUFF "d") + ENDIF() + SALOME_ACCUMULATE_ENVIRONMENT(LD_LIBRARY_PATH ${OpenCASCADE_BINARY_DIR}${SUFF}) + ENDIF() ELSE() # TODO: Detect OpenCASCADE if it is distributed without CMake configuration. diff --git a/cmake/SalomeMacros.cmake b/cmake/SalomeMacros.cmake index 22e9c61..79c77e0 100644 --- a/cmake/SalomeMacros.cmake +++ b/cmake/SalomeMacros.cmake @@ -793,14 +793,39 @@ ENDMACRO(SALOME_ACCUMULATE_ENVIRONMENT) # Macro generates environement script using previously created variables # _${PROJECT_NAME}_EXTRA_ENV_, where is name of variable and # _${PROJECT_NAME}_EXTRA_ENV (see marco SALOME_ACCUMULATE_ENVIRONMENT); -# and puts generated command in proper environment into argument. -# +# and puts generated command in proper environment into argument. To ignore +# _${PROJECT_NAME}_EXTRA_ENV_ and _${PROJECT_NAME}_EXTRA_ENV variables set +# environment variable 'SALOME_HAS_GLOBAL_ENV=1' +# +# NAMED ARGUMENTS: +# CONTEXT: is used under Windows platform only to generate command file. See explanations +# below. +# CONTEXT_NAME: is used under Windows platform only to generate command file. See +# explanations below. +# ADDITIONAL_VARIABLES: list of the additional variables to write into environment script. +# Each item of this list should be in the 'Variable=Value' format. +# +# # Notes: # - If