# Disable vectorization in Eigen
# ADD_SUBDIRECTORY("typekit")

# plugin libraries and services should add themselves by calling 'orocos_plugin()' 
# instead of 'ADD_LIBRARY' in CMakeLists.txt.
#
# Usage: ADD_TYPEKIT( typekitname src1 src2 src3 )
#
macro( ADD_TYPEKIT LIB_TARGET_NAME )

  set(AC_INSTALL_DIR lib/orocos/types )
  set(AC_INSTALL_RT_DIR lib/orocos/types )
  
  if ( ${OROCOS_TARGET} STREQUAL "gnulinux" OR ${OROCOS_TARGET} STREQUAL "lxrt" OR ${OROCOS_TARGET} STREQUAL "xenomai")
      set( LIB_NAME ${LIB_TARGET_NAME}-${OROCOS_TARGET})
  else()
      set( LIB_NAME ${LIB_TARGET_NAME})
  endif()
  MESSAGE( "Building typekit ${LIB_TARGET_NAME}" )
  ADD_LIBRARY( ${LIB_TARGET_NAME} SHARED ${ARGN} )
  SET_TARGET_PROPERTIES( ${LIB_TARGET_NAME} PROPERTIES
    OUTPUT_NAME ${LIB_NAME}
    INSTALL_RPATH_USE_LINK_PATH 1
    )
  TARGET_LINK_LIBRARIES( ${LIB_TARGET_NAME} ${OROCOS-RTT_LIBRARIES} )

  INSTALL(TARGETS ${LIB_TARGET_NAME} LIBRARY DESTINATION ${AC_INSTALL_DIR} ARCHIVE DESTINATION lib RUNTIME DESTINATION ${AC_INSTALL_RT_DIR})

  LINK_DIRECTORIES( ${CMAKE_CURRENT_BINARY_DIR} )
  
endmacro( ADD_TYPEKIT )

# This gathers all the .cpp files into the variable 'SRCS'
FILE( GLOB SRCS [^.]*.cpp )
FILE( GLOB HPPS [^.]*.h )
    
ADD_TYPEKIT(MyTypekit ${SRCS} ${HPPS})

