Создание Привязок SWIG с CMake

Как я могу генерировать автоматические привязки для проекта C, который построен с использованием CMake?

Я хочу автоматически генерировать привязки для Python, Java, .NET, PHP, Perl, TCL, Ruby и Octave.

1 ответов


вы можете найти пример здесь.

фрагмент:

следующий пример является входным файлом CMake для создания оболочки python для файла интерфейса SWIG, например.я:

# This is a CMake example for Python

FIND_PACKAGE(SWIG REQUIRED)
INCLUDE(${SWIG_USE_FILE})

FIND_PACKAGE(PythonLibs)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})

INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})

SET(CMAKE_SWIG_FLAGS "")

SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES CPLUSPLUS ON)
SET_SOURCE_FILES_PROPERTIES(example.i PROPERTIES SWIG_FLAGS "-includeall")
SWIG_ADD_MODULE(example python example.i example.cxx)
SWIG_LINK_LIBRARIES(example ${PYTHON_LIBRARIES})