summaryrefslogtreecommitdiff
blob: 17414be9f9e97dd0c71e5f312d51219e1eb02264 (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
# Copyright 1999-2004 Gentoo Technologies, Inc.
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/timidity++/timidity++-2.13.0_rc1.ebuild,v 1.1 2004/02/21 20:18:33 eradicator Exp $

MY_PV=${PV/_/-}
MY_P=TiMidity++-${MY_PV}
S=${WORKDIR}/${MY_P}

DESCRIPTION="A handy MIDI to WAV converter with OSS and ALSA output support"
HOMEPAGE="http://timidity.sourceforge.net/"
SRC_URI="mirror://sourceforge/timidity/${MY_P}.tar.bz2"
RESTRICT="nomirror"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~x86 ~ppc ~amd64 ~sparc"
IUSE="oss nas esd motif X gtk oggvorbis tcltk slang alsa"

inherit gnuconfig


RDEPEND=">=sys-libs/ncurses-5.0
	X? ( >=x11-base/xfree-4.0 )
	esd? ( >=media-sound/esound-0.2.22 )
	gtk? ( =x11-libs/gtk+-1.2* )
	nas? ( >=media-libs/nas-1.4 )
	alsa? ( media-libs/alsa-lib )
	motif? ( >=x11-libs/openmotif-2.1 )
	slang? ( >=sys-libs/slang-1.4 )
	tcltk? ( >=dev-lang/tk-8.1 )
	oggvorbis? ( >=media-libs/libvorbis-1.0_beta4 )"

DEPEND="${RDEPEND}
	sys-devel/autoconf"

src_compile() {
	local myconf
	local audios
	local interfaces

	use amd64 && ( epatch ${FILESDIR}/gnuconfig_update.patch
		epatch ${FILESDIR}/long-64bit.patch
		gnuconfig_update )

	interfaces="dynamic,ncurses,emacs,vt100"
	if [ "`use oss`" ]; then \
		audios="oss";
	fi

	use X \
		&& myconf="${myconf} --with-x \
			--enable-spectrogram --enable-wrd" \
		&& interfaces="${interfaces},xskin,xaw" \
		|| myconf="${myconf} --without-x "

	use slang && interfaces="${interfaces},slang"
	if [ "`use X`" ]; then \
		use gtk && interfaces="${interfaces},gtk";
	fi
	if [ "`use X`" ]; then \
		use motif && interfaces="${interfaces},motif";
	fi

	use alsa \
		&& audios="${audios},alsa" \
		&& interfaces="${interfaces},alsaseq" \
		&& myconf="${myconf} --with-default-output=alsa"

	use esd && audios="${audios},esd"
	use oggvorbis && audios="${audios},vorbis"
	use nas && audios="${audios},nas"

	econf \
		--localstatedir=/var/state/timidity++ \
		--with-elf \
		--enable-audio=${audios} \
		--enable-interface=${interfaces} \
		--enable-server \
		--enable-network \
		${myconf} || die

	emake || die
}

src_install () {
	make DESTDIR=${D} install || die
	dodir /usr/share/timidity/config
	insinto /usr/share/timidity/config
	doins ${FILESDIR}/timidity.cfg
	dodoc AUTHORS COPYING ChangeLog* INSTALL*
	dodoc NEWS README*

	if use alsa; then
		insinto /etc/conf.d
		newins ${FILESDIR}/conf.d.timidity timidity

		exeinto /etc/init.d
		newexe ${FILESDIR}/init.d.timidity timidity
	fi
}

pkg_postinst () {
	einfo ""
	einfo "A timidity config file has been installed in"
	einfo "/usr/share/timitidy/config/timidity.cfg. This"
	einfo "file must to copied into /usr/share/timidity/"
	einfo "and edited to match your configuration."
	einfo ""
	if use alsa; then
		einfo "An init script for the alsa timidity sequencer has been installed."
		einfo "If you wish to use the timidity virtual sequencer, edit /etc/conf.d/timidity"
		einfo "and run 'rc-update add timidity <runlevel> && /etc/init.d/timidity start'"
	fi
}