include_directories( 
  ${PROJECT_BINARY_DIR}/src/msgs
  ${PROJECT_SOURCE_DIR}/src 
)

set (sources TopicManager.cc
             Subscriber.cc
             Publisher.cc
             IOManager.cc
             Connection.cc
             ConnectionManager.cc
             Publication.cc
             SubscriptionTransport.cc
             PublicationTransport.cc
             Transport.cc
             Node.cc
) 

set (headers TopicManager.hh
             Subscriber.hh
             Publisher.hh
             IOManager.hh
             Connection.hh
             ConnectionManager.hh
             CallbackHelper.hh
             Publication.hh
             SubscriptionTransport.hh
             PublicationTransport.hh
             SubscribeOptions.hh
             Transport.hh
             TransportTypes.hh
             Node.hh
)

set (transport_headers "" CACHE INTERNAL "transport headers" FORCE)
foreach (hdr ${headers})
  APPEND_TO_CACHED_STRING(transport_headers "Transport Headers" "#include \"transport/${hdr}\"\n")
endforeach()
configure_file ( ${CMAKE_CURRENT_SOURCE_DIR}/transport.h.in ${CMAKE_CURRENT_BINARY_DIR}/transport.h )


add_library(gazebo_transport SHARED ${sources})

target_link_libraries(gazebo_transport gazebo_common 
                                       gazebo_msgs 
                                       ${boost_libraries})

INSTALL_LIBRARY(gazebo_transport)
INSTALL_INCLUDES("transport" ${headers} ${CMAKE_CURRENT_BINARY_DIR}/transport.h)
