FindVideoPlayer.cmake 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #使用OpenGL绘制图片
  2. message(STATUS "***** Find VideoPlayer Library *****")
  3. #寻找头文件,需要判断gcc编译器版本
  4. unset(VideoPlayer_INCLUDE_DIR CACHE)
  5. unset(VideoPlayer_SOURCE_DIR CACHE)
  6. set(VideoPlayer_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/src)
  7. set(VideoPlayer_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/src)
  8. unset(libDebug CACHE)
  9. unset(libRelease CACHE)
  10. unset(VideoPlayer_LIBRARY CACHE)
  11. #查找库文件,需要判断操作系统,位数
  12. if(CMAKE_SYSTEM_NAME MATCHES "Windows")
  13. #GCC编译器
  14. if(CMAKE_CXX_COMPILER_ID MATCHES "GNU")
  15. #64位
  16. if(CMAKE_SIZEOF_VOID_P EQUAL 8)
  17. #判断Qt版本,是Qt5.15还是5.12
  18. if(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 15)
  19. set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.15.16/libOpenGLWidgetd.dll)
  20. set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.15.16/libOpenGLWidget.dll)
  21. elseif(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 12)
  22. set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidgetd.dll)
  23. set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidget.dll)
  24. endif()
  25. #32位
  26. elseif(CMAKE_SIZEOF_VOID_P EQUAL 4)
  27. #判断Qt版本,是Qt5.15还是5.12
  28. if(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 15)
  29. message(STATUS "32位仅支持Qt5.12.12版本")
  30. elseif(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 12)
  31. set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidgetd.dll)
  32. set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidget.dll)
  33. endif()
  34. endif()
  35. #MSVC编译器
  36. elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
  37. message(STATUS "暂不支持MSVC编译器")
  38. endif()
  39. #添加Linux版本
  40. elseif(CMAKE_SYSTEM_NAME MATCHES "Linux")
  41. set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/linux/libOpenGLWidgetd.so)
  42. set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/linux/libOpenGLWidget.so)
  43. #MacOS版本
  44. elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin")
  45. #MacOS版本
  46. message(STATUS "暂不支持MacOS版本")
  47. endif()
  48. if(CMAKE_BUILD_TYPE MATCHES "Debug")
  49. list(APPEND VideoPlayer_LIBRARY ${libDebug})
  50. else()
  51. list(APPEND VideoPlayer_LIBRARY ${libRelease})
  52. endif()
  53. if(VideoPlayer_INCLUDE_DIR AND VideoPlayer_SOURCE_DIR AND VideoPlayer_LIBRARY)
  54. set(VideoPlayer_FOUND TRUE)
  55. set(VideoPlayer_VERSION 1.0.0.0)
  56. message(STATUS "include : VideoPlayer_INCLUDE_DIR")
  57. message(STATUS "source : VideoPlayer_SOURCE_DIR")
  58. else()
  59. set(VideoPlayer_FOUND FALSE)
  60. endif()
  61. message(STATUS "VideoPlayer FOUND: ${VideoPlayer_FOUND}")
  62. message(STATUS "VideoPlayer Version: ${VideoPlayer_VERSION}")
  63. message(STATUS "--------------------------------------------------")