CMakeLists.txt 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. set(MODULE_NAME "libbizchan")
  2. set(MODULE_PREFIX "LIB_BIZCHAN_FUNC")
  3. set(${MODULE_PREFIX}_SRCS
  4. bizchan.c
  5. jpeg2k.c
  6. quicklz.c
  7. quicklz.h
  8. jpeg2k.h
  9. bizchan.h
  10. )
  11. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  12. # 依赖openjpeg/zlib
  13. conan_cmake_run(REQUIRES openjpeg/2.0.0@LR04.02_ThirdParty/testing
  14. BASIC_SETUP CMAKE_TARGETS
  15. BUILD missing)
  16. if(WIN32)
  17. conan_cmake_run(REQUIRES zlib/1.2.11@LR04.02_ThirdParty/testing
  18. BASIC_SETUP CMAKE_TARGETS
  19. BUILD missing)
  20. else(WIN32)
  21. conan_cmake_run(REQUIRES zlib/1.2.11@LR04.02_ThirdParty/stable
  22. BASIC_SETUP CMAKE_TARGETS
  23. BUILD missing)
  24. endif(WIN32)
  25. # 依赖libscreencodec、acmstrdec、acmstrenc
  26. target_include_directories(${MODULE_NAME} PRIVATE
  27. "${CONAN_RVCFRAMEWORK_ROOT}/include"
  28. ${RVC_COMMON_INCLUDE_DIR}
  29. ${CONAN_INCLUDE_DIRS_OPENJPEG}
  30. ${OTHER_LIB_BASE_DIR}/libscreencodec
  31. ${OTHER_LIB_BASE_DIR}/acmstrdec
  32. ${OTHER_LIB_BASE_DIR}/acmstrenc
  33. ${MODULE_BASE_DIR}/mod_assistantchannel
  34. )
  35. if(ARCH_AARCH64)
  36. target_include_directories(${MODULE_NAME} PRIVATE ${CONAN_INCLUDE_DIRS_OPENJPEG}/openjpeg-2.0)
  37. endif(ARCH_AARCH64)
  38. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBBIZCHAN_EXPORTS")
  39. # 添加需要依赖的其他共享库(包括系统库)
  40. target_link_directories(${MODULE_NAME} PRIVATE ${CONAN_LIB_DIRS_OPENJPEG} ${CONAN_LIB_DIRS_ZLIB})
  41. if(WIN32)
  42. target_link_libraries(${MODULE_NAME} PRIVATE acmstrdec acmstrenc libscreencodec ${CONAN_PKG_LIBS_OPENJPEG} ${CONAN_PKG_LIBS_ZLIB} CONAN_PKG::OpenSSL ws2_32)
  43. else()
  44. target_link_libraries(${MODULE_NAME} PRIVATE acmstrdec acmstrenc libscreencodec ${CONAN_PKG_LIBS_OPENJPEG} ${CONAN_PKG_LIBS_ZLIB} CONAN_PKG::OpenSSL)
  45. endif(WIN32)
  46. if(MSVC)
  47. install(TARGETS ${MODULE_NAME}
  48. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  49. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  50. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  51. )
  52. else(MSVC)
  53. install(TARGETS ${MODULE_NAME}
  54. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  55. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  56. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  57. COMPONENT libraries)
  58. endif(MSVC)