# ====================================================================================================================== # fennec, a free and open source game engine # Copyright © 2025 Medusa Slockbower # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # ====================================================================================================================== find_package(OpenGL) if(TARGET OpenGL::GL) # Core OpenGL Desktop Profile list(APPEND FENNEC_LINK_LIBRARIES OpenGL::OpenGL) list(APPEND FENNEC_COMPILE_DEFINITIONS FENNEC_GRAPHICS_OPENGL=1) elseif(TARGET OpenGL::GLES3) # OpenGL for Embedded Systems 3 list(APPEND FENNEC_LINK_LIBRARIES OpenGL::GLES3) list(APPEND FENNEC_COMPILE_DEFINITIONS FENNEC_GRAPHICS_GLES3=1) elseif (TARGET OpenGL::GLES2) # OpenGL for Embedded Systems 2 list(APPEND FENNEC_LINK_LIBRARIES OpenGL::GLES2) list(APPEND FENNEC_COMPILE_DEFINITIONS FENNEC_GRAPHICS_GLES2=1) else() message(FATAL_ERROR "No Suitable OpenGL implementation found.") endif() if(FENNEC_GRAPHICS_WANT_EGL) if(NOT TARGET OpenGL::EGL) message(FATAL_ERROR "EGL Library not found.") endif() list(APPEND FENNEC_LINK_LIBRARIES OpenGL::EGL) list(APPEND FENNEC_COMPILE_DEFINITIONS FENNEC_GRAPHICS_EGL=1) list(APPEND FENNEC_EXTRA_SOURCES include/fennec/platform/opengl/egl/context.h include/fennec/platform/opengl/egl/surface.h ) endif()