portaudio-19.06.00-r2.ebuild (1918B)
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5 inherit multilib-minimal autotools
6
7 DESCRIPTION="A free, cross-platform, open-source, audio I/O library"
8 HOMEPAGE="http://www.portaudio.com/"
9 SRC_URI="http://www.portaudio.com/archives/pa_stable_v190600_20161030.tgz
10 https://sources.debian.org/data/main/p/portaudio19/19.6.0-1/debian/patches/audacity-portmixer.patch -> ${PN}-19.06.00-audacity-portmixer.patch"
11
12 LICENSE="MIT"
13 SLOT="0"
14 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
15 IUSE="alsa +cxx debug doc jack oss static-libs sndio"
16
17 RDEPEND="alsa? ( >=media-libs/alsa-lib-1.0.27.2[${MULTILIB_USEDEP}] )
18 jack? ( virtual/jack[${MULTILIB_USEDEP}] )
19 sndio? ( media-sound/sndio:=[${MULTILIB_USEDEP}] )
20 "
21 DEPEND="${RDEPEND}"
22 BDEPEND="
23 doc? ( app-doc/doxygen )
24 virtual/pkgconfig
25 "
26
27 S="${WORKDIR}/${PN}"
28
29 DOCS=( README.txt )
30
31 PATCHES=(
32 "${DISTDIR}/${PN}-19.06.00-audacity-portmixer.patch"
33 "${FILESDIR}/${PN}-19.06.00-sndio.patch"
34 )
35
36 src_prepare() {
37 default
38
39 # depcomp is required when building the bindings/cpp extension
40 # but will be removed by autoreconf + libtool >= 2.4.6
41 # Protect it from removal
42 mv depcomp{,~} || die
43
44 eautoreconf
45
46 # Restore depcomp
47 mv depcomp{~,} || die
48 }
49
50 multilib_src_configure() {
51 local myeconfargs=(
52 $(use_enable debug debug-output)
53 $(use_enable cxx)
54 $(use_enable static-libs static)
55 $(use_with alsa)
56 $(use_with jack)
57 $(use_with oss)
58 $(use_with sndio)
59 )
60
61 ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
62 }
63
64 multilib_src_compile() {
65 # workaround parallel build issue
66 emake lib/libportaudio.la
67 emake
68 }
69
70 src_compile() {
71 multilib-minimal_src_compile
72
73 if use doc; then
74 doxygen -u Doxyfile || die
75 doxygen Doxyfile || die
76 fi
77 }
78
79 multilib_src_install_all() {
80 einstalldocs
81 use doc && dodoc -r doc/html
82 find "${ED}" -name "*.la" -delete || die
83 }