summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Van Berkom <vantr@TheBully.local>2009-06-22 21:19:50 -0400
committerTristan Van Berkom <vantr@TheBully.local>2009-06-22 21:19:50 -0400
commit9dc7aeaaf303920afafbc937640f7d45018ea15a (patch)
treebc69b1ce29818cfa987aca2926e3a33ef72501b0
parent51a9515f023fec2fe25e6dbb79630a851d61c5a1 (diff)
downloadglade-9dc7aeaaf303920afafbc937640f7d45018ea15a.tar.gz
Fix runtime path resolution on osx.
* gladeui/glade-app.c, gladeui/Makefile.am: Find quartz specific runtime prefix using ige_mac_bundle_get_path().
-rw-r--r--ChangeLog5
-rw-r--r--gladeui/Makefile.am4
-rw-r--r--gladeui/glade-app.c19
3 files changed, 25 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 967ad9e5..cd7dfe3b 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 9bfce081..007e2e58 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 043c7615..53fbc6e1 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);