mirror of
https://github.com/gnustep/libs-back.git
synced 2025-02-23 03:41:04 +00:00
opengl fixups for win32
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@24527 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
ee28dd9a86
commit
217be1a2a2
3 changed files with 1413 additions and 63 deletions
|
@ -1,3 +1,7 @@
|
||||||
|
2007-02-13 Xavier Glattard <xavier.glattard@free.fr>
|
||||||
|
|
||||||
|
configure.ac: opengl fixups for win32
|
||||||
|
|
||||||
2007-02-11 Fred Kiefer <FredKiefer@gmx.de>
|
2007-02-11 Fred Kiefer <FredKiefer@gmx.de>
|
||||||
|
|
||||||
* Source/cairo/CairoGState.m (-DPScharpath::, -DPSshow:,
|
* Source/cairo/CairoGState.m (-DPScharpath::, -DPSshow:,
|
||||||
|
|
158
configure.ac
158
configure.ac
|
@ -228,14 +228,14 @@ if test "x$enable_glx" = "xyes"; then
|
||||||
], have_glx_rgba=yes, have_glx_rgba=no)
|
], have_glx_rgba=yes, have_glx_rgba=no)
|
||||||
AC_MSG_RESULT([$have_glx_rgba])
|
AC_MSG_RESULT([$have_glx_rgba])
|
||||||
if test "$have_glx" = yes -a "$ac_cv_header_GL_glx_h" = yes -a "$have_glx_rgba" = yes; then
|
if test "$have_glx" = yes -a "$ac_cv_header_GL_glx_h" = yes -a "$have_glx_rgba" = yes; then
|
||||||
LIBS="-lGL ${LIBS}"
|
GLX_LIBS="-lGL"
|
||||||
|
GLX_FLAGS=""
|
||||||
WITH_GLX=yes
|
WITH_GLX=yes
|
||||||
AC_DEFINE(HAVE_GLX,1,[Define if you have the glx library])
|
AC_DEFINE(HAVE_GLX,1,[Define if you have the glx library])
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
AC_SUBST(WITH_GLX)
|
AC_SUBST(WITH_GLX)
|
||||||
|
|
||||||
|
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
# XIM support
|
# XIM support
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
|
@ -265,13 +265,43 @@ fi
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
AC_CHECK_LIB(gdi32, main, have_gdi32=yes, have_gdi32=no)
|
AC_CHECK_LIB(gdi32, main, have_gdi32=yes, have_gdi32=no)
|
||||||
if test "$have_gdi32" = yes; then
|
if test "$have_gdi32" = yes; then
|
||||||
WIN32_LIBS="-lgdi32"
|
WIN32_LIBS="-lgdi32 -lm"
|
||||||
fi
|
fi
|
||||||
AC_CHECK_LIB(msimg32, main, have_msimg32=yes, have_msimg32=no)
|
AC_CHECK_LIB(msimg32, main, have_msimg32=yes, have_msimg32=no)
|
||||||
if test "$have_msimg32" = yes; then
|
if test "$have_msimg32" = yes; then
|
||||||
WIN32_LIBS="${WIN32_LIBS} -lmsimg32"
|
WIN32_LIBS="${WIN32_LIBS} -lmsimg32"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#--------------------------------------------------------------------
|
||||||
|
# WGL support
|
||||||
|
#--------------------------------------------------------------------
|
||||||
|
WITH_WGL=no
|
||||||
|
AC_ARG_ENABLE(wgl,
|
||||||
|
[ --disable-wgl Disable WGL support],,
|
||||||
|
enable_wgl=yes)
|
||||||
|
if test "x$enable_wgl" = "xyes"; then
|
||||||
|
AC_CHECK_LIB(opengl32, main, have_wgl=yes, have_wgl=no)
|
||||||
|
save_CPPFLAGS="$CPPFLAGS"
|
||||||
|
CPPFLAGS="$CPPFLAGS"
|
||||||
|
AC_CHECK_HEADER(windows.h)
|
||||||
|
CPPFLAGS="$save_CPPFLAGS"
|
||||||
|
if test "$have_wgl" = yes -a "$ac_cv_header_windows_h" = yes; then
|
||||||
|
AC_MSG_CHECKING([for wgl])
|
||||||
|
WGL_LIBS="-lopengl32 -lgdi32"
|
||||||
|
WGL_CFLAGS=""
|
||||||
|
|
||||||
|
save_libs="$LIBS"
|
||||||
|
LIBS="$WGL_LIBS"
|
||||||
|
AC_TRY_LINK([#include <windows.h>], [int main() { wglCreateContext(0); }],
|
||||||
|
[use_wgl=yes], [use_wgl=no])
|
||||||
|
LIBS="$save_libs"
|
||||||
|
AC_MSG_RESULT([$use_wgl])
|
||||||
|
WITH_WGL=$use_wgl
|
||||||
|
AC_DEFINE(HAVE_WGL,1,[Define if you have the wgl library])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
AC_SUBST(WITH_WGL)
|
||||||
|
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
# libart graphics libraries
|
# libart graphics libraries
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
|
@ -300,24 +330,65 @@ fi
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
# Cairo graphics libraries
|
# Cairo graphics libraries
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
|
PKG_CAIRO=no
|
||||||
PKG_CHECK_MODULES(CAIRO, cairo, have_cairo=yes, have_cairo=no)
|
PKG_CHECK_MODULES(CAIRO, cairo, have_cairo=yes, have_cairo=no)
|
||||||
|
PKG_CAIRO_FT=no
|
||||||
|
PKG_CHECK_MODULES(CAIRO_FT, cairo-ft, have_cairo_ft=yes, have_cairo_ft=no)
|
||||||
|
PKG_CAIRO_XLIB=no
|
||||||
|
PKG_CHECK_MODULES(CAIRO_XLIB, cairo-xlib, have_cairo_xlib=yes, have_cairo_xlib=no)
|
||||||
|
PKG_CAIRO_WIN32=no
|
||||||
|
PKG_CHECK_MODULES(CAIRO_WIN32, cairo-win32, have_cairo_win32=yes, have_cairo_win32=no)
|
||||||
|
PKG_CAIRO_GLITZ=no
|
||||||
|
PKG_CHECK_MODULES(CAIRO_GLITZ, cairo-glitz, have_cairo_glitz=yes, have_cairo_glitz=no)
|
||||||
|
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
# Glitz-GLX libraries
|
# Glitz libraries
|
||||||
#--------------------------------------------------------------------
|
#--------------------------------------------------------------------
|
||||||
WITH_GLITZ=no
|
WITH_GLITZ=no
|
||||||
AC_ARG_ENABLE(glitz,
|
AC_ARG_ENABLE(glitz,
|
||||||
[ --disable-glitz Disable Glitz support],,
|
[ --enable-glitz Enable Glitz support],,
|
||||||
enable_glitz=yes)
|
enable_glitz=no)
|
||||||
|
|
||||||
if test "x$enable_glitz" = "xyes"; then
|
if test "x$enable_glitz" = "xyes"; then
|
||||||
PKG_CHECK_MODULES(GLITZ, glitz-glx, have_glitz_glx=yes, have_glitz_glx=no)
|
PKG_CHECK_MODULES(GLITZ, glitz, have_glitz=yes, have_glitz=no)
|
||||||
AC_CHECK_HEADER(glitz-glx.h,have_glitz_glx_h=yes, have_glitz_glx_h=no)
|
save_CPPFLAGS=$CPPFLAGS
|
||||||
if test "$have_glitz_glx" = yes -a "$have_glitz_glx_h" = yes; then
|
CPPFLAGS="$CPPFLAGS $GLITZ_CFLAGS"
|
||||||
WITH_GLITZ=yes
|
AC_CHECK_HEADER(glitz.h,have_glitz_h=yes, have_glitz_h=no)
|
||||||
LIBS="$GLITZ_LIBS $LIBS"
|
CPPFLAGS=$save_CPPFLAGS
|
||||||
GRAPHIC_CFLAGS="$GLITZ_CFLAGS $GRAPHIC_CFLAGS"
|
if test "$have_glitz" = yes -a "$have_glitz_h" = yes; then
|
||||||
AC_DEFINE(HAVE_GLITZ_GLX,1,[Define if you have glitz])
|
|
||||||
|
if test "x$WITH_GLX" = "xyes"; then
|
||||||
|
PKG_CHECK_MODULES(GLITZ_GLX, glitz-glx, have_glitz_glx=yes, have_glitz_glx=no)
|
||||||
|
save_CPPFLAGS=$CPPFLAGS
|
||||||
|
CPPFLAGS="$CPPFLAGS $GLITZ_GLX_CFLAGS"
|
||||||
|
AC_CHECK_HEADER(glitz-glx.h,have_glitz_glx_h=yes, have_glitz_glx_h=no)
|
||||||
|
CPPFLAGS=$save_CPPFLAGS
|
||||||
|
if test "$have_glitz_glx" = yes -a "$have_glitz_glx_h" = yes; then
|
||||||
|
GLITZ_LIBS="$GLITZ_LIBS $GLITZ_GLX_LIBS"
|
||||||
|
GLITZ_CFLAGS="$GLITZ_CFLAGS $GLITZ_GLX_CFLAGS"
|
||||||
|
AC_DEFINE(HAVE_GLITZ_GLX,1,[Define if you have glitz-glx])
|
||||||
|
WITH_GLITZ=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "x$WITH_WGL" = "xyes"; then
|
||||||
|
PKG_CHECK_MODULES(GLITZ_WGL, glitz-wgl, have_glitz_wgl=yes, have_glitz_wgl=no)
|
||||||
|
save_CPPFLAGS=$CPPFLAGS
|
||||||
|
CPPFLAGS="$CPPFLAGS $GLITZ_WGL_CFLAGS"
|
||||||
|
AC_CHECK_HEADER(glitz-wgl.h,have_glitz_wgl_h=yes, have_glitz_wgl_h=no)
|
||||||
|
CPPFLAGS=$save_CPPFLAGS
|
||||||
|
if test "$have_glitz_wgl" = yes -a "$have_glitz_wgl_h" = yes; then
|
||||||
|
GLITZ_LIBS="$GLITZ_LIBS $GLITZ_WGL_LIBS"
|
||||||
|
GLITZ_CFLAGS="$GLITZ_CFLAGS $GLITZ_WGL_CFLAGS"
|
||||||
|
AC_DEFINE(HAVE_GLITZ_WGL,1,[Define if you have glitz-wgl])
|
||||||
|
WITH_GLITZ=yes
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test "$WITH_GLITZ" != "yes" ; then
|
||||||
|
AC_MSG_ERROR([Invalid glitz backend : glitz-glx or glitz-wgl required.])
|
||||||
|
AC_MSG_NOTICE([Glitz disable])
|
||||||
|
fi
|
||||||
AC_DEFINE(USE_GLITZ,1,[Define to enable glitz support])
|
AC_DEFINE(USE_GLITZ,1,[Define to enable glitz support])
|
||||||
fi
|
fi
|
||||||
AC_SUBST(WITH_GLITZ)
|
AC_SUBST(WITH_GLITZ)
|
||||||
|
@ -338,8 +409,7 @@ LDFLAGS=${GRAPHIC_LFLAGS}
|
||||||
BUILD_SERVER=x11
|
BUILD_SERVER=x11
|
||||||
BUILD_GRAPHICS=art
|
BUILD_GRAPHICS=art
|
||||||
case $target_os in
|
case $target_os in
|
||||||
*mingw32* ) BUILD_SERVER=win32
|
*mingw32* ) BUILD_SERVER=win32;;
|
||||||
BUILD_GRAPHICS=winlib;;
|
|
||||||
esac
|
esac
|
||||||
|
|
||||||
AC_ARG_ENABLE(server,
|
AC_ARG_ENABLE(server,
|
||||||
|
@ -379,22 +449,44 @@ elif test x"$BUILD_GRAPHICS" = "xart"; then
|
||||||
CPPFLAGS="$LIBART_CFLAGS $FREETYPE_CFLAGS $CPPFLAGS"
|
CPPFLAGS="$LIBART_CFLAGS $FREETYPE_CFLAGS $CPPFLAGS"
|
||||||
fi
|
fi
|
||||||
elif test x"$BUILD_GRAPHICS" = "xcairo"; then
|
elif test x"$BUILD_GRAPHICS" = "xcairo"; then
|
||||||
if test "$have_cairo" = no; then
|
if test "$have_cairo" = no -o "$have_cairo-ft" = no ; then
|
||||||
AC_MSG_ERROR([can't find cairo, required for graphics=cairo!])
|
AC_MSG_ERROR([can't find cairo, required for graphics=cairo!])
|
||||||
BUILD_GRAPHICS=xlib
|
|
||||||
fi
|
|
||||||
if test "$have_freetype" = no; then
|
|
||||||
AC_MSG_WARN([can't find freetype, required for graphics=cairo])
|
|
||||||
BUILD_GRAPHICS=xlib
|
|
||||||
fi
|
|
||||||
if test $BUILD_GRAPHICS = xlib; then
|
|
||||||
if test $BUILD_SERVER = win32; then
|
if test $BUILD_SERVER = win32; then
|
||||||
BUILD_GRAPHICS=winlib
|
BUILD_GRAPHICS=winlib
|
||||||
|
else
|
||||||
|
BUILD_GRAPHICS=xlib
|
||||||
fi
|
fi
|
||||||
AC_MSG_NOTICE([Switching to $BUILD_GRAPHICS])
|
AC_MSG_NOTICE([Switching to $BUILD_GRAPHICS])
|
||||||
else
|
else
|
||||||
LIBS="$CAIRO_LIBS $FREETYPE_LIBS $LIBS"
|
AC_MSG_CHECKING(Cairo backend)
|
||||||
CPPFLAGS="$CAIRO_CFLAGS $FREETYPE_CFLAGS $CPPFLAGS"
|
CAIRO_LIBS="$CAIRO_FT_LIBS"
|
||||||
|
CAIRO_CFLAGS="$CAIRO_FT_CFLAGS"
|
||||||
|
if test "x$WITH_GLITZ" = "xyes" -a "x$have_cairo_glitz" = "xyes"; then
|
||||||
|
if test $BUILD_SERVER = win32 -a "x$have_cairo_win32" = "xyes"; then
|
||||||
|
CAIRO_GLITZ_LIBS="$CAIRO_GLITZ_LIBS $GLITZ_WGL_LIBS"
|
||||||
|
CAIRO_GLITZ_CFLAGS="$CAIRO_GLITZ_CFLAGS $GLITZ_WGL_CFLAGS"
|
||||||
|
elif test $BUILD_SERVER = x11 -a "x$have_cairo_xlib" = "xyes"; then
|
||||||
|
CAIRO_GLITZ_LIBS="$CAIRO_GLITZ_LIBS $GLITZ_GLX_LIBS"
|
||||||
|
CAIRO_GLITZ_CFLAGS="$CAIRO_GLITZ_CFLAGS $GLITZ_GLX_CFLAGS"
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR([Invalid Glitz installation])
|
||||||
|
fi
|
||||||
|
CAIRO_LIBS="$CAIRO_LIBS $CAIRO_GLITZ_LIBS"
|
||||||
|
CAIRO_CFLAGS="$CAIRO_CFLAGS $CAIRO_GLITZ_CFLAGS"
|
||||||
|
AC_MSG_RESULT(glitz)
|
||||||
|
elif test $BUILD_SERVER = win32 -a "x$have_cairo_win32" = "xyes"; then
|
||||||
|
CAIRO_LIBS="$CAIRO_LIBS $CAIRO_WIN32_LIBS $WIN32_LIBS"
|
||||||
|
CAIRO_CFLAGS="$CAIRO_CFLAGS $CAIRO_WIN32_CFLAGS"
|
||||||
|
AC_MSG_RESULT(winlib)
|
||||||
|
elif test $BUILD_SERVER = x11 -a "x$have_cairo_xlib" = "xyes"; then
|
||||||
|
CAIRO_LIBS="$CAIRO_LIBS $CAIRO_XLIB_LIBS"
|
||||||
|
CAIRO_CFLAGS="$CAIRO_CFLAGS $CAIRO_XLIB_CFLAGS $XFT_LIBS"
|
||||||
|
AC_MSG_RESULT(xlib)
|
||||||
|
else
|
||||||
|
AC_MSG_ERROR([Invalid Cairo installation])
|
||||||
|
fi
|
||||||
|
LIBS="$CAIRO_LIBS $LIBS"
|
||||||
|
CPPFLAGS="$CAIRO_CFLAGS $CPPFLAGS"
|
||||||
fi
|
fi
|
||||||
elif test x"$BUILD_GRAPHICS" = "xxlib"; then
|
elif test x"$BUILD_GRAPHICS" = "xxlib"; then
|
||||||
: # Nothing to do
|
: # Nothing to do
|
||||||
|
@ -403,6 +495,7 @@ elif test x"$BUILD_GRAPHICS" = "xwinlib"; then
|
||||||
else
|
else
|
||||||
AC_MSG_ERROR([Invalid graphics backend $BUILD_GRAPHICS])
|
AC_MSG_ERROR([Invalid graphics backend $BUILD_GRAPHICS])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test x"$BUILD_GRAPHICS" = "xwinlib"; then
|
if test x"$BUILD_GRAPHICS" = "xwinlib"; then
|
||||||
LIBS="$WIN32_LIBS $LIBS"
|
LIBS="$WIN32_LIBS $LIBS"
|
||||||
fi
|
fi
|
||||||
|
@ -415,6 +508,21 @@ if test $BUILD_SERVER = x11; then
|
||||||
if test $set_x_paths = no; then
|
if test $set_x_paths = no; then
|
||||||
AC_MSG_ERROR([No X11 libraries/headers for building x11 server])
|
AC_MSG_ERROR([No X11 libraries/headers for building x11 server])
|
||||||
fi
|
fi
|
||||||
|
if test "x$WITH_GLX" = "xyes"; then
|
||||||
|
LIBS="$LIBS $GLX_LIBS"
|
||||||
|
CPPFLAGS="$CPPFLAGS $GLX_CFLAGS"
|
||||||
|
else
|
||||||
|
AC_MSG_NOTICE([Warning : no OpenGL support for X11 backend])
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $BUILD_SERVER = win32; then
|
||||||
|
if test "x$WITH_WGL" = "xyes"; then
|
||||||
|
LIBS="$LIBS $WGL_LIBS"
|
||||||
|
CPPFLAGS="$CPPFLAGS $WGL_CFLAGS"
|
||||||
|
else
|
||||||
|
AC_MSG_NOTICE([Warning : no OpenGL support for win32 backend])
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
AH_TOP([
|
AH_TOP([
|
||||||
|
|
Loading…
Reference in a new issue