[glade3] Fix runtime path resolution on osx.



commit 9dc7aeaaf303920afafbc937640f7d45018ea15a
Author: Tristan Van Berkom <vantr TheBully local>
Date:   Mon Jun 22 21:19:50 2009 -0400

    Fix runtime path resolution on osx.
    
    * gladeui/glade-app.c, gladeui/Makefile.am: Find quartz specific runtime prefix
    using ige_mac_bundle_get_path().

 ChangeLog           |    5 +++++
 gladeui/Makefile.am |    4 +++-
 gladeui/glade-app.c |   19 +++++++++++++++++--
 3 files changed, 25 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 967ad9e..cd7dfe3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2009-06-22  Tristan Van Berkom <tvb gnome org>
+
+	* gladeui/glade-app.c, gladeui/Makefile.am: Find quartz specific runtime prefix
+	using ige_mac_bundle_get_path().
+
 2009-06-20  Tristan Van Berkom <tvb gnome org>
 
 	* plugins/gtk+/gtk+.xml.in: Make GtkMessageDialog texts translatable (bug 586063)
diff --git a/gladeui/Makefile.am b/gladeui/Makefile.am
index 9bfce08..007e2e5 100644
--- a/gladeui/Makefile.am
+++ b/gladeui/Makefile.am
@@ -1,6 +1,7 @@
 
 common_defines = \
 	-DG_LOG_DOMAIN=\"GladeUI\"                      \
+	-DGLADE_PREFIX="\"$(prefix)\""			\
 	-DGLADE_DATADIR="\"$(pkgdatadir)\""		\
 	-DGLADE_LIBDIR="\"$(pkglibdir)\""		\
 	-DGLADE_CATALOGSDIR="\"$(pkgdatadir)/catalogs\""\
@@ -75,11 +76,12 @@ libgladeui_1_la_CPPFLAGS =  \
 
 libgladeui_1_la_CFLAGS =    \
 	$(GTK_CFLAGS)       \
+	$(IGE_MAC_CFLAGS)  \
 	$(WARN_CFLAGS)      \
 	$(AM_CFLAGS)
 
 libgladeui_1_la_LDFLAGS = -version-info $(GLADE_CURRENT):$(GLADE_REVISION):$(GLADE_AGE) $(AM_LDFLAGS)
-libgladeui_1_la_LIBADD = $(GTK_LIBS)
+libgladeui_1_la_LIBADD = $(GTK_LIBS) $(IGE_MAC_LIBS)
 
 
 libgladeuiincludedir=$(includedir)/libgladeui-1.0/gladeui
diff --git a/gladeui/glade-app.c b/gladeui/glade-app.c
index 043c761..53fbc6e 100644
--- a/gladeui/glade-app.c
+++ b/gladeui/glade-app.c
@@ -49,6 +49,10 @@
 #include <gdk/gdkkeysyms.h>
 #include <gtk/gtk.h>
 
+#ifdef MAC_INTEGRATION
+#  include <ige-mac-integration.h>
+#endif
+
 #define GLADE_CONFIG_FILENAME "glade-3.conf"
 
 #define GLADE_APP_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GLADE_TYPE_APP, GladeAppPrivate))
@@ -362,14 +366,22 @@ glade_app_get_locale_dir (void)
 static void
 build_package_paths (void)
 {
-#ifdef G_OS_WIN32
+#if defined (MAC_INTEGRATION) || defined (G_OS_WIN32)
 	gchar *prefix;
-	
+
+# ifdef G_OS_WIN32
 	prefix = g_win32_get_package_installation_directory_of_module (NULL);
+# else /* MAC_INTEGRATION */	
+	IgeMacBundle *bundle = ige_mac_bundle_get_default ();
+
+	prefix = g_build_filename (ige_mac_bundle_get_path (bundle), "Contents", "Resources", NULL);
+# endif 
+
 	pixmaps_dir  = g_build_filename (prefix, "share", PACKAGE, "pixmaps", NULL);
 	catalogs_dir = g_build_filename (prefix, "share", PACKAGE, "catalogs", NULL);
 	modules_dir  = g_build_filename (prefix, "lib", PACKAGE, "modules", NULL);
 	locale_dir   = g_build_filename (prefix, "share", "locale", NULL);
+
 	g_free (prefix);
 #else
 	catalogs_dir = g_strdup (GLADE_CATALOGSDIR);
@@ -389,6 +401,9 @@ glade_init_check (void)
 	if (initialised)
 		return;
 
+	/* Make sure path accessors work on osx */
+	g_type_init ();
+
 	build_package_paths ();
 
 	bindtextdomain (GETTEXT_PACKAGE, locale_dir);



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