CMakeLists.txt 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. set(MODULE_NAME "RestfulFunc")
  2. set(MODULE_PREFIX "LIB_RESTFUL_FUNC")
  3. set(${MODULE_PREFIX}_SRCS
  4. RestfulFunc.h
  5. RestfulFuncImpl.cpp
  6. HttpProbeImpl.cpp
  7. PingImpl.cpp
  8. JsonConvertHelper.hpp
  9. SocketConnectImpl.cpp
  10. RestfulUtilty.hpp
  11. )
  12. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  13. # 依赖libscreencodec、acmstrdec、acmstrenc
  14. target_include_directories(${MODULE_NAME} PRIVATE
  15. ${RVC_COMMON_INCLUDE_DIR}
  16. ${CONAN_INCLUDE_DIRS_OPENSSL}
  17. ${CONAN_INCLUDE_DIRS_CPPRESTSDK}
  18. ${CONAN_BOOST_ROOT}
  19. ${CONAN_INCLUDE_DIRS_JSONCPP}
  20. )
  21. target_link_directories(${MODULE_NAME} PRIVATE
  22. ${CONAN_LIB_DIRS_OPENSSL}
  23. ${CONAN_LIB_DIRS_CPPRESTSDK}
  24. ${CONAN_LIB_DIRS_JSONCPP}
  25. )
  26. target_compile_definitions(${MODULE_NAME} PUBLIC "RESTFULPUBLIC_EXPORTS")
  27. # 添加需要依赖的其他共享库(包括系统库)
  28. target_link_libraries(${MODULE_NAME} PRIVATE
  29. ${CONAN_PKG_LIBS_OPENSSL} ${CONAN_LIBS_CPPRESTSDK} ${CONAN_PKG_LIBS_JSONCPP})
  30. if(MSVC)
  31. install(TARGETS ${MODULE_NAME}
  32. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  33. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  34. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  35. )
  36. else(MSVC)
  37. install(TARGETS ${MODULE_NAME}
  38. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  39. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  40. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  41. COMPONENT libraries)
  42. endif(MSVC)
  43. if(BUILD_TESTING)
  44. add_subdirectory(test)
  45. endif(BUILD_TESTING)