diff options
-rw-r--r-- | .SRCINFO | 17 | ||||
-rw-r--r-- | PKGBUILD | 28 | ||||
-rw-r--r-- | pyid3lib-0.5.1-py25.patch | 57 |
3 files changed, 102 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..3129c42e0291 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,17 @@ +pkgbase = pyid3lib + pkgdesc = A Python module for editing ID3v2 tags of MP3 audio files + pkgver = 0.5.1 + pkgrel = 9 + url = http://pyid3lib.sourceforge.net/ + arch = x86_64 + license = LGPL + depends = python2 + depends = glibc + depends = id3lib + source = https://downloads.sourceforge.net/sourceforge/pyid3lib/pyid3lib-0.5.1.tar.gz + source = pyid3lib-0.5.1-py25.patch + sha256sums = a0534b657cf91726bf93a57112ec9514336d39a93c859cd7afe4d3bf6ae0abcb + sha256sums = 07716da15662c5d266a3a184181d4825e391959306819f0eab89cd9993551342 + +pkgname = pyid3lib + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..e660380a1102 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,28 @@ +# $Id: PKGBUILD 266875 2017-11-15 14:29:11Z foutrelis $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Hugo Ideler <hugoideler@dse.nl> +# Maintainer: Jens Persson <xerxes2 at gmail.com> + +pkgname=pyid3lib +pkgver=0.5.1 +pkgrel=9 +pkgdesc="A Python module for editing ID3v2 tags of MP3 audio files" +arch=('x86_64') +url="http://pyid3lib.sourceforge.net/" +license=('LGPL') +depends=('python2' 'glibc' 'id3lib') +source=(https://downloads.sourceforge.net/sourceforge/pyid3lib/$pkgname-$pkgver.tar.gz + pyid3lib-0.5.1-py25.patch) +sha256sums=('a0534b657cf91726bf93a57112ec9514336d39a93c859cd7afe4d3bf6ae0abcb' + '07716da15662c5d266a3a184181d4825e391959306819f0eab89cd9993551342') + +build() { + cd "$srcdir"/$pkgname-$pkgver + [ "${CARCH}" = "x86_64" ] && patch -p1 < ../pyid3lib-0.5.1-py25.patch + sed -i "s#strchr( str, '/' )#strchr( (char*)str, '/' )#" pyid3lib.cc +} + +package() { + cd "$srcdir"/$pkgname-$pkgver + python2 setup.py install --root="$pkgdir" +} diff --git a/pyid3lib-0.5.1-py25.patch b/pyid3lib-0.5.1-py25.patch new file mode 100644 index 000000000000..c24cfc97d5ac --- /dev/null +++ b/pyid3lib-0.5.1-py25.patch @@ -0,0 +1,57 @@ +--- pyid3lib-0.5.1/pyid3lib.cc.orig 2007-08-08 23:53:08.000000000 +0300 ++++ pyid3lib-0.5.1/pyid3lib.cc 2007-08-08 23:53:12.000000000 +0300 +@@ -10,13 +10,19 @@ + #include <id3/id3lib_frame.h> + #include <id3/tag.h> + ++#if PY_VERSION_HEX < 0x02050000 && !defined(PY_SSIZE_T_MIN) ++typedef int Py_ssize_t; ++#define PY_SSIZE_T_MAX INT_MAX ++#define PY_SSIZE_T_MIN INT_MIN ++#endif ++ + typedef struct + { + PyObject_HEAD + + ID3_Tag* tag; + ID3_Frame** frames; +- int size, alloc; ++ Py_ssize_t size, alloc; + } ID3Object; + + typedef struct +@@ -80,13 +86,24 @@ + + + static PySequenceMethods tag_as_sequence = { ++#if PY_VERSION_HEX >= 0x02050000 ++ (lenfunc)id3_length, ++#else + (inquiry)id3_length, ++#endif + NULL, + NULL, ++#if PY_VERSION_HEX >= 0x02050000 ++ (ssizeargfunc)id3_item, ++ (ssizessizeargfunc)id3_slice, ++ (ssizeobjargproc)id3_ass_item, ++ (ssizessizeobjargproc)id3_ass_slice, ++#else + (intargfunc)id3_item, + (intintargfunc)id3_slice, + (intobjargproc)id3_ass_item, + (intintobjargproc)id3_ass_slice, ++#endif + (objobjproc)id3_contains, + NULL, + NULL, +@@ -824,7 +841,7 @@ + static ID3_Frame* frame_from_dict( ID3_FrameID fid, PyObject* dict ) + { + char* data; +- int size; ++ Py_ssize_t size; + + ID3_Field* field; + ID3_FieldID flid; |