#使用OpenGL绘制图片 message(STATUS "***** Find VideoPlayer Library *****") #寻找头文件,需要判断gcc编译器版本 unset(VideoPlayer_INCLUDE_DIR CACHE) unset(VideoPlayer_SOURCE_DIR CACHE) set(VideoPlayer_INCLUDE_DIR ${CMAKE_CURRENT_LIST_DIR}/src) set(VideoPlayer_SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/src) unset(libDebug CACHE) unset(libRelease CACHE) unset(VideoPlayer_LIBRARY CACHE) #查找库文件,需要判断操作系统,位数 if(CMAKE_SYSTEM_NAME MATCHES "Windows") #GCC编译器 if(CMAKE_CXX_COMPILER_ID MATCHES "GNU") #64位 if(CMAKE_SIZEOF_VOID_P EQUAL 8) #判断Qt版本,是Qt5.15还是5.12 if(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 15) set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.15.16/libOpenGLWidgetd.dll) set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.15.16/libOpenGLWidget.dll) elseif(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 12) set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidgetd.dll) set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidget.dll) endif() #32位 elseif(CMAKE_SIZEOF_VOID_P EQUAL 4) #判断Qt版本,是Qt5.15还是5.12 if(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 15) message(STATUS "32位仅支持Qt5.12.12版本") elseif(QT_VERSION_MAJOR EQUAL 5 AND QT_VERSION_MINOR EQUAL 12) set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidgetd.dll) set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/windows/Qt5.12.12/libOpenGLWidget.dll) endif() endif() #MSVC编译器 elseif(CMAKE_CXX_COMPILER_ID MATCHES "MSVC") message(STATUS "暂不支持MSVC编译器") endif() #添加Linux版本 elseif(CMAKE_SYSTEM_NAME MATCHES "Linux") set(libDebug ${CMAKE_CURRENT_LIST_DIR}/Libs/linux/libOpenGLWidgetd.so) set(libRelease ${CMAKE_CURRENT_LIST_DIR}/Libs/linux/libOpenGLWidget.so) #MacOS版本 elseif(CMAKE_SYSTEM_NAME MATCHES "Darwin") #MacOS版本 message(STATUS "暂不支持MacOS版本") endif() if(CMAKE_BUILD_TYPE MATCHES "Debug") list(APPEND VideoPlayer_LIBRARY ${libDebug}) else() list(APPEND VideoPlayer_LIBRARY ${libRelease}) endif() if(VideoPlayer_INCLUDE_DIR AND VideoPlayer_SOURCE_DIR AND VideoPlayer_LIBRARY) set(VideoPlayer_FOUND TRUE) set(VideoPlayer_VERSION 1.0.0.0) message(STATUS "include : VideoPlayer_INCLUDE_DIR") message(STATUS "source : VideoPlayer_SOURCE_DIR") else() set(VideoPlayer_FOUND FALSE) endif() message(STATUS "VideoPlayer FOUND: ${VideoPlayer_FOUND}") message(STATUS "VideoPlayer Version: ${VideoPlayer_VERSION}") message(STATUS "--------------------------------------------------")