From c367963d9dc3a77f86fd2825f24495ce53444a76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20K=C4=99dzia?= <pawel.kedzia@pwr.wroc.pl> Date: Wed, 11 May 2011 18:36:39 +0200 Subject: [PATCH] (swig) Temporary CMakeList file --- swig/CMakeLists.txt | 120 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 120 insertions(+) create mode 100644 swig/CMakeLists.txt diff --git a/swig/CMakeLists.txt b/swig/CMakeLists.txt new file mode 100644 index 0000000..acbdc02 --- /dev/null +++ b/swig/CMakeLists.txt @@ -0,0 +1,120 @@ +########## wccl wrappers -- SWIG ############### + +PROJECT(WcclSwigWrap) + +find_package(Corpus2 1.0.8 REQUIRED) +set(CORPUS2_LIBS ${Corpus2_LIBRARY}) + +find_package(PwrUtils 1.0.1 REQUIRED) +set(PWRUTILS_LIBS ${PwrUtils_LIBRARY}) + +# find_package(Wccl 1.0.1 REQUIRED) +# set(WCCL_LIBS ${Wccl_LIBRARY}) +set(CORPUS2_PWR_WCCL_LIBS ${CORPUS2_LIBS} ${PWRUTILS_LIBS} ${WCCL_LIBS}) + +include_directories (${Libwccl_SOURCE_DIR} "../libwccl") +link_directories(${Libwccl_BINARY_DIR}) + +FIND_PACKAGE(SWIG REQUIRED) +INCLUDE(${SWIG_USE_FILE}) + +find_package(PythonLibs) +find_package(PythonInterp) +# idea taken from pyplot build system +execute_process( + COMMAND + ${PYTHON_EXECUTABLE} -c "from distutils import sysconfig; print sysconfig.get_python_lib(1,0,prefix='${CMAKE_INSTALL_EXEC_PREFIX}')" + OUTPUT_VARIABLE PYTHON_INSTDIR + OUTPUT_STRIP_TRAILING_WHITESPACE +) +message(STATUS "INFO: " "python lib: ${PYTHON_INSTDIR}" ) + +INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH}) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) + +# ----------------------------------------------------------------------------- +# ----------------------------------------------------------------------------- + +SET(CMAKE_SWIG_FLAGS "") +SET(SWIG_SRC_DIR ${SWIG_DIR}/wccl) + +# ----------------------------------------------------------------------------- +# wccl +SET_SOURCE_FILES_PROPERTIES(wccl.i PROPERTIES CPLUSPLUS ON) +SET_SOURCE_FILES_PROPERTIES(wccl.i PROPERTIES SWIG_FLAGS "-includeall" ) +SWIG_ADD_MODULE(wccl python wccl.i ) +SWIG_LINK_LIBRARIES(wccl ${PYTHON_LIBRARIES} ${CORPUS2_PWR_WCCL_LIBS}) + +# ----------------------------------------------------------------------------- +# ----------------------------------------------------------------------------- + +set_target_properties( + _wccl + PROPERTIES + INSTALL_NAME_DIR "${PYTHON_INSTDIR}" +) + +set(PERM_SCRIPTS + OWNER_READ + OWNER_WRITE + OWNER_EXECUTE + GROUP_READ + GROUP_EXECUTE + WORLD_READ + WORLD_EXECUTE +) + +# ----------------------------------------------------------------------------- +# Install python modules +# ----------------------------------------------------------------------------- + +install( + TARGETS _wccl + LIBRARY + DESTINATION ${PYTHON_INSTDIR} + PERMISSIONS ${PERM_SCRIPTS} +) + +install( + FILES ${CMAKE_CURRENT_BINARY_DIR}/wccl.py + DESTINATION ${PYTHON_INSTDIR} + PERMISSIONS ${PERM_SCRIPTS} +) + +# ----------------------------------------------------------------------------- +# Install SWIG files +# ----------------------------------------------------------------------------- + +install( + FILES libcclactionexeccontext.i + libcclannotationmatch.i + libcclbool.i + libcclexpression.i + libcclfunctionaloperator.i + libcclfunctionalopsequence.i + libccllexicon.i + libccllexicons.i + libcclmatchdata.i + libcclmatch.i + libcclmatchrule.i + libcclmatchrulesequence.i + libcclmatchvector.i + libccloperator.i + libcclparsedexpression.i + libcclparser.i + libcclposition.i + libcclsentencecontext.i + libcclstrset.i + libccltagaction.i + libccltagrule.i + libccltagrulesequence.i + libccltokenmatch.i + libccltset.i + libcclvalue.i + libcclvariables.i + libcclwcclfile.i + libcclwcclfileopsections.i + wccl.i + DESTINATION ${SWIG_SRC_DIR} + PERMISSIONS ${PERM_SCRIPTS} +) -- GitLab