summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Ohly <patrick.ohly@intel.com>2010-02-04 14:32:33 +0100
committerPatrick Ohly <patrick.ohly@intel.com>2010-02-04 16:33:29 +0100
commit06d17572c5d02845ea909cf6593b6e73002bda2d (patch)
treee12cf379edd211cc1ebea1794e7e7e772da4d0b2
parent74d69f013f1c19b40b67ed72ef7c1fcf9cd27609 (diff)
autotools: build GNOME Bluetooth panel plugin (MB #7089)
The GNOME Bluetooth panel plugin needs to be installed into the location used by the system. We guess what that location might be by installing into `pkg-config --variable=libdir gnome-bluetooth-1.0`/plugins. Because this location might not be writable, compiling the plugin is off by default. It can be enabled with --enable-gnome-bluetooth-panel-plugin which depends on the libgnome-bluetooth-dev files. Shared libraries must be enabled when enabling the plugin. Not currently checked by configure.
-rw-r--r--README6
-rw-r--r--README.packagers2
-rw-r--r--configure-post.in1
-rw-r--r--configure-pre.in22
-rw-r--r--po/POTFILES.in1
-rw-r--r--src/Makefile-gen.am2
-rw-r--r--src/gnome-bluetooth/Makefile.am10
-rw-r--r--src/gnome-bluetooth/configure-sub.in0
8 files changed, 43 insertions, 1 deletions
diff --git a/README b/README
index 6594f0ab..7c72c534 100644
--- a/README
+++ b/README
@@ -795,6 +795,12 @@ Optional packages for GUI:
libunique = ensure that GTK GUI only runs once per user
+Optional packages for GNOME Bluetooth Panel plugin:
+ apt-get install libgnome-bluetooth-dev
+
+The plugin adds a button to invoke sync-UI after a device
+was paired which supports SyncML.
+
The build system is the normal autotools system. See INSTALL for
general instructions how to use that and "./configure --help" for
SyncEvolution specific options.
diff --git a/README.packagers b/README.packagers
index d5879490..3abce84a 100644
--- a/README.packagers
+++ b/README.packagers
@@ -5,3 +5,5 @@ backends there are more subtle dependencies:
- for good time zone support, libsynthesis must have access to
either libical or libecal
- direct sync with phones depends on bluez and openobex
+- GNOME Bluetooth Panel needs libgnome-bluetooth-dev *AND*
+ --enable-gnome-bluetooth-panel
diff --git a/configure-post.in b/configure-post.in
index f454dde0..6bc57140 100644
--- a/configure-post.in
+++ b/configure-post.in
@@ -115,4 +115,5 @@ done
echo "DBus service: $enable_dbus_service"
echo "UI (DBus client): $enable_gui"
echo "Bluetooth transport: $have_bluetooth"
+echo "GNOME Bluetooth panel plugin: $enable_gnome_bluetooth_panel"
echo
diff --git a/configure-pre.in b/configure-pre.in
index 4e6222cd..6fef9885 100644
--- a/configure-pre.in
+++ b/configure-pre.in
@@ -592,4 +592,26 @@ AC_SUBST(BACKEND_DEFINES)
BACKEND_CPPFLAGS="$SYNTHESIS_CFLAGS $EPACKAGE_CFLAGS $EBOOK_CFLAGS $ECAL_CFLAGS $GLIB_CFLAGS $BOOST_CPPFLAGS"
AC_SUBST(BACKEND_CPPFLAGS)
+# GNOME Bluetooth Panel plugin
+PKG_CHECK_MODULES(GNOMEBLUETOOTH, [gnome-bluetooth-1.0 >= 2.27.6],
+ [have_gbt="yes"
+ GNOMEBLUETOOTH_DIR=`$PKG_CONFIG --variable=libdir gnome-bluetooth-1.0 2>/dev/null`/gnome-bluetooth],
+ have_gbt="no")
+AC_SUBST(GNOMEBLUETOOTH_CFLAGS)
+AC_SUBST(GNOMEBLUETOOTH_DIR)
+
+AC_ARG_ENABLE(gnome-bluetooth-panel-plugin,
+ AC_HELP_STRING([--enable-gnome-bluetooth-panel-plugin],
+ [GNOME Bluetooth panel plugin adding a "sync" button for paired devices (off by default)]),
+ [enable_gnome_bluetooth_panel="$enableval"],
+ [enable_gnome_bluetooth_panel="no"]
+ )
+if test "$enable_gnome_bluetooth_panel" = "yes"; then
+ test "$have_gbt" = "yes" || AC_MSG_ERROR([--enable-gnome-bluetooth-panel requires
+ pkg-config information for gnome-bluetooth-1.0 >= 2.27.6 which was not found])
+fi
+AC_CONFIG_FILES(src/gnome-bluetooth/Makefile)
+AM_CONDITIONAL([ENABLE_GNOME_BLUETOOTH_PANEL], [test "$have_gbt" = "yes" && test "$enable_gnome_bluetooth_panel" = "yes"])
+
+
dnl src/backends/*/configure-sub.in and configure-post.in follow
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 12ae40a4..bb172d0c 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -5,3 +5,4 @@ src/gtk-ui/ui.glade
src/gtk-ui/sync.desktop.in
src/gtk-ui/sync-gtk.desktop.in
src/gtk-ui/sync-config-widget.c
+src/gnome-bluetooth/syncevolution.c
diff --git a/src/Makefile-gen.am b/src/Makefile-gen.am
index 306999a6..559e1852 100644
--- a/src/Makefile-gen.am
+++ b/src/Makefile-gen.am
@@ -19,7 +19,7 @@ if COND_GUI
GUI_DIR = gtk-ui
endif
-SUBDIRS = $(SYNTHESIS_SUBDIR) $(DBUS_DIRS) syncevo $(BACKENDS) $(GUI_DIR)
+SUBDIRS = $(SYNTHESIS_SUBDIR) $(DBUS_DIRS) syncevo $(BACKENDS) $(GUI_DIR) gnome-bluetooth
DIST_SUBDIRS = gdbus dbus syncevo $(BACKENDS) gtk-ui
BUILT_SOURCES =
diff --git a/src/gnome-bluetooth/Makefile.am b/src/gnome-bluetooth/Makefile.am
new file mode 100644
index 00000000..9c84dcd1
--- /dev/null
+++ b/src/gnome-bluetooth/Makefile.am
@@ -0,0 +1,10 @@
+plugindir = $(GNOMEBLUETOOTH_DIR)/plugins/
+
+INCLUDES = $(GNOMEBLUETOOTH_CFLAGS) \
+ -DLOCALEDIR=\"$(SYNCEVOLUTION_LOCALEDIR)\"
+
+if ENABLE_GNOME_BLUETOOTH_PANEL
+plugin_LTLIBRARIES = libgbtsyncevolution.la
+libgbtsyncevolution_la_SOURCES = syncevolution.c
+libgbtsyncevolution_la_LDFLAGS = -module -avoid-version
+endif
diff --git a/src/gnome-bluetooth/configure-sub.in b/src/gnome-bluetooth/configure-sub.in
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/src/gnome-bluetooth/configure-sub.in