cmake_minimum_required(VERSION 3.0.0) project(bmser_modbus_tcp_poll 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 MAIN_SRC) include(./src/components/components.cmake) include(./src/port/port.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) message("db_ctrl->" ${db_ctrl}) find_library(bmser_utils NAMES bmser_utils PATHS ${WLOS_TARGET}/install/opt/lnxall_app/lib) message("bmser_utils->" ${bmser_utils}) find_library(modbus NAMES modbus PATHS ${WLOS_TARGET}/install/opt/lnxall_app/lib/) message("modbus->" ${modbus}) set(mosquitto ${WLOS_TARGET}/install/opt/lnxall_app/lib/libmosquitto.so) message("mosquitto->" ${mosquitto}) 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 ${CMAKE_SOURCE_DIR}/app/inc/app_sdk_lib/utils/inc ${LIBDBCONTROL_DIR}/../../ ${LIBDBCONTROL_DIR}/../../modbus/ ) add_executable(bmser_modbus_tcp_poll ${MAIN_SRC} ${COMPONENTS_SRC_PATH} ${PORT_SRC_PATH} ) set_target_properties(bmser_modbus_tcp_poll PROPERTIES LINK_FLAGS "-Wl,-rpath,/opt/lnxall_app/lib") target_include_directories(bmser_modbus_tcp_poll PRIVATE ./include ${COMPONENTS_INC_PATH} ${PORT_INC_PATH} ${LIBDBCONTROL_INC} ) target_link_libraries(bmser_modbus_tcp_poll PRIVATE ${db_ctrl} ${bmser_utils} uv lua sqlite3 rt pthread ${modbus} ${mosquitto} ) if(CMAKE_BUILD_TYPE STREQUAL "Debug") target_compile_options(bmser_modbus_tcp_poll PRIVATE -g -O0 -Wall -Werror) else() target_compile_options(bmser_modbus_tcp_poll PRIVATE -g0 -Os -Wall -Werror) endif() add_executable(mqtt_test ./test/mqtt_test.c ${COMPONENTS_INC_PATH} ${PORT_SRC_PATH} ) target_include_directories(mqtt_test PRIVATE ./include ${COMPONENTS_INC_PATH} ${PORT_INC_PATH} ${LIBDBCONTROL_INC} ) target_link_libraries(mqtt_test PRIVATE ${db_ctrl} ${bmser_utils} uv lua sqlite3 rt pthread ${modbus} ${mosquitto} ) target_compile_options(mqtt_test PRIVATE -g -O0) set(CPACK_PROJECT_NAME ${PROJECT_NAME}) set(CPACK_PROJECT_VERSION ${PROJECT_VERSION}) include(CPack) install(TARGETS bmser_modbus_tcp_poll DESTINATION bin)