# ====================================================================================================================== # 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 . # ====================================================================================================================== if(FENNEC_GRAPHICS_WANT_EGL) find_package(OpenGL REQUIRED COMPONENTS EGL) find_package(GLEW REQUIRED) message(STATUS "EGL Requested") else() find_package(OpenGL) endif() if(TARGET OpenGL::GL AND TARGET GLEW::GLEW) message(STATUS "Found OpenGL: ${OPENGL_gl_LIBRARY}") list(APPEND FENNEC_LINK_LIBRARIES OpenGL::GL GLEW::GLEW) list(APPEND FENNEC_COMPILE_DEFINITIONS FENNEC_GRAPHICS_OPENGL=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() message(STATUS "Found EGL: ${OPENGL_egl_LIBRARY}") 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/lib/fwd.h include/fennec/platform/opengl/lib/enum.h include/fennec/platform/opengl/lib/buffer.h include/fennec/platform/opengl/lib/texture.h include/fennec/platform/opengl/lib/vertex_array.h include/fennec/platform/opengl/egl/context.h source/platform/opengl/egl/context.cpp ) endif()