summaryrefslogtreecommitdiff
path: root/recipes/xmms
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/xmms')
-rw-r--r--recipes/xmms/files/acinclude.m436
-rw-r--r--recipes/xmms/files/gcc4.patch20
-rw-r--r--recipes/xmms/files/xmms-config-dequote.patch25
-rw-r--r--recipes/xmms/files/xmms.sh4
-rw-r--r--recipes/xmms/xmms-mad_0.10.bb14
-rw-r--r--recipes/xmms/xmms-tremor_1.0.bb11
-rw-r--r--recipes/xmms/xmms_1.2.10.bb73
7 files changed, 183 insertions, 0 deletions
diff --git a/recipes/xmms/files/acinclude.m4 b/recipes/xmms/files/acinclude.m4
new file mode 100644
index 0000000000..099d55b0b2
--- /dev/null
+++ b/recipes/xmms/files/acinclude.m4
@@ -0,0 +1,36 @@
+dnl XMMS_FUNC_POSIX(FUNCTION... [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]])
+dnl Test for functions in posix libraries, and define POSIX_LIBS
+AC_DEFUN(XMMS_FUNC_POSIX,
+[dnl
+ xmms_posix4=no
+ xmms_rt=no
+ for xmms_func in $1
+ do
+ xmms_have_func=no
+ AC_CHECK_FUNC($xmms_func,xmms_have_func=yes,[
+ dnl try in libposix4 if not found in current LIBS
+ AC_CHECK_LIB(posix4,$xmms_func,[xmms_have_func=yes xmms_posix4=yes],[
+ dnl try in librt, if not found so far
+ AC_CHECK_LIB(rt,$xmms_func,[xmms_have_func=yes xmms_rt=yes])
+ ])
+ ])
+ if test $xmms_have_func = yes; then
+ changequote(, )dnl
+ xmms_tr_func=HAVE_`echo $xmms_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+ changequote([, ])dnl
+ AC_DEFINE_UNQUOTED($xmms_tr_func)
+ ifelse([$2], , :, [$2])
+ else
+ ifelse([$3], , :, [$3])
+ fi
+ done
+ POSIX_LIBS=
+ if test $xmms_posix4 = yes; then
+ POSIX_LIBS=-lposix4
+ fi
+ if test $xmms_rt = yes; then
+ POSIX_LIBS="$POSIX_LIBS -lrt"
+ fi
+ AC_SUBST(POSIX_LIBS)
+])
+
diff --git a/recipes/xmms/files/gcc4.patch b/recipes/xmms/files/gcc4.patch
new file mode 100644
index 0000000000..0619803820
--- /dev/null
+++ b/recipes/xmms/files/gcc4.patch
@@ -0,0 +1,20 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- xmms-1.2.10/General/ir/ir.c~gcc4
++++ xmms-1.2.10/General/ir/ir.c
+@@ -16,10 +16,10 @@
+ #include "ir.h"
+
+ /* Important stuff to know */
+-static gboolean keepGoing = FALSE;
++extern gboolean keepGoing = FALSE;
+
+ /* The thread handle */
+-static pthread_t irapp_thread;
++extern pthread_t irapp_thread;
+
+ /* Declarations for calls that we need to mention in the plugin struct */
+ static void init(void);
diff --git a/recipes/xmms/files/xmms-config-dequote.patch b/recipes/xmms/files/xmms-config-dequote.patch
new file mode 100644
index 0000000000..8fdd7f0cf7
--- /dev/null
+++ b/recipes/xmms/files/xmms-config-dequote.patch
@@ -0,0 +1,25 @@
+--- xmms-1.2.10/xmms-config.in.orig 2006-08-13 06:55:56.000000000 +0100
++++ xmms-1.2.10/xmms-config.in 2006-08-13 06:56:52.000000000 +0100
+@@ -12,15 +12,15 @@
+ #
+ # This work is released under the GNU GPL, version 2 or later.
+
+-prefix="@prefix@"
+-exec_prefix="@exec_prefix@"
++prefix=@prefix@
++exec_prefix=@exec_prefix@
+ exec_prefix_set=no
+-data_dir="@datadir@/@PACKAGE@"
++data_dir=@datadir@/@PACKAGE@
+
+-version="@VERSION@"
+-include_dir="@includedir@"
+-xmms_include_dir="@includedir@/@PACKAGE@"
+-lib_dir="@libdir@"
++version=@VERSION@
++include_dir=@includedir@
++xmms_include_dir=@includedir@/@PACKAGE@
++lib_dir=@libdir@
+
+ if ( (gtk-config --version) > /dev/null 2>&1) then
+ gtk_libs=`gtk-config --libs`
diff --git a/recipes/xmms/files/xmms.sh b/recipes/xmms/files/xmms.sh
new file mode 100644
index 0000000000..7d1a96e129
--- /dev/null
+++ b/recipes/xmms/files/xmms.sh
@@ -0,0 +1,4 @@
+#! /bin/sh
+
+XLIB_SKIP_ARGB_VISUALS=1 xmms
+
diff --git a/recipes/xmms/xmms-mad_0.10.bb b/recipes/xmms/xmms-mad_0.10.bb
new file mode 100644
index 0000000000..8c600f24b8
--- /dev/null
+++ b/recipes/xmms/xmms-mad_0.10.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "xmms plugin for the mad integer mp3 decoder"
+SECTION = "x11/multimedia"
+HOMEPAGE = "http://xmms-mad.sourceforge.net"
+LICENSE = "GPL"
+DEPENDS = "xmms libmad libid3tag"
+SRC_URI = "${SOURCEFORGE_MIRROR}/xmms-mad/xmms-mad-${PV}.tar.bz2"
+
+inherit autotools
+
+export XMMS_CONFIG = "${STAGING_BINDIR_CROSS}/xmms-config"
+
+FILES_${PN} = "${libdir}/xmms/Input/libxmmsmad.so"
+FILES_${PN}-dbg += "${libdir}/xmms/Input/.debug/libxmmsmad.so"
+
diff --git a/recipes/xmms/xmms-tremor_1.0.bb b/recipes/xmms/xmms-tremor_1.0.bb
new file mode 100644
index 0000000000..21e2e8dc9b
--- /dev/null
+++ b/recipes/xmms/xmms-tremor_1.0.bb
@@ -0,0 +1,11 @@
+DESCRIPTION = "xmms plugin for the tremos integer vorbis decoder"
+SECTION = "x11/multimedia"
+LICENSE = "GPL"
+DEPENDS = "xmms tremor"
+SRC_URI = "http://mirror1.pdaxrom.org/source/src/xmms-tremor-1.0.tar.bz2"
+
+inherit autotools
+
+FILES_${PN} = "${libdir}/xmms/Input/libxmmstremor.so"
+FILES_${PN}-dbg += "${libdir}/xmms/Input/.debug/libxmmstremor.so"
+
diff --git a/recipes/xmms/xmms_1.2.10.bb b/recipes/xmms/xmms_1.2.10.bb
new file mode 100644
index 0000000000..0f81e87518
--- /dev/null
+++ b/recipes/xmms/xmms_1.2.10.bb
@@ -0,0 +1,73 @@
+DESCRIPTION = "The X MultiMedia System"
+HOMEPAGE = "http://www.xmms.org/"
+LICENSE = "GPL"
+SECTION = "x11/multimedia"
+# TODO add esd
+DEPENDS = "gtk+-1.2 libvorbis mikmod alsa-lib libsm esound"
+
+SRC_URI = "http://www.xmms.org/files/1.2.x/xmms-${PV}.tar.bz2 \
+ file://gcc4.patch;patch=1 \
+ file://xmms-config-dequote.patch;patch=1 \
+ file://acinclude.m4 \
+ file://xmms.sh"
+PR = "r4"
+
+RRECOMMENDS_${PN} = "xmms-plugin-output-oss xmms-plugin-output-alsa \
+ xmms-mad xmms-tremor"
+
+inherit autotools binconfig
+
+# TODO enable esd
+EXTRA_OECONF = "--disable-opengl --disable-esd \
+ --with-vorbis-includes=${STAGING_INCDIR} \
+ --with-ogg-includes=${STAGING_INCDIR} \
+ --with-vorbis-libraries=${STAGING_LIBDIR} \
+ --with-ogg-libraries=${STAGING_LIBDIR}"
+
+do_configure_prepend() {
+ cp ${WORKDIR}/acinclude.m4 ${S}
+ rm ${S}/libxmms/acinclude.m4 || true
+ for i in $(find . -name "Makefile*") ; do
+ sed -i -e 's:MKINSTALLDIRS = @MKINSTALLDIRS@:MKINSTALLDIRS = @mkdir_p@:g' \
+ -e 's:$(SHELL) $(MKINSTALLDIRS):$(MKINSTALLDIRS):g' $i
+ done
+}
+
+do_install_append() {
+ install -m 0755 ${WORKDIR}/xmms.sh ${D}${bindir}
+ install -d ${D}${datadir}/applications
+ install xmms/xmms.desktop ${D}${datadir}/applications
+ sed -i "s/Exec=xmms/Exec=xmms.sh/" ${D}${datadir}/applications/xmms.desktop
+ sed -i "s/Type=Application/Type=Application\nCategories=AudioVideo;/" ${D}${datadir}/applications/xmms.desktop
+ install -d ${D}${datadir}/pixmaps
+ install xmms/xmms_mini.xpm ${D}${datadir}/pixmaps
+}
+
+PACKAGES_DYNAMIC = "xmms-plugin-effect-* xmms-plugin-general-* \
+ xmms-plugin-input-* xmms-plugin-output-* \
+ xmms-plugin-visualisation-*"
+
+python populate_packages_prepend () {
+ import os.path
+
+ xmms_libdir = bb.data.expand('${libdir}/xmms', d)
+ effects_root = os.path.join(xmms_libdir, 'Effect')
+ general_root = os.path.join(xmms_libdir, 'General')
+ input_root = os.path.join(xmms_libdir, 'Input')
+ output_root = os.path.join(xmms_libdir, 'Output')
+ visualisation_root = os.path.join(xmms_libdir, 'Visualization')
+
+ do_split_packages(d, effects_root, '^lib(.*)\.so$', 'xmms-plugin-effect-%s', 'XMMS Effect plugin for %s')
+ do_split_packages(d, general_root, '^lib(.*)\.so$', 'xmms-plugin-general-%s', 'XMMS General plugin for %s')
+ do_split_packages(d, input_root, '^lib(.*)\.so$', 'xmms-plugin-input-%s', 'XMMS Input plugin for %s')
+ do_split_packages(d, output_root, '^lib(.*)\.so$', 'xmms-plugin-output-%s', 'XMMS Output plugin for %s')
+ do_split_packages(d, visualisation_root, '^lib(.*)\.so$', 'xmms-plugin-visualization-%s', 'XMMS Visualization plugin for %s')
+}
+
+do_stage() {
+ autotools_stage_all
+}
+
+FILES_${PN} = "${bindir}/xmms ${bindir}/xmms.sh ${libdir}/libxmms*.so.* \
+ ${datadir}/applications/xmms.desktop \
+ ${datadir}/pixmaps/xmms_mini.xpm"