summaryrefslogtreecommitdiff
path: root/src/glut
diff options
context:
space:
mode:
authorJosé Fonseca <jrfonseca@tungstengraphics.com>2008-11-21 05:26:52 +0900
committerJosé Fonseca <jrfonseca@tungstengraphics.com>2008-11-21 10:44:31 +0900
commit81aa678ce8f4a1f7c75b928ba2b107908959d50d (patch)
treeeaf003019b7b713a9d6b337b3f73e4d94c1d0b42 /src/glut
parent76624096617c7218d828c5de9c02e70d578c37c7 (diff)
glut: MinGW portability fixes.
Still, it doesn't run as well as the glut binaries...
Diffstat (limited to 'src/glut')
-rw-r--r--src/glut/glx/SConscript89
-rw-r--r--src/glut/glx/glutint.h2
-rw-r--r--src/glut/glx/glutstroke.h2
-rw-r--r--src/glut/glx/glutwin32.h1
-rw-r--r--src/glut/glx/win32_x11.h2
5 files changed, 93 insertions, 3 deletions
diff --git a/src/glut/glx/SConscript b/src/glut/glx/SConscript
new file mode 100644
index 0000000000..99b3bb7df6
--- /dev/null
+++ b/src/glut/glx/SConscript
@@ -0,0 +1,89 @@
+Import('*')
+
+env = env.Clone()
+
+if env['platform'] != 'windows':
+ Return()
+
+target = 'glut32'
+
+env.Replace(CPPDEFINES = [
+ 'BUILD_GLUT32',
+ 'GLUT_BUILDING_LIB',
+ 'MESA',
+ '_DLL',
+ 'NDEBUG',
+ 'GLUT_NO_WARNING_DISABLE',
+])
+
+env.AppendUnique(CPPPATH = [
+ '#/include',
+])
+
+env.PrependUnique(LIBS = [
+ 'winmm',
+ 'gdi32',
+ 'user32',
+ 'opengl32',
+ 'glu32',
+])
+
+sources = [
+ 'glut_bitmap.c',
+ 'glut_bwidth.c',
+ 'glut_cindex.c',
+ 'glut_cmap.c',
+ 'glut_cursor.c',
+ 'glut_dials.c',
+ 'glut_dstr.c',
+ 'glut_event.c',
+ 'glut_ext.c',
+ 'glut_fcb.c',
+ 'glut_fullscrn.c',
+ 'glut_gamemode.c',
+ 'glut_get.c',
+ 'glut_init.c',
+ 'glut_input.c',
+ 'glut_joy.c',
+ 'glut_key.c',
+ 'glut_keyctrl.c',
+ 'glut_keyup.c',
+ 'glut_mesa.c',
+ 'glut_modifier.c',
+ 'glut_overlay.c',
+ 'glut_shapes.c',
+ 'glut_space.c',
+ 'glut_stroke.c',
+ 'glut_swap.c',
+ 'glut_swidth.c',
+ 'glut_tablet.c',
+ 'glut_teapot.c',
+ 'glut_util.c',
+ 'glut_vidresize.c',
+ 'glut_warp.c',
+ 'glut_win.c',
+ 'glut_winmisc.c',
+
+ 'win32_glx.c',
+ 'win32_menu.c',
+ 'win32_util.c',
+ 'win32_winproc.c',
+ 'win32_x11.c',
+
+ 'glut_8x13.c',
+ 'glut_9x15.c',
+ 'glut_hel10.c',
+ 'glut_hel12.c',
+ 'glut_hel18.c',
+ 'glut_mroman.c',
+ 'glut_roman.c',
+ 'glut_tr10.c',
+ 'glut_tr24.c',
+
+ 'glut.def',
+]
+
+env.SharedLibrary(
+ target = target,
+ source = sources,
+)
diff --git a/src/glut/glx/glutint.h b/src/glut/glx/glutint.h
index a962c78023..de506a5932 100644
--- a/src/glut/glx/glutint.h
+++ b/src/glut/glx/glutint.h
@@ -33,7 +33,7 @@
#include <GL/glut.h>
#if defined(MESA) && defined(_WIN32) && !defined(__CYGWIN32__)
-#include <gl/mesa_wgl.h>
+#include <GL/mesa_wgl.h>
#endif
#ifndef _WIN32
diff --git a/src/glut/glx/glutstroke.h b/src/glut/glx/glutstroke.h
index cbc9e156fe..74b60314aa 100644
--- a/src/glut/glx/glutstroke.h
+++ b/src/glut/glx/glutstroke.h
@@ -7,7 +7,7 @@
and is provided without guarantee or warrantee expressed or
implied. This program is -not- in the public domain. */
-#if defined(_WIN32)
+#if defined(_MSC_VER)
#pragma warning (disable:4244) /* disable bogus conversion warnings */
#pragma warning (disable:4305) /* VC++ 5.0 version of above warning. */
#endif
diff --git a/src/glut/glx/glutwin32.h b/src/glut/glx/glutwin32.h
index 304eeb20a2..01db99fad6 100644
--- a/src/glut/glx/glutwin32.h
+++ b/src/glut/glx/glutwin32.h
@@ -41,6 +41,7 @@
/* Private routines from win32_util.c */
#ifndef __CYGWIN32__
+struct timeval;
extern int gettimeofday(struct timeval* tp, void* tzp);
#endif
extern void *__glutFont(void *font);
diff --git a/src/glut/glx/win32_x11.h b/src/glut/glx/win32_x11.h
index 6f5c3a9aea..daf065e27b 100644
--- a/src/glut/glx/win32_x11.h
+++ b/src/glut/glx/win32_x11.h
@@ -228,7 +228,7 @@ typedef struct {
SetWindowPos(window, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOMOVE | SWP_NOSIZE)
#define XSetWMName(display, window, tp) \
- SetWindowText(window, (tp)->value)
+ SetWindowText(window, (const char *)(tp)->value)
/* There really isn't a way to set the icon name separate from the
windows name in Win32, so, just set the windows name. */