cmake_minimum_required(VERSION 3.0.0) project(bmser_virtual_device VERSION 0.1.0 LANGUAGES C) include(CTest) enable_testing() # set(CMAKE_C_CLANG_TIDY clang-tidy) # set(CMAKE_EXPORT_COMPILE_COMMANDS ON) # set(CMAKE_C_CLANG_TIDY # "cppcoreguidelines-pro-bounds-pointer-arithmetic" # ) # set(CMAKE_BUILD_TYPE Debug) aux_source_directory(./src/app MAIN_SRC) include(./cmake/components.cmake) include(./cmake/lib.cmake) include(./cmake/port.cmake) include(./cmake/utils.cmake) find_path(LIBDBCONTROL_DIR bmser_db_control_db.h PATHS ${WLOS_TARGET}/install/opt/lnxall_app/include/libdb_control/db_control/) message("LIBDBCONTROL_DIR->" ${LIBDBCONTROL_DIR}) find_library(db_ctrl NAMES db_control PATHS ${WLOS_TARGET}/install/opt/lnxall_app/lib) find_library(bmser_utils NAMES bmser_utils PATHS ${WLOS_TARGET}/install/opt/lnxall_app/lib) message("bmser_utils->" ${bmser_utils}) set(LIBDBCONTROL_INC ${LIBDBCONTROL_DIR}/../can ${LIBDBCONTROL_DIR}/../cjson ${LIBDBCONTROL_DIR}/../db_control ${LIBDBCONTROL_DIR}/../dev ${LIBDBCONTROL_DIR}/../modbus ${LIBDBCONTROL_DIR}/../mosquitto ${LIBDBCONTROL_DIR}/../mqtt ${LIBDBCONTROL_DIR}/../utility ${LIBDBCONTROL_DIR}/../utils ${LIBDBCONTROL_DIR}/../sqlite_api ) add_executable(bmser_virtual_device ${MAIN_SRC} ${COMPONENTS_SRC_PATH} ${LIB_SRC_PATH} ${PORT_SRC_PATH} ${UTILS_SRC_PATH} ) set_target_properties(bmser_virtual_device PROPERTIES LINK_FLAGS "-Wl,-rpath,/opt/lnxall_app/lib") target_include_directories(bmser_virtual_device PRIVATE ./src/app/ ${COMPONENTS_INC_PATH} ${PORT_INC_PATH} ${LIB_INC_PATH} ${LIBDBCONTROL_INC} ${UTILS_INC_PATH} ) target_link_libraries(bmser_virtual_device PRIVATE ${db_ctrl} ${bmser_utils} pthread rt ) if(CMAKE_BUILD_TYPE STREQUAL "Debug") target_compile_options(bmser_virtual_device PRIVATE -g -O0 -Wall -Werror) else() target_compile_options(bmser_virtual_device PRIVATE -g0 -Os -Wall -Werror) endif() add_executable(udp_test ./test/udp_test.c ./src/components/comm_interfaces/udp_comm_interfaces.c ${PORT_SRC_PATH} ${LIB_SRC_PATH} ${UTILS_SRC_PATH} ) target_include_directories(udp_test PRIVATE ./src/app/ ${COMPONENTS_INC_PATH} ${PORT_INC_PATH} ${LIB_INC_PATH} ${LIBDBCONTROL_INC} ${UTILS_INC_PATH} ) target_link_libraries(udp_test PRIVATE ${db_ctrl} ${bmser_utils} pthread rt ) target_compile_options(udp_test PRIVATE -g -Os -Wall -Werror) set(CPACK_PROJECT_NAME ${PROJECT_NAME}) set(CPACK_PROJECT_VERSION ${PROJECT_VERSION}) include(CPack) install(TARGETS bmser_virtual_device DESTINATION bin)