CMakeLists.txt 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. define_module("RomoteController")
  2. file(GLOB RomoteControl_CPP_SRCS *.cpp)
  3. file(GLOB RomoteControl_H_SRCS *.h)
  4. if (MSVC)
  5. set(ZIP_SRCS
  6. ${ThirdPartyHeadRoot}/XZip/XZip.h
  7. ${ThirdPartyHeadRoot}/XZip/XZip.cpp
  8. )
  9. else()
  10. set(ZIP_SRCS
  11. XZipZilb.h
  12. XZipZilb.cpp
  13. )
  14. endif()
  15. MESSAGE( STATUS "RomoteControl_CPP_SRCS = ${RomoteControl_CPP_SRCS}")
  16. MESSAGE( STATUS "RomoteControl_H_SRCS = ${RomoteControl_H_SRCS}")
  17. MESSAGE( STATUS "ZIP_SRCS = ${ZIP_SRCS}")
  18. #need boost
  19. conan_cmake_run(REQUIRES boost/1.69.0@LR04.02_ThirdParty/testing
  20. BASIC_SETUP CMAKE_TARGETS
  21. BUILD missing)
  22. MESSAGE( STATUS "BOOST_ROOT = ${CONAN_BOOST_ROOT}")
  23. #set(BOOST_ROOT /home/pcacc/Desktop/boost_1_69_0)
  24. set(BOOST_ROOT ${CONAN_BOOST_ROOT})
  25. set(Boost_DEBUG ON)
  26. set(Boost_USE_STATIC_LIBS ON)
  27. if (MSVC)
  28. else()
  29. set(Boost_NO_SYSTEM_PATHS ON)
  30. set(Boost_USE_MULTITHREADED ON)
  31. set(Boost_USE_STATIC_RUNTIME ON)
  32. add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY)
  33. endif()
  34. find_package(Boost COMPONENTS atomic chrono date_time filesystem regex system thread REQUIRED)
  35. if(Boost_FOUND)
  36. include_directories(${Boost_INCLUDE_DIRS})
  37. MESSAGE( STATUS "Boost_INCLUDE_DIRS = ${Boost_INCLUDE_DIRS}")
  38. MESSAGE( STATUS "Boost_LIBRARIES = ${Boost_LIBRARIES}")
  39. MESSAGE( STATUS "Boost_LIB_VERSION = ${Boost_LIB_VERSION}")
  40. endif()
  41. #boost end
  42. conan_cmake_run(REQUIRES zlib/1.2.11@LR04.02_ThirdParty/stable
  43. BASIC_SETUP CMAKE_TARGETS
  44. BUILD missing)
  45. MESSAGE( STATUS "CONAN_INCLUDE_DIRS_ZLIB = ${CONAN_INCLUDE_DIRS_ZLIB}")
  46. MESSAGE( STATUS "CONAN_PKG_LIBS_ZLIB = ${CONAN_PKG_LIBS_ZLIB}")
  47. set(${MODULE_PREFIX}_SRCS
  48. ${RomoteControl_CPP_SRCS}
  49. ${RomoteControl_H_SRCS}
  50. ${ThirdPartyHeadRoot}/CJson/cJSON.c
  51. ${Boost_INCLUDE_DIRS}
  52. ${ZIP_SRCS}
  53. )
  54. set(MOD_VERSION_STRING "0.0.1-dev1")
  55. add_module_libraries(${MODULE_PREFIX} ${MODULE_NAME} ${MOD_VERSION_STRING})
  56. target_include_directories(${MODULE_NAME} PRIVATE
  57. ${RVC_FRAMEWORK_INCLUDES_DIR}
  58. ${CONAN_INCLUDE_DIRS_OPENSSL}
  59. ${ThirdPartyHeadRoot}/CJson
  60. ${CONAN_LIB_DIRS_BOOST}
  61. ${CONAN_INCLUDE_DIRS_ZLIB}
  62. ${ThirdPartyHeadRoot}/XZip
  63. )
  64. target_link_directories(${MODULE_NAME} PRIVATE
  65. ${CONAN_LIB_DIRS_ZLIB}
  66. )
  67. # 添加实体需要依赖的其他共享库(包括系统库)
  68. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS} ${RVCCOMM_LIB} ${CONAN_PKG_LIBS_ZLIB})
  69. target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS} CONAN_PKG::OpenSSL ${Boost_LIBRARIES})
  70. deploy_module(${MODULE_PREFIX} ${MODULE_NAME})