Skip to content

Commit

Permalink
Allow frontends to use different headers for OpenGL declarations (#2102)
Browse files Browse the repository at this point in the history
  • Loading branch information
JesseTG authored Jul 21, 2024
1 parent 9b828c2 commit 821f5f5
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 3 deletions.
13 changes: 10 additions & 3 deletions src/PlatformOGL.h
Original file line number Diff line number Diff line change
@@ -1,9 +1,16 @@
#ifndef PLATFORMOGL_H
#define PLATFORMOGL_H

// if you don't wanna use glad for your platform
// add your header here!
// If you don't wanna use glad for your platform,
// define MELONDS_GL_HEADER to the path of some other header
// that pulls in the necessary OpenGL declarations.
// Make sure to include quotes or angle brackets as needed,
// and that all targets get the same MELONDS_GL_HEADER definition.

#include "frontend/glad/glad.h"
#ifndef MELONDS_GL_HEADER
#define MELONDS_GL_HEADER "\"frontend/glad/glad.h\""
#endif

#include MELONDS_GL_HEADER

#endif
8 changes: 8 additions & 0 deletions src/frontend/qt_sdl/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -237,3 +237,11 @@ if (UNIX AND NOT APPLE)
INTERPROCEDURAL_OPTIMIZATION_RELEASE OFF)
endif()
endif()

if (ENABLE_OGLRENDERER)
set(MELONDS_GL_HEADER \"frontend/glad/glad.h\" CACHE STRING "Path to a header that contains OpenGL function and type declarations.")

target_compile_definitions(melonDS PUBLIC OGLRENDERER_ENABLED)
target_compile_definitions(melonDS PUBLIC MELONDS_GL_HEADER=${MELONDS_GL_HEADER})
target_compile_definitions(core PUBLIC MELONDS_GL_HEADER=${MELONDS_GL_HEADER})
endif()

0 comments on commit 821f5f5

Please sign in to comment.