project ( hugr ) CONFIGURE_FILE( ${PROJECT_SOURCE_DIR}/hugr.pc.in ${PROJECT_BINARY_DIR}/hugr.pc @ONLY) # --- Targets add_library ( hugr SHARED hugr.cpp hugradmin.cpp ) target_link_libraries ( hugr boost_serialization ) add_executable ( hugrstore hugrstore.cpp ) target_link_libraries ( hugrstore hugr boost_program_options) add_executable ( hugrsh hugrsh.cpp ) target_link_libraries ( hugrsh hugr ) add_executable ( hugrlog hugrlog.cpp ) target_link_libraries ( hugrlog hugr pthread boost_program_options) add_executable ( hugrreplay hugrreplay.cpp ) target_link_libraries ( hugrreplay hugr pthread boost_program_options ) add_subdirectory ( hugrweb ) add_subdirectory ( tests ) # --- Install install ( TARGETS hugr DESTINATION ${CMAKE_INSTALL_PREFIX}/lib ) install ( TARGETS hugrstore hugrsh hugrlog hugrreplay DESTINATION ${CMAKE_INSTALL_PREFIX}/bin ) file ( GLOB_RECURSE hpp_files . *.h *.hpp) install ( FILES ${hpp_files} DESTINATION ${CMAKE_INSTALL_PREFIX}/include ) install ( FILES ${PROJECT_BINARY_DIR}/hugr.pc DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/pkgconfig ) # --- Package generation set ( PACKAGE_NAME ${PROJECT_NAME} ) set ( PACKAGE_VERSION "1.1.0" ) set ( PACKAGE_RELEASE 0 ) set ( PACKAGE_MAINTAINER_NAME "Cycabtk Team" ) set ( PACKAGE_MAINTAINER_EMAIL "cycabtk@inrialpes.fr" ) set ( PACKAGE_DESCRIPTION "Hugr is a C++ object oriented blackboard middleware. Its purpose is data sharing through shared memory and network." ) set ( PACKAGE_DESCRIPTION_SUMMARY "Hugr middleware" ) set ( PACKAGE_DEPENDS ${hugr_dependencies} ) # Debian packages include ( ../CMake/DpkgDeb.cmake ) if ( DPKG_FOUND ) add_debian_package ( ${PROJECT_NAME} ) endif ( DPKG_FOUND ) # RPM packages include ( ../CMake/Rpmbuild.cmake ) set ( PACKAGE_GROUP "Groupe" ) set ( PACKAGE_LICENSE "LGPL" ) if ( RPMBUILD_FOUND ) add_rpm ( ${PROJECT_NAME} ) endif ( RPMBUILD_FOUND )