summaryrefslogtreecommitdiff
blob: 00327edd21fc12f5d51745c6f1af621da4cf055f (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
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/xmms/xmms-1.2.10-r7.ebuild,v 1.1 2004/10/08 21:55:33 eradicator Exp $

IUSE="xml nls esd opengl mmx oggvorbis 3dnow mikmod directfb ipv6 cjk alsa oss arts jack sndfile lirc flac"

inherit flag-o-matic eutils libtool gnuconfig

PATCHVER="1.3"

MY_P=${P/_pre/-pre}
S=${WORKDIR}/${MY_P}

DESCRIPTION="X MultiMedia System"
HOMEPAGE="http://www.xmms.org/"
SRC_URI="http://www.xmms.org/files/1.2.x/${MY_P}.tar.bz2
	mirror://gentoo/gentoo_ice-xmms-0.2.tar.bz2
	http://dev.gentoo.org/~eradicator/xmms/${P}-gentoo-patches-${PATCHVER}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
# Notice to arch maintainers:
# Please test out the plugins listed below in PDEPEND.  They should
# work on most of your archs, but haven't been marked yet.
KEYWORDS="~x86 ~ppc ~sparc ~alpha ~hppa ~amd64 ~ia64 ~mips ~ppc64"

DEPEND="=x11-libs/gtk+-1.2*
	mikmod? ( >=media-libs/libmikmod-3.1.10 )
	esd? ( >=media-sound/esound-0.2.22 )
	xml? ( >=dev-libs/libxml-1.8.15 )
	opengl? ( virtual/opengl )
	alsa? ( >=media-libs/alsa-lib-0.9.0 )
	oggvorbis? ( >=media-libs/libvorbis-1.0 )"

RDEPEND="${DEPEND}
	directfb? ( dev-libs/DirectFB )
	sys-devel/gettext
	app-arch/unzip"

# USE flags pull in xmms plugins
PDEPEND="!alpha? ( !hppa? ( !ia64? ( !mips? ( !ppc64? ( jack? ( media-plugins/xmms-jack ) ) ) ) ) )
	 !alpha? ( !ia64? ( !ppc64? ( lirc? ( media-plugins/xmms-lirc ) ) ) )
	 !ia64? ( !ppc64? ( arts? ( media-plugins/xmms-arts ) ) )
	 !alpha? ( !hppa? ( !ia64? ( !mips? ( !ppc64? ( sndfile? ( media-plugins/xmms-sndfile ) ) ) ) ) )
	 flac? ( media-libs/flac )"

#We want these things in DEPEND only
DEPEND="${DEPEND}
	nls? ( dev-util/intltool )"
#	>=sys-devel/automake-1.7.8
#	>=sys-devel/autoconf-2.58"

PATCHDIR=${WORKDIR}/patches

src_unpack() {
	unpack ${A}
	cd ${S}

	# Add dynamic taste detection patch...
	# goto http://bugs.xmms.org/show_bug.cgi?id=756 to vote for its inclusion in mainline xmms
	# This patch is no longer included in gentoo xmms due to problems with later versions of glib.
	# epatch ${PATCHDIR}/${P}-dtd.patch

	# Fix gcc3.4 C++ problem. See bug #53125
	epatch ${PATCHDIR}/${P}-gcc34.patch

	# Patch to allow external programmes to have the "jump to" dialog box
	epatch ${PATCHDIR}/${P}-jump.patch
	epatch ${PATCHDIR}/${P}-jumpcl.patch

	# Save playlist, etc on SIGTERM and SIGINT, bug #13604.
	epatch ${PATCHDIR}/${P}-sigterm.patch

	# Turn on shoutcast titles by default, bug #62568
	epatch ${PATCHDIR}/${P}-shout-title.patch

	# Patch for mpg123 to convert Japanese character code of MP3 tag info
	# the Japanese patch and the Russian one overlap, so its one or the other
	if use cjk; then
		# id3v2 editing support in mpg123 plugin
		epatch ${PATCHDIR}/${P}-id3v2edit.patch

		epatch ${PATCHDIR}/${P}-mpg123j.patch
#	elif use unicode; then
	else
		epatch ${PATCHDIR}/${P}-unicode.patch
		epatch ${PATCHDIR}/${P}-unicode-sizefix.patch
#	else
#		# id3v2 editing support in mpg123 plugin
#		epatch ${PATCHDIR}/${P}-id3v2edit.patch
#
#		# add recode patch http://sourceforge.net/projects/rusxmms/
#		# epatch ${PATCHDIR}/${P}-recode-csa27.3.dtd.patch
#		epatch ${PATCHDIR}/${P}-recode-csa27.3.patch
#		epatch ${PATCHDIR}/${P}-recode-csa27.3.regressionFix.patch
#		epatch ${PATCHDIR}/${P}-recode-csa27.3.nullTitle.patch
#
	fi

	# Add /usr/local/share/xmms/Skins to the search path for skins
	epatch ${PATCHDIR}/${P}-fhs-skinsdir.patch

	# This patch passes audio output through the output plugin
	# before recording via the diskwriter plugin
	# http://forum.xmms.org/viewtopic.php?t=500&sid=c286e1c01fb924a2f81f519969f33764
	epatch ${PATCHDIR}/${P}-diskwriter-audio.patch

	# Patch to enable superior randomised playlists:
	epatch ${PATCHDIR}/${P}-random.patch

	# This patch changes the search-bar's behaviour when playing
	# sid tunes using xmms-sid plugin. It enables you to select the
	# different tunes that are sometimes included in a single .sid file
	epatch ${PATCHDIR}/${P}-sid-songpos.patch

	# Bug #45720 ... bugfix when unpausing with alsa
	epatch ${PATCHDIR}/${P}-alsa-pause.patch

	# Bug #47761 ... Patch to enable seeking in HTTP streams
	epatch ${PATCHDIR}/${P}-stream-seek.patch

	# Bug #55398 ... fix libjoy crash
	epatch ${PATCHDIR}/${P}-joycrash.patch

	# Bug #57755 ... don't show in taskbar if status-plugin is enabled
	epatch ${PATCHDIR}/${P}-status.patch

	if [ ! -f ${S}/config.rpath ] ; then
		touch ${S}/config.rpath
		chmod +x ${S}/config.rpath
	fi

#	# dtd updates Makefile.am, but not Makefile.in
#	export WANT_AUTOCONF=2.5
#	export WANT_AUTOMAKE=1.7
#	for subd in .; do
#		cd ${S}/${subd}
#
#		ebegin "Running aclocal in ${S}/${subd}"
#		aclocal
#		eend $?
#
#		ebegin "Running automake in ${S}/${subd}"
#		automake --gnu --add-missing --include-deps
#		retval=$?
#		eend $retval
#
#		if [ $retval -ne 0 ]; then
#			exit 1;
#		fi
#	done

	elibtoolize
}

src_compile() {
	filter-flags -fforce-addr -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE

	local myconf=""

	# Allow configure to detect mipslinux systems
	gnuconfig_update

	if use amd64; then
		myconf="${myconf} --disable-simd"
	else
	  	if use 3dnow || use mmx; then
			myconf="${myconf} --enable-simd"
		else
			myconf="${myconf} --disable-simd"
		fi
	fi

	use xml || myconf="${myconf} --disable-cdindex"

	econf \
		--with-dev-dsp=/dev/sound/dsp \
		--with-dev-mixer=/dev/sound/mixer \
		`use_enable oggvorbis vorbis` \
		`use_enable oggvorbis oggtest` \
		`use_enable oggvorbis vorbistest` \
		`use_enable esd` \
		`use_enable esd esdtest` \
		`use_enable mikmod` \
		`use_enable mikmod mikmodtest` \
		`use_with mikmod libmikmod` \
		`use_enable opengl` \
		`use_enable nls` \
		`use_enable ipv6` \
		`use_enable oss oss` \
		${myconf} \
		|| die

	emake -j1 || die
}

src_install() {
	make DESTDIR=${D} install || die

	dodoc AUTHORS ChangeLog FAQ NEWS README TODO

	keepdir /usr/share/xmms/Skins
	insinto /usr/share/pixmaps/
	donewins xmms/xmms_logo.xpm xmms.xpm
	doins xmms/xmms_logo.xpm
	insinto /usr/share/pixmaps/mini
	doins xmms/xmms_mini.xpm

	insinto /etc/X11/wmconfig
	donewins xmms/xmms.wmconfig xmms

	# Not installed per bug #47502
	#insinto /usr/share/gnome/apps/Multimedia
	#doins ${FILESDIR}/xmms.desktop
	insinto /usr/share/applnk/Multimedia
	doins ${FILESDIR}/xmms.desktop
	insinto /usr/share/applications
	doins ${FILESDIR}/xmms.desktop

	# Add the sexy Gentoo Ice skin
	insinto /usr/share/xmms/Skins/gentoo_ice
	doins ${WORKDIR}/gentoo_ice/*
	docinto gentoo_ice
	dodoc ${WORKDIR}/README
}