CMakeLists.txt 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. # 声明模块名称的前缀和名称
  2. rvc_dev_define_module("ThermalPrint")
  3. # rvc_dev_config_library 内需要使用这三个参数,用于拼接输出的适配器文件名称
  4. set(${MODULE_PREFIX}_VENDOR "keba")
  5. set(${MODULE_PREFIX}_VERSION "1")
  6. set(${MODULE_PREFIX}_BATCH "1")
  7. if(NOT RVC_INTEGRATE_BUILD)
  8. set(CMAKE_PREFIX_PATH $ENV{QTDIR5113})
  9. set(CMAKE_INCLUDE_CURRENT_DIR ON)
  10. set(CMAKE_AUTOMOC ON)
  11. set(CMAKE_AUTOUIC ON)
  12. endif()
  13. #设置编译的一些参数
  14. if(NOT RVC_INTEGRATE_BUILD)
  15. set(CMAKE_CXX_FLAGS "-std=c++11")
  16. set(CMAKE_BUILD_TYPE "Release")#Release Debug
  17. endif()
  18. #设置头文件查找路径的变量
  19. set( INCLUDE_KEBA ${DEVADAPTER_CURRENT_INCLUDES_DIR}
  20. ${VENDOR_CURRENT_INCLUDE_DIR}
  21. ${VENDOR_CURRENT_INCLUDE_DIR}/SDK
  22. )
  23. message(STATUS "include_directories: ${INCLUDE_KEBA}")
  24. #收录当前目录下的所有* . cpp文件
  25. aux_source_directory(. SRC_LIST)
  26. # 包含要编译的实现文件,rvc_dev_config_library 内使用
  27. set(${MODULE_PREFIX}_SRCS SHARED
  28. ${SRC_LIST}
  29. )
  30. if(RVC_INTEGRATE_BUILD)
  31. if(NOT CONAN_QT_ROOT)
  32. conan_cmake_run( REQUIRES qt/5.11.3@LR04.02_ThirdParty/stable BASIC_SETUP CMAKE_TARGETS)
  33. endif(NOT CONAN_QT_ROOT )
  34. find_package(Qt5 COMPONENTS Core REQUIRED
  35. HINTS ${CONAN_QT_ROOT} NO_SYSTEM_ENVIRONMENT_PATH )
  36. else()
  37. find_package(Qt5 COMPONENTS Core REQUIRED)
  38. endif(RVC_INTEGRATE_BUILD)
  39. # 适配器工程需要通过此宏替代 add_library
  40. rvc_dev_config_library(${MODULE_NAME} ${MODULE_PREFIX})
  41. #设置头文件查找路径变量
  42. target_include_directories(${MODULE_FULL_NAME} PUBLIC ${INCLUDE_KEBA})
  43. message(STATUS "KEBA_include_directories: ${INCLUDE_KEBA}")
  44. #设置日志依赖库文件的路径变量路径
  45. target_link_directories(${MODULE_FULL_NAME} PUBLIC ${DEVADAPTER_CURRENT_LIB_DIR})
  46. #86下依赖的库连接这个文件路径:/data/home/keba/DevAdapter/keba/lib/gcc_x64?gcc_aarch64
  47. #target_link_directories(${MODULE_FULL_NAME} PUBLIC ${VENDOR_CURRENT_LIB_DIR})
  48. target_link_directories(${MODULE_FULL_NAME} PUBLIC ${VENDOR_CURRENT_LIB_DIR}/keba)
  49. #链接招行日志库
  50. target_link_libraries(${MODULE_FULL_NAME} ${VENDOR_LOG_LIB_NAME})
  51. #链接keba依赖库
  52. #target_link_libraries(${MODULE_FULL_NAME} DevComm.keba Algorithm.keba DataConvert.keba winfunc.keba FileDir.keba INIAccess.keba FileAccess.keba TraceManager.keba SerialComm.keba)
  53. target_link_libraries(${MODULE_FULL_NAME} Common.keba)
  54. #设置动态库输出路径:/data/home/keba/DevAdapter/cmbsz/lib/gcc_aarch64或者gcc_x64
  55. #链接OpenCV
  56. target_link_libraries(${MODULE_FULL_NAME} Qt5::Core )
  57. SET(LIBRARY_OUTPUT_PATH ${VENDOR_CURRENT_LIB_DIR})
  58. message(STATUS "LIBRARY_OUTPUT_PATH: ${VENDOR_CURRENT_LIB_DIR}")
  59. # =-=-=-=-=-=-=-=-=-= {适配器工程}/CMakeLists.txt 文件最后必须声明如下内容=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=
  60. rvc_dev_target_install(${MODULE_FULL_NAME})