- Fix BMPx support. BMPx 0.14.0 or newer is required now
authorRoman Bogorodskiy <mirrorbox@users.sourceforge.net>
Fri, 12 May 2006 12:41:18 +0000 (12:41 +0000)
committerRoman Bogorodskiy <mirrorbox@users.sourceforge.net>
Fri, 12 May 2006 12:41:18 +0000 (12:41 +0000)
- Add forgotten headers for imap stuff to fix build on FreeBSD

git-svn-id: https://conky.svn.sourceforge.net/svnroot/conky/trunk/conky1@629 7f574dfc-610e-0410-a909-a81674777703

configure.in
src/bmpx.c
src/conky.c

index abfb029..5f3bf6c 100644 (file)
@@ -266,13 +266,9 @@ AC_ARG_ENABLE(bmpx,
 
 AM_CONDITIONAL(BUILD_BMPX, test x$want_bmpx = xyes)
 if test x$want_bmpx = xyes; then
-       PKG_CHECK_MODULES([DBUS], [dbus-1 >= 0.35 dbus-glib-1 >= 0.35])
-       CFLAGS="$CFLAGS $DBUS_CFLAGS"
-       LIBS="$LIBS $DBUS_LIBS"
-       AC_CHECK_HEADERS([bmpx/dbus.h], [], [BMPX_MISSING=yes])
-       if test "x$BMPX_MISSING" = xyes; then
-               AC_MSG_ERROR([bmpx doesn't seem to be installed, or the headers aren't available])
-       fi
+       PKG_CHECK_MODULES([BMPX], [bmp-2.0 >= 0.14.0])
+       CFLAGS="$CFLAGS $BMPX_CFLAGS"
+       LIBS="$LIBS $BMPX_LIBS"
        AC_DEFINE(BMPX, 1, [Define if you want BMPx support])
 fi
 
index 7f41129..c7252ff 100644 (file)
@@ -5,7 +5,7 @@
  * $Id$
  */
 
-#include <bmpx/dbus.h>
+#include <bmp/dbus.h>
 #include <dbus/dbus-glib.h>
 
 #include <stdio.h>
@@ -24,7 +24,7 @@ void update_bmpx()
 {
        GError *error = NULL;
        struct information *current_info = &info;
-       gchar *uri;
+       gint current_track;
        GHashTable *metadata;
        
        if (connected == 0) {
@@ -39,7 +39,7 @@ void update_bmpx()
                
                remote_object = dbus_g_proxy_new_for_name(bus,
                        BMP_DBUS_SERVICE,
-                       BMP_DBUS_PATH_SYSTEMCONTROL,
+                       BMP_DBUS_PATH,
                        BMP_DBUS_INTERFACE);
                if (!remote_object) {
                        ERR("BMPx error 2: %s\n", error->message);
@@ -50,18 +50,17 @@ void update_bmpx()
        } 
        
        if (connected == 1) {
-               if (dbus_g_proxy_call(remote_object, "GetCurrentUri", &error,
+               if (dbus_g_proxy_call(remote_object, "GetCurrentTrack", &error,
                                        G_TYPE_INVALID,
-                                       G_TYPE_STRING, &uri, G_TYPE_INVALID)) {
-                       current_info->bmpx.uri = uri;
+                                       G_TYPE_INT, &current_track, G_TYPE_INVALID)) {
                } else {
                        ERR("BMPx error 3: %s\n", error->message);
                        goto fail;
                }
        
-               if (dbus_g_proxy_call(remote_object, "GetMetadataForUri", &error,
-                               G_TYPE_STRING,
-                               uri,
+               if (dbus_g_proxy_call(remote_object, "GetMetadataForListItem", &error,
+                               G_TYPE_INT,
+                               current_track,
                                G_TYPE_INVALID,
                                DBUS_TYPE_G_STRING_VALUE_HASHTABLE,
                                &metadata,
@@ -83,13 +82,12 @@ void update_bmpx()
                        current_info->bmpx.album = g_value_dup_string(g_hash_table_lookup(metadata, "album"));
                        current_info->bmpx.bitrate = g_value_get_int(g_hash_table_lookup(metadata, "bitrate"));
                        current_info->bmpx.track = g_value_get_int(g_hash_table_lookup(metadata, "track-number"));
+                       current_info->bmpx.uri = g_value_get_string(g_hash_table_lookup(metadata, "location"));
                } else {
                        ERR("BMPx error 4: %s\n", error->message);
                        goto fail;
                }
                
-               if (uri)
-                       free(uri);
                g_hash_table_destroy(metadata);
        } else {
 fail: 
index d7a01ab..d5cd2cd 100644 (file)
@@ -29,6 +29,8 @@
 #endif /* X11 */
 #include <sys/types.h>
 #include <sys/stat.h>
+#include <netinet/in.h>
+#include <netdb.h>
 
 #define CONFIG_FILE "$HOME/.conkyrc"
 #define MAIL_FILE "$MAIL"