37 lines
1.4 KiB
CMake
37 lines
1.4 KiB
CMake
|
|
cmake_minimum_required(VERSION 2.8)
|
|
|
|
project(test_opengl_lib)
|
|
|
|
find_package(Qt5Gui REQUIRED)
|
|
|
|
include_directories(${Qt5Gui_INCLUDE_DIRS} ${Qt5Gui_OPENGL_INCLUDE_DIRS} )
|
|
add_definitions(${Qt5Gui_DEFINITIONS})
|
|
|
|
get_property(QtGui_enabled_features TARGET Qt5::Gui PROPERTY INTERFACE_QT_ENABLED_FEATURES)
|
|
list(LENGTH QtGui_enabled_features _QtGui_enabled_featuresSize)
|
|
if (_QtGui_enabled_featuresSize LESS 1)
|
|
message(SEND_ERROR "The INTERFACE_QT_ENABLED_FEATURES property of Qt5::Gui is empty!")
|
|
endif()
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${Qt5Gui_EXECUTABLE_COMPILE_FLAGS}")
|
|
|
|
if (${Qt5Gui_OPENGL_IMPLEMENTATION} STREQUAL GLESv2)
|
|
list(FIND QtGui_enabled_features "opengles2" _opengles2Index)
|
|
if(_opengles2Index EQUAL -1)
|
|
message(SEND_ERROR "The INTERFACE_QT_ENABLED_FEATURES property of Qt5::Gui does not contain the opengles2 feature!")
|
|
endif()
|
|
add_definitions(-DGL_IMPLEMENTATION_GLES2)
|
|
elseif (${Qt5Gui_OPENGL_IMPLEMENTATION} STREQUAL GL)
|
|
list(FIND QtGui_enabled_features "opengl" _openglIndex)
|
|
if(_openglIndex EQUAL -1)
|
|
message(SEND_ERROR "The INTERFACE_QT_ENABLED_FEATURES property of Qt5::Gui does not contain the opengl feature!")
|
|
endif()
|
|
add_definitions(-DGL_IMPLEMENTATION_GL)
|
|
else()
|
|
message(SEND_ERROR "Qt5Gui_OPENGL_IMPLEMENTATION does not contain valid data.")
|
|
endif()
|
|
|
|
add_executable(myobject main.cpp )
|
|
target_link_libraries(myobject ${Qt5Gui_LIBRARIES} ${Qt5Gui_OPENGL_LIBRARIES})
|