# Generated from orogen/lib/orogen/templates/typekit/corba/CMakeLists.txt
<% typekit_deps = typekit.plugin('corba').dependencies %>
find_package(OrocosCORBA REQUIRED COMPONENTS Typekit) INCLUDE_DIRECTORIES(${OrocosCORBA_INCLUDE_DIRS}) ADD_DEFINITIONS(${OrocosCORBA_DEFINES})
include_directories(${OrocosCORBA_INCLUDE_DIRS}) add_definitions(${OrocosCORBA_CFLAGS_OTHER}) link_directories(${OrocosCORBA_LIBRARY_DIRS})
<%= Generation.cmake_pkgconfig_require(typekit_deps, 'corba') %>
# Set up generation of IDL files for CORBA support IF (NOT OrocosCORBA_Typekit_FOUND)
MESSAGE(FATAL_ERROR "could not find development files for Orocos/CORBA")
ENDIF(NOT OrocosCORBA_Typekit_FOUND)
set(CORBA_FILES ${CMAKE_CURRENT_BINARY_DIR}/<%= typekit.name %>TypesC.cpp) if(CORBA_IMPLEMENTATION STREQUAL “OMNIORB”)
list(APPEND CORBA_FILES ${CMAKE_CURRENT_BINARY_DIR}/<%= typekit.name %>TypesDynSK.cpp)
endif(CORBA_IMPLEMENTATION STREQUAL “OMNIORB”)
add_custom_command(OUTPUT ${CORBA_FILES}
COMMAND ${OrocosCORBA_IDL} -Wbkeep_inc_path
<%= typekit.used_typekits.find_all { |tk| !tk.virtual? }.map { |tk| "-I" + File.join(tk.pkg.prefix, "include", "orocos") }.join(" ") %>
${CMAKE_CURRENT_SOURCE_DIR}/<%= typekit.name %>Types.idl
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/<%= typekit.name %>Types.idl)
add_definitions(${OrocosCORBA_Typekit_DEFINES}) include_directories(${OrocosCORBA_Typekit_INCLUDE_DIRS})
# Generate the CORBA transport set(libname_corba <%= typekit.name %>-transport-corba-${OROCOS_TARGET}) add_library(${libname_corba} SHARED
<%= impl.join("\n ") %>
${CORBA_FILES})
if (CXX_SUPPORTS_WUNUSED_VARIABLE)
set_source_files_properties(${CORBA_FILES} TARGET_COMPILE_OPTIONS "-Wno-unused-variable")
endif()
target_link_libraries(${libname_corba}
<%= typekit.name %>-typekit-${OROCOS_TARGET}
${OrocosCORBA_LIBRARIES})
if(WITH_RPATH AND APPLE)
set_target_properties( ${libname_corba} PROPERTIES
INSTALL_NAME_DIR "@rpath")
SET(CMAKE_BUILD_WITH_INSTALL_RPATH ON)
endif()
<%= Generation.cmake_pkgconfig_link('corba', '${libname_corba}', typekit_deps) %> set_target_properties(${libname_corba} PROPERTIES LINK_INTERFACE_LIBRARIES ${OrocosCORBA_LIBRARIES}) set_target_properties(${libname_corba} PROPERTIES INTERFACE_LINK_LIBRARIES ${OrocosCORBA_LIBRARIES})
SET(PKG_CONFIG_FILE_CORBA ${CMAKE_CURRENT_BINARY_DIR}/<%= typekit.name %>-transport-corba-${OROCOS_TARGET}.pc) CONFIGURE_FILE(<%= typekit.name %>-transport-corba.pc.in ${PKG_CONFIG_FILE_CORBA} @ONLY)
install(TARGETS ${libname_corba} LIBRARY DESTINATION lib/orocos${OROCOS_PKG_DIR}/types) install(FILES ${PKG_CONFIG_FILE_CORBA} DESTINATION lib/pkgconfig) install(FILES
<%= headers.join("\n ") %>
<%= typekit.name %>Types.idl
${CMAKE_CURRENT_BINARY_DIR}/<%= typekit.name %>TypesC.h
DESTINATION include/orocos/<%= typekit.name %>/transports/corba)