summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--plugins/gtkui/Makefile.am7
-rw-r--r--plugins/gtkui/gtkui.c8
3 files changed, 13 insertions, 4 deletions
diff --git a/configure.ac b/configure.ac
index 37559fa5..c5f7dd89 100644
--- a/configure.ac
+++ b/configure.ac
@@ -634,6 +634,8 @@ AM_CONDITIONAL(HAVE_PSF, test "x$HAVE_PSF" = "xyes")
AM_CONDITIONAL(HAVE_SHN, test "x$HAVE_SHN" = "xyes")
AM_CONDITIONAL(HAVE_MONO2STEREO, test "x$HAVE_MONO2STEREO" = "xyes")
AM_CONDITIONAL(HAVE_SHELLEXECUI, test "x$HAVE_SHELLEXECUI" = "xyes")
+AM_CONDITIONAL(HAVE_SM, test "x$HAVE_SM" = "xyes")
+AM_CONDITIONAL(HAVE_ICE, test "x$HAVE_ICE" = "xyes")
AC_SUBST(PLUGINS_DIRS)
diff --git a/plugins/gtkui/Makefile.am b/plugins/gtkui/Makefile.am
index d87d1221..e630ef0d 100644
--- a/plugins/gtkui/Makefile.am
+++ b/plugins/gtkui/Makefile.am
@@ -10,6 +10,7 @@ SM_SOURCES = smclient/eggdesktopfile.h\
smclient/eggsmclient-xsmp.c\
smclient/eggsmclient.c
SM_LIBADD = $(SM_LIBS) $(ICE_LIBS)
+SM_CFLAGS = -DEGG_SM_CLIENT_BACKEND_XSMP -DG_LOG_DOMAIN=\""deadbeef"\"
endif
endif
@@ -67,13 +68,13 @@ if HAVE_GTK2
ddb_gui_GTK2_la_SOURCES = $(GTKUI_SOURCES)
ddb_gui_GTK2_la_LDFLAGS = -module
ddb_gui_GTK2_la_LIBADD = $(LDADD) $(GTK2_DEPS_LIBS) $(SM_LIBADD)
-ddb_gui_GTK2_la_CFLAGS = -std=c99 $(GTK2_DEPS_CFLAGS) -DEGG_SM_CLIENT_BACKEND_XSMP -DG_LOG_DOMAIN=\""deadbeef"\"
+ddb_gui_GTK2_la_CFLAGS = -std=c99 $(GTK2_DEPS_CFLAGS) $(SM_CFLAGS)
endif
if HAVE_GTK3
ddb_gui_GTK3_la_SOURCES = $(GTKUI_SOURCES)
ddb_gui_GTK3_la_LDFLAGS = -module
ddb_gui_GTK3_la_LIBADD = $(LDADD) $(GTK3_DEPS_LIBS) $(SM_LIBADD)
-ddb_gui_GTK3_la_CFLAGS = -std=c99 $(GTK3_DEPS_CFLAGS) -DEGG_SM_CLIENT_BACKEND_XSMP -DG_LOG_DOMAIN=\""deadbeef"\"
+ddb_gui_GTK3_la_CFLAGS = -std=c99 $(GTK3_DEPS_CFLAGS) $(SM_CFLAGS)
endif
# fallback lib
@@ -85,7 +86,7 @@ ddb_gui_GTK2_fallback_la_LDFLAGS = -module
ddb_gui_GTK2_fallback_la_LIBADD = $(LDADD) -L$(GTK_ROOT)/lib $(GTK_ROOT)/lib/libgtk-x11-2.0.la $(GTK_ROOT)/lib/libgdk-x11-2.0.la $(GTK_ROOT)/lib/libpangoft2-1.0.la $(GTK_ROOT)/lib/libpangocairo-1.0.la $(GTK_ROOT)/lib/libgdk_pixbuf-2.0.la -lm $(GTK_ROOT)/lib/libcairo.la $(GTK_ROOT)/lib/libpango-1.0.la $(GTK_ROOT)/lib/libgobject-2.0.la $(GTK_ROOT)/lib/libgmodule-2.0.la $(GTK_ROOT)/lib/libgthread-2.0.la -lrt $(GTK_ROOT)/lib/libglib-2.0.la $(SM_LIBADD)
-ddb_gui_GTK2_fallback_la_CFLAGS = -std=c99 -I $(GTK_ROOT)/include -I $(GTK_ROOT)/lib/gtk-2.0/include -I $(GTK_ROOT)/include/glib-2.0 -I $(GTK_ROOT)/include/gtk-2.0 -I $(GTK_ROOT)/include/cairo -I $(GTK_ROOT)/lib/glib-2.0/include/ -I $(GTK_ROOT)/include/pango-1.0 -I $(GTK_ROOT)/include/atk-1.0 -DULTRA_COMPATIBLE=1
+ddb_gui_GTK2_fallback_la_CFLAGS = -std=c99 -I $(GTK_ROOT)/include -I $(GTK_ROOT)/lib/gtk-2.0/include -I $(GTK_ROOT)/include/glib-2.0 -I $(GTK_ROOT)/include/gtk-2.0 -I $(GTK_ROOT)/include/cairo -I $(GTK_ROOT)/lib/glib-2.0/include/ -I $(GTK_ROOT)/include/pango-1.0 -I $(GTK_ROOT)/include/atk-1.0 -DULTRA_COMPATIBLE=1 $(SM_CFLAGS)
endif
diff --git a/plugins/gtkui/gtkui.c b/plugins/gtkui/gtkui.c
index a7ff1e66..4a1e82cf 100644
--- a/plugins/gtkui/gtkui.c
+++ b/plugins/gtkui/gtkui.c
@@ -47,7 +47,9 @@
#include "pluginconf.h"
#include "gtkui_api.h"
#include "wingeom.h"
+#ifdef EGG_SM_CLIENT_BACKEND_XSMP
#include "smclient/eggsmclient.h"
+#endif
#define trace(...) { fprintf(stderr, __VA_ARGS__); }
//#define trace(fmt,...)
@@ -1038,6 +1040,7 @@ gtkui_message (uint32_t id, uintptr_t ctx, uint32_t p1, uint32_t p2) {
return 0;
}
+#ifdef EGG_SM_CLIENT_BACKEND_XSMP
static void
smclient_quit_requested (EggSMClient *client, gpointer user_data) {
egg_sm_client_will_quit (client, TRUE);
@@ -1055,6 +1058,7 @@ smclient_quit (EggSMClient *client, gpointer user_data) {
static void
smclient_save_state (EggSMClient *client, const char *state_dir, gpointer user_data) {
}
+#endif
void
gtkui_thread (void *ctx) {
@@ -1067,6 +1071,8 @@ gtkui_thread (void *ctx) {
argc = 1;
}
+ gtk_disable_setlocale ();
+#ifdef EGG_SM_CLIENT_BACKEND_XSMP
g_type_init ();
GOptionContext *goption_context;
GError *err = NULL;
@@ -1086,6 +1092,7 @@ gtkui_thread (void *ctx) {
g_signal_connect (client, "quit", G_CALLBACK (smclient_quit), NULL);
g_signal_connect (client, "save-state", G_CALLBACK (smclient_save_state), NULL);
}
+#endif
// let's start some gtk
g_thread_init (NULL);
@@ -1094,7 +1101,6 @@ gtkui_thread (void *ctx) {
gdk_threads_init ();
gdk_threads_enter ();
- gtk_disable_setlocale ();
gtk_init (&argc, (char ***)&argv);
mainwin = create_mainwin ();