Dans les versions récentes de CMake (3.10+), il existe une nouvelle façon d'utiliser OpenGL en utilisant une cible dite IMPORTÉE :
cmake_minimum_required(VERSION 3.10)
project(testas)
add_executable(testas main.cpp)
find_package(OpenGL REQUIRED COMPONENTS OpenGL)
find_package(GLUT REQUIRED)
add_dependencies(testas OpenGL::OpenGL)
include_directories(${GLUT_INCLUDE_DIRS} )
target_link_libraries(testas OpenGL::OpenGL ${GLUT_LIBRARY} )
Pour le moment, la seule différence pratique semble être sur Linux (où GLVND est utilisé s'il est disponible), mais cette solution devrait vraisemblablement être plus évolutive, car CMake a plus d'informations sur vos intentions et d'autres outils d'analyse de vos CMakeFiles comprendront mieux le arbre de dépendance.