CMakeLists.txt 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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} PRIVATE
  26. ${CONAN_PKG_LIBS_OPENSSL} ${CONAN_LIBS_CPPRESTSDK} ${CONAN_PKG_LIBS_JSONCPP})
  27. if(MSVC)
  28. install(TARGETS ${MODULE_NAME}
  29. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  30. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  31. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  32. )
  33. else(MSVC)
  34. install(TARGETS ${MODULE_NAME}
  35. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  36. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  37. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  38. COMPONENT libraries)
  39. endif(MSVC)
  40. if (WITH_PDB_SAVE AND MSVC AND BUILD_SHARED_LIBS)
  41. install(FILES ${RVC_PDB_BINARY_DIR}/${MODULE_NAME}.pdb DESTINATION ${RVC_PDBSAVE_PATH} COMPONENT symbols)
  42. endif()
  43. if(BUILD_TESTING)
  44. add_subdirectory(test)
  45. endif(BUILD_TESTING)
  46. if(MSVC)
  47. set(RVC_CONAN_DEP_LIBS2 ${RVC_CONAN_DEP_LIBS2}
  48. ${CONAN_BIN_DIRS_OPENSSL}
  49. ${CONAN_BIN_DIRS_CPPRESTSDK}
  50. ${CONAN_BIN_DIRS_JSONCPP}
  51. PARENT_SCOPE)
  52. else()
  53. set(RVC_CONAN_DEP_LIBS2 ${RVC_CONAN_DEP_LIBS2}
  54. ${CONAN_LIB_DIRS_OPENSSL}
  55. ${CONAN_LIB_DIRS_CPPRESTSDK}
  56. ${CONAN_LIB_DIRS_JSONCPP}
  57. PARENT_SCOPE)
  58. endif(MSVC)