29 files changed, 1185 insertions, 0 deletions
diff --git a/ax/ax_check_gl.m4 b/ax/ax_check_gl.m4 new file mode 100644 index 0000000..08305c1 --- a/dev/null +++ b/ax/ax_check_gl.m4 | |||
@@ -0,0 +1,95 @@ | |||
1 | dnl @synopsis AX_CHECK_GL | ||
2 | dnl | ||
3 | dnl Check for an OpenGL implementation. If GL is found, the required | ||
4 | dnl compiler and linker flags are included in the output variables | ||
5 | dnl "GL_CFLAGS" and "GL_LIBS", respectively. This macro adds the | ||
6 | dnl configure option "--with-apple-opengl-framework", which users can | ||
7 | dnl use to indicate that Apple's OpenGL framework should be used on Mac | ||
8 | dnl OS X. If Apple's OpenGL framework is used, the symbol | ||
9 | dnl "HAVE_APPLE_OPENGL_FRAMEWORK" is defined. If no GL implementation | ||
10 | dnl is found, "no_gl" is set to "yes". | ||
11 | dnl | ||
12 | dnl @category InstalledPackages | ||
13 | dnl @author Braden McDaniel <braden@endoframe.com> | ||
14 | dnl @version 2004-11-15 | ||
15 | dnl @license AllPermissive | ||
16 | |||
17 | AC_DEFUN([AX_CHECK_GL], | ||
18 | [AC_REQUIRE([AC_PATH_X])dnl | ||
19 | AC_REQUIRE([ACX_PTHREAD])dnl | ||
20 | |||
21 | # | ||
22 | # There isn't a reliable way to know we should use the Apple OpenGL framework | ||
23 | # without a configure option. A Mac OS X user may have installed an | ||
24 | # alternative GL implementation (e.g., Mesa), which may or may not depend on X. | ||
25 | # | ||
26 | AC_ARG_WITH([apple-opengl-framework], | ||
27 | [AC_HELP_STRING([--with-apple-opengl-framework], | ||
28 | [use Apple OpenGL framework (Mac OS X only)])]) | ||
29 | if test "X$with_apple_opengl_framework" = "Xyes"; then | ||
30 | AC_DEFINE([HAVE_APPLE_OPENGL_FRAMEWORK], [1], | ||
31 | [Use the Apple OpenGL framework.]) | ||
32 | GL_LIBS="-framework OpenGL" | ||
33 | else | ||
34 | AC_LANG_PUSH(C) | ||
35 | |||
36 | AX_LANG_COMPILER_MS | ||
37 | if test X$ax_compiler_ms = Xno; then | ||
38 | GL_CFLAGS="${PTHREAD_CFLAGS}" | ||
39 | GL_LIBS="${PTHREAD_LIBS} -lm" | ||
40 | fi | ||
41 | |||
42 | # | ||
43 | # Use x_includes and x_libraries if they have been set (presumably by | ||
44 | # AC_PATH_X). | ||
45 | # | ||
46 | if test "X$no_x" != "Xyes"; then | ||
47 | if test -n "$x_includes"; then | ||
48 | GL_CFLAGS="-I${x_includes} ${GL_CFLAGS}" | ||
49 | fi | ||
50 | if test -n "$x_libraries"; then | ||
51 | GL_LIBS="-L${x_libraries} -lX11 ${GL_LIBS}" | ||
52 | fi | ||
53 | fi | ||
54 | |||
55 | AC_CHECK_HEADERS([windows.h]) | ||
56 | |||
57 | AC_CACHE_CHECK([for OpenGL library], [ax_cv_check_gl_libgl], | ||
58 | [ax_cv_check_gl_libgl="no" | ||
59 | ax_save_CPPFLAGS="${CPPFLAGS}" | ||
60 | CPPFLAGS="${GL_CFLAGS} ${CPPFLAGS}" | ||
61 | ax_save_LIBS="${LIBS}" | ||
62 | LIBS="" | ||
63 | ax_check_libs="-lopengl32 -lGL" | ||
64 | for ax_lib in ${ax_check_libs}; do | ||
65 | if test X$ax_compiler_ms = Xyes; then | ||
66 | ax_try_lib=`echo $ax_lib | sed -e 's/^-l//' -e 's/$/.lib/'` | ||
67 | else | ||
68 | ax_try_lib="${ax_lib}" | ||
69 | fi | ||
70 | LIBS="${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}" | ||
71 | AC_LINK_IFELSE( | ||
72 | [AC_LANG_PROGRAM([[ | ||
73 | # if HAVE_WINDOWS_H && defined(_WIN32) | ||
74 | # include <windows.h> | ||
75 | # endif | ||
76 | # include <GL/gl.h>]], | ||
77 | [[glBegin(0)]])], | ||
78 | [ax_cv_check_gl_libgl="${ax_try_lib}"; break]) | ||
79 | done | ||
80 | LIBS=${ax_save_LIBS} | ||
81 | CPPFLAGS=${ax_save_CPPFLAGS}]) | ||
82 | |||
83 | if test "X${ax_cv_check_gl_libgl}" = "Xno"; then | ||
84 | no_gl="yes" | ||
85 | GL_CFLAGS="" | ||
86 | GL_LIBS="" | ||
87 | else | ||
88 | GL_LIBS="${ax_cv_check_gl_libgl} ${GL_LIBS}" | ||
89 | fi | ||
90 | AC_LANG_POP(C) | ||
91 | fi | ||
92 | |||
93 | AC_SUBST([GL_CFLAGS]) | ||
94 | AC_SUBST([GL_LIBS]) | ||
95 | ])dnl | ||