X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=low-can-binding%2FCMakeLists.txt;h=7f73339dbb04570cc800aa27bd45efa6389aab2c;hb=refs%2Fheads%2Foctopus;hp=7abb3c44361d1cb93ecef7cf8c16915ec4207e21;hpb=91a8304cf1c9d7139840f95c1ad971c9603ed5bf;p=apps%2Fagl-service-can-low-level.git diff --git a/low-can-binding/CMakeLists.txt b/low-can-binding/CMakeLists.txt index 7abb3c44..7f73339d 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 + utils/config-parser.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} - ini-config + low-can openxc-message-format uds-c isotp-c bitfield-c + appcontroller ${link_libraries}) -