X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=CMakeCommon%2FPythonAPI.cmake;h=c6f311bac7a047af8f878a221d38850a15b2bb2a;hb=eba917a58bd37019e2634527cc308dc912b13ecc;hp=7612bf4c88cd0b8e58a67d3d5dc6ef227db16c9a;hpb=f24cef91537e80e843649efda636c308e318a399;p=modules%2Fshaper.git diff --git a/CMakeCommon/PythonAPI.cmake b/CMakeCommon/PythonAPI.cmake index 7612bf4c8..c6f311bac 100644 --- a/CMakeCommon/PythonAPI.cmake +++ b/CMakeCommon/PythonAPI.cmake @@ -6,7 +6,32 @@ include(${SWIG_USE_FILE}) #TODO(spo): is -threads necessary? set(CMAKE_SWIG_FLAGS -threads -Wall) -# For doxyhelp.i -include_directories( - ${PROJECT_BINARY_DIR}/doc/swig +# Using doxy2swig: +# Add to ModuleName.i before any %inlcude: +# %include "doxyhelp.i" +# Add to CMakeLists.txt before SWIG_ADD_MODULE(...): +# SET(SWIG_MODULE_ModuleName_EXTRA_DEPS ${SWIG_MODULE_ModuleName_EXTRA_DEPS} doxyhelp.i) + +#TODO(spo): why not use FindDoxygen.cmake module? +if(WIN32) + find_program(DOXYGEN_EXECUTABLE Doxygen) +else() + find_program(DOXYGEN_EXECUTABLE doxygen) +endif() + +set(EXCLUDE_DOC_DIR "*/Test/* */Mock/*") + +configure_file(${PROJECT_SOURCE_DIR}/doc/swig/doxyfile.in doxyfile @ONLY) + +set(doc_sources) +foreach(it "*.h;*.cpp;*.hpp;*.cxx") + file(GLOB doc_source RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${it}) + list(APPEND doc_sources ${doc_source}) +endforeach() +#message(STATUS "${doc_sources}") + +add_custom_command(OUTPUT doxyhelp.i + COMMAND "${DOXYGEN_EXECUTABLE}" + COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/doxy2swig.py xml/index.xml doxyhelp.i + DEPENDS ${doc_sources} ${PROJECT_SOURCE_DIR}/doc/swig/doxyfile.in )