diff --git a/src/libprojectM/CMakeLists.txt b/src/libprojectM/CMakeLists.txt index 85cd1609a..2fc1c3160 100644 --- a/src/libprojectM/CMakeLists.txt +++ b/src/libprojectM/CMakeLists.txt @@ -28,7 +28,6 @@ add_library(projectM_main OBJECT TimeKeeper.hpp Utils.cpp Utils.hpp - projectM-opengl.h ) target_link_libraries(projectM_main diff --git a/src/libprojectM/MilkdropPreset/MilkdropStaticShaders.cpp.in b/src/libprojectM/MilkdropPreset/MilkdropStaticShaders.cpp.in index 973ca8571..61e89b8db 100644 --- a/src/libprojectM/MilkdropPreset/MilkdropStaticShaders.cpp.in +++ b/src/libprojectM/MilkdropPreset/MilkdropStaticShaders.cpp.in @@ -1,6 +1,6 @@ #include "MilkdropStaticShaders.hpp" -#include +#include #include #include diff --git a/src/libprojectM/MilkdropPreset/Waveform.cpp b/src/libprojectM/MilkdropPreset/Waveform.cpp index 0277d10c4..78c3a97b7 100644 --- a/src/libprojectM/MilkdropPreset/Waveform.cpp +++ b/src/libprojectM/MilkdropPreset/Waveform.cpp @@ -7,7 +7,7 @@ #include -#include +#include <../Renderer/OpenGL.h> #include #include diff --git a/src/libprojectM/Renderer/BlendMode.hpp b/src/libprojectM/Renderer/BlendMode.hpp index 222b6f0d8..8cabcade8 100644 --- a/src/libprojectM/Renderer/BlendMode.hpp +++ b/src/libprojectM/Renderer/BlendMode.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include namespace libprojectM { namespace Renderer { diff --git a/src/libprojectM/Renderer/CMakeLists.txt b/src/libprojectM/Renderer/CMakeLists.txt index 491875bf6..5e1f908fa 100644 --- a/src/libprojectM/Renderer/CMakeLists.txt +++ b/src/libprojectM/Renderer/CMakeLists.txt @@ -31,6 +31,7 @@ add_library(Renderer OBJECT Mesh.hpp MilkdropNoise.cpp MilkdropNoise.hpp + OpenGL.h Point.hpp PresetTransition.cpp PresetTransition.hpp diff --git a/src/libprojectM/Renderer/Color.hpp b/src/libprojectM/Renderer/Color.hpp index aaf10057b..089f8e318 100644 --- a/src/libprojectM/Renderer/Color.hpp +++ b/src/libprojectM/Renderer/Color.hpp @@ -1,9 +1,9 @@ #pragma once -#include +#include "Renderer/OpenGL.h" -#include #include +#include namespace libprojectM { namespace Renderer { diff --git a/src/libprojectM/Renderer/MilkdropNoise.cpp b/src/libprojectM/Renderer/MilkdropNoise.cpp index bae556454..f76d04229 100644 --- a/src/libprojectM/Renderer/MilkdropNoise.cpp +++ b/src/libprojectM/Renderer/MilkdropNoise.cpp @@ -1,6 +1,6 @@ #include "Renderer/MilkdropNoise.hpp" -#include "projectM-opengl.h" +#include "Renderer/OpenGL.h" #include #include diff --git a/src/libprojectM/Renderer/OpenGL.h b/src/libprojectM/Renderer/OpenGL.h new file mode 100644 index 000000000..b479c4673 --- /dev/null +++ b/src/libprojectM/Renderer/OpenGL.h @@ -0,0 +1,34 @@ +/** + * @file OpenGL.h + * @brief Includes the appropriate OpenGL headers for each platform. + */ +#pragma once + +#ifdef __APPLE__ /* macOS */ +#include +#include +#elif defined(EYETUNE_WINRT) /* Universal Windows Platform */ +#define GL_GLEXT_PROTOTYPES +#define GLM_FORCE_CXX03 +#include +#include +#include +#include +#include +#include +#elif defined(_WIN32) /* Windows Desktop */ +#define GLM_FORCE_CXX03 +#include +#include +#include +#else /* Linux, BSD, Android, emscripten etc. */ +#ifdef USE_GLES +#include +#else +#if !defined(GL_GLEXT_PROTOTYPES) +#define GL_GLEXT_PROTOTYPES +#endif +#include +#include +#endif +#endif diff --git a/src/libprojectM/Renderer/Point.hpp b/src/libprojectM/Renderer/Point.hpp index 7d3c07482..66c80f3b7 100644 --- a/src/libprojectM/Renderer/Point.hpp +++ b/src/libprojectM/Renderer/Point.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include "Renderer/OpenGL.h" #include diff --git a/src/libprojectM/Renderer/Sampler.hpp b/src/libprojectM/Renderer/Sampler.hpp index a78a3d1f2..4f4c26eea 100644 --- a/src/libprojectM/Renderer/Sampler.hpp +++ b/src/libprojectM/Renderer/Sampler.hpp @@ -4,7 +4,7 @@ */ #pragma once -#include +#include #include diff --git a/src/libprojectM/Renderer/TextureUV.hpp b/src/libprojectM/Renderer/TextureUV.hpp index 677188ef9..87fad818d 100644 --- a/src/libprojectM/Renderer/TextureUV.hpp +++ b/src/libprojectM/Renderer/TextureUV.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include "Renderer/OpenGL.h" #include diff --git a/src/libprojectM/Renderer/VertexArray.hpp b/src/libprojectM/Renderer/VertexArray.hpp index 987c47c3a..df2b62353 100644 --- a/src/libprojectM/Renderer/VertexArray.hpp +++ b/src/libprojectM/Renderer/VertexArray.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include "Renderer/OpenGL.h" namespace libprojectM { namespace Renderer { diff --git a/src/libprojectM/Renderer/VertexBuffer.hpp b/src/libprojectM/Renderer/VertexBuffer.hpp index ef6a62fe8..62788bfc9 100644 --- a/src/libprojectM/Renderer/VertexBuffer.hpp +++ b/src/libprojectM/Renderer/VertexBuffer.hpp @@ -1,9 +1,8 @@ #pragma once +#include "Renderer/OpenGL.h" #include "Renderer/VertexBufferUsage.hpp" -#include - #include #include diff --git a/src/libprojectM/Renderer/VertexBufferUsage.hpp b/src/libprojectM/Renderer/VertexBufferUsage.hpp index 4dc01755b..35b5d7c0e 100644 --- a/src/libprojectM/Renderer/VertexBufferUsage.hpp +++ b/src/libprojectM/Renderer/VertexBufferUsage.hpp @@ -1,6 +1,6 @@ #pragma once -#include +#include "Renderer/OpenGL.h" namespace libprojectM { namespace Renderer { diff --git a/src/libprojectM/Renderer/VertexIndexArray.hpp b/src/libprojectM/Renderer/VertexIndexArray.hpp index 00a515f7a..569970567 100644 --- a/src/libprojectM/Renderer/VertexIndexArray.hpp +++ b/src/libprojectM/Renderer/VertexIndexArray.hpp @@ -1,9 +1,8 @@ #pragma once +#include "Renderer/OpenGL.h" #include "Renderer/VertexBufferUsage.hpp" -#include - #include #include #include diff --git a/src/libprojectM/projectM-opengl.h b/src/libprojectM/projectM-opengl.h deleted file mode 100644 index 8a605ca2f..000000000 --- a/src/libprojectM/projectM-opengl.h +++ /dev/null @@ -1,40 +0,0 @@ -/** - Include appropriate OpenGL headers for this platform. -**/ - -#pragma once - -// Enable openGL extra checks, better not be enabled in release build -#define OGL_DEBUG 0 - -// Unlock FPS for rendering benchmarks, it disables Vblank/Vsync and prints drawn frame count within a 5s test run -#define UNLOCK_FPS 0 - -#ifdef __APPLE__ -# include -# include -#elif defined(EYETUNE_WINRT) -# define GL_GLEXT_PROTOTYPES -# define GLM_FORCE_CXX03 -# include -# include -# include -# include -# include -# include -#elif defined(_WIN32) -# define GLM_FORCE_CXX03 -# include -# include -# include -#else /* linux/unix/other */ -# ifdef USE_GLES -# include -# else -# if !defined(GL_GLEXT_PROTOTYPES) -# define GL_GLEXT_PROTOTYPES -# endif -# include -# include -# endif -#endif