diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6685431b8..b8ac4bed2 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -20,13 +20,14 @@ # along with this program. If not, see . ################################################################################### -# All executables link against libvillas -link_libraries(villas) - -add_executable(villas-relay villas-relay.cpp) add_executable(villas-node villas-node.cpp) +target_link_libraries(villas-node PUBLIC villas) + add_executable(villas-test-rtt villas-test-rtt.cpp) +target_link_libraries(villas-test-rtt PUBLIC villas) + add_executable(villas-test-shmem villas-test-shmem.cpp) +target_link_libraries(villas-test-shmem PUBLIC villas) install( TARGETS villas-node villas-test-rtt villas-test-shmem @@ -34,13 +35,30 @@ install( RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} ) +if(WITH_WEB) + add_executable(villas-relay villas-relay.cpp) + target_include_directories(villas-relay PRIVATE ${LIBWEBSOCKETS_INCLUDE_DIRS} ${OPENSSL_INCLUDE_DIR} ${SPDLOG_INCLUDE_DIRS}) + target_link_libraries(villas-relay PRIVATE websockets_shared) + + install( + TARGETS villas-relay + COMPONENT bin + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + ) +endif() + if(WITH_IO) add_executable(villas-test-cmp villas-test-cmp.cpp) - add_executable(villas-convert villas-convert.cpp) - add_executable(villas-pipe villas-pipe.cpp) - add_executable(villas-signal villas-signal.cpp) + target_link_libraries(villas-test-cmp PUBLIC villas) - target_link_libraries(villas-pipe PUBLIC Threads::Threads) + add_executable(villas-convert villas-convert.cpp) + target_link_libraries(villas-convert PUBLIC villas) + + add_executable(villas-pipe villas-pipe.cpp) + target_link_libraries(villas-pipe PUBLIC villas) + + add_executable(villas-signal villas-signal.cpp) + target_link_libraries(villas-signal PUBLIC villas) install( TARGETS villas-convert villas-pipe villas-signal villas-test-cmp @@ -51,6 +69,7 @@ endif() if(WITH_IO AND WITH_HOOKS) add_executable(villas-hook villas-hook.cpp) + target_link_libraries(villas-hook PUBLIC villas) install( TARGETS villas-hook