summaryrefslogtreecommitdiff
blob: 1e91266377a74d13459caa6c298be48c1c8c63be (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
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/ecasound/ecasound-2.8.1.ebuild,v 1.2 2012/01/20 12:29:31 ago Exp $

EAPI=3
PYTHON_DEPEND="python? 2"

inherit eutils python autotools

DESCRIPTION="a package for multitrack audio processing"
HOMEPAGE="http://ecasound.seul.org/ecasound"
SRC_URI="http://${PN}.seul.org/download/${P}.tar.gz"

LICENSE="GPL-2"
SLOT="1"
KEYWORDS="~amd64 ~ppc ~x86"
IUSE="alsa audiofile debug doc jack libsamplerate mikmod ncurses oil osc oss
python ruby sndfile static-libs"

RDEPEND="sys-libs/readline
	alsa? ( media-libs/alsa-lib )
	audiofile? ( media-libs/audiofile )
	jack? ( media-sound/jack-audio-connection-kit )
	libsamplerate? ( media-libs/libsamplerate )
	media-libs/ladspa-sdk
	mikmod? ( media-libs/libmikmod:0 )
	ncurses? ( sys-libs/ncurses )
	oil? ( dev-libs/liboil )
	osc? ( media-libs/liblo )
	ruby? ( dev-lang/ruby )
	sndfile? ( media-libs/libsndfile )"
DEPEND="${RDEPEND}
	dev-util/pkgconfig"

pkg_setup() {
	use python && python_set_active_version 2
}

src_prepare() {
	epatch "${FILESDIR}"/${P}-ldflags.patch
	use python && sed -i -e "s:\$(ecasoundc_libs):\0 $(python_get_library -l):" \
		pyecasound/Makefile.am || die "sed failed"

	eautoreconf
}

src_configure() {
	local pyconf

	if use python ; then
		pyconf="--enable-pyecasound=c
			--with-python-includes=$(python_get_includedir)
			--with-python-modules=$(python_get_libdir)"
	else
		pyconf="--disable-pyecasound"
	fi

	econf \
		--disable-arts \
		--enable-shared \
		--enable-sys-readline \
		--with-largefile \
		$(use_enable alsa) \
		$(use_enable audiofile) \
		$(use_enable debug) \
		$(use_enable jack) \
		$(use_enable libsamplerate) \
		$(use_enable ncurses) \
		$(use_enable oil liboil) \
		$(use_enable osc liblo) \
		$(use_enable oss) \
		$(use_enable ruby rubyecasound) \
		$(use_enable sndfile) \
		$(use_enable static-libs static) \
		${pyconf}
}

src_install() {
	emake DESTDIR="${D}" install || die
	dodoc AUTHORS BUGS NEWS README TODO || die

	if use doc ; then
		dohtml Documentation/*.html || die
		dodoc Documentation/programmers_guide/ecasound_programmers_guide.txt || die
	fi

	use static-libs || find "${ED}" -name '*.la' -exec rm -f '{}' +
}

pkg_postinst() {
	use python && python_mod_optimize ecacontrol.py eci.py pyeca.py
}

pkg_postrm() {
	use python && python_mod_cleanup ecacontrol.py eci.py pyeca.py
}