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
|
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/timidity++/timidity++-2.13.2-r2.ebuild,v 1.19 2006/11/22 23:32:21 flameeyes Exp $
inherit eutils
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 mirror://gentoo/${P}-exiterror.patch"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 ~arm hppa ppc ppc64 sparc x86 ~x86-fbsd"
IUSE="oss nas esd motif X gtk gtk vorbis tcltk slang alsa arts jack portaudio emacs ao speex flac ncurses"
RDEPEND="ncurses? ( >=sys-libs/ncurses-5.0 )
gtk? ( >=x11-libs/gtk+-2.0 )
tcltk? ( >=dev-lang/tk-8.1 )
motif? ( virtual/motif )
esd? ( >=media-sound/esound-0.2.22 )
nas? ( >=media-libs/nas-1.4 )
alsa? ( media-libs/alsa-lib )
slang? ( =sys-libs/slang-1.4* )
arts? ( kde-base/arts )
jack? ( media-sound/jack-audio-connection-kit )
portaudio? ( !ppc? ( media-libs/portaudio ) )
vorbis? ( >=media-libs/libvorbis-1.0_beta4 )
flac? ( ~media-libs/flac-1.1.2 )
speex? ( >=media-libs/speex-1.1.5 )
ao? ( >=media-libs/libao-0.8.5 )"
DEPEND="${RDEPEND}
sys-devel/autoconf"
RDEPEND="${RDEPEND}
emacs? ( virtual/emacs )"
PDEPEND="|| ( media-sound/timidity-eawpatches media-sound/timidity-shompatches )"
src_unpack() {
unpack ${MY_P}.tar.bz2
cd ${S}
epatch "${DISTDIR}/${P}-exiterror.patch"
epatch "${FILESDIR}/${P}-gtk26.patch"
epatch "${FILESDIR}/${P}-gcc4.patch"
# fix header location of speex
sed -i -e "s:#include <speex:#include <speex/speex:g" configure* timidity/speex_a.c
}
src_compile() {
local myconf
local audios
use flac && audios="${audios},flac"
use speex && audios="${audios},speex"
use vorbis && audios="${audios},vorbis"
use oss && audios="${audios},oss"
use esd && audios="${audios},esd"
use arts && audios="${audios},arts"
use jack && audios="${audios},jack"
use portaudio && use !ppc && audios="${audios},portaudio"
use ao && audios="${audios},ao"
if use nas; then
audios="${audios},nas"
myconf="${myconf} --with-nas-library=/usr/$(get_libdir)/libaudio.so"
fi
if use alsa; then
audios="${audios},alsa"
myconf="${myconf} --with-default-output=alsa --enable-alsaseq"
fi
econf \
--localstatedir=/var/state/timidity++ \
--with-elf \
--enable-audio=${audios} \
--enable-server \
--enable-network \
--enable-dynamic \
--enable-vt100 \
--enable-spline=cubic \
$(use_enable emacs) \
$(use_enable slang) \
$(use_enable ncurses) \
$(use_with X x) \
$(use_enable X spectrogram) \
$(use_enable X wrd) \
$(use_enable X xskin) \
$(use_enable X xaw) \
$(use_enable gtk) \
$(use_enable motif) \
$(use_enable tcltk) \
${myconf} || die
emake || die
}
src_install() {
make DESTDIR="${D}" install || die
dodoc AUTHORS ChangeLog*
dodoc NEWS README* "${FILESDIR}/timidity.cfg"
# these are only for the ALSA sequencer mode
if use alsa; then
newconfd "${FILESDIR}/conf.d.timidity" timidity
newinitd "${FILESDIR}/init.d.timidity" timidity
fi
insinto /etc
newins "${FILESDIR}/timidity.cfg-r1" timidity.cfg
dodir /usr/share/timidity
dosym /etc/timidity.cfg /usr/share/timidity/timidity.cfg
newbin "${FILESDIR}/timidity-update" timidity-update
if use emacs ; then
dosed 's:/usr/local/bin/timidity:/usr/bin/timidity:g' /usr/share/emacs/site-lisp/timidity.el
else
rm "${D}/timidity.el"
fi
}
pkg_postinst() {
einfo
einfo "A timidity config file has been installed in /etc/timidity.cfg."
einfo
einfo "Do not edit this file as it will interfere with the timidity-update tool."
einfo "You will need to emerge timidity-eawpatches or timidity-shompatches."
einfo
einfo "The tool 'timidity-update' can be used to switch between installed patchsets."
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
if use sparc; then
ewarn "sparc support is experimental. oss, alsa, esd, and portaudio do not work."
ewarn "-Ow (save to wave file) does..."
fi
}
|