CMakeLists.txt 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. set(MODULE_NAME "RVCRestfulSDK")
  2. set(MODULE_PREFIX "RVC_RESTFUL_SDK")
  3. if(MSVC)
  4. add_definitions(-DRVC_RESTFUL_EXPORTS)
  5. endif(MSVC)
  6. set(${MODULE_PREFIX}_SRCS
  7. RestfulFunc.h
  8. RestfulFuncImpl.cpp
  9. JsonConvertHelper.hpp
  10. RestfulUtilty.hpp)
  11. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  12. # 依赖libscreencodec、acmstrdec、acmstrenc
  13. target_include_directories(${MODULE_NAME} PRIVATE
  14. ${CONAN_INCLUDE_DIRS_OPENSSL}
  15. ${CONAN_INCLUDE_DIRS_CPPRESTSDK}
  16. ${CONAN_BOOST_ROOT}
  17. ${CONAN_INCLUDE_DIRS_JSONCPP}
  18. )
  19. target_link_directories(${MODULE_NAME} PRIVATE
  20. ${CONAN_LIB_DIRS_OPENSSL}
  21. ${CONAN_LIB_DIRS_CPPRESTSDK}
  22. ${CONAN_LIB_DIRS_JSONCPP}
  23. )
  24. # 添加需要依赖的其他共享库(包括系统库)
  25. target_link_libraries(${MODULE_NAME}
  26. ${PRIVATE_KEYWORD} ${CONAN_PKG_LIBS_OPENSSL}
  27. ${PRIVATE_KEYWORD} ${CONAN_LIBS_CPPRESTSDK}
  28. ${PRIVATE_KEYWORD} ${CONAN_PKG_LIBS_JSONCPP})
  29. if(MSVC)
  30. install(TARGETS ${MODULE_NAME}
  31. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  32. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  33. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  34. )
  35. else(MSVC)
  36. install(TARGETS ${MODULE_NAME}
  37. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  38. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  39. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  40. COMPONENT libraries)
  41. endif(MSVC)
  42. if (WITH_PDB_SAVE AND MSVC AND BUILD_SHARED_LIBS)
  43. install(FILES ${RVC_PDB_BINARY_DIR}/${MODULE_NAME}.pdb DESTINATION ${RVC_PDBSAVE_PATH} COMPONENT symbols)
  44. endif()
  45. if(BUILD_TESTING)
  46. add_subdirectory(test)
  47. endif(BUILD_TESTING)
  48. if(MSVC)
  49. set(RVC_CONAN_DEP_LIBS2 ${RVC_CONAN_DEP_LIBS2}
  50. ${CONAN_BIN_DIRS_OPENSSL}
  51. ${CONAN_BIN_DIRS_CPPRESTSDK}
  52. ${CONAN_BIN_DIRS_JSONCPP}
  53. PARENT_SCOPE)
  54. else()
  55. set(RVC_CONAN_DEP_LIBS2 ${RVC_CONAN_DEP_LIBS2}
  56. ${CONAN_LIB_DIRS_OPENSSL}
  57. ${CONAN_LIB_DIRS_CPPRESTSDK}
  58. ${CONAN_LIB_DIRS_JSONCPP}
  59. PARENT_SCOPE)
  60. endif(MSVC)