- # Library dependencies (include updates automatically)
- TARGET_LINK_LIBRARIES(${PROJECT_NAME}
- ${EXTRA_LINK_LIBRARIES}
- ${link_libraries}
+
+ 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
+ can/can-bus.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
+ utils/signals.cpp
+ utils/openxc-utils.cpp
+ utils/timer.cpp
+ utils/socketcan.cpp
+ #utils/socketcan-raw.cpp
+ utils/socketcan-bcm.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