summaryrefslogtreecommitdiff
path: root/media-libs/id3lib
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /media-libs/id3lib
reinit the tree, so we can have metadata
Diffstat (limited to 'media-libs/id3lib')
-rw-r--r--media-libs/id3lib/Manifest13
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-autoconf259.patch31
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-doxyinput.patch23
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-gcc-4.3.patch82
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-missing_nullpointer_check.patch11
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-security.patch51
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-test_io.patch10
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-unicode16.patch39
-rw-r--r--media-libs/id3lib/files/id3lib-3.8.3-zlib.patch23
-rw-r--r--media-libs/id3lib/id3lib-3.8.3-r8.ebuild59
-rw-r--r--media-libs/id3lib/metadata.xml11
11 files changed, 353 insertions, 0 deletions
diff --git a/media-libs/id3lib/Manifest b/media-libs/id3lib/Manifest
new file mode 100644
index 000000000000..200503b2c12f
--- /dev/null
+++ b/media-libs/id3lib/Manifest
@@ -0,0 +1,13 @@
+AUX id3lib-3.8.3-autoconf259.patch 1130 SHA256 ffde572cb263cce4585292143a4396ebd12592ac34b398da19d1608f1c2374f9 SHA512 e7d15ca57889934d1956293454e6326e1fbf81116d42e42732a2f0c9fc04b067ebf43f896d28bfa2fa18978b9099fdc6a36c573da137c2ee80efcbb83cdb04ae WHIRLPOOL 1fd5c554c837186037e1146e0e83dd69a07974115c42f12837c0f555bb36f65067af0394c5486a1ba7d17f034e7d6751b74d514dfe1b358b46ef255804047c2b
+AUX id3lib-3.8.3-doxyinput.patch 977 SHA256 e7cd2eafe39229fee1195524872be3465d247590b7ead4a9cfa2178102a3d9ea SHA512 f226281ba0afb7d0f2c49d5769ba374ab36edd228a7b4251c9775c83b50489db6b853044f442268134e2885e9d90500708597d59adccdb563c2eff2dd9af9fa8 WHIRLPOOL e4ec428ccc83e1a4079a1af69f3aae307068a3a11feb627137cf1cdd513e012f057c7d21e363156b69a82ba929edcd02805d1e73ff7d8a997321cde600413c39
+AUX id3lib-3.8.3-gcc-4.3.patch 2971 SHA256 536f6bb5dddd48df3c7fc080c04f03a2053ab11429094f2f31d6e2d5f21a987e SHA512 14c5376c676d3a67c7fe92f271d0e6067f6168f16fed0c9ac4dd28a0b7280896cb993f17911baac7d8c2cfacd210f6c587c92bc38e54ef71584fbbff50e86bb5 WHIRLPOOL 256457fa536d4c92de061bc598567c898288b436a289bcfbb104e4520ba8b0138f292e0a78aa9c13f6a2c7eb67ecd22ceed2d75ca342771311a79817991eb202
+AUX id3lib-3.8.3-missing_nullpointer_check.patch 329 SHA256 98a6a9a99474f8166a112e68956da25711ba3e2f7b503dd044f2161e525052e6 SHA512 bfda0531711d2dc8a9d0581aaaef940f456ba1d3544c2399d9eff6806f0b564678a4d428e35920cbeac9ed9e2efe3aee640500a89c6853fc921ef79afbf6fdb4 WHIRLPOOL 1cd5e05119752277dc25071eeaabc80bcd767475fde68ca1462ca02693e9ab0391d0a0bb9d2c2a7ff1a0d00e0fc56363383e8442ef2a4ed30f78536b0329a079
+AUX id3lib-3.8.3-security.patch 1455 SHA256 54f9be6da05227524aa51743acc568695b647e7a97560173af1f230fc1463f6f SHA512 ded434b26c36636aef77a69376cece644ad09c81168bbd50e02eea21c4af32efe62fbc31d772fbe94560da6411a8b0562708bfd043b9ab31a4a0944bddb2814f WHIRLPOOL 346b66f373b48af6258f80c653181b984e9a96e5678e2ffce0d429777b7fd6ae06eb68a92e8fe5023d676298a148afe55fabbf67cd27c2f683ff70ac0ad27b7f
+AUX id3lib-3.8.3-test_io.patch 281 SHA256 cc124f8805bcb977a1673f0b04fff368dac1af70d78c21da6f0415ce067d7687 SHA512 41138975241980cbdc1e602a6d5ce3c3cfefe7db316b95db99ba8f10daf251e6d761716ab60bfceaa476df3e56597b18a69d0ffed171e4de25bfcb44c6fcfd1d WHIRLPOOL e710bc9725e18c9499e946c59858da3ea7670ac333acff79ce3af16d87cd61f8431e6f62b96ca5f798f085b639f6a66446ca3b4069dd968f202ffbeb87e45a71
+AUX id3lib-3.8.3-unicode16.patch 1544 SHA256 20c1ba7de8c3ef180ce546c70451c60e565038d8c73bc4bdf923dd5a9bf2cf1d SHA512 ba56f77a0672c34df1757435e27aac3b202c8ad4a8b79213f0d314016568937466a535f51d3b65c7ec18d5349bbfcb6d87d37d7124125cfb0aad8eab72e8fe6d WHIRLPOOL 9aed5626abd070178ea23e34a32cd5022b3f398cd430c17cc71254d8eeb9014d30ad18ccdc987a07366907d984c96fd1b792872b1f6c5fb98a13fc95f60d9920
+AUX id3lib-3.8.3-zlib.patch 833 SHA256 0b5531089422bda659deddcccf0562fcaa96529e74778065e35c848d6cf2a502 SHA512 61937ec6c2751467dd13179db15f06eff04b5b186f82b4327c38388f03c03ac7de277b9173b2b0326141c77335cad7fcd98234994cc5694cd1228e0d81919e53 WHIRLPOOL 28656260c6db086659e73b739e3d22db575cd66255c5ec6ad87356dc18ef54bc08e4fc7eb9e894fe6ea331cc906761ca03e80b2251c73e4e941393702a74910f
+DIST id3lib-3.8.3.tar.gz 950726 SHA256 2749cc3c0cd7280b299518b1ddf5a5bcfe2d1100614519b68702230e26c7d079 SHA512 3787e261f86933c1c2f2bff2c4b349b42f5d8636e489e4f39f9d75e6dfbdc79b87009a0f4ce4b786f2fb3dbc01ca9d56c4112095b46244f897e6c9a28573adaf WHIRLPOOL c52c4239578bcdb1bf1c999cfa5fdf28e80064a3e0ccffc67a4dc5d4ac19978da95479b59bb8cd72638d2b5dea6448dd6f1e9a3985389ef3c5ae8900a1695b97
+EBUILD id3lib-3.8.3-r8.ebuild 1319 SHA256 30be675437588401ad3ebbb0c9929ad6407c0da1158b55b33e1bcb8bdb08085b SHA512 b3d158cd02607bacdb717d27114ab69e9cda8be3ef9588803467488c9f77733234998f4298868a2acf91ff078f065635fbb2413164d8b972bae5e83345e51f7b WHIRLPOOL bcf501d7d9d63a38e2e859070e3285921fc61252bdf1c111d9745b752c5073cbb1d1c20d0b0b59042b557b10aeb932b9a9ad91bfa6fe22961d40f6bce4d7fa5d
+MISC ChangeLog 2874 SHA256 b395c3dfc347e81592a04aeac1994ad57496c3c2a16e37ab2926114af566d28a SHA512 f0799dc1adb3e7b46acd3ae04a1c6458fb97ea250b9dc7b5ef6c2b0f5ac5a0ab02e3c1e6d98f60832c724c164ec23ba134615c50f502e60d1371a062c3e7fae4 WHIRLPOOL c8f524b64f110d6bca875c1d2f748a6c66689046e3916dd588537af013989f9a7015ef59be0f6406b8ab3116774d39723d084af6a7ec3e0c7e3132db2ee59b4e
+MISC ChangeLog-2015 11226 SHA256 9e487f16988273341137ee4c0eed4655ea05b77184b8290cc966f647996948ad SHA512 bae0f43dc8749e7213658b6402bad30b2ae5e89cbbd04930c91126bb526d736a6072beeb5bd1b1e7932a80534e605e47a6b9421e0a82454bee78341acc4dea57 WHIRLPOOL 43f75f6c0dbeefc0804060ea7910efc49894fec6db6934738322fbbb6165bcb130932d7fa1b714dc5a132b59c920f1e42d156fd9f486b8204491f1a37e0fd4ac
+MISC metadata.xml 339 SHA256 d6e374e81a04e675b1a9a26662e44d230d3ab677abc8adf9e2f229aba1d4f5b6 SHA512 e5d02d27394556f17ac426d2c87cc19aa8c603913d9c5ca3641154e87b54f5de6768dfa4334c371d3a65af5c39f265f561b1bac6ab497ed5b41ad10891d5a800 WHIRLPOOL 6ecea9b7a808ea8cc2302dbd4278792a06741540c6430ede957f769200d11c8ad096e7f1d34872f6c9021862e52233661b5e50955851769e8769d0e2ab6cf087
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-autoconf259.patch b/media-libs/id3lib/files/id3lib-3.8.3-autoconf259.patch
new file mode 100644
index 000000000000..16921e17425e
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-autoconf259.patch
@@ -0,0 +1,31 @@
+Index: id3lib-3.8.3/configure.in
+===================================================================
+--- id3lib-3.8.3.orig/configure.in
++++ id3lib-3.8.3/configure.in
+@@ -168,7 +168,7 @@ if test $has_iconv = 1; then
+ iconv_oldstyle=1, iconv_oldstyle=0)
+ if test $iconv_oldstyle = 1; then
+ AC_MSG_RESULT(const char **)
+- AC_DEFINE(ID3LIB_ICONV_OLDSTYLE)
++ AC_DEFINE(ID3LIB_ICONV_OLDSTYLE, [], [Unknown])
+ #we'll check out the need of
+ #typecast in the call of iconv_open
+ AC_MSG_CHECKING(whether to typecast in iconv)
+@@ -184,7 +184,7 @@ if test $has_iconv = 1; then
+ iconv_cast=0, iconv_cast=1)
+ if test $iconv_cast = 1; then
+ AC_MSG_RESULT(yes)
+- AC_DEFINE(ID3LIB_ICONV_CAST_OK)
++ AC_DEFINE(ID3LIB_ICONV_CAST_OK, [], [Unknown])
+ else
+ AC_MSG_RESULT(no)
+ fi
+@@ -206,7 +206,7 @@ if test $has_iconv = 1; then
+ iconv_cast=0, iconv_cast=1)
+ if test $iconv_cast = 1; then
+ AC_MSG_RESULT(yes)
+- AC_DEFINE(ID3LIB_ICONV_CAST_OK)
++ AC_DEFINE(ID3LIB_ICONV_CAST_OK, [], [Unknown])
+ else
+ AC_MSG_RESULT(no)
+ fi
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-doxyinput.patch b/media-libs/id3lib/files/id3lib-3.8.3-doxyinput.patch
new file mode 100644
index 000000000000..b118f487e06c
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-doxyinput.patch
@@ -0,0 +1,23 @@
+Index: id3lib-3.8.3/doc/Doxyfile
+===================================================================
+--- id3lib-3.8.3.orig/doc/Doxyfile
++++ id3lib-3.8.3/doc/Doxyfile
+@@ -262,17 +262,7 @@ WARN_FORMAT = "$file:$line: $
+ # with spaces.
+
+ INPUT = ../src \
+- ../include/id3/field.h \
+- ../include/id3/frame.h \
+- ../include/id3/globals.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/writer.h \
+- ../include/id3/writers.h
++ ../include/id3 \
+
+
+ # If the value of the INPUT tag contains directories, you can use the
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-gcc-4.3.patch b/media-libs/id3lib/files/id3lib-3.8.3-gcc-4.3.patch
new file mode 100644
index 000000000000..090dc0bc092d
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-gcc-4.3.patch
@@ -0,0 +1,82 @@
+diff -Naur id3lib-3.8.3-orig/configure.in id3lib-3.8.3/configure.in
+--- id3lib-3.8.3-orig/configure.in 2008-03-05 18:03:25.000000000 -0600
++++ id3lib-3.8.3/configure.in 2008-03-05 18:15:42.000000000 -0600
+@@ -227,7 +227,6 @@
+ )
+ AC_CHECK_HEADERS( \
+ string \
+- iomanip.h \
+ ,,AC_MSG_ERROR([Missing a vital header file for id3lib])
+ )
+
+diff -Naur id3lib-3.8.3-orig/include/id3/id3lib_strings.h id3lib-3.8.3/include/id3/id3lib_strings.h
+--- id3lib-3.8.3-orig/include/id3/id3lib_strings.h 2008-03-05 18:19:46.000000000 -0600
++++ id3lib-3.8.3/include/id3/id3lib_strings.h 2008-03-05 18:19:38.000000000 -0600
+@@ -30,6 +30,7 @@
+ #define _ID3LIB_STRINGS_H_
+
+ #include <string>
++#include <cstring>
+
+ #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000))
+ namespace std
+diff -Naur id3lib-3.8.3-orig/include/id3/writers.h id3lib-3.8.3/include/id3/writers.h
+--- id3lib-3.8.3-orig/include/id3/writers.h 2003-03-01 18:23:00.000000000 -0600
++++ id3lib-3.8.3/include/id3/writers.h 2008-03-05 18:23:05.000000000 -0600
+@@ -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-orig/examples/demo_convert.cpp id3lib-3.8.3/examples/demo_convert.cpp
+--- id3lib-3.8.3-orig/examples/demo_convert.cpp 2003-03-01 18:23:00.000000000 -0600
++++ id3lib-3.8.3/examples/demo_convert.cpp 2008-03-05 18:26:50.000000000 -0600
+@@ -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-orig/examples/demo_info.cpp id3lib-3.8.3/examples/demo_info.cpp
+--- id3lib-3.8.3-orig/examples/demo_info.cpp 2003-03-01 18:23:00.000000000 -0600
++++ id3lib-3.8.3/examples/demo_info.cpp 2008-03-05 18:27:40.000000000 -0600
+@@ -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-orig/examples/demo_tag.cpp id3lib-3.8.3/examples/demo_tag.cpp
+--- id3lib-3.8.3-orig/examples/demo_tag.cpp 2003-03-01 18:23:00.000000000 -0600
++++ id3lib-3.8.3/examples/demo_tag.cpp 2008-03-05 18:31:20.000000000 -0600
+@@ -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-orig/examples/demo_copy.cpp id3lib-3.8.3/examples/demo_copy.cpp
+--- id3lib-3.8.3-orig/examples/demo_copy.cpp 2003-03-01 18:23:00.000000000 -0600
++++ id3lib-3.8.3/examples/demo_copy.cpp 2008-03-05 18:32:44.000000000 -0600
+@@ -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 --git a/media-libs/id3lib/files/id3lib-3.8.3-missing_nullpointer_check.patch b/media-libs/id3lib/files/id3lib-3.8.3-missing_nullpointer_check.patch
new file mode 100644
index 000000000000..3b9437967842
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-missing_nullpointer_check.patch
@@ -0,0 +1,11 @@
+--- id3lib-3.8.3/src/header_tag.cpp.orig 2003-03-02 01:23:00.000000000 +0100
++++ id3lib-3.8.3/src/header_tag.cpp 2009-07-13 22:54:21.000000000 +0200
+@@ -54,7 +54,7 @@
+ {
+ size_t bytesUsed = ID3_TagHeader::SIZE;
+
+- if (_info->is_extended)
++ if (_info && _info->is_extended)
+ {
+ bytesUsed += _info->extended_bytes;
+ }
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-security.patch b/media-libs/id3lib/files/id3lib-3.8.3-security.patch
new file mode 100644
index 000000000000..2cf7c1420340
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-security.patch
@@ -0,0 +1,51 @@
+http://bugs.gentoo.org/189610
+
+--- src/tag_file.cpp
++++ src/tag_file.cpp
+@@ -242,8 +242,8 @@
+ strcpy(sTempFile, filename.c_str());
+ strcat(sTempFile, sTmpSuffix.c_str());
+
+-#if ((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
+- // This section is for Windows folk && gcc 3.x folk
++#if !defined(HAVE_MKSTEMP)
++ // This section is for Windows folk
+ fstream tmpOut;
+ createFile(sTempFile, tmpOut);
+
+@@ -257,7 +257,7 @@
+ tmpOut.write((char *)tmpBuffer, nBytes);
+ }
+
+-#else //((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
++#else //!defined(HAVE_MKSTEMP)
+
+ // else we gotta make a temp file, copy the tag into it, copy the
+ // rest of the old file after the tag, delete the old file, rename
+@@ -270,7 +270,7 @@
+ //ID3_THROW_DESC(ID3E_NoFile, "couldn't open temp file");
+ }
+
+- ofstream tmpOut(fd);
++ ofstream tmpOut(sTempFile);
+ if (!tmpOut)
+ {
+ tmpOut.close();
+@@ -285,14 +285,14 @@
+ uchar tmpBuffer[BUFSIZ];
+ while (file)
+ {
+- file.read(tmpBuffer, BUFSIZ);
++ file.read((char *)tmpBuffer, BUFSIZ);
+ size_t nBytes = file.gcount();
+- tmpOut.write(tmpBuffer, nBytes);
++ tmpOut.write((char *)tmpBuffer, nBytes);
+ }
+
+ close(fd); //closes the file
+
+-#endif ////((defined(__GNUC__) && __GNUC__ >= 3 ) || !defined(HAVE_MKSTEMP))
++#endif ////!defined(HAVE_MKSTEMP)
+
+ tmpOut.close();
+ file.close();
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-test_io.patch b/media-libs/id3lib/files/id3lib-3.8.3-test_io.patch
new file mode 100644
index 000000000000..b4a0d24d65e3
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-test_io.patch
@@ -0,0 +1,10 @@
+--- id3lib-3.8.3/examples/test_io.cpp.orig 2004-09-21 23:40:48.398826320 +0200
++++ id3lib-3.8.3/examples/test_io.cpp 2004-09-21 23:40:55.408760648 +0200
+@@ -16,6 +16,7 @@
+ using std::cerr;
+
+ using namespace dami;
++using namespace std;
+
+ int
+ main(size_t argc, const char** argv)
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-unicode16.patch b/media-libs/id3lib/files/id3lib-3.8.3-unicode16.patch
new file mode 100644
index 000000000000..7b1b59358903
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-unicode16.patch
@@ -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
++ https://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
++ // https://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;
+ }
diff --git a/media-libs/id3lib/files/id3lib-3.8.3-zlib.patch b/media-libs/id3lib/files/id3lib-3.8.3-zlib.patch
new file mode 100644
index 000000000000..177320bc17a3
--- /dev/null
+++ b/media-libs/id3lib/files/id3lib-3.8.3-zlib.patch
@@ -0,0 +1,23 @@
+diff -Naur id3lib-3.8.3.orig/Makefile.am id3lib-3.8.3/Makefile.am
+--- id3lib-3.8.3.orig/Makefile.am 2003-03-01 16:23:00.000000000 -0800
++++ id3lib-3.8.3/Makefile.am 2004-09-12 19:05:39.564456828 -0700
+@@ -28,7 +28,7 @@
+ endif
+
+ SUBDIRS = . m4 $(zlib_subdir) doc include id3com src examples
+-DIST_SUBDIRS = . m4 zlib doc include id3com src examples prj libprj
++DIST_SUBDIRS = . m4 $(zlib_subdir) doc include id3com src examples prj libprj
+
+ INCLUDES = @ID3LIB_DEBUG_FLAGS@
+
+diff -Naur id3lib-3.8.3.orig/src/Makefile.am id3lib-3.8.3/src/Makefile.am
+--- id3lib-3.8.3.orig/src/Makefile.am 2003-03-01 16:23:00.000000000 -0800
++++ id3lib-3.8.3/src/Makefile.am 2004-09-12 19:08:30.814149521 -0700
+@@ -77,6 +77,7 @@
+ endif
+
+ libid3_la_LDFLAGS = \
++ -lz \
+ -version-info $(LT_VERSION) \
+ -release $(LT_RELEASE) \
+ -export-dynamic
diff --git a/media-libs/id3lib/id3lib-3.8.3-r8.ebuild b/media-libs/id3lib/id3lib-3.8.3-r8.ebuild
new file mode 100644
index 000000000000..df3dc169a92f
--- /dev/null
+++ b/media-libs/id3lib/id3lib-3.8.3-r8.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+inherit autotools eutils
+
+DESCRIPTION="Id3 library for C/C++"
+HOMEPAGE="http://id3lib.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P/_}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos ~x86-solaris"
+IUSE="doc static-libs"
+
+RDEPEND="sys-libs/zlib:="
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )"
+
+RESTRICT="test"
+
+DOCS="AUTHORS ChangeLog HISTORY README THANKS TODO"
+
+S=${WORKDIR}/${P/_}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-zlib.patch \
+ "${FILESDIR}"/${P}-test_io.patch \
+ "${FILESDIR}"/${P}-autoconf259.patch \
+ "${FILESDIR}"/${P}-doxyinput.patch \
+ "${FILESDIR}"/${P}-unicode16.patch \
+ "${FILESDIR}"/${P}-gcc-4.3.patch \
+ "${FILESDIR}"/${P}-missing_nullpointer_check.patch \
+ "${FILESDIR}"/${P}-security.patch
+
+ sed -i 's:AM_CONFIG_HEADER:AC_CONFIG_HEADERS:' {.,zlib}/configure.in || die
+
+ AT_M4DIR=${S}/m4 eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+ if use doc; then
+ pushd doc >/dev/null
+ doxygen Doxyfile || die
+ popd >/dev/null
+ fi
+}
+
+src_install() {
+ default
+ prune_libtool_files
+ use doc && dohtml -r doc
+}
diff --git a/media-libs/id3lib/metadata.xml b/media-libs/id3lib/metadata.xml
new file mode 100644
index 000000000000..9c1880c9b5eb
--- /dev/null
+++ b/media-libs/id3lib/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sound@gentoo.org</email>
+ <name>Gentoo Sound project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">id3lib</remote-id>
+ </upstream>
+</pkgmetadata>