1 set(ambd_headers core.h imainloop.h pluginloader.h glibmainloop.h)
2 set(ambd_sources core.cpp main.cpp pluginloader.cpp glibmainloop.cpp imainloop.h)
4 pkg_check_modules(gio REQUIRED gio-2.0)
8 message(STATUS "using Qt mainloop")
12 set(QT_INCLUDE_DIRS ${Qt5Core_INCLUDE_DIRS})
13 set(QT_LIBRARIES ${Qt5Core_LIBRARIES})
14 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Core_EXECUTABLE_COMPILE_FLAGS}")
15 add_definitions(${Qt5Core_DEFINITIONS})
17 set(include_dirs ${include_dirs} ${QT_INCLUDE_DIRS})
18 set(link_libraries ${link_libraries} ${QT_LIBRARIES})
20 add_definitions(-DQT_NO_KEYWORDS)
21 add_definitions(-DUSE_QT_CORE)
23 set(qtmainloopplugin_headers qtmainloop.h)
24 set(qtmainloopplugin_sources qtmainloop.cpp)
26 add_library(qtmainloopplugin MODULE ${qtmainloopplugin_sources})
27 set_target_properties(qtmainloopplugin PROPERTIES PREFIX "")
28 target_link_libraries(qtmainloopplugin amb -L${CMAKE_CURRENT_BINARY_DIR}/lib ${link_libraries})
30 install(TARGETS qtmainloopplugin LIBRARY DESTINATION ${LIB_INSTALL_DIR}/automotive-message-broker)
34 add_executable(ambd ${ambd_sources})
36 include_directories(${include_dirs} )
37 target_link_libraries(ambd ${link_libraries} dl amb ${gio_LIBRARIES})
39 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config.in.json ${CMAKE_CURRENT_BINARY_DIR}/config @ONLY)
40 configure_file(${CMAKE_CURRENT_SOURCE_DIR}/ambd.in ${CMAKE_CURRENT_BINARY_DIR}/init.d/ambd @ONLY)
42 install(TARGETS ambd RUNTIME DESTINATION bin)
43 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/config DESTINATION /etc/ambd)
44 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/init.d/ambd
45 DESTINATION /etc/init.d/
46 PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE