Update to libgpod-0.8.3.

This commit is contained in:
ajacoutot 2022-04-19 14:47:20 +00:00
parent c3d6590495
commit 252f11b416
10 changed files with 158 additions and 37 deletions

View File

@ -1,13 +1,13 @@
COMMENT= library to access the contents of an iPod
DISTNAME= libgpod-0.8.0
REVISION= 14
DISTNAME= libgpod-0.8.3
SHARED_LIBS= gpod 721.0 # 7.1
SHARED_LIBS += gpod 722.0 # 7.2
CATEGORIES= audio
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=gtkpod/}
EXTRACT_SUFX= .tar.bz2
HOMEPAGE= http://www.gtkpod.org/libgpod/
@ -15,29 +15,31 @@ HOMEPAGE= http://www.gtkpod.org/libgpod/
PERMIT_PACKAGE= Yes
WANTLIB += c ffi gdk_pixbuf-2.0 gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0
WANTLIB += iconv intl lzma m pcre plist pthread sqlite3 usb-1.0
WANTLIB += xml2 z jpeg png
WANTLIB += iconv intl jpeg lzma m pcre plist-2.0 png pthread sqlite3
WANTLIB += usb-1.0 xml2 z
USE_GMAKE= Yes
MODULES= textproc/intltool
LIB_DEPENDS= databases/sqlite3 \
devel/gettext,-runtime \
devel/glib2 \
devel/libplist \
graphics/gdk-pixbuf2 \
textproc/libxml \
devel/libusb1
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS+= --enable-gdk-pixbuf \
--without-hal \
AUTOCONF_VERSION= 2.69
CONFIGURE_STYLE= autoconf
CONFIGURE_ARGS= --without-hal \
--without-libimobiledevice \
--without-mono \
--without-python \
--without-python \
--disable-pygobject \
--localedir=${TRUEPREFIX}/share/locale
--disable-udev
post-install:
rm -r ${WRKINST}/lib/
.include <bsd.port.mk>

View File

@ -1,2 +1,2 @@
SHA256 (libgpod-0.8.0.tar.gz) = G4uu+OWnGPahHqrqVhm5BhmHZtmZ6NVDCPUUtSJXFgI=
SIZE (libgpod-0.8.0.tar.gz) = 997674
SHA256 (libgpod-0.8.3.tar.bz2) = Y4p5WdBOlfHmKrrQK9M3AuTo3++YSFrH2dUDlcN+lV0=
SIZE (libgpod-0.8.3.tar.bz2) = 801903

View File

@ -1,20 +1,18 @@
Use SWIG C++-style comments instead of Python comments which
SWIG interprets as preprocessor directives.
Use SWIG C++-style comments instead of Python comments which SWIG interprets
as preprocessor directives.
Index: bindings/python/gpod.i.in
--- bindings/python/gpod.i.in.orig
+++ bindings/python/gpod.i.in
@@ -296,9 +296,9 @@ PyObject* sw_get_photo(GList *list, gint index) {
@@ -298,9 +298,11 @@ PyObject* sw_get_photo(GList *list, gint index) {
%include "gpod_doc.i"
%include "@top_builddir@/config.h"
-# be nicer to decode these utf8 strings into Unicode objects in the C
-# layer. Here we are leaving it to the Python side, and just giving
-# them utf8 encoded Strings.
+// be nicer to decode these utf8 strings into Unicode objects in the C
+// layer. Here we are leaving it to the Python side, and just giving
+// them utf8 encoded Strings.
+/*
# be nicer to decode these utf8 strings into Unicode objects in the C
# layer. Here we are leaving it to the Python side, and just giving
# them utf8 encoded Strings.
+*/
typedef char gchar;
%typemap(in) time_t {

View File

@ -1,13 +0,0 @@
Do not pick up TagLib, which is only used by test-rebuild-db.
--- configure.orig Tue Oct 12 13:59:23 2010
+++ configure Fri Oct 25 21:08:25 2013
@@ -16900,7 +16900,7 @@ _ACEOF
-pkg_failed=no
+pkg_failed=yes
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for TAGLIB" >&5
$as_echo_n "checking for TAGLIB... " >&6; }

View File

@ -0,0 +1,40 @@
From 46d147703337b5ab9e81266869e41c89e6481e08 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Wed, 17 Jun 2020 11:52:43 +0200
Subject: [PATCH] configure.ac: Add support for libplist 2.2
- TagLib is only used by test-rebuild-db
Index: configure.ac
--- configure.ac.orig
+++ configure.ac
@@ -42,7 +42,9 @@ AC_CHECK_FUNCS([localtime_r])
AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[#include <time.h>])
dnl sqlite3 is needed for newer ipod models (nano5g), and libplist is needed
dnl by libgpod sqlite code
-PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.16.0 gobject-2.0 sqlite3 libplist >= 1.0 gmodule-2.0)
+LIBPLIST_DEP=libplist
+PKG_CHECK_EXISTS(libplist-2.0, LIBPLIST_DEP=libplist-2.0)
+PKG_CHECK_MODULES(LIBGPOD, glib-2.0 >= 2.16.0 gobject-2.0 sqlite3 $LIBPLIST_DEP >= 1.0 gmodule-2.0)
dnl ***************************************************
dnl The following functions are only available starting
@@ -204,18 +206,6 @@ AC_ARG_WITH(libgpod-blob-dir, [AC_HELP_STRING([--with-
[with_libgpod_blob_dir='${libdir}/libgpod'])
LIBGPOD_BLOB_DIR=$with_libgpod_blob_dir
AC_SUBST(LIBGPOD_BLOB_DIR)
-
-dnl **************************************************
-dnl * TagLib is only used by test-rebuild-db
-dnl **************************************************
-PKG_CHECK_MODULES(TAGLIB, taglib, have_taglib=yes, have_taglib=no)
-if test x"$have_taglib" = xyes; then
- AH_TEMPLATE([HAVE_TAGLIB], [Whether TagLib is installed, it's only used in a test program])
- AC_DEFINE_UNQUOTED(HAVE_TAGLIB, 1)
-fi
-AC_SUBST(TAGLIB_CFLAGS)
-AC_SUBST(TAGLIB_LIBS)
-AM_CONDITIONAL(HAVE_TAGLIB, test x"$have_taglib" = xyes)
dnl **************************************************
dnl * libxml is used to parse the plist files (aka SysInfoExtended)

View File

@ -0,0 +1,13 @@
Prevent overlinking.
Index: libgpod-1.0.pc.in
--- libgpod-1.0.pc.in.orig
+++ libgpod-1.0.pc.in
@@ -6,6 +6,6 @@ includedir=@includedir@
Name: libgpod
Description: A library to manipulate songs and playlists stored on an ipod
Version: @VERSION@
-Requires: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
+Requires.private: glib-2.0 >= 2.8.0 gobject-2.0 @GDKPIXBUF_REQ@ @LIBIMOBILEDEVICE_REQ@
Libs: -L${libdir} -lgpod
Cflags: -I${includedir}/gpod-1.0

View File

@ -0,0 +1,31 @@
From 8dc5015ae036b219c4c9579a156886aa3a722aa5 Mon Sep 17 00:00:00 2001
From: phantomjinx <p.g.richardson@phantomjinx.co.uk>
Date: Sat, 9 Aug 2014 19:57:10 +0100
Subject: [PATCH] #323 Segmentation fault when opening ipod
Index: src/itdb_itunesdb.c
--- src/itdb_itunesdb.c.orig
+++ src/itdb_itunesdb.c
@@ -1156,6 +1156,7 @@ static gboolean playcounts_plist_read (FImport *fimp,
GHashTable *pc_dict, *track_dict;
GValue *to_parse;
GArray *array;
+ GValue value;
gint i;
guint32 mac_time;
guint64 *dbid;
@@ -1175,11 +1176,12 @@ static gboolean playcounts_plist_read (FImport *fimp,
array = (GArray*)g_value_get_boxed (to_parse);
for (i = 0; i < array->len; i++) {
- if (!G_VALUE_HOLDS (g_array_index (array, GValue *, i), G_TYPE_HASH_TABLE)) {
+ value = g_array_index (array, GValue, i);
+ if (!G_VALUE_HOLDS (&value, G_TYPE_HASH_TABLE)) {
continue;
}
- track_dict = g_value_get_boxed (g_array_index (array, GValue *, i));
+ track_dict = g_value_get_boxed (&value);
if (track_dict == NULL)
continue;

View File

@ -0,0 +1,17 @@
64bit time_t
Index: tests/test-ls.c
--- tests/test-ls.c.orig
+++ tests/test-ls.c
@@ -58,9 +58,9 @@ display_recently_played (Itdb_iTunesDB *db)
strftime (date, sizeof (date), "%F %H:%M:%S",
localtime (&track_time));
g_print ("\tlocal: %s\n", date);
- g_print ("track: %ld ", track_time);
+ g_print ("track: %lld ", track_time);
time (&track_time);
- g_print ("current: %ld\n", track_time);
+ g_print ("current: %lld\n", track_time);
g_print ("\n");
}
}

View File

@ -0,0 +1,33 @@
Call mount() only on Linux -- it has different call signature elsewhere.
Index: tools/generic-callout.c
--- tools/generic-callout.c.orig
+++ tools/generic-callout.c
@@ -588,6 +588,7 @@ static gboolean mounted_ipod_set_properties (ItdbBacke
static char *mount_ipod (const char *dev_path, const char *fstype)
{
+#ifdef __linux__
char *filename;
char *tmpname;
int result;
@@ -616,6 +617,9 @@ static char *mount_ipod (const char *dev_path, const c
g_debug("device successfully mounted at %s", tmpname);
return tmpname;
+#else
+ return NULL;
+#endif
}
static gboolean write_sysinfo_extended (const char *mountpoint,
@@ -745,7 +749,9 @@ int itdb_callout_set_ipod_properties (ItdbBackend *bac
*/
mounted_ipod_set_properties (backend, ipod_mountpoint);
+#ifdef __linux__
umount (ipod_mountpoint);
+#endif
g_rmdir (ipod_mountpoint);
g_free (ipod_mountpoint);

View File

@ -28,12 +28,12 @@ share/gtk-doc/html/libgpod/libgpod-Smart-Playlists.html
share/gtk-doc/html/libgpod/libgpod-The-Itdb-iTunesDB-structure.html
share/gtk-doc/html/libgpod/libgpod-Time-handling.html
share/gtk-doc/html/libgpod/libgpod-Tracks.html
share/gtk-doc/html/libgpod/libgpod.devhelp
share/gtk-doc/html/libgpod/libgpod.devhelp2
share/gtk-doc/html/libgpod/photodb.html
share/gtk-doc/html/libgpod/right.png
share/gtk-doc/html/libgpod/style.css
share/gtk-doc/html/libgpod/up.png
share/locale/de/LC_MESSAGES/
share/locale/de/LC_MESSAGES/libgpod.mo
share/locale/es/LC_MESSAGES/libgpod.mo
share/locale/fr/LC_MESSAGES/libgpod.mo