X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=low-can-binding%2FCMakeLists.txt;h=ce66a8c49e0822f2ad3e6150710696ce0997cd8f;hb=cc22c89b2362f14e18d8d8ef2b736800592cfd1a;hp=9742580f16375c6878a90710dec88a1ef201bd54;hpb=795267e2c409a7c268fe0588ad9739b75def7620;p=apps%2Fagl-service-can-low-level.git diff --git a/low-can-binding/CMakeLists.txt b/low-can-binding/CMakeLists.txt index 9742580f..ce66a8c4 100644 --- a/low-can-binding/CMakeLists.txt +++ b/low-can-binding/CMakeLists.txt @@ -18,23 +18,37 @@ ########################################################################### # Add target to project dependency list + PROJECT_TARGET_ADD(low-can) - # Define project Targets - add_library(${TARGET_NAME} MODULE - binding/${TARGET_NAME}-hat.cpp - binding/${TARGET_NAME}-cb.cpp - binding/${TARGET_NAME}-socket.cpp - binding/${TARGET_NAME}-subscription.cpp + if(WITH_FEATURE_ISOTP) + set(SOURCES_ISOTP + utils/socketcan-isotp.cpp + ) + endif() + + + if(WITH_FEATURE_J1939) + set(SOURCES_J1939 + can/message/j1939-message.cpp + utils/socketcan-j1939/socketcan-j1939.cpp + utils/socketcan-j1939/socketcan-j1939-data.cpp + utils/socketcan-j1939/socketcan-j1939-addressclaiming.cpp + ) + endif() + + set (SOURCES_LIB + binding/low-can-hat.cpp + binding/low-can-subscription.cpp binding/application.cpp - binding/application-generated.cpp can/can-bus.cpp - can/can-message-set.cpp - can/can-message-definition.cpp - can/can-message.cpp - can/can-signals.cpp can/can-decoder.cpp can/can-encoder.cpp + can/message-set.cpp + can/message-definition.cpp + can/message/message.cpp + can/message/can-message.cpp + can/signals.cpp diagnostic/diagnostic-message.cpp diagnostic/diagnostic-manager.cpp diagnostic/active-diagnostic-request.cpp @@ -44,22 +58,51 @@ PROJECT_TARGET_ADD(low-can) utils/socketcan.cpp #utils/socketcan-raw.cpp utils/socketcan-bcm.cpp - utils/config-parser.cpp) + utils/converter.cpp + ) + + add_library(${TARGET_NAME} SHARED ${SOURCES_LIB} ${SOURCES_J1939} ${SOURCES_ISOTP}) + + # Binder exposes a unique public entry point + SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES + LABELS "LIBRARY" + IMPORTED_LOCATION ${CMAKE_CURRENT_BINARY_DIR}/lib${TARGET_NAME}.so + ) + TARGET_LINK_LIBRARIES(${TARGET_NAME} + ini-config + openxc-message-format + uds-c + isotp-c + bitfield-c + ${link_libraries}) + +PROJECT_TARGET_ADD(low-can-binding) + + # Define project Targets + set (SOURCES + binding/low-can-cb.cpp + ) + + add_library(${TARGET_NAME} MODULE ${SOURCES}) + + set(OPENAPI_DEF "binding/low-can-apidef" CACHE STRING "name and path to the JSON API definition without extension") # Binder exposes a unique public entry point SET_TARGET_PROPERTIES(${TARGET_NAME} PROPERTIES PREFIX "afb-" - LABELS "BINDING" + LABELS "BINDINGV3" LINK_FLAGS ${BINDINGS_LINK_FLAG} + INSTALL_RPATH "$ORIGIN" OUTPUT_NAME ${TARGET_NAME} ) # Library dependencies (include updates automatically) TARGET_LINK_LIBRARIES(${TARGET_NAME} + low-can ini-config openxc-message-format uds-c isotp-c bitfield-c + appcontroller ${link_libraries}) -