From 2651fddf8cf846fda7a74cfe86cfcf1372b46d1b Mon Sep 17 00:00:00 2001 From: Sam Hocevar Date: Tue, 2 Aug 2011 16:09:23 +0000 Subject: [PATCH] build: make libglew detection work on MinGW. --- build-mingw | 4 ++-- configure.ac | 26 ++++++++++++++++---------- 2 files changed, 18 insertions(+), 12 deletions(-) diff --git a/build-mingw b/build-mingw index 0f5c0116..9088d454 100644 --- a/build-mingw +++ b/build-mingw @@ -14,7 +14,7 @@ CPPFLAGS="$CPPFLAGS -I`pwd`/contrib/sdl-image-1.2.10/include" CPPFLAGS="$CPPFLAGS -I`pwd`/contrib/sdl-mixer-1.2.11/include" # Glew include path -CPPFLAGS="$CPPFLAGS -I`pwd`/contrib/glew-1.6.0/include" +CPPFLAGS="$CPPFLAGS -I`pwd`/contrib/glew-1.6.0/include -DGLEW_STATIC" # GTK include path CPPFLAGS="$CPPFLAGS -I`pwd`/contrib/gtk-2.22.1/lib/glib-2.0/include" @@ -47,7 +47,7 @@ CPPFLAGS="$CPPFLAGS -mms-bitfields" LDFLAGS="$LDFLAGS -static-libgcc -static-libstdc++" # Help our build scripts a bit here -GTK_LIBS="$GTK_LIBS -lgtkgl-2.0 -lopengl32 -lgdi32" +GTK_LIBS="$GTK_LIBS -lgtkgl-2.0 -lopengl32 -lglew32 -lgdi32" GTK_LIBS="$GTK_LIBS -lgtk-win32-2.0 -lgdk-win32-2.0" GTK_LIBS="$GTK_LIBS -lglib-2.0 -lgthread-2.0 -lgobject-2.0" diff --git a/configure.ac b/configure.ac index 194393c7..da07195c 100644 --- a/configure.ac +++ b/configure.ac @@ -81,8 +81,8 @@ ac_cv_my_have_gl="no" PKG_CHECK_MODULES(GLES2, glesv2, [ac_cv_my_have_gl="yes" AC_DEFINE(HAVE_GLES_2X, 1, Define to 1 if GLES 2.x is available) - GL_CFLAGS="${GLES2_CFLAGS}" - GL_LIBS="${GLES2_LIBS}"], + GL_CFLAGS="${GL_CFLAGS} ${GLES2_CFLAGS}" + GL_LIBS="${GL_LIBS} ${GLES2_LIBS}"], [:]) AC_CHECK_LIB(GL, glLoadIdentity, [ac_cv_my_have_gl="yes" @@ -106,24 +106,30 @@ fi dnl Use Glew? ac_cv_my_have_glew="no" -PKG_CHECK_MODULES(GLEW, glew, [ac_cv_my_have_glew="yes"], [:]) +PKG_CHECK_MODULES(GLEW, glew, + [ac_cv_my_have_glew="yes" + GL_CFLAGS="${GLEW_CFLAGS} ${GL_CFLAGS}" + GL_LIBS="${GLEW_LIBS} ${GL_LIBS}"], + [:]) AC_CHECK_HEADER(GL/glew.h, - [LIBS_save="$LIBS" - LIBS="$LIBS -lglew32" + [LIBS_save="${LIBS}" + LIBS="${LIBS} -lglew32 ${GL_LIBS}" AC_MSG_CHECKING(for glewInit in -lglew32) - AC_TRY_LINK([#include ], + AC_TRY_LINK( + [#include ], [glewInit();], [ac_cv_my_have_glew="yes" AC_MSG_RESULT(yes)], [AC_MSG_RESULT(no)]) - LIBS="$LIBS_save"]) + GL_LIBS="-lglew32 ${GL_LIBS}" + LIBS="${LIBS_save}"]) if test "${ac_cv_my_have_glew}" != "no"; then AC_DEFINE(HAVE_GLES_2X, 1, Define to 1 if GLES 2.x is available) AC_DEFINE(USE_GLEW, 1, Define to 1 to use libglew) fi AM_CONDITIONAL(USE_GLEW, test "${ac_cv_my_have_glew}" != "no") -dnl Poor man's GL feature detection. +dnl Poor man's GL feature detection if all else failed. save_LIBS="${LIBS}" LIBS="${LIBS} ${GL_LIBS} ${GLES2_LIBS}" AC_CHECK_FUNCS(glBegin) @@ -214,8 +220,8 @@ AM_CONDITIONAL(USE_CPPUNIT, test "$CPPUNIT" = "yes") dnl How to use the Lol Engine inside this tree LOL_CFLAGS="$LOL_CFLAGS -I \$(top_srcdir)/src" -LOL_CFLAGS="$LOL_CFLAGS $SDL_CFLAGS $EGL_CFLAGS $GLEW_CFLAGS $LIBPNG_CFLAGS" -LOL_LIBS="$LOL_LIBS $SDL_LIBS $EGL_LIBS $GLEW_LIBS $LIBPNG_LIBS" +LOL_CFLAGS="$LOL_CFLAGS $SDL_CFLAGS $EGL_CFLAGS $LIBPNG_CFLAGS" +LOL_LIBS="$LOL_LIBS $SDL_LIBS $EGL_LIBS $LIBPNG_LIBS" AC_SUBST(MATH_LIBS) AC_SUBST(LOL_CFLAGS)