CMakeLists.txt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. set(MODULE_NAME "libpublicFun")
  2. set(MODULE_PREFIX "LIB_PUBLIC_FUNC")
  3. set(${MODULE_PREFIX}_SRCS
  4. publicExport.h
  5. publicFunExport.cpp
  6. publicFunExport.h
  7. portCheck.cpp
  8. ${ThirdPartyHeadRoot}/CJson/cJSON.c
  9. exLog/log.h
  10. exLog/log.cpp
  11. portCheck.cpp
  12. )
  13. MESSAGE( STATUS "BOOST_ROOT = ${CONAN_BOOST_ROOT}")
  14. set(BOOST_ROOT ${CONAN_BOOST_ROOT})
  15. set(Boost_DEBUG ON)
  16. set(Boost_USE_STATIC_LIBS ON)
  17. if (MSVC)
  18. else()
  19. set(Boost_NO_SYSTEM_PATHS ON)
  20. set(Boost_USE_MULTITHREADED ON)
  21. set(Boost_USE_STATIC_RUNTIME ON)
  22. #add_definitions(-DBOOST_STACKTRACE_LINK)
  23. #add_definitions(-DBOOST_STACKTRACE_USE_ADDR2LINE)
  24. add_definitions(-DBOOST_ERROR_CODE_HEADER_ONLY)
  25. endif()
  26. find_package(Boost COMPONENTS log REQUIRED)
  27. if(Boost_FOUND)
  28. include_directories(${Boost_INCLUDE_DIRS})
  29. MESSAGE( STATUS "Boost_INCLUDE_DIRS = ${Boost_INCLUDE_DIRS}")
  30. MESSAGE( STATUS "Boost_LIBRARIES = ${Boost_LIBRARIES}")
  31. MESSAGE( STATUS "Boost_LIB_VERSION = ${Boost_LIB_VERSION}")
  32. endif()
  33. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  34. # 依赖libscreencodec、acmstrdec、acmstrenc
  35. target_include_directories(${MODULE_NAME} PRIVATE
  36. ${RVC_COMMON_INCLUDE_DIR}
  37. ${RVC_WINPR_INCLUDE_DIR}
  38. ${THIRD_PARTY_BASE_DIR}/Include/CJson
  39. )
  40. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBPUBLIC_EXPORTS")
  41. target_link_directories(${MODULE_NAME} PRIVATE ${CONAN_LIB_DIRS_BOOST})
  42. # 添加需要依赖的其他共享库(包括系统库)
  43. target_link_libraries(${MODULE_NAME} CONAN_PKG::OpenSSL ${Boost_LIBRARIES})
  44. deploy_others(${MODULE_PREFIX} ${MODULE_NAME})
  45. if(BUILD_TESTING)
  46. add_subdirectory(test)
  47. endif(BUILD_TESTING)