From ecee39d3ef3214d290bf41ff847d86ddc33df1e1 Mon Sep 17 00:00:00 2001 From: rnv Date: Fri, 16 Aug 2019 18:37:05 +0300 Subject: [PATCH] Build documentation under Windows. --- cmake/SalomeMacros.cmake | 11 ++++++++++- cmake/UseSphinx.cmake | 8 ++++++++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/cmake/SalomeMacros.cmake b/cmake/SalomeMacros.cmake index f6e9388..040add9 100644 --- a/cmake/SalomeMacros.cmake +++ b/cmake/SalomeMacros.cmake @@ -799,6 +799,7 @@ ENDMACRO(SALOME_ACCUMULATE_ENVIRONMENT) # directory. # MACRO(SALOME_GENERATE_ENVIRONMENT_SCRIPT output script cmd opts) + PARSE_ARGUMENTS(SALOME_GENERATE_ENVIRONMENT_SCRIPT "CONTEXT" "" ${ARGN}) IF(IS_ABSOLUTE ${script}) SET(_script ${script}) ELSE() @@ -814,13 +815,16 @@ MACRO(SALOME_GENERATE_ENVIRONMENT_SCRIPT output script cmd opts) ENDIF() SET(_env) + IF(WIN32 AND SALOME_GENERATE_ENVIRONMENT_SCRIPT_CONTEXT) + SET(_env "IF ${_env}\"%SET_${SALOME_GENERATE_ENVIRONMENT_SCRIPT_CONTEXT}_VARS%\"==\"1\" GOTO END\n") + ENDIF() FOREACH(_item ${_${PROJECT_NAME}_EXTRA_ENV}) FOREACH(_val ${_${PROJECT_NAME}_EXTRA_ENV_${_item}}) IF(WIN32) IF(${_item} STREQUAL "LD_LIBRARY_PATH") SET(_item PATH) ENDIF() - STRING(REPLACE "/" "\\" _env "${_env} @SET ${_item}=${_val};%${_item}%\n") + STRING(REPLACE "/" "\\" _env "${_env}@SET ${_item}=${_val};%${_item}%\n") ELSEIF(APPLE) IF(${_item} STREQUAL "LD_LIBRARY_PATH") SET(_env "${_env} export DYLD_LIBRARY_PATH=${_val}:\${DYLD_LIBRARY_PATH}\n") @@ -832,6 +836,11 @@ MACRO(SALOME_GENERATE_ENVIRONMENT_SCRIPT output script cmd opts) ENDIF() ENDFOREACH() ENDFOREACH() + IF(WIN32 AND SALOME_GENERATE_ENVIRONMENT_SCRIPT_CONTEXT) + SET(_env "${_env}@SET SET_${SALOME_GENERATE_ENVIRONMENT_SCRIPT_CONTEXT}_VARS=1\n") + SET(_env "${_env}:END\n" ) + ENDIF() + SET(_script ${_script}.${_ext}) FILE(WRITE ${_script} "${_env}") diff --git a/cmake/UseSphinx.cmake b/cmake/UseSphinx.cmake index b099417..7e952f2 100644 --- a/cmake/UseSphinx.cmake +++ b/cmake/UseSphinx.cmake @@ -99,6 +99,9 @@ MACRO(ADD_MULTI_LANG_DOCUMENTATION) ENDIF() SET(_env) + IF(WIN32) + SET(_env "IF ${_env}\"%SET_${MULTI_LANG_TARGET_NAME}_VARS%\"==\"1\" GOTO DO_GENERATION\n") + ENDIF() FOREACH(_item ${_${PROJECT_NAME}_EXTRA_ENV}) FOREACH(_val ${_${PROJECT_NAME}_EXTRA_ENV_${_item}}) IF(WIN32) @@ -117,6 +120,11 @@ MACRO(ADD_MULTI_LANG_DOCUMENTATION) ENDIF() ENDFOREACH() ENDFOREACH() + IF(WIN32) + SET(_env "${_env}@SET SET_${MULTI_LANG_TARGET_NAME}_VARS=1\n") + SET(_env "${_env}:DO_GENERATION\n" ) + ENDIF() + SET(_script ${CMAKE_CURRENT_BINARY_DIR}/build_doc.${_ext}) FILE(WRITE ${_script} ${_env}${CMDS}) -- 2.39.2