SET( SWIG_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/ycp_wrap.cxx" ) SET( SWIG_INPUT "${CMAKE_CURRENT_SOURCE_DIR}/ycp.i" ) ADD_CUSTOM_COMMAND ( OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/ycp_wrap.cxx COMMAND ${CMAKE_COMMAND} -E echo_append "Creating wrapper code..." #COMMAND ${SWIG_EXECUTABLE} -c++ -ruby -autorename -xmlout parse.xml -I/usr/include swig/zypp.i COMMAND ${SWIG_EXECUTABLE} -I${YAST_INCLUDE_DIR} -c++ -ruby -autorename -xmlout ${CMAKE_CURRENT_BINARY_DIR}/parse.xml -o ${CMAKE_CURRENT_BINARY_DIR}/ycp_wrap.cxx -I${ZYPP_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/ycp.i COMMAND ${CMAKE_COMMAND} -E echo "Done." WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/ycp.i ) ADD_CUSTOM_TARGET( glue DEPENDS ${SWIG_OUTPUT} ) ADD_LIBRARY( ycpx SHARED "${CMAKE_CURRENT_BINARY_DIR}/ycp_wrap.cxx" ) SET_TARGET_PROPERTIES( ycpx PROPERTIES PREFIX "" ) ADD_DEPENDENCIES( ycpx glue ) INCLUDE_DIRECTORIES( ${RUBY_INCLUDE_PATH} ) INCLUDE_DIRECTORIES( ${YAST_INCLUDE_DIR} ) TARGET_LINK_LIBRARIES( ycpx ${YAST_LIBRARY} ) TARGET_LINK_LIBRARIES( ycpx ${YAST_YCP_LIBRARY} ) TARGET_LINK_LIBRARIES( ycpx ${YAST_PLUGIN_WFM_LIBRARY} ) TARGET_LINK_LIBRARIES( ycpx ${RUBY_LIBRARY} ) INSTALL(TARGETS ycpx LIBRARY DESTINATION ${RUBY_ARCH_DIR} ) INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/ycp.rb DESTINATION ${RUBY_VENDORLIB_DIR} )