diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /media-sound/xmms2 | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'media-sound/xmms2')
-rw-r--r-- | media-sound/xmms2/Manifest | 1 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.7DrNo-XsParse-3.patch | 28 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.7DrNo-missing-protos.patch | 127 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.7DrNo-windres-build-fix.patch | 52 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-cython-0.19.1.patch | 47 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-ffmpeg-0.11.patch | 18 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-ffmpeg2.patch | 15 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-libav-9-p2.patch | 50 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-libav-9.patch | 20 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8-memset.patch | 19 | ||||
-rw-r--r-- | media-sound/xmms2/files/xmms2-0.8DrO_o-waflib-fix-perl.patch | 26 | ||||
-rw-r--r-- | media-sound/xmms2/metadata.xml | 50 | ||||
-rw-r--r-- | media-sound/xmms2/xmms2-0.8-r2.ebuild | 279 |
13 files changed, 732 insertions, 0 deletions
diff --git a/media-sound/xmms2/Manifest b/media-sound/xmms2/Manifest new file mode 100644 index 000000000000..be39c6eeee9b --- /dev/null +++ b/media-sound/xmms2/Manifest @@ -0,0 +1 @@ +DIST xmms2-0.8DrO_o.tar.bz2 1670726 SHA256 c77e41e7bd5788889d5a2f78331ca8c748b8721bd2e59f36c36ad4c7cae8694a SHA512 478103d80264c0cb32912e828f74d0f5b2f10fe310f530a87ebecda7ca547a69e238cd572788f90bda29494494160d459fa6d1356b4fb87c7a8f0bf02e3b75f8 WHIRLPOOL 741dd85b8c065eea799675588a8d4c389c47fa3dcf129a9fd799bb5da0ffcb1eeffa45cfaca40af7c505908818b5e7960c1a54e947f53358edeb43841f2eaa5c diff --git a/media-sound/xmms2/files/xmms2-0.7DrNo-XsParse-3.patch b/media-sound/xmms2/files/xmms2-0.7DrNo-XsParse-3.patch new file mode 100644 index 000000000000..0e3cbc4fd67a --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.7DrNo-XsParse-3.patch @@ -0,0 +1,28 @@ +diff --git a/wafadmin/Tools/perl.py b/wafadmin/Tools/perl.py +index 9e3b12a..9005e6a 100644 +--- a/wafadmin/Tools/perl.py ++++ b/wafadmin/Tools/perl.py +@@ -99,8 +99,8 @@ def check_perl_ext_devel(conf): + conf.env["CPPPATH_PERLEXT"] = read_out(" -MConfig -e'print \"$Config{archlib}/CORE\"'") + conf.env["CCFLAGS_PERLEXT"] = read_out(" -MConfig -e'print \"$Config{ccflags} $Config{cccdlflags}\"'") + +- conf.env["XSUBPP"] = read_out(" -MConfig -e'print \"$Config{privlib}/ExtUtils/xsubpp$Config{exe_ext}\"'") +- conf.env["EXTUTILS_TYPEMAP"] = read_out(" -MConfig -e'print \"$Config{privlib}/ExtUtils/typemap\"'") ++ conf.env["XSUBPP"] = read_out(" -MModule::Build -e'print Module::Build::ModuleInfo->find_module_by_name(\"ExtUtils::xsubpp\")'") ++ conf.env["EXTUTILS_TYPEMAP"] = read_out(" -MModule::Build -e'print Module::Build::ModuleInfo->find_module_by_name(\"ExtUtils::typemap\")'") + + if not getattr(Options.options, 'perlarchdir', None): + conf.env["ARCHDIR_PERL"] = Utils.cmd_output(perl + " -MConfig -e'print $Config{sitearch}'") +diff --git a/src/clients/lib/perl/typemap b/src/clients/lib/perl/typemap +index 6cb033f..54e6c4d 100644 +--- a/src/clients/lib/perl/typemap ++++ b/src/clients/lib/perl/typemap +@@ -3,6 +3,8 @@ xmmsc_connection_t* XMMSC_CONNECTION_T + xmmsv_coll_t* XMMSV_COLL_T + xmmsv_coll_type_t XMMSV_COLL_TYPE_T + xmmsv_coll_namespace_t T_PV ++const unsigned char* T_PV ++xmmsv_t* T_PV + xmmsc_result_t* XMMSC_RESULT_T + xmmsc_result_propdict_t* XMMSC_RESULT_PROPDICT_T + xmms_plugin_type_t XMMS_PLUGIN_TYPE_T diff --git a/media-sound/xmms2/files/xmms2-0.7DrNo-missing-protos.patch b/media-sound/xmms2/files/xmms2-0.7DrNo-missing-protos.patch new file mode 100644 index 000000000000..2c8de0c05b62 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.7DrNo-missing-protos.patch @@ -0,0 +1,127 @@ +commit 2df15fc79acc7ef5ea9213c87f6700faf138518d +Author: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sun Oct 10 21:08:05 2010 +0300 + + OTHER: one more me in AUTHORS + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + +diff --git a/AUTHORS b/AUTHORS +index f2ef9af..e33acb5 100644 +--- a/AUTHORS ++++ b/AUTHORS +@@ -354,6 +354,7 @@ D: Various fixes + + N: Sergei Trofimovich + E: slyich@gmail.com ++E: slyfox@gentoo.org + E: slyfox@inbox.ru + E: st@anti-virus.by + D: Various Cleanups + +commit fb4eede29ba11d2ecec039de6899f8cce55dde8d +Author: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sun Oct 10 21:01:49 2010 +0300 + + OTHER: explicitely declare xmmsc_mainloop_gmain_init() and _xmmsc_medialib_encode_url() + + Added according includefiles + + Was spotted by ZogG on #xmms2 + And reported as: https://bugs.gentoo.org/show_bug.cgi?id=340361 + + gcc's warning: + ../src/clients/medialib-updater/main.c: In function 'updater_connect': + ../src/clients/medialib-updater/main.c:135: warning: implicit declaration of function 'xmmsc_mainloop_gmain_init' + ../src/clients/medialib-updater/main.c: In function 'updater_remove_directory': + ../src/clients/medialib-updater/main.c:468: warning: implicit declaration of function '_xmmsc_medialib_encode_url' + ../src/clients/medialib-updater/main.c:468: warning: cast to pointer from integer of different size + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + +diff --git a/src/clients/medialib-updater/main.c b/src/clients/medialib-updater/main.c +index 3b36bc9..2dd7b08 100644 +--- a/src/clients/medialib-updater/main.c ++++ b/src/clients/medialib-updater/main.c +@@ -18,6 +18,9 @@ + + #include <gio/gio.h> + #include <xmmsclient/xmmsclient.h> ++#include <xmmsclient/xmmsclient-glib.h> ++ ++#include "xmmsclientpriv/xmmsclient.h" // _xmmsc_medialib_encode_url + + #include <xmms_configuration.h> + +diff --git a/src/clients/medialib-updater/wscript b/src/clients/medialib-updater/wscript +index 841ae85..cd38b5e 100644 +--- a/src/clients/medialib-updater/wscript ++++ b/src/clients/medialib-updater/wscript +@@ -4,7 +4,7 @@ def build(bld): + obj = bld.new_task_gen('cc', 'program') + obj.target = 'xmms2-mlib-updater' + obj.source = "main.c" +- obj.includes = '. ../../.. ../../include' ++ obj.includes = '. ../../.. ../../include ../../includepriv' + obj.uselib = 'glib2 GIO-2.0 GTHREAD-2.0' + obj.uselib_local = 'xmmsclient-glib xmmsclient' + + +commit a3dff97f048bae91cdfd8b2bc761cd9ebe184eb9 +Author: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sun Oct 10 20:52:30 2010 +0300 + + OTHER: explicitely declare g_sprintf() + + g_sprintf is not defined by glib.h (glib-2.24.2), + but it's defined by <glib/gsprintf.h> + + Was spotted by ZogG on #xmms2 + And reported as: https://bugs.gentoo.org/show_bug.cgi?id=340361 + + gcc's warning: + ../src/xmms/magic.c: In function 'xmms_magic_match': + ../src/xmms/magic.c:470: warning: implicit declaration of function 'g_sprintf' + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + +diff --git a/src/xmms/magic.c b/src/xmms/magic.c +index 31b0b00..a0f9658 100644 +--- a/src/xmms/magic.c ++++ b/src/xmms/magic.c +@@ -15,8 +15,8 @@ + */ + + +- + #include <glib.h> ++#include <glib/gprintf.h> + #include <string.h> + #include <stdlib.h> + + +commit 43648e7b701a9598d9a9769caec152fd23b4e2f5 +Author: Sergei Trofimovich <slyfox@gentoo.org> +Date: Sun Oct 10 20:47:23 2010 +0300 + + OTHER: explicitely declare semtimedop() + + semtimedop(2) is a GNU extension which needs _GNU_SOURCE + to be defined. Was spotted by ZogG on #xmms2 + And reported as: https://bugs.gentoo.org/show_bug.cgi?id=340361 + + gcc's warning: + + * ../src/clients/lib/xmmsclient/visualization/unixshm.c:102: warning: implicit declaration of function 'semtimedop' + + Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> + +diff --git a/src/clients/lib/xmmsclient/visualization/unixshm.c b/src/clients/lib/xmmsclient/visualization/unixshm.c +index 50883a9..3d28ccc 100644 +--- a/src/clients/lib/xmmsclient/visualization/unixshm.c ++++ b/src/clients/lib/xmmsclient/visualization/unixshm.c +@@ -1,3 +1,4 @@ ++#define _GNU_SOURCE // semtimedop is a GNU extension + #include "common.h" + + #include <sys/shm.h> diff --git a/media-sound/xmms2/files/xmms2-0.7DrNo-windres-build-fix.patch b/media-sound/xmms2/files/xmms2-0.7DrNo-windres-build-fix.patch new file mode 100644 index 000000000000..26cdcf914706 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.7DrNo-windres-build-fix.patch @@ -0,0 +1,52 @@ +commit 3bc7fbff50bfcb065fb89d020c1b3fb8de049b19 +Author: Sergei Trofimovich <st@anti-virus.by> +Date: Mon Apr 19 13:16:56 2010 +0300 + + OTHER: fix build failure on windres aware binutils (linux host, native build) + + Trying to use windres under linux (native build) is worthless: + + [ 26/269] winrc: pixmaps/xmms2.rc -> _build_/default/pixmaps/xmms2.rc.o + /usr/bin/windres: can't get BFD_RELOC_RVA relocation type: No error + Waf: Leaving directory `/var/tmp/paludis/media-sound-xmms2-9999-r3/work/xmms2-devel/_build_' + Build failed + -> task failed (err #1): + {task: winrc xmms2.rc -> xmms2.rc.o} + + Signed-off-by: Sergei Trofimovich <st@anti-virus.by> + +diff --git a/wscript b/wscript +index 2a29016..1d73813 100644 +--- a/wscript ++++ b/wscript +@@ -265,12 +265,6 @@ def configure(conf): + conf.check_tool('gcc') + conf.check_tool('g++') + +- try: +- conf.check_tool('winres') +- conf.env['WINRCFLAGS'] = '-I' + os.path.abspath('pixmaps') +- conf.env['xmms_icon'] = True +- except Configure.ConfigurationError: +- conf.env['xmms_icon'] = False + + if Options.options.target_platform: + Options.platform = Options.options.target_platform +@@ -412,6 +406,17 @@ def configure(conf): + else: + conf.env['socket_impl'] = 'posix' + ++ # platform does not support icons ... ++ conf.env['xmms_icon'] = False ++ # ... unless we target on windows ++ if Options.platform == 'win32': ++ try: ++ conf.check_tool('winres') ++ conf.env['WINRCFLAGS'] = '-I' + os.path.abspath('pixmaps') ++ conf.env['xmms_icon'] = True ++ except Configure.ConfigurationError: ++ pass ++ + # Glib is required by everyone, so check for it here and let them + # assume its presence. + conf.check_cfg(package='glib-2.0', atleast_version='2.8.0', uselib_store='glib2', args='--cflags --libs', mandatory=1) diff --git a/media-sound/xmms2/files/xmms2-0.8-cython-0.19.1.patch b/media-sound/xmms2/files/xmms2-0.8-cython-0.19.1.patch new file mode 100644 index 000000000000..1d6e59f6c830 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-cython-0.19.1.patch @@ -0,0 +1,47 @@ +From 6d6d7a7ee38c8e3f57242f2510e06a03f4e7e249 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich <slyfox@gentoo.org> +Date: Mon, 5 Aug 2013 22:29:46 +0300 +Subject: [PATCH] unbreak xmms2 building on cython-0.19.1 + +Error compiling Cython file: +------------------------------------------------------------ +... + def medialib_path_import(self, path, cb = None, encoded=False): + """ + @deprecated + Use medialib_import_path(path, ...) instead + """ + return self.medialib_import_path(self, path, cb=cb, encoded=encoded) + ^ + +Reported-by: ChunFeng +Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org> +--- + src/clients/lib/python/xmmsapi.pyx | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/clients/lib/python/xmmsapi.pyx b/src/clients/lib/python/xmmsapi.pyx +index 501a068..863db88 100644 +--- a/src/clients/lib/python/xmmsapi.pyx ++++ b/src/clients/lib/python/xmmsapi.pyx +@@ -1364,7 +1364,7 @@ cdef class XmmsApi(XmmsCore): + @deprecated + Use medialib_import_path(path, ...) instead + """ +- return self.medialib_import_path(self, path, cb=cb, encoded=encoded) ++ return self.medialib_import_path(path, cb=cb, encoded=encoded) + + @deprecated + def medialib_path_import_encoded(self, path, cb = None): +@@ -1372,7 +1372,7 @@ cdef class XmmsApi(XmmsCore): + @deprecated + Use medialib_import_path(path, ..., encoded=True) instead + """ +- return self.medialib_import_path(self, path, cb=cb, encoded=True) ++ return self.medialib_import_path(path, cb=cb, encoded=True) + + cpdef XmmsResult medialib_property_set(self, int id, key, value, source=None, cb=None): + """ +-- +1.8.3.2 + diff --git a/media-sound/xmms2/files/xmms2-0.8-ffmpeg-0.11.patch b/media-sound/xmms2/files/xmms2-0.8-ffmpeg-0.11.patch new file mode 100644 index 000000000000..bac2fba7e9fd --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-ffmpeg-0.11.patch @@ -0,0 +1,18 @@ +commit 8743e0c3a4f06053d89b74e40a362ba4949ed53c +Author: Juho Vähä-Herttua <juhovh@iki.fi> +Date: Fri Jun 8 09:30:47 2012 +0300 + + OTHER: Quick fix to make XMMS2 compile on ffmpeg 0.11 + +diff --git a/src/plugins/avcodec/avcodec_compat.h b/src/plugins/avcodec/avcodec_compat.h +index df87b27..f1b1af7 100644 +--- a/src/plugins/avcodec/avcodec_compat.h ++++ b/src/plugins/avcodec/avcodec_compat.h +@@ -65,3 +65,7 @@ typedef struct AVPacket { + # define AVMEDIA_TYPE_AUDIO CODEC_TYPE_AUDIO + #endif + ++/* Calling avcodec_init is not necessary after 53.04 (ffmpeg 0.9) */ ++#if LIBAVCODEC_VERSION_INT >= 0x350400 ++# define avcodec_init() ++#endif diff --git a/media-sound/xmms2/files/xmms2-0.8-ffmpeg2.patch b/media-sound/xmms2/files/xmms2-0.8-ffmpeg2.patch new file mode 100644 index 000000000000..2e9fac380ea0 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-ffmpeg2.patch @@ -0,0 +1,15 @@ +Index: xmms2-0.8DrO_o/src/plugins/avcodec/avcodec.c +=================================================================== +--- xmms2-0.8DrO_o.orig/src/plugins/avcodec/avcodec.c ++++ xmms2-0.8DrO_o/src/plugins/avcodec/avcodec.c +@@ -29,6 +29,10 @@ + + #define AVCODEC_BUFFER_SIZE 16384 + ++#ifndef AVCODEC_MAX_AUDIO_FRAME_SIZE ++#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000 // 1 second of 48khz 32bit audio ++#endif ++ + typedef struct { + AVCodecContext *codecctx; + diff --git a/media-sound/xmms2/files/xmms2-0.8-libav-9-p2.patch b/media-sound/xmms2/files/xmms2-0.8-libav-9-p2.patch new file mode 100644 index 000000000000..db55bc8a6933 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-libav-9-p2.patch @@ -0,0 +1,50 @@ +commit 4781c507be338fe151e08af7d13267a24cbd7572 +Author: Juho Vähä-Herttua <juhovh@iki.fi> +Date: Fri Jun 8 09:47:03 2012 +0300 + + OTHER: Fix some deprecated warnings in libavcodec + +diff --git a/src/plugins/avcodec/avcodec.c b/src/plugins/avcodec/avcodec.c +index 242e333..c846d64 100644 +--- a/src/plugins/avcodec/avcodec.c ++++ b/src/plugins/avcodec/avcodec.c +@@ -208,7 +208,7 @@ xmms_avcodec_init (xmms_xform_t *xform) + } + } + +- data->codecctx = avcodec_alloc_context (); ++ data->codecctx = avcodec_alloc_context3 (codec); + data->codecctx->sample_rate = data->samplerate; + data->codecctx->channels = data->channels; + data->codecctx->bit_rate = data->bitrate; +@@ -219,7 +219,7 @@ xmms_avcodec_init (xmms_xform_t *xform) + data->codecctx->codec_id = codec->id; + data->codecctx->codec_type = codec->type; + +- if (avcodec_open (data->codecctx, codec) < 0) { ++ if (avcodec_open2 (data->codecctx, codec, NULL) < 0) { + XMMS_DBG ("Opening decoder '%s' failed", codec->name); + goto err; + } else { +diff --git a/src/plugins/avcodec/avcodec_compat.h b/src/plugins/avcodec/avcodec_compat.h +index f1b1af7..bc770f2 100644 +--- a/src/plugins/avcodec/avcodec_compat.h ++++ b/src/plugins/avcodec/avcodec_compat.h +@@ -69,3 +69,17 @@ typedef struct AVPacket { + #if LIBAVCODEC_VERSION_INT >= 0x350400 + # define avcodec_init() + #endif ++ ++/* Map avcodec_alloc_context3 into the deprecated version ++ * avcodec_alloc_context in versions earlier than 53.04 (ffmpeg 0.9) */ ++#if LIBAVCODEC_VERSION_INT < 0x350400 ++# define avcodec_alloc_context3(codec) \ ++ avcodec_alloc_context() ++#endif ++ ++/* Map avcodec_open2 into the deprecated version ++ * avcodec_open in versions earlier than 53.04 (ffmpeg 0.9) */ ++#if LIBAVCODEC_VERSION_INT < 0x350400 ++# define avcodec_open2(avctx, codec, options) \ ++ avcodec_open(avctx, codec) ++#endif diff --git a/media-sound/xmms2/files/xmms2-0.8-libav-9.patch b/media-sound/xmms2/files/xmms2-0.8-libav-9.patch new file mode 100644 index 000000000000..9c13ec41e025 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-libav-9.patch @@ -0,0 +1,20 @@ +commit d61dbc522f4024debb1f99de758de9e5cc7c0936 +Author: Diego Biurrun <diego@biurrun.de> +Date: Sun Nov 25 17:33:02 2012 +0100 + + OTHER: Support for newer libavcodec versions + + Add missing #include + +diff --git a/src/plugins/avcodec/avcodec.c b/src/plugins/avcodec/avcodec.c +index c846d64..114d7df 100644 +--- a/src/plugins/avcodec/avcodec.c ++++ b/src/plugins/avcodec/avcodec.c +@@ -23,6 +23,7 @@ + #include <stdlib.h> + #include <string.h> + #include <glib.h> ++#include <libavutil/mem.h> + + #include "avcodec_compat.h" + diff --git a/media-sound/xmms2/files/xmms2-0.8-memset.patch b/media-sound/xmms2/files/xmms2-0.8-memset.patch new file mode 100644 index 000000000000..6f8377d9f928 --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8-memset.patch @@ -0,0 +1,19 @@ +commit 00f4736bbb8ebc88a08e24e98d384b43d5afbbe4 +Author: Raphaël Bois <virtualdust@gmail.com> +Date: Sun Feb 12 16:39:46 2012 +0100 + + OTHER: fix erroneous sizeof usage + +diff --git a/src/plugins/daap/daap_md5.c b/src/plugins/daap/daap_md5.c +index d4d8d74..69c84a5 100644 +--- a/src/plugins/daap/daap_md5.c ++++ b/src/plugins/daap/daap_md5.c +@@ -191,7 +191,7 @@ OpenDaap_MD5Final (MD5_CTX *ctx, + MD5Transform (ctx->buf, (guint32 *) ctx->in, ctx->version); + byteReverse ((unsigned char *) ctx->buf, 4); + memcpy (digest, ctx->buf, 16); +- memset (ctx, 0, sizeof (ctx)); /* In case it's sensitive */ ++ memset (ctx, 0, sizeof (*ctx)); /* In case it's sensitive */ + + return; + } diff --git a/media-sound/xmms2/files/xmms2-0.8DrO_o-waflib-fix-perl.patch b/media-sound/xmms2/files/xmms2-0.8DrO_o-waflib-fix-perl.patch new file mode 100644 index 000000000000..d4c10b98548a --- /dev/null +++ b/media-sound/xmms2/files/xmms2-0.8DrO_o-waflib-fix-perl.patch @@ -0,0 +1,26 @@ +Fix build failure when user has non-core xsubpp. + +> Could not find a typemap for C type 'xmmsv_t *' in XMMSClientPlaylist.xs, line 132 +> Undefined subroutine &ExtUtils::ParseXS::errors called at /usr/lib/perl5/5.12.4/ExtUtils/xsubpp line 41. +> Undefined subroutine &ExtUtils::ParseXS::errors called at /usr/lib/perl5/5.12.4/ExtUtils/xsubpp line 41. +> Could not find a typemap for C type 'const unsigned char *' in XMMSClient.xs, line 1179 + +Use xsubpp from @INC instead of bundled one with perl. + +Original bug: https://bugs.gentoo.org/380469 +Related: https://bugs.gentoo.org/378783 +diff --git a/waflib/Tools/perl.py b/waflib/Tools/perl.py +index 2c69fe5..a75b069 100644 +--- a/waflib/Tools/perl.py ++++ b/waflib/Tools/perl.py +@@ -60,8 +60,8 @@ def check_perl_ext_devel(self): + env['LINKFLAGS_PERLEXT']=read_out(" -MConfig -e'print $Config{lddlflags}'") + env['INCLUDES_PERLEXT']=read_out(" -MConfig -e'print \"$Config{archlib}/CORE\"'") + env['CFLAGS_PERLEXT']=read_out(" -MConfig -e'print \"$Config{ccflags} $Config{cccdlflags}\"'") +- env['XSUBPP']=read_out(" -MConfig -e'print \"$Config{privlib}/ExtUtils/xsubpp$Config{exe_ext}\"'") +- env['EXTUTILS_TYPEMAP']=read_out(" -MConfig -e'print \"$Config{privlib}/ExtUtils/typemap\"'") ++ env["XSUBPP"] = read_out(" -MModule::Build -e'print Module::Build::ModuleInfo->find_module_by_name(\"ExtUtils::xsubpp\")'") ++ env["EXTUTILS_TYPEMAP"] = read_out(" -MModule::Build -e'print Module::Build::ModuleInfo->find_module_by_name(\"ExtUtils::typemap\")'") + if not getattr(Options.options,'perlarchdir',None): + env['ARCHDIR_PERL']=self.cmd_and_log(perl+" -MConfig -e'print $Config{sitearch}'") + else: diff --git a/media-sound/xmms2/metadata.xml b/media-sound/xmms2/metadata.xml new file mode 100644 index 000000000000..3a5d57ea7273 --- /dev/null +++ b/media-sound/xmms2/metadata.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer> + <email>slyfox@gentoo.org</email> + <name>Sergei Trofimovich</name> + <description>Primary Maintainer</description> + </maintainer> + <longdescription> + It features a client-server model, allowing multiple (even simultaneous!) user + interfaces, both textual and graphical. All common audio formats are supported + using plugins. On top of this, there is a flexible media library to organize + your music. + + List of features currently offered by XMMS2: + Client-server model: + * Allows XMMS2 to have various multiple interfaces (as clients). + o Command line interfaces + o GTK clients (matching GNOME & XFCE4 look and feel) + o KDE clients (matching KDE look and feel) + * Network transparency means you can run and control XMMS2 remotely, (e.g. run + XMMS2 on your 'media box' and control it over network using a bluetooth-enabled + PDA (TCP)) + Wide format support: + * Can play FLAC, mp3, MOD, SID, speex, ogg vorbis, wave files. + * Clean separation of transport and decoder subsystems + Allows for more flexible access to media. (e.g. play mp3 files from a Samba + share without having to mount it on the local filesystem) + Medialib: + Database-driven media library stores metadata about songs as they're played, + so songs can be quickly recalled and new playlists easily made. + </longdescription> + <use> + <flag name="airplay">Support for airplay format</flag> + <flag name="asf">Support for Monkey's Audio (APE) format with help of bundled libasf</flag> + <flag name="gvfs">Transport for glibs virtual filesystem</flag> + <flag name="ices">Icecast source output plugin</flag> + <flag name="mac">Support for Monkey's Audio (APE) format with help of <pkg>media-sound/mac</pkg></flag> + <flag name="ofa">Support for Open Fingerprint Architecture (OFA)</flag> + <flag name="phonehome">This client sends anonymous usage-statistics to the xmms2</flag> + <flag name="server">Build xmms2 player daemon (otherwise only clients are built)</flag> + <flag name="sid">Support for C64 SID</flag> + <flag name="vocoder">Phase vocoder effect plugin</flag> + <flag name="mlib-update">Enable building of xmms2-mlib-updater client</flag> + <flag name="xml">Enable support for various XML based playlists and sources: RSS, XSPF</flag> + </use> + <upstream> + <remote-id type="sourceforge">xmms2</remote-id> + </upstream> +</pkgmetadata> diff --git a/media-sound/xmms2/xmms2-0.8-r2.ebuild b/media-sound/xmms2/xmms2-0.8-r2.ebuild new file mode 100644 index 000000000000..18e8dec49633 --- /dev/null +++ b/media-sound/xmms2/xmms2-0.8-r2.ebuild @@ -0,0 +1,279 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=3 + +inherit eutils python toolchain-funcs + +MY_P="${P}DrO_o" + +DESCRIPTION="X(cross)platform Music Multiplexing System. The new generation of the XMMS player" +HOMEPAGE="http://xmms2.org/wiki/Main_Page" +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2" +LICENSE="GPL-2 LGPL-2.1" + +SLOT="0" +KEYWORDS="alpha amd64 ppc x86" + +IUSE="aac airplay +alsa ao asf avahi cdda curl cxx ffmpeg flac gvfs ices +jack mac mlib-update mms +mad modplug mp3 mp4 musepack ofa oss +perl phonehome pulseaudio python ruby +samba +server sid sndfile speex test +vorbis vocoder wavpack xml" + +RDEPEND="server? ( + >=dev-db/sqlite-3.3.4 + + aac? ( >=media-libs/faad2-2.0 ) + airplay? ( dev-libs/openssl ) + alsa? ( media-libs/alsa-lib ) + ao? ( media-libs/libao ) + avahi? ( net-dns/avahi[mdnsresponder-compat] ) + cdda? ( dev-libs/libcdio-paranoia + >=media-libs/libdiscid-0.1.1 + >=media-sound/cdparanoia-3.9.8 ) + curl? ( >=net-misc/curl-7.15.1 ) + ffmpeg? ( virtual/ffmpeg ) + flac? ( media-libs/flac ) + gvfs? ( gnome-base/gnome-vfs ) + ices? ( media-libs/libogg + media-libs/libshout + media-libs/libvorbis ) + jack? ( >=media-sound/jack-audio-connection-kit-0.101.1 ) + mac? ( media-sound/mac ) + mms? ( virtual/ffmpeg + >=media-libs/libmms-0.3 ) + modplug? ( media-libs/libmodplug ) + mad? ( media-libs/libmad ) + mp3? ( >=media-sound/mpg123-1.5.1 ) + musepack? ( media-sound/musepack-tools ) + ofa? ( media-libs/libofa ) + pulseaudio? ( media-sound/pulseaudio ) + samba? ( net-fs/samba[smbclient] ) + sid? ( media-sound/sidplay + media-libs/resid ) + sndfile? ( media-libs/libsndfile ) + speex? ( media-libs/speex + media-libs/libogg ) + vorbis? ( media-libs/libvorbis ) + vocoder? ( sci-libs/fftw media-libs/libsamplerate ) + wavpack? ( media-sound/wavpack ) + xml? ( dev-libs/libxml2 ) + ) + + >=dev-libs/glib-2.12.9 + cxx? ( >=dev-libs/boost-1.32 ) + perl? ( >=dev-lang/perl-5.8.8 ) + python? ( dev-lang/python ) + ruby? ( >=dev-lang/ruby-1.8.5 ) " + +DEPEND="${RDEPEND} + dev-lang/python + python? ( dev-python/pyrex ) + perl? ( dev-perl/Module-Build ) + virtual/pkgconfig + test? ( dev-util/cunit ) + " + +S="${WORKDIR}/${MY_P}" + +# use_enable() is taken as proto +# $1 - useflag +# $2 - xmms2 option/plugin name (equals to $1 if not set) + +xmms2_flag() { + [[ -z $1 ]] && eerror "!!! empty arg. usage: xmms2_flag <USEFLAG> [<xmms2_flagname>]." + + local UWORD=${2:-$1} + + case $1 in + ENABLED) + echo ",${UWORD}" + ;; + DISABLED) + ;; + *) + use $1 && echo ",${UWORD}" + ;; + esac +} + +pkg_setup() { + python_pkg_setup +} + +src_prepare() { + ./waf # inflate waf + cd .waf* || die + epatch "${FILESDIR}/${PN}"-0.8DrO_o-waflib-fix-perl.patch + cd "${S}" + epatch "${FILESDIR}/${P}"-ffmpeg-0.11.patch #443256 + epatch "${FILESDIR}/${P}"-libav-9-p2.patch #443256 + epatch "${FILESDIR}/${P}"-libav-9.patch #443256 + epatch "${FILESDIR}/${P}"-cython-0.19.1.patch + epatch "${FILESDIR}/${P}"-memset.patch + epatch "${FILESDIR}/${P}"-ffmpeg2.patch #536232 + + if has_version dev-libs/libcdio-paranoia; then + sed -i -e 's:cdio/cdda.h:cdio/paranoia/cdda.h:' src/plugins/cdda/cdda.c || die + fi +} + +src_configure() { + # ./configure alike options. + local waf_params="--prefix=/usr \ + --libdir=/usr/$(get_libdir) \ + --with-target-platform=${CHOST} \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + --datadir=/usr/share \ + --sysconfdir=/etc \ + --localstatedir=/var/lib" + + local optionals="" + local plugins="" + if ! use server ; then + waf_params+=" --without-xmms2d" + else + # some fun static mappings: + local option_map=( # USE # sorted xmms2 option flag (same, as USE if empty) + "phonehome et" + "ENABLED launcher" + "mlib-update medialib-updater" + "ENABLED nycli" + " perl" + "ENABLED pixmaps" + " python" + " ruby" + "DISABLED tests" + "DISABLED vistest" + "cxx xmmsclient++" + "cxx xmmsclient++-glib" + "DISABLED xmmsclient-cf" + "DISABLED xmmsclient-ecore" # not in tree + + "test tests" + ) + + local plugin_map=( # USE # sorted xmms2 plugin flag (same, as USE if empty) + " alsa" + " airplay" + " ao" + "ffmpeg apefile" + "ffmpeg avcodec" + " asf" + "ENABLED asx" + " cdda" + "DISABLED coreaudio" # MacOS only? + " curl" + "ENABLED cue" + "avahi daap" + "ENABLED diskwrite" + "ENABLED equalizer" + "aac faad" + "ENABLED file" + " flac" + "ffmpeg flv" + "ffmpeg tta" + "DISABLED gme" # not in tree + " gvfs" + "ENABLED html" + " ices" + "ENABLED icymetaint" + "ENABLED id3v2" + " jack" + "ENABLED karaoke" + "ENABLED m3u" + " mac" + " mms" + " mad" + " mp4" # bug #387961 (aac, mp3, ape can sit there) + "mp3 mpg123" + " modplug" + " musepack" + "DISABLED nms" # not in tree + "ENABLED normalize" + "ENABLED null" + "ENABLED nulstripper" + " ofa" + " oss" + "ENABLED pls" + "pulseaudio pulse" + "ENABLED replaygain" + "xml rss" + " samba" + "DISABLED sc68" #not in tree + " sid" + " sndfile" + " speex" + "DISABLED sun" # {Open,Net}BSD only + "DISABLED tremor" # not in tree + " vorbis" + " vocoder" + "ffmpeg tta" + "ENABLED wave" + "DISABLED waveout" # windows only + " wavpack" + "xml xspf" + "ENABLED xml" + ) + + local option + for option in "${option_map[@]}"; do + optionals+=$(xmms2_flag $option) + done + + local plugin + for plugin in "${plugin_map[@]}"; do + plugins+=$(xmms2_flag $plugin) + done + fi # ! server + + # pass them explicitely even if empty as we try to avoid magic deps + waf_params+=" --with-optionals=${optionals:1}" # skip first ',' if yet + waf_params+=" --with-plugins=${plugins:1}" + + CC="$(tc-getCC)" \ + CPP="$(tc-getCPP)" \ + AR="$(tc-getAR)" \ + RANLIB="$(tc-getRANLIB)" \ + CXX="$(tc-getCXX)" \ + ./waf configure ${waf_params} || die "'waf configure' failed" +} + +src_compile() { + # waf is very keen to run tests in build phase (bug #424377) but + # it does not bother running tests twice, so the hack below works: + ./waf --verbose build || ./waf --verbose build || die "waf build failed" +} + +src_test() { + # rerun tests + ./waf --alltests || die "waf --alltests failed" +} + +src_install() { + ./waf --without-ldconfig --destdir="${D}" install || die "'waf install' failed" + dodoc AUTHORS TODO README + + use python && python_need_rebuild +} + +pkg_postinst() { + elog "This version is built on experimental development code" + elog "If you encounter any errors report them at http://bugs.xmms2.org" + elog "and visit #xmms2 at irc://irc.freenode.net" + if use phonehome ; then + einfo "" + einfo "The phone-home client xmms2-et was activated" + einfo "This client sends anonymous usage-statistics to the xmms2" + einfo "developers which may help finding bugs" + einfo "Disable the phonehome useflag if you don't like that" + fi + + use python && python_mod_optimize xmmsclient +} + +pkg_postrm() { + use python && python_mod_cleanup xmmsclient +} |