summaryrefslogtreecommitdiff
blob: c005bfaad55a5ed12da2214d0dfbd7ff6272e959 (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
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-sound/sox/sox-12.17.5-r1.ebuild,v 1.8 2006/06/16 21:06:17 flameeyes Exp $

inherit eutils flag-o-matic

DESCRIPTION="The swiss army knife of sound processing programs"
HOMEPAGE="http://sox.sourceforge.net"
SRC_URI="mirror://sourceforge/sox/${P}.tar.gz"

LICENSE="LGPL-2.1"
SLOT="0"
KEYWORDS="x86 ~ppc sparc amd64 ~mips alpha"
IUSE="ogg mad encode" # alsa oss

DEPEND="virtual/libc
	encode? ( media-sound/lame )
	ogg? ( media-libs/libvorbis )
	mad? ( media-sound/madplay )"
#	alsa? ( media-libs/alsa-lib )

src_compile () {

	# from version 12.17.4 sox has mp3 encoding/decoding if you have madlibs 
	# and lame using alsa by default
	local myconf

	epatch ${FILESDIR}/${PN}-soundcard.patch
	epatch ${FILESDIR}/${PN}-install.patch

	# Fixes wav segfaults. See Bug #35745.
	append-flags -fsigned-char
	use ppc && epatch ${FILESDIR}/${PN}-wav-segfault.patch

	myconf="${myconf} `use_enable ogg ogg-vorbis`"
	myconf="${myconf} `use_enable mad`"
	myconf="${myconf} `use_enable encode lame`"
	myconf="${myconf} --enable-oss-dsp"
#	myconf="${myconf} `use_enable oss oss-dsp`"
#	myconf="${myconf} `use_enable alsa alsa-dsp`"

#	SoX currently targets the ALSA kernel API and not alsa-lib. This is a problem because the interface changes.
#	see bug #63531 for more details
# 	The build will automatically disable ALSA support even if it's in USE
	myconf="${myconf} --disable-alsa-dsp"
	einfo "Notice.. ALSA support is currently broken in sox. ALSA support has been disabled."
	einfo "sox will automatically use OSS, if you have ALSA then it'll work through the"
	einfo "compatiblity layer."

	econf ${myconf} \
		--enable-fast-ulaw \
		--enable-fast-alaw || die "configure failed"
	emake || die "make failed"
}

src_install() {
	einstall || die "make install failed"
	prepallman

	dodoc Changelog README TODO *.txt
}