[grits] Update windowing system tests



commit 8bbd94522aa48d4ae72b1034cf7a17e29f98f329
Author: Andy Spencer <andy753421 gmail com>
Date:   Mon Dec 12 06:16:19 2011 +0000

    Update windowing system tests
    
    - Add support for Mac OS
    - Hopefully make things simpler

 configure.ac            |   29 +++++++++++++++--------------
 src/Makefile.am         |   28 ++++++++++++++++------------
 src/data/Makefile.am    |    3 ++-
 src/gtkgl.c             |    8 ++++----
 src/gtkgl.h             |    2 +-
 src/objects/Makefile.am |    5 +++--
 src/plugins/Makefile.am |   15 +++++++++------
 7 files changed, 50 insertions(+), 40 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 2e9ca73..e92d77e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -36,26 +36,27 @@ AC_CHECK_LIB(glut, glutSolidTeapot, GLUT_LIBS="-lglut")
 AM_CONDITIONAL(HAVE_GLUT, test "$GLUT_LIBS" != "")
 AC_SUBST(GLUT_LIBS)
 
-# Test for Windows vs. Unix
+# Test for windowing system
 case "${host}" in
-	*mingw32*) WIN32="yes" ;;
-	*cygwin*)  WIN32="yes" ;;
-	*)         WIN32="no"  ;;
+	*mingw32*) SYS="WIN" ;;
+	*cygwin*)  SYS="WIN" ;;
+	*apple*)   SYS="MAC" ;;
+	*)         SYS="X11" ;;
 esac
+AM_CONDITIONAL([SYS_WIN], test "$SYS" = "WIN")
+AM_CONDITIONAL([SYS_MAC], test "$SYS" = "MAC")
+AM_CONDITIONAL([SYS_X11], test "$SYS" = "X11")
 if test "$WIN32" = yes; then
 	ac_default_prefix="/"
 fi
-AM_CONDITIONAL([WIN32],    test "$WIN32" = "yes")
-AM_CONDITIONAL([NOTWIN32], test "$WIN32" = "no")
 
-# Configure GL flags
-if test "$WIN32" = yes; then
-	GL_CFLAGS=""
-	GL_LIBS="-lglu32 -lopengl32"
-else
-	GL_CFLAGS=""
-	GL_LIBS="-lGL -lGLU"
-fi
+# OpenGL flags
+GL_CFLAGS="-DSYS_$SYS"
+case "$SYS" in
+	"WIN") GL_LIBS="-lglu32 -lopengl32" ;;
+	"MAC") GL_LIBS="-framework OpenGL" ;;
+	"X11") GL_LIBS="-lGL -lGLU" ;;
+esac
 AC_SUBST([GL_CFLAGS])
 AC_SUBST([GL_LIBS])
 
diff --git a/src/Makefile.am b/src/Makefile.am
index ed3db86..fd2fceb 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -3,10 +3,18 @@ SUBDIRS = data objects . plugins
 AM_CFLAGS   = -Wall --std=gnu99 -I$(top_srcdir)/src
 AM_CPPFLAGS = $(GLIB_CFLAGS) $(GTK_CFLAGS) $(GL_CFLAGS) $(SOUP_CFLAGS)
 AM_LDADD    = $(GLIB_LIBS) $(GTK_LIBS) $(GL_LIBS) $(SOUP_LIBS)
-AM_LDFLAGS  = -Wl,--as-needed -Wl,--no-undefined
-
-BUILT_SOURCES = grits-marshal.c grits-marshal.h
+AM_LDFLAGS  = 
 
+# System dependant flags
+if SYS_WIN
+AM_LDFLAGS += -mwindows -no-undefined
+endif
+if SYS_MAC
+AM_CFLAGS  += -ObjC
+AM_LDFLAGS += -framework AppKit
+else
+AM_LDFLAGS += -Wl,--as-needed -Wl,--no-undefined
+endif
 
 # Headers
 grits_includedir = $(includedir)/grits
@@ -48,14 +56,6 @@ libgrits_la_LDFLAGS = $(AM_LDFLAGS) \
 	-version-info $(LIB_VERSION)
 
 # Demo program
-if WIN32
-AM_CPPFLAGS += -DUSE_WGL
-AM_LDFLAGS  += -mwindows -no-undefined
-dots         = ..
-else
-AM_CPPFLAGS += -DUSE_GLX
-endif
-
 bin_PROGRAMS = grits-demo
 
 grits_demo_SOURCES = grits-demo.c
@@ -70,14 +70,18 @@ grits_test_LDADD   = $(AM_LDADD) libgrits.la
 tile_test_SOURCES = tile-test.c
 tile_test_LDADD   = $(AM_LDADD) libgrits.la
 
-
+# Clean
 MAINTAINERCLEANFILES = Makefile.in
 
+# Generated code 
+BUILT_SOURCES = grits-marshal.c grits-marshal.h
+
 .list.c:
 	glib-genmarshal --prefix=grits_cclosure_marshal --body   $< > $@
 .list.h:
 	glib-genmarshal --prefix=grits_cclosure_marshal --header $< > $@
 
+# Debugging rules
 test: all .libs/$(GRITS_SUBDIR)
 	./grits-test
 
diff --git a/src/data/Makefile.am b/src/data/Makefile.am
index ec90c19..5a8c806 100644
--- a/src/data/Makefile.am
+++ b/src/data/Makefile.am
@@ -1,6 +1,7 @@
 AM_CFLAGS  = -Wall --std=gnu99 -I$(top_srcdir)/src
 AM_CFLAGS += $(GLIB_CFLAGS) $(GTK_CFLAGS) $(SOUP_CFLAGS)
-if NOTWIN32
+
+if !SYS_WIN
 AM_CFLAGS += -fPIC
 endif
 
diff --git a/src/gtkgl.c b/src/gtkgl.c
index b495987..052f562 100644
--- a/src/gtkgl.c
+++ b/src/gtkgl.c
@@ -20,7 +20,7 @@
 /***************************
  * GtkGlExt implementation *
  ***************************/
-#if defined(USE_GTKGLEXT)
+#if defined(SYS_GTKGLEXT)
 #include <gtk/gtkgl.h>
 void gtk_gl_enable(GtkWidget *widget)
 {
@@ -53,7 +53,7 @@ void gtk_gl_disable(GtkWidget *widget)
 /**********************
  * X11 implementation *
  **********************/
-#elif defined(USE_GLX)
+#elif defined(SYS_X11)
 #include <GL/glx.h>
 #include <gdk/gdkx.h>
 void gtk_gl_enable(GtkWidget *widget)
@@ -116,7 +116,7 @@ void gtk_gl_disable(GtkWidget *widget)
 /************************
  * Win32 implementation *
  ************************/
-#elif defined(USE_WGL)
+#elif defined(SYS_WIN)
 #include <windows.h>
 #include <gdk/gdkwin32.h>
 static void on_realize(GtkWidget *widget, gpointer _)
@@ -190,7 +190,7 @@ void gtk_gl_disable(GtkWidget *widget)
 /**************************
  * Mac OSX implementation *
  **************************/
-#elif defined(USE_CGL)
+#elif defined(SYS_MAC)
 void gtk_gl_enable(GtkWidget *widget)
 {
 	CGDisplayCapture( kCGDirectMainDisplay );
diff --git a/src/gtkgl.h b/src/gtkgl.h
index 71ad67a..244bc14 100644
--- a/src/gtkgl.h
+++ b/src/gtkgl.h
@@ -21,7 +21,7 @@
 #include <gtk/gtk.h>
 
 /* Platform dependant OpenGL includes */
-#ifdef USE_MAC
+#ifdef SYS_MAC
 #include <OpenGL/gl.h>
 #include <OpenGL/glu.h>
 #else
diff --git a/src/objects/Makefile.am b/src/objects/Makefile.am
index ff20786..dc62861 100644
--- a/src/objects/Makefile.am
+++ b/src/objects/Makefile.am
@@ -1,6 +1,7 @@
 AM_CFLAGS  = -Wall --std=gnu99 -I$(top_srcdir)/src
-AM_CFLAGS += $(GLIB_CFLAGS) $(GTK_CFLAGS) $(CAIRO_CFLAGS)
-if NOTWIN32
+AM_CFLAGS += $(GLIB_CFLAGS) $(GTK_CFLAGS) $(GL_CFLAGS) $(CAIRO_CFLAGS)
+
+if !SYS_WIN
 AM_CFLAGS += -fPIC
 endif
 
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am
index d713c35..2572125 100644
--- a/src/plugins/Makefile.am
+++ b/src/plugins/Makefile.am
@@ -1,10 +1,17 @@
 MAINTAINERCLEANFILES = Makefile.in
 
 AM_CFLAGS   = -Wall --std=gnu99 -I$(top_srcdir)/src
-AM_CPPFLAGS = $(GLIB_CFLAGS) $(GTK_CFLAGS) $(SOUP_CFLAGS)
-AM_LDFLAGS  = -shared -module -avoid-version -Wl,--as-needed
+AM_CPPFLAGS = $(GLIB_CFLAGS) $(GTK_CFLAGS) $(GL_CFLAGS) $(SOUP_CFLAGS)
+AM_LDFLAGS  = -shared -module -avoid-version
 LIBS        = $(top_srcdir)/src/libgrits.la
 
+if SYS_WIN
+AM_LDFLAGS += -no-undefined
+endif
+if !SYS_MAC
+AM_LDFLAGS += -Wl,--as-needed
+endif
+
 pluginsdir  = "$(libdir)/$(GRITS_SUBDIR)"
 
 plugins_LTLIBRARIES = sat.la elev.la map.la env.la test.la
@@ -14,10 +21,6 @@ map_la_SOURCES      = map.c  map.h
 env_la_SOURCES      = env.c  env.h
 test_la_SOURCES     = test.c test.h
 
-if WIN32
-AM_LDFLAGS += -no-undefined
-endif
-
 if HAVE_GLUT
 noinst_LTLIBRARIES  = teapot.la
 teapot_la_SOURCES   = \



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]