libraries/id3lib: Updated for version 3.8.3

This commit is contained in:
Yalla-One 2010-05-13 00:29:54 +02:00 committed by Robby Workman
parent 999ac6f32f
commit 70c2e6cd3d
7 changed files with 189 additions and 34 deletions

View file

@ -27,60 +27,64 @@
PRGNAM=id3lib
VERSION=3.8.3
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
DOCS="AUTHORS COPYING ChangeLog HISTORY NEWS README THANKS TODO doc/*"
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
SLKLDFLAGS="-L/usr/lib64"
LIBDIRSUFFIX="64"
fi
case "$ARCH" in
i486) SLKCFLAGS="-O2 -march=i486 -mtune=i686"
;;
i686) SLKCFLAGS="-O2 -march=i686 -mtune=i686"
;;
s390) SLKCFLAGS="-O2"
;;
powerpc) SLKCFLAGS="-O2"
;;
x86_64) SLKCFLAGS="-O2 -fPIC"
SLKLDFLAGS="-L/usr/lib64"; LIBDIRSUFFIX="64"
;;
athlon-xp) SLKCFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
;;
esac
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP || exit 1
cd $TMP
rm -rf $PRGNAM-$VERSION
tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz || exit 1
cd $PRGNAM-$VERSION || exit 1
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
zcat $CWD/id3lib_3.8.3_UTF16_writing_bug.patch.gz | patch -p1 || exit 1
( cd doc ; zcat $CWD/id3lib_Doxyfile.patch.gz | patch -p0 || exit 1 ) || exit 1
patch -p1 < $CWD/patches/id3lib_3.8.3_UTF16_writing_bug.patch
patch -p1 < $CWD/patches/id3lib-3.8.3-GCC43FIX-1.patch
patch -p1 -d doc < $CWD/patches/id3lib_Doxyfile.patch
# iomanip.h is obsolete; use the standard c++ header
sed -i "s%iomanip.h%iomanip%g" configure
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--localstatedir=/var \
--sysconfdir=/etc \
--enable-static=no \
--enable-debug=no \
|| exit 1
--build=$ARCH-slackware-linux
make || exit 1
make docs 2>/dev/null
make install DESTDIR=$PKG || exit 1
make
make docs 2>/dev/null || true
make install DESTDIR=$PKG
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
)
# Strip down the doc and examples directories so we can copy w/impunity
@ -90,18 +94,16 @@ for i in doc/ examples/; do \
\) -exec rm {} \; ; done
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
AUTHORS COPYING ChangeLog HISTORY NEWS README THANKS TODO doc/* \
$PKG/usr/doc/$PRGNAM-$VERSION
find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 0644 {} \;
# Remove the massive amount of API docs
rm -rf $PKG/usr/doc/$PRGNAM-$VERSION/api
if [ -d $PKG/usr/man ]; then
find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
fi
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
chmod -R o-w $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -2,7 +2,9 @@ PRGNAM="id3lib"
VERSION="3.8.3"
HOMEPAGE="http://id3lib.sourceforge.net/"
DOWNLOAD="http://downloads.sourceforge.net/id3lib/id3lib-3.8.3.tar.gz"
DOWNLOAD_x86_64=""
MD5SUM="19f27ddd2dda4b2d26a559a4f0f402a7"
MD5SUM_x86_64=""
MAINTAINER="Yalla-One"
EMAIL="yallaone@gmail.com"
APPROVED="rworkman"

View file

@ -0,0 +1,90 @@
Submitted By: zippo zippo@oppiz.net
Date: 2008-10-28
Initial Package Version: 3.8.3
Upstream Status: Unknown
Origin: zippo@oppiz.net
Description:Fixes things up for GCC-4.3.2
diff -Naur id3lib-3.8.3/examples/demo_convert.cpp 32/id3lib-3.8.3/examples/demo_convert.cpp
--- id3lib-3.8.3/examples/demo_convert.cpp 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/examples/demo_convert.cpp 2008-10-29 20:10:04.000000000 +0000
@@ -84,7 +84,7 @@
}
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
flags_t ulFlag = ID3TT_ALL;
gengetopt_args_info args;
diff -Naur id3lib-3.8.3/examples/demo_copy.cpp 32/id3lib-3.8.3/examples/demo_copy.cpp
--- id3lib-3.8.3/examples/demo_copy.cpp 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/examples/demo_copy.cpp 2008-10-29 20:10:54.000000000 +0000
@@ -81,7 +81,7 @@
}
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
int ulFlag = ID3TT_ID3;
ID3D_INIT_DOUT();
diff -Naur id3lib-3.8.3/examples/demo_info.cpp 32/id3lib-3.8.3/examples/demo_info.cpp
--- id3lib-3.8.3/examples/demo_info.cpp 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/examples/demo_info.cpp 2008-10-29 20:09:31.000000000 +0000
@@ -309,7 +309,7 @@
#define DEBUG
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
ID3D_INIT_DOUT();
diff -Naur id3lib-3.8.3/examples/demo_tag.cpp 32/id3lib-3.8.3/examples/demo_tag.cpp
--- id3lib-3.8.3/examples/demo_tag.cpp 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/examples/demo_tag.cpp 2008-10-29 20:10:26.000000000 +0000
@@ -46,7 +46,7 @@
os << "v2";
}
-int main( unsigned int argc, char * const argv[])
+int main(int argc, char * const argv[])
{
int ulFlag = ID3TT_ID3;
ID3D_INIT_DOUT();
diff -Naur id3lib-3.8.3/include/id3/id3lib_strings.h 32/id3lib-3.8.3/include/id3/id3lib_strings.h
--- id3lib-3.8.3/include/id3/id3lib_strings.h 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/include/id3/id3lib_strings.h 2008-10-29 20:03:28.000000000 +0000
@@ -30,6 +30,7 @@
#define _ID3LIB_STRINGS_H_
#include <string>
+#include "string.h"
#if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
namespace std
diff -Naur id3lib-3.8.3/include/id3/writers.h 32/id3lib-3.8.3/include/id3/writers.h
--- id3lib-3.8.3/include/id3/writers.h 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/include/id3/writers.h 2008-10-29 20:05:56.000000000 +0000
@@ -30,7 +30,7 @@
#include "id3/writer.h"
#include "id3/id3lib_streams.h"
-//#include <string.h>
+#include "string.h"
class ID3_CPP_EXPORT ID3_OStreamWriter : public ID3_Writer
{
diff -Naur id3lib-3.8.3/src/field.cpp 32/id3lib-3.8.3/src/field.cpp
--- id3lib-3.8.3/src/field.cpp 2003-03-02 00:23:00.000000000 +0000
+++ 32/id3lib-3.8.3/src/field.cpp 2008-10-29 20:02:19.000000000 +0000
@@ -33,6 +33,8 @@
#include "readers.h"
#include <assert.h>
+#include "string.h"
+
using namespace dami;
// This is used for unimplemented frames so that their data is preserved when

View file

@ -0,0 +1,39 @@
diff -ruN id3lib-3.8.3.orig/ChangeLog id3lib-3.8.3/ChangeLog
--- id3lib-3.8.3.orig/ChangeLog 2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/ChangeLog 2006-02-22 00:33:59.946214472 +0100
@@ -1,3 +1,8 @@
+2006-02-17 Jerome Couderc
+
+ * Patch from Spoon to fix UTF-16 writing bug
+ http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+
2003-03-02 Sunday 17:38 Thijmen Klok <thijmen@id3lib.org>
* THANKS (1.20): added more people
diff -ruN id3lib-3.8.3.orig/src/io_helpers.cpp id3lib-3.8.3/src/io_helpers.cpp
--- id3lib-3.8.3.orig/src/io_helpers.cpp 2003-03-02 01:23:00.000000000 +0100
+++ id3lib-3.8.3/src/io_helpers.cpp 2006-02-22 00:35:02.926639992 +0100
@@ -363,11 +363,22 @@
// Write the BOM: 0xFEFF
unicode_t BOM = 0xFEFF;
writer.writeChars((const unsigned char*) &BOM, 2);
+ // Patch from Spoon : 2004-08-25 14:17
+ // http://sourceforge.net/tracker/index.php?func=detail&aid=1016290&group_id=979&atid=300979
+ // Wrong code
+ //for (size_t i = 0; i < size; i += 2)
+ //{
+ // unicode_t ch = (data[i] << 8) | data[i+1];
+ // writer.writeChars((const unsigned char*) &ch, 2);
+ //}
+ // Right code
+ unsigned char *pdata = (unsigned char *) data.c_str();
for (size_t i = 0; i < size; i += 2)
{
- unicode_t ch = (data[i] << 8) | data[i+1];
+ unicode_t ch = (pdata[i] << 8) | pdata[i+1];
writer.writeChars((const unsigned char*) &ch, 2);
}
+ // End patch
}
return writer.getCur() - beg;
}

View file

@ -0,0 +1,22 @@
--- a/Doxyfile.in 2005-01-05 14:27:05.000000000 +0100
+++ b/Doxyfile.in 2005-01-05 14:30:19.000000000 +0100
@@ -263,14 +263,17 @@
INPUT = ../src \
../include/id3/field.h \
- ../include/id3/frame.h \
../include/id3/globals.h \
+ ../include/id3/helpers.h \
+ ../include/id3/id3lib_frame.h \
+ ../include/id3/id3lib_streams.h \
+ ../include/id3/id3lib_strings.h \
../include/id3/misc_support.h \
../include/id3/reader.h \
../include/id3/readers.h \
../include/id3/sized_types.h \
../include/id3/tag.h \
- ../include/id3/tag.h \
+ ../include/id3/utils.h \
../include/id3/writer.h \
../include/id3/writers.h