swig: use C++ generated class doc and include directly from maa.i
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
@@ -37,7 +37,18 @@ install (TARGETS maa DESTINATION lib)
|
||||
|
||||
if (DOXYGEN_FOUND)
|
||||
set (CMAKE_SWIG_FLAGS -DDOXYGEN=${DOXYGEN_FOUND})
|
||||
set (DOCFILES maa pwm i2c gpio aio spi)
|
||||
set (DOCCLASSES aio gpio i2c pwm spi)
|
||||
foreach (_file ${DOCCLASSES})
|
||||
add_custom_command (OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_file}_class_doc.i
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/doxy2swig.py -n
|
||||
${CMAKE_BINARY_DIR}/xml/classmaa_1_1_${_file}.xml
|
||||
${CMAKE_CURRENT_BINARY_DIR}/${_file}_class_doc.i
|
||||
DEPENDS ${CMAKE_BINARY_DIR}/xml/classmaa_1_1_${_file}.xml
|
||||
)
|
||||
add_custom_target (${_file}class_doc_i DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_file}_class_doc.i)
|
||||
add_dependencies (${_file}class_doc_i doc)
|
||||
endforeach ()
|
||||
set (DOCFILES maa ${DOCCLASSES})
|
||||
foreach (_file ${DOCFILES})
|
||||
add_custom_command (OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_file}_doc.i
|
||||
COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/doxy2swig.py -n
|
||||
@@ -54,6 +65,7 @@ if (BUILDSWIG)
|
||||
find_package (SWIG)
|
||||
if (SWIG_FOUND)
|
||||
include (${SWIG_USE_FILE})
|
||||
set_source_files_properties (maa.i PROPERTIES SWIG_FLAGS "-I${CMAKE_BINARY_DIR}/src")
|
||||
|
||||
if (BUILDSWIGPYTHON)
|
||||
add_subdirectory (python)
|
||||
|
||||
@@ -13,7 +13,8 @@ include_directories (
|
||||
)
|
||||
|
||||
set (CMAKE_CXX_FLAGS -DBUILDING_NODE_EXTENSION)
|
||||
set_source_files_properties (maajs.i PROPERTIES SWIG_FLAGS "-node")
|
||||
# SWIG treats SWIG_FLAGS as a list and not a string so semicolon seperation is required
|
||||
set_source_files_properties (maajs.i PROPERTIES SWIG_FLAGS "-node;-I${CMAKE_BINARY_DIR}/src")
|
||||
set_source_files_properties (maajs.i PROPERTIES CPLUSPLUS ON)
|
||||
|
||||
swig_add_module (maajs javascript maajs.i ${maa_LIB_SRCS})
|
||||
|
||||
@@ -2,11 +2,4 @@
|
||||
|
||||
%feature("autodoc", "3");
|
||||
|
||||
#ifdef DOXYGEN
|
||||
%include ../maa_doc.i
|
||||
%include ../gpio_doc.i
|
||||
%include ../i2c_doc.i
|
||||
%include ../pwm_doc.i
|
||||
#endif
|
||||
|
||||
%include ../maa.i
|
||||
|
||||
@@ -1,3 +1,12 @@
|
||||
#ifdef DOXYGEN
|
||||
%include maa_doc.i
|
||||
%include gpio_class_doc.i
|
||||
%include i2c_class_doc.i
|
||||
%include pwm_class_doc.i
|
||||
%include aio_class_doc.i
|
||||
%include spi_class_doc.i
|
||||
#endif
|
||||
|
||||
%{
|
||||
#include "maa.h"
|
||||
#include "gpio.hpp"
|
||||
|
||||
@@ -7,15 +7,17 @@ include_directories(
|
||||
)
|
||||
|
||||
set_source_files_properties (pymaa.i PROPERTIES CPLUSPLUS ON)
|
||||
set_source_files_properties (pymaa.i PROPERTIES SWIG_FLAGS "-I${CMAKE_BINARY_DIR}/src")
|
||||
swig_add_module (pymaa python pymaa.i ${maa_LIB_SRCS})
|
||||
swig_link_libraries (pymaa ${PYTHON_LIBRARIES})
|
||||
|
||||
set (CMAKE_C_FLAGS -DSWIGPYTHON=${SWIG_FOUND})
|
||||
|
||||
if (DOXYGEN_FOUND)
|
||||
foreach (_file ${DOCFILES})
|
||||
add_dependencies (${SWIG_MODULE_pymaa_REAL_NAME} ${_file}doc_i)
|
||||
foreach (_file ${DOCCLASSES})
|
||||
add_dependencies (${SWIG_MODULE_pymaa_REAL_NAME} ${_file}class_doc_i)
|
||||
endforeach ()
|
||||
add_dependencies (${SWIG_MODULE_pymaa_REAL_NAME} maadoc_i)
|
||||
|
||||
add_custom_target (pydoc
|
||||
pydoc -w ${CMAKE_CURRENT_BINARY_DIR}/pymaa.py ${CMAKE_CURRENT_BINARY_DIR}/
|
||||
|
||||
@@ -2,12 +2,5 @@
|
||||
|
||||
%feature("autodoc", "3");
|
||||
|
||||
#ifdef DOXYGEN
|
||||
%include ../maa_doc.i
|
||||
%include ../gpio_doc.i
|
||||
%include ../i2c_doc.i
|
||||
%include ../pwm_doc.i
|
||||
#endif
|
||||
|
||||
%include ../maa.i
|
||||
|
||||
|
||||
Reference in New Issue
Block a user