OpenLCP/protocol/esta/acn/CMakeLists.txt

47 lines
1.3 KiB
CMake

project(${PROJECT_NAME}-acn VERSION ${PROJECT_VERSION})
add_library(${PROJECT_NAME} SHARED)
add_library(LCP::ACN ALIAS ${PROJECT_NAME})
add_library(${PROJECT_NAME}-pdu SHARED)
add_library(LCP::ACN::PDU ALIAS ${PROJECT_NAME}-pdu)
add_subdirectory(dmp)
add_subdirectory(rlp)
add_subdirectory(sdt)
target_sources(${PROJECT_NAME}
PUBLIC
component.h
)
target_link_libraries(${PROJECT_NAME}
PUBLIC
LCP::ACN::PDU # message format
LCP::ACN::RLP # root layer protocol
LCP::ACN::SDT # session data transport
LCP::ACN::DMP # device management protocol
)
target_sources(${PROJECT_NAME}-pdu
PUBLIC
pdu-stream.h
pdu.h
PRIVATE
pdu-stream.cpp
pdu.cpp
)
target_link_libraries(${PROJECT_NAME}-pdu
PUBLIC
LCP::BufferStream
LCP::UUID
)
set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
set_target_properties(${PROJECT_NAME} PROPERTIES VERSION ${PROJECT_VERSION})
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
set_target_properties(${PROJECT_NAME}-pdu PROPERTIES VERSION ${PROJECT_VERSION})
target_include_directories(${PROJECT_NAME}-pdu PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})