diff options
-rw-r--r-- | conf.d/cmake/config.cmake | 15 | ||||
-rw-r--r-- | low-can-binding/CMakeLists.txt | 11 |
2 files changed, 25 insertions, 1 deletions
diff --git a/conf.d/cmake/config.cmake b/conf.d/cmake/config.cmake index 9e9a15b0..e6da31a0 100644 --- a/conf.d/cmake/config.cmake +++ b/conf.d/cmake/config.cmake @@ -40,6 +40,21 @@ set(PROJECT_CMAKE_CONF_DIR "conf.d") # ---------------------------------- set(BUILD_TYPE "RELEASE" CACHE STRING "Default Build variant chosen. (Overwritten by cli if given)") +# Activate J1939 +# Need module in kernel +# -------------- + +execute_process(COMMAND ls /usr/include/linux/can/j1939.h RESULT_VARIABLE result OUTPUT_QUIET ERROR_QUIET) + +if(result) + message("Feature J1939 disabled") + set(WITH_FEATURE_J1939 OFF) +else() + message("Feature J1939 enabled") + set(WITH_FEATURE_J1939 ON) + add_definitions(-DUSE_FEATURE_J1939) +endif() + # Kernel selection if needed. You can choose between a # mandatory version to impose a minimal version. # Or check Kernel minimal version and just print a Warning diff --git a/low-can-binding/CMakeLists.txt b/low-can-binding/CMakeLists.txt index d09757d6..296fa7d4 100644 --- a/low-can-binding/CMakeLists.txt +++ b/low-can-binding/CMakeLists.txt @@ -18,10 +18,11 @@ ########################################################################### # Add target to project dependency list + PROJECT_TARGET_ADD(low-can) # Define project Targets - add_library(${TARGET_NAME} MODULE + set (SOURCES #binding/${TARGET_NAME}-hat.cpp binding/${TARGET_NAME}-cb.cpp binding/${TARGET_NAME}-subscription.cpp @@ -45,6 +46,14 @@ PROJECT_TARGET_ADD(low-can) utils/config-parser.cpp binding/application-generated.cpp) + if(WITH_FEATURE_J1939) + set(SOURCES_J1939 + # Empty for the moment to not break the build until all modifications are set + ) + endif() + + add_library(${TARGET_NAME} MODULE ${SOURCES} ${SOURCES_J1939}) + 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 |