summaryrefslogtreecommitdiff
blob: 6c571bef8902304841c77fd1e9c216af5a1ee247 (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
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/ecasound/ecasound-2.9.0.ebuild,v 1.4 2013/07/06 18:53:41 ottxor Exp $

EAPI=4
PYTHON_DEPEND="python? 2"

inherit eutils python autotools

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

LICENSE="GPL-2"
SLOT="1"
KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
IUSE="alsa audiofile debug doc jack libsamplerate lv2 mikmod ncurses oil osc oss
python ruby sndfile static-libs test"
REQUIRED_USE="test? ( lv2 )"

RDEPEND="sys-libs/readline
	alsa? ( media-libs/alsa-lib )
	audiofile? ( media-libs/audiofile )
	jack? ( media-sound/jack-audio-connection-kit )
	libsamplerate? ( media-libs/libsamplerate )
	lv2? ( >=media-libs/lilv-0.5.0 )
	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}
	virtual/pkgconfig"

pkg_setup() {
	if use python ; then
		python_set_active_version 2
		python_pkg_setup
	fi
}

src_prepare() {
	epatch "${FILESDIR}"/${PN}-2.8.1-ldflags.patch

	if use python ; then
		sed -i -e "s:\$(ecasoundc_libs):\0 $(python_get_library -l):" \
			pyecasound/Makefile.am || die "sed failed"
	fi

	eautoreconf
}

src_configure() {
	local pyconf

	if use python ; then
		pyconf="--with-python-includes=${EPREFIX}$(python_get_includedir)
			--with-python-modules=${EPREFIX}$(python_get_libdir)"
	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 lv2 liblilv) \
		$(use_enable ncurses) \
		$(use_enable oil liboil) \
		$(use_enable osc liblo) \
		$(use_enable oss) \
		$(use_enable python pyecasound) \
		$(use_enable ruby rubyecasound) \
		$(use_enable sndfile) \
		$(use_enable static-libs static) \
		${pyconf}
}

src_install() {
	default

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

	prune_libtool_files
}

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
}