aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2023-05-27 12:41:25 -0400
committerDavid Robillard <d@drobilla.net>2023-05-27 12:41:25 -0400
commitd93b810bc39ee5e7dc0a6cb0988ccc167c152646 (patch)
treea5cac4193c84cdccbf0ae011c72e8bf13abf3b48 /include
parent70ca6e6138589c1c24ea3e22eff96cfbd1c06d34 (diff)
downloadpugl-d93b810bc39ee5e7dc0a6cb0988ccc167c152646.tar.gz
pugl-d93b810bc39ee5e7dc0a6cb0988ccc167c152646.tar.bz2
pugl-d93b810bc39ee5e7dc0a6cb0988ccc167c152646.zip
Separate pugl/glu.h from pugl/gl.h
The GLU library is often shipped in a separate package, so it's possible to have a system with GL, but no GLU headers. Since use of GLU isn't universal (none of the examples use it), its inclusion can break builds that would otherwise work. So, move it to a separate wrapper header so this can be avoided.
Diffstat (limited to 'include')
-rw-r--r--include/meson.build1
-rw-r--r--include/pugl/gl.h11
-rw-r--r--include/pugl/glu.h22
3 files changed, 23 insertions, 11 deletions
diff --git a/include/meson.build b/include/meson.build
index 2f31b3d..00d4aed 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -7,6 +7,7 @@ c_headers = [
'pugl/cairo.h',
'pugl/gl.h',
+ 'pugl/glu.h',
'pugl/stub.h',
'pugl/vulkan.h',
]
diff --git a/include/pugl/gl.h b/include/pugl/gl.h
index 1298ff6..efb22f3 100644
--- a/include/pugl/gl.h
+++ b/include/pugl/gl.h
@@ -22,17 +22,6 @@
# endif
#endif
-#ifndef PUGL_NO_INCLUDE_GLU_H
-# ifdef __APPLE__
-# include <OpenGL/glu.h>
-# else
-# ifdef _WIN32
-# include <windows.h>
-# endif
-# include <GL/glu.h>
-# endif
-#endif
-
// IWYU pragma: end_exports
PUGL_BEGIN_DECLS
diff --git a/include/pugl/glu.h b/include/pugl/glu.h
new file mode 100644
index 0000000..e709dfb
--- /dev/null
+++ b/include/pugl/glu.h
@@ -0,0 +1,22 @@
+// Copyright 2012-2023 David Robillard <d@drobilla.net>
+// SPDX-License-Identifier: ISC
+
+#ifndef PUGL_GLU_H
+#define PUGL_GLU_H
+
+// IWYU pragma: begin_exports
+
+#ifndef PUGL_NO_INCLUDE_GLU_H
+# ifdef __APPLE__
+# include <OpenGL/glu.h>
+# else
+# ifdef _WIN32
+# include <windows.h>
+# endif
+# include <GL/glu.h>
+# endif
+#endif
+
+// IWYU pragma: end_exports
+
+#endif // PUGL_GLU_H