rpms/bickley/devel bickley-arm.patch, NONE, 1.1 bickley-gupnp013.patch, NONE, 1.1 .cvsignore, 1.2, 1.3 bickley.spec, 1.5, 1.6 sources, 1.2, 1.3 0001-Port-to-gupnp-0.13.patch, 1.2, NONE bickley-license.patch, 1.1, NONE bickley-pkgconfig-fix64.patch, 1.1, NONE import.log, 1.1, NONE
Peter Robinson
pbrobinson at fedoraproject.org
Fri Nov 13 16:30:28 UTC 2009
Author: pbrobinson
Update of /cvs/pkgs/rpms/bickley/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv13835
Modified Files:
.cvsignore bickley.spec sources
Added Files:
bickley-arm.patch bickley-gupnp013.patch
Removed Files:
0001-Port-to-gupnp-0.13.patch bickley-license.patch
bickley-pkgconfig-fix64.patch import.log
Log Message:
- New upstream 0.4.4 release
bickley-arm.patch:
bkl-investigator.c | 8 ++++++++
1 file changed, 8 insertions(+)
--- NEW FILE bickley-arm.patch ---
--- bickley-0.4.4/src/bkl-investigator.c.orig 2009-11-13 16:06:56.000000000 +0000
+++ bickley-0.4.4/src/bkl-investigator.c 2009-11-13 16:08:13.000000000 +0000
@@ -73,6 +73,14 @@
#elif defined (__powerpc__)
# define HAVE_IO_PRIO
# define __NR_ioprio_set 273
+#elif defined (__arm__)
+# define HAVE_IO_PRIO
+#if defined(__thumb__) || defined(__ARM_EABI__)
+# define __NR_SYSCALL_BASE 0
+#else
+# define __NR_SYSCALL_BASE __NR_OABI_SYSCALL_BASE
+#endif
+# define __NR_ioprio_set (__NR_SYSCALL_BASE+314)
#else
# warning "Architecture does not support ioprio modification"
#endif
bickley-gupnp013.patch:
configure.ac | 2
src/bkl-finder-upnp.c | 113 ++++++++++++++++++++++----------------------------
2 files changed, 52 insertions(+), 63 deletions(-)
--- NEW FILE bickley-gupnp013.patch ---
--- bickley-0.4.4/configure.ac.orig 2009-11-12 17:02:08.000000000 +0000
+++ bickley-0.4.4/configure.ac 2009-11-13 16:00:41.000000000 +0000
@@ -60,7 +60,7 @@
PKG_CHECK_MODULES(BICKLEY, glib-2.0 dbus-glib-1 >= 0.78 gthread-2.0)
-PKG_CHECK_MODULES(ORBITER, glib-2.0 gio-2.0 dbus-glib-1 >= 0.78 gconf-2.0 gthread-2.0)
+PKG_CHECK_MODULES(ORBITER, glib-2.0 gio-2.0 dbus-glib-1 >= 0.78 gconf-2.0 gthread-2.0 gupnp-1.0 >= 0.13.0 gupnp-av-1.0 >= 0.5)
AC_ARG_ENABLE(helix, AC_HELP_STRING([--enable-helix], [enable helix support]),
[enable_helix=${enableval}], [enable_helix="no"])
--- bickley-0.4.4/src/bkl-finder-upnp.c.orig 2009-11-13 15:57:59.000000000 +0000
+++ bickley-0.4.4/src/bkl-finder-upnp.c 2009-11-13 15:58:41.000000000 +0000
@@ -72,60 +72,51 @@
get_http_get_props (GList *didl_props,
char **mimetype,
char **protocol_info,
- char **size)
+ long *size)
{
GList *p;
for (p = didl_props; p; p = p->next) {
- char *pi;
+ GUPnPDIDLLiteResource *res = p->data;
+ GUPnPProtocolInfo *pi;
- pi = gupnp_didl_lite_property_get_attribute (p->data, "protocolInfo");
- if (strncmp (pi, "http-get:", 9) == 0) {
+ pi = gupnp_didl_lite_resource_get_protocol_info (res);
+ if (strcmp (gupnp_protocol_info_get_protocol (pi), "http-get") == 0) {
if (mimetype) {
- char *start, *end;
-
- start = strchr (pi + 9, ':');
- if (start != '\0' && ++start != '\0') {
- end = strchr (start, ':');
- *mimetype = g_strndup (start, end - start);
- } else {
- *mimetype = NULL;
- }
+ *mimetype = g_strdup (gupnp_protocol_info_get_mime_type (pi));
}
if (protocol_info) {
- *protocol_info = pi;
- } else {
- g_free (pi);
+ *protocol_info = g_strdup (gupnp_protocol_info_to_string (pi));
}
if (size) {
- *size = gupnp_didl_lite_property_get_attribute (p->data,
- "size");
+ *size = gupnp_didl_lite_resource_get_size (res);
}
- return gupnp_didl_lite_property_get_value (p->data);
- }
+ g_object_unref (pi);
- g_free (pi);
+ return g_strdup (gupnp_didl_lite_resource_get_uri (res));
+ }
+ g_object_unref (pi);
}
return NULL;
}
static const char *
-get_property_keys (xmlNode *didl_object,
+get_property_keys (GUPnPDIDLLiteObject *didl_object,
const char *property)
{
GList *props;
- char *ret = NULL;
+ const char *ret = NULL;
- props = gupnp_didl_lite_object_get_property (didl_object, property);
+ props = gupnp_didl_lite_object_get_properties (didl_object, property);
if (props) {
GList *p;
for (p = props; p; p = p->next) {
- char *prop = gupnp_didl_lite_property_get_value (p->data);
+ const char *prop = p->data;
if (prop) {
ret = prop;
@@ -140,19 +131,21 @@
}
static void
-add_artist_properties (xmlNode *didl_object,
+add_artist_properties (GUPnPDIDLLiteObject *didl_object,
BklItemAudio *item)
{
GList *props;
GPtrArray *artists;
- props = gupnp_didl_lite_object_get_property (didl_object, "artist");
+ /* FIXME: use "artists" property:
+ * http://bugzilla.openedhand.com/show_bug.cgi?id=1814 */
+ props = gupnp_didl_lite_object_get_properties (didl_object, "artist");
if (props) {
GList *p;
artists = g_ptr_array_sized_new (g_list_length (props));
for (p = props; p; p = p->next) {
- char *prop = gupnp_didl_lite_property_get_value (p->data);
+ const char *prop = p->data;
if (prop) {
g_ptr_array_add (artists, g_strdup (prop));
@@ -165,7 +158,7 @@
}
static void
-parse_image_item (xmlNode *didl_object,
+parse_image_item (GUPnPDIDLLiteObject *didl_object,
BklItemImage *item,
const char *subclass)
{
@@ -177,7 +170,7 @@
}
static void
-parse_audio_item (xmlNode *didl_object,
+parse_audio_item (GUPnPDIDLLiteObject *didl_object,
BklItemAudio *item,
const char *subclass)
{
@@ -217,7 +210,7 @@
}
static void
-parse_video_item (xmlNode *didl_object,
+parse_video_item (GUPnPDIDLLiteObject *didl_object,
BklItemVideo *item,
const char *subclass)
{
@@ -233,11 +226,13 @@
static void
parse_didl (BklFinderUPnP *finder,
- xmlNode *didl_object)
+ GUPnPDIDLLiteObject *didl_object)
{
BklFinder *f = (BklFinder *) finder;
BklItem *item = NULL;
- char *uri, *title, *size = NULL, *mimetype = NULL, *protocol_info = NULL;
+ const char *title;
+ char *uri, *mimetype = NULL, *protocol_info = NULL;
+ long size;
gboolean is_item, is_container;
GList *didl_props;
@@ -246,60 +241,58 @@
g_print ("(%s): Found %s\n", f->source->name, title);
#endif
- is_item = gupnp_didl_lite_object_is_item (didl_object);
- is_container = gupnp_didl_lite_object_is_container (didl_object);
+ is_item = GUPNP_IS_DIDL_LITE_ITEM (didl_object);
+ is_container = GUPNP_IS_DIDL_LITE_CONTAINER (didl_object);
if (is_item) {
- char *ref_id;
+ const char *ref_id;
- ref_id = gupnp_didl_lite_item_get_ref_id (didl_object);
+ ref_id = gupnp_didl_lite_item_get_ref_id (GUPNP_DIDL_LITE_ITEM (didl_object));
if (ref_id != NULL) {
#ifdef DEBUG
g_print ("(%s): %s is just a reference to %s\n",
f->source->name, title, ref_id);
#endif
- g_free (title);
- g_free (ref_id);
return;
}
}
- didl_props = gupnp_didl_lite_object_get_property (didl_object, "res");
+ didl_props = gupnp_didl_lite_object_get_resources (didl_object);
uri = get_http_get_props (didl_props, &mimetype, &protocol_info, &size);
+ g_list_foreach (didl_props, (GFunc) g_object_unref, NULL);
g_list_free (didl_props);
if (uri == NULL) {
/* Didn't get any URI we like, so just quit */
- g_free (title);
+ g_free (mimetype);
+ g_free (protocol_info);
return;
}
#ifdef DEBUG
g_print (" at %s\n", uri);
- g_print (" %s bytes\n", size);
+ g_print (" %ld bytes\n", size);
g_print (" %s\n", mimetype);
g_print (" %s\n", protocol_info);
#endif
if (is_container) {
- char *class;
+ const char *class;
class = gupnp_didl_lite_object_get_upnp_class (didl_object);
if (strncmp (class, "object.container.", 17) == 0) {
- char *subclass = class + 17;
+ const char *subclass = class + 17;
if (strncmp (subclass, "album", 5) == 0) {
/* parse_album_container (didl_object, uri, subclass + 5); */
}
}
-
- g_free (class);
} else {
- char *class;
+ const char *class;
class = gupnp_didl_lite_object_get_upnp_class (didl_object);
if (strncmp (class, "object.item.", 12) == 0) {
- char *subclass = class + 12;
+ const char *subclass = class + 12;
if (strncmp (subclass, "imageItem", 9) == 0) {
BklItemImage *image = bkl_item_image_new ();
@@ -330,8 +323,6 @@
g_warning ("Unknown class: %s", class);
}
}
-
- g_free (class);
}
if (item != NULL) {
@@ -340,7 +331,7 @@
bkl_item_set_mimetype (item, mimetype);
bkl_item_set_uri (item, uri);
if (size) {
- bkl_item_set_size (item, strtol (size, NULL, 10));
+ bkl_item_set_size (item, size);
} else {
bkl_item_set_size (item, 0);
}
@@ -356,22 +347,19 @@
}
g_free (uri);
- g_free (title);
- g_free (size);
g_free (protocol_info);
}
static void
-didl_callback (GUPnPDIDLLiteParser *parser,
- xmlNode *didl_object,
- gpointer userdata)
+parser_object_available_cb (GUPnPDIDLLiteParser *parser,
+ GUPnPDIDLLiteObject *didl_object,
+ BklFinderUPnP *finder)
{
- BklFinderUPnP *finder = userdata;
- char *id = gupnp_didl_lite_object_get_id (didl_object);
+ const char *id = gupnp_didl_lite_object_get_id (didl_object);
/* If the node is a container then we browse it as well */
- if (gupnp_didl_lite_object_is_container (didl_object)) {
- g_queue_push_tail (finder->pending, id);
+ if (GUPNP_IS_DIDL_LITE_CONTAINER (didl_object)) {
+ g_queue_push_tail (finder->pending, g_strdup (id));
}
/* Parse this didl_object somehow... */
@@ -410,8 +398,7 @@
return FALSE;
}
- gupnp_didl_lite_parser_parse_didl (finder->parser, didl_result,
- didl_callback, finder, &error);
+ gupnp_didl_lite_parser_parse_didl (finder->parser, didl_result, &error);
if (error != NULL) {
g_warning ("Error parsing didl: %s", error->message);
g_error_free (error);
@@ -477,6 +464,8 @@
finder->source = source;
upnp->parser = gupnp_didl_lite_parser_new ();
+ g_signal_connect (upnp->parser, "object-available",
+ G_CALLBACK (parser_object_available_cb), upnp);
upnp->device_info = info;
upnp->content_directory =
(GUPnPServiceProxy *) gupnp_device_info_get_service
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/bickley/devel/.cvsignore,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -p -r1.2 -r1.3
--- .cvsignore 31 Aug 2009 23:36:23 -0000 1.2
+++ .cvsignore 13 Nov 2009 16:30:27 -0000 1.3
@@ -1 +1 @@
-bickley-0.4.3.tar.bz2
+bickley-0.4.4.tar.bz2
Index: bickley.spec
===================================================================
RCS file: /cvs/pkgs/rpms/bickley/devel/bickley.spec,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -p -r1.5 -r1.6
--- bickley.spec 18 Sep 2009 13:05:42 -0000 1.5
+++ bickley.spec 13 Nov 2009 16:30:28 -0000 1.6
@@ -1,6 +1,6 @@
Name: bickley
-Version: 0.4.3
-Release: 10%{?dist}
+Version: 0.4.4
+Release: 1%{?dist}
Summary: A meta data management API and framework
Group: Applications/Multimedia
@@ -10,10 +10,9 @@ License: LGPLv2+
URL: http://moblin.org/projects/bickley
Source0: http://git.moblin.org/cgit.cgi/%{name}/snapshot/%{name}-%{version}.tar.bz2
Patch0: bickley-fixppc2.patch
-Patch1: bickley-pkgconfig-fix64.patch
-Patch2: bickley-license.patch
# http://bugzilla.moblin.org/show_bug.cgi?id=6253
-Patch3: 0001-Port-to-gupnp-0.13.patch
+Patch1: bickley-gupnp013.patch
+Patch2: bickley-arm.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: clutter-gst-devel
@@ -58,9 +57,8 @@ Files for development with %{name}.
%prep
%setup -q
%patch0 -p1 -b .fixppc2
-%patch1 -p1 -b .pkgconfig-fix64
-%patch2 -p1 -b .license
-%patch3 -p1 -b .gupnp
+%patch1 -p1 -b .gupnp013
+%patch2 -p1 -b .arm
# Don't run configure from autogen.sh
sed -i '/configure/d' autogen.sh
@@ -129,6 +127,9 @@ gconftool-2 --makefile-install-rule \
%{_libdir}/libkozo.so
%changelog
+* Fri Nov 13 2009 Peter Robinson <pbrobinson at gmail.com> 0.4.4-1
+- New upstream 0.4.4 release
+
* Fri Sep 18 2009 Bastien Nocera <bnocera at redhat.com> 0.4.3-10
- Update gupnp 0.13 patch
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/bickley/devel/sources,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -p -r1.2 -r1.3
--- sources 31 Aug 2009 23:36:23 -0000 1.2
+++ sources 13 Nov 2009 16:30:28 -0000 1.3
@@ -1 +1 @@
-0154c4813294c4fe76690795c7efd8ac bickley-0.4.3.tar.bz2
+27324c3a2eaac4e3849646e06f2f3d66 bickley-0.4.4.tar.bz2
--- 0001-Port-to-gupnp-0.13.patch DELETED ---
--- bickley-license.patch DELETED ---
--- bickley-pkgconfig-fix64.patch DELETED ---
--- import.log DELETED ---
More information about the scm-commits
mailing list