OPTION(IVP_BUILD_@LIBNAME@ "Build Python wrapper library @LIBNAME@" @IVP_BUILD_BY_DEFAULT@) IF("${IVP_BUILD_@LIBNAME@}" STREQUAL "ON") INCLUDE(FindSWIG) INCLUDE(FindPythonLibs) IF(NOT ${SWIG_FOUND}) MESSAGE(STATUS "Won't be able to build the @LIBNAME@ library, because " "CMake can't find the 'swig' program that's used to my Python wrappers " "for C++ libraries.") ENDIF(NOT ${SWIG_FOUND}) IF("${PYTHON_INCLUDE_PATH}" STREQUAL "") SET(PYTHON_INCLUDE_PATH_FOUND 0) MESSAGE(STATUS "Won't be able to build the @LIBNAME@ library, because " "CMake can't find the Python.h. If you know where it is, you should be " "able to fix this by setting the CMake variable PYTHON_INCLUDE_PATH " "to the directory containing the right version of Python.h") ELSE("${PYTHON_INCLUDE_PATH}" STREQUAL "") SET(PYTHON_INCLUDE_PATH_FOUND 1) ENDIF("${PYTHON_INCLUDE_PATH}" STREQUAL "") IF(${SWIG_FOUND} AND ${PYTHON_INCLUDE_PATH_FOUND}) INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) GET_FILENAME_COMPONENT(INTERFACE_FILE_BASENAME "@INTERFACE_FILENAME@" NAME_WE) SET(WRAPPER_CXX_FILANEME ${INTERFACE_FILE_BASENAME}_wrap.cxx) ADD_CUSTOM_COMMAND( OUTPUT ${WRAPPER_CXX_FILANEME} COMMAND ${SWIG_EXECUTABLE} -python -c++ -shadow -dirprot @INTERFACE_FILENAME@ DEPENDS @INTERFACE_FILENAME@ ) ADD_LIBRARY(@LIBNAME@ SHARED ${WRAPPER_CXX_FILANEME} ) IF("${IVP_PACKAGE_VERSION}" STREQUAL "") MESSAGE(STATUS "@LIBNAME@: IVP_PACKAGE_VERSION not set, so not creating install component.") ELSE("${IVP_PACKAGE_VERSION}" STREQUAL "") INSTALL( TARGETS @LIBNAME@ DESTINATION lib/ivp-${IVP_PACKAGE_VERSION} COMPONENT @IVP_INSTALL_COMPONENT@) FILE(GLOB IVP_PUBLIC_HEADERS *.h) INSTALL( FILES ${IVP_PUBLIC_HEADERS} DESTINATION include/ivp-${IVP_PACKAGE_VERSION}/@IVP_SUBDIR_NAME@ COMPONENT @IVP_INSTALL_COMPONENT@ ) ENDIF("${IVP_PACKAGE_VERSION}" STREQUAL "") ENDIF(${SWIG_FOUND} AND ${PYTHON_INCLUDE_PATH_FOUND}) ENDIF("${IVP_BUILD_@LIBNAME@}" STREQUAL "ON")