blob: cd1683236f0ffcb89a1f111a98fc8956ae1efba0 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
|
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header:
#
# Jeremy Huddleston <eradicator@gentoo.org>
# Usage:
# This eclass is used to create ebuilds for xmms plugins which are contained
# within the main xmms tarball. Usage:
# PATCH_VER:
# M4_VER:
# GENTOO_URI:
GENTOO_URI=${GENTOO_URI-"http://dside.dyndns.org/files/rusxmms"}
# Set this variable if you want to use a gentoo specific patchset. This adds
# ${GENTOO_URI}/xmms-${PV}-gentoo-patches-${PATCH_VER}.tar.bz2 to the SRC_URI
# PLUGIN_PATH:
# Set this variable to the plugin location you want to build.
# Example:
# PLUGIN_PATH="Input/mpg123"
# SONAME:
# Set this variable to the filename of the plugin that is copied over
# Example:
# SONAME="libmpg123.so"
inherit eutils
DESCRIPTION="Xmms Plugin: ${PN}"
HOMEPAGE="http://www.xmms.org"
LICENSE="GPL-2"
SRC_URI="http://www.xmms.org/files/1.2.x/xmms-${PV}.tar.bz2
http://dside.dyndns.org/files/rusxmms/RusXMMS2-csa${RUSXMMS_VER}.tar.bz2
http://dside.dyndns.org/files/rusxmms/xmms-1.2.10-gentoo-m4-${M4_VER}.tar.bz2
http://dside.dyndns.org/files/rusxmms/xmms-${PV}-gentoo-patches-${PATCH_VER}.tar.bz2"
# Set S to something which exists
S="${WORKDIR}/xmms-${PV}"
IUSE="${IUSE} rcc"
RDEPEND="${RDEPEND+${RDEPEND}}${RDEPEND-${DEPEND}}"
DEPEND="${DEPEND}
=sys-devel/automake-1.7*
sys-devel/autoconf
sys-devel/libtool
rcc? ( app-i18n/librcc )"
rusxmms-plugin_src_unpack() {
if ! has_version '>=media-sound/xmms-1.2.10-r13'; then
ewarn "You don't have >=media-sound/xmms-1.2.10-r13, so we are using the SDK in"
ewarn "this package rather that the one installed on your system. It is recommended"
ewarn "that you cancel this emerge and grab >=media-sound/xmms-1.2.10-r13 first."
epause 5
fi
unpack ${A}
cd ${S}
if [[ ${PV} != *1.2.10* ]]; then
use rcc && ../RusXMMS2/apply.sh
fi
if [[ -n "${PATCH_VER}" ]]; then
EPATCH_SUFFIX="patch"
epatch ${WORKDIR}/patches
fi
cd ${S}/${PLUGIN_PATH}
sed -i -e "s:-I\$(top_srcdir)::g" \
-e "s:\$(top_builddir)/libxmms/libxmms.la:/usr/$(get_libdir)/libxmms.la:g" \
Makefile.am || die "Failed to edit Makefile.am"
cd ${S}
if [[ ${PV} == *1.2.10* ]]; then
use rcc && ../RusXMMS2/apply-gentoo.sh
export WANT_AUTOMAKE=1.7
export WANT_AUTOCONF=2.5
fi
libtoolize --force --copy || die "libtoolize --force --copy failed"
if [[ -n "${M4_VER}" ]]; then
rm acinclude.m4
aclocal -I ${WORKDIR}/m4 || die "aclocal failed"
else
aclocal || die "aclocal failed"
fi
autoheader || die "autoheader failed"
automake --gnu --add-missing --include-deps --force-missing --copy || die "automake failed"
cd ${S}/${PLUGIN_PATH}
if has_version '>=media-sound/xmms-1.2.10-r13'; then
sed -i -e "s:^DEFAULT_INCLUDES = .*$:DEFAULT_INCLUDES = -I. $(xmms-config --cflags):" \
Makefile.in || die "Failed to edit Makefile.in"
fi
cd ${S}
autoconf || die "autoconf failed"
}
rusxmms-plugin_src_compile() {
filter-flags -fforce-addr -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
econf ${myconf}
cp config.h ${S}/${PLUGIN_PATH}
cd ${S}/${PLUGIN_PATH}
emake -j1 || die
}
rusxmms-plugin_src_install() {
cd ${S}/${PLUGIN_PATH}
make DESTDIR="${D}" install || die
}
EXPORT_FUNCTIONS src_unpack src_compile src_install
|