CMakeLists.txt 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. set(MODULE_NAME "mediadeviceinfo")
  2. set(MODULE_PREFIX "MEDIADEVICEINFO_FUNC")
  3. if(RVC_DEBUG_MODE)
  4. set(TOOLKIT_LIB libtoolkitd)
  5. else()
  6. set(TOOLKIT_LIB libtoolkit)
  7. endif(RVC_DEBUG_MODE)
  8. set(${MODULE_PREFIX}_SRCS
  9. imediadeviceinfo.h
  10. ./linux/videodevice_info_linux.cpp
  11. )
  12. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  13. target_include_directories(${MODULE_NAME} PRIVATE
  14. ${RVC_TOOLKIT_INCLUDE_DIR}
  15. ${RVC_FRAMEWORK_INCLUDES_DIR}
  16. )
  17. # 添加实体需要依赖的其他共享库(包括系统库)
  18. if(WIN32)
  19. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  20. )
  21. else(WIN32)
  22. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  23. ${TOOLKIT_LIB}
  24. )
  25. endif(WIN32)
  26. target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}
  27. )
  28. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBMEDIADEVICEINFO_EXPORTS")
  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()
  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)