summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2013-11-30 16:12:52 +0000
committerMichał Górny <mgorny@gentoo.org>2013-11-30 16:12:52 +0000
commit4cda6ebf22d03688ff36d920ad2503577f07a64b (patch)
treebf149d4d56b9ca549c6ec24411c7be2adae6b5aa /media-sound
parentStable for HPPA (bug #492768). (diff)
downloadhistorical-4cda6ebf22d03688ff36d920ad2503577f07a64b.tar.gz
historical-4cda6ebf22d03688ff36d920ad2503577f07a64b.tar.bz2
historical-4cda6ebf22d03688ff36d920ad2503577f07a64b.zip
Introduce multilib support, bug #484252.
Package-Manager: portage-2.2.7/cvs/Linux x86_64 Manifest-Sign-Key: 0xEFB4464E!
Diffstat (limited to 'media-sound')
-rw-r--r--media-sound/pulseaudio/ChangeLog8
-rw-r--r--media-sound/pulseaudio/Manifest23
-rw-r--r--media-sound/pulseaudio/pulseaudio-4.0-r1.ebuild295
-rw-r--r--media-sound/pulseaudio/pulseaudio-9999.ebuild174
4 files changed, 437 insertions, 63 deletions
diff --git a/media-sound/pulseaudio/ChangeLog b/media-sound/pulseaudio/ChangeLog
index 04aff3b2d822..33e636259c9d 100644
--- a/media-sound/pulseaudio/ChangeLog
+++ b/media-sound/pulseaudio/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for media-sound/pulseaudio
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/ChangeLog,v 1.307 2013/11/23 21:41:38 pacho Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/ChangeLog,v 1.308 2013/11/30 16:12:45 mgorny Exp $
+
+*pulseaudio-4.0-r1 (30 Nov 2013)
+
+ 30 Nov 2013; Michał Górny <mgorny@gentoo.org> +pulseaudio-4.0-r1.ebuild,
+ pulseaudio-9999.ebuild:
+ Introduce multilib support, bug #484252.
23 Nov 2013; Pacho Ramos <pacho@gentoo.org> pulseaudio-4.0.ebuild:
amd64 stable, bug #477662
diff --git a/media-sound/pulseaudio/Manifest b/media-sound/pulseaudio/Manifest
index 18e1da145247..7b0efe565e3a 100644
--- a/media-sound/pulseaudio/Manifest
+++ b/media-sound/pulseaudio/Manifest
@@ -16,14 +16,27 @@ DIST pulseaudio-4.0.tar.xz 1392072 SHA256 35ceb36bb1822fe54f0b5e4863b4f486769fdf
EBUILD pulseaudio-2.1-r1.ebuild 6727 SHA256 b8072bfd393f33e71bf33cde7548c898a72a89c6a274b47f249112ac55c4c0f9 SHA512 810151ae1b69d40b2f56e71afcc82b600e5b1e9ab393d23e15d16e6da9f4647fc7bb5df4074274f6efc0ea5cd31a9bbbebc1d640b203ed0e190ae03fd0dfae3b WHIRLPOOL b6e016ef10af4a105eb63837d483ce9556f997fb19d06516ee93b5f8a8fb757a4e2230b92e94881fe037c654c7b4feb6c236a9167693c68bf99dcdacdcc1c146
EBUILD pulseaudio-3.0-r1.ebuild 6997 SHA256 1a5c4bba190d72beb196e40ccdc157cfc1a87d8aff8358aeb64af780bcee7964 SHA512 4aaaa3b61ed455dd69de4270148bc5e54afe73e394033ac6e403f5d517e7890c5c5339e565914aee0ae78f72fb745f903260f9a974f68357881ff36f3af866d3 WHIRLPOOL 80338978de4b4f8508e0ec84af791c6bf941f144781ed4bb4cc081a7f8d78b53a2f139ec194fe16ed32a3347cc4ec38c90631ada4b9e870d8075f2e237d540c7
EBUILD pulseaudio-3.0.ebuild 6914 SHA256 c7c1667d8e0c356570d6e99da19adebfa306018b12866fa10d69c7468c826dd8 SHA512 181de01781e777ecde13aab3484d28b43cdf7837997fee5c72bf45e7a6e352e75e34ee2c83ed962a50a4e01e8e966db3dc1b108004e2b02c78ff117916cdb04c WHIRLPOOL b03460b284cc7347905308e92f2d2c7ac3dae32a8c45e32a1bdc254d02ec3f3c8a67bd91a06829e569ef30c64956a4d4ff2eb066508c7a1effc0d5e88920c6a6
+EBUILD pulseaudio-4.0-r1.ebuild 8539 SHA256 2fa4b23599ec47ad279c7f7ed093e40e3c9636aa105aa391c7cf186408584abf SHA512 f4901f15a03f46022ce16a14392717598e11ef09110321aa0d4972f004f835911417d67eaeeb4d2a04f3652c0df984d28056792ecc7cf12df85c1a594d060a99 WHIRLPOOL 5c4c94369dc132c3d2d3701cd434517c3738e39db2878ca51cae40cf6c75d2ba1fe746adbef65b05a48aa1ee8fd90defe00802cd92b723824d640c9202f71c7b
EBUILD pulseaudio-4.0.ebuild 6918 SHA256 0295c03b48f8cf5374d7e7c6afa281477f3ab4807d80e7d6faea87f1ea62c229 SHA512 081e7abeac4795426d5fa3626bb0c117ade3471a85a3fd95b349389bb99e56a8a4a42558f666dd77bd084f0245e26f0d02629e25e8d6db4b53d6289e80f18153 WHIRLPOOL e5fddc90f33f07d4b494905bc98faf990636cc495a3b126938f4f2e75713fa65e47c33dd11a221f7e8bf31f84496551ff077994a7e714cdbd5faeaa107ca423f
-EBUILD pulseaudio-9999.ebuild 6905 SHA256 cc4bb49af4c1f67e58bc7096999d53a89e49295f6154ca169fcac56ab3ceb0fd SHA512 74f4ae2e2d9a3bda797c5691ae3d52e37b748329a99e0bbc36cf541502641a532026ecd05ed009ad6bcc833870628ecd33271e8de769e25c7f51ddc76dc6e12a WHIRLPOOL 26a8e32875b4c8401690c1efe0aa34b44cd13f4bcf9ca63d9eba3e767de316c0f6a74a13dd60267f9c73e4aec8af9374b2315883426cef89aa21f7930753fb9f
-MISC ChangeLog 59164 SHA256 c4cffe608d1c8a92fd95e05b20f5376c229ae1179451f0a62dd44be8e81effee SHA512 95b4d454d2ff951753ceb21635cdf1d9db17b14c58d7fae9785bc4b9052e222424608274501bed201fa22543310f7cd5e31706571870a73a5aa86d68f313c7aa WHIRLPOOL 93dfe5d91520afac61ab769305079bdde1d41fef7adb52f32a128f4e12bf275a2ae4935230b688cb252b5a9ff36cc9f832e58d9b1675c7e37e88363f4686ab7a
+EBUILD pulseaudio-9999.ebuild 8517 SHA256 e8321fea8a89ec7c2751e6ba03418ffdba2204b04bd97f5674414cc2489fcc14 SHA512 9227402907c6a97f598961d6b7e90a517e6922ebff6f03833f855daaeb91d7c3e22a9f9facc437f3779f530d73da2f7fea3ad9f76b7761e845e281e40a6ce1dd WHIRLPOOL 0a6b8c1ec94e84cd4f02b3d0f112a9d5cc6a7da726466e109b9ca58cadad50fafecc2769e277ec757870e2959721b32f20df0ee440240af7ad3bea24e31c5a13
+MISC ChangeLog 59346 SHA256 807a3e505498d1ecd23ab1b3aab3e0321e57e2ec008fad9a5a8d8a79322988a8 SHA512 301232e89d8d2ad57f7b4df6e4a0b87b544c938a1a5717a127ce4ae09f3b7306d514aeee623ea5e8b894b1296ce55322c6f6d7dcb4154e304cf2192c07536e51 WHIRLPOOL 3a38cc82574f0622a5299333e4e6a702272642f4172081126a20f60a2f8ad24dce0d9c13c490ecb94298567250f2b6d6366f34b15475d720588fe38fedb9c2c8
MISC metadata.xml 2915 SHA256 833bf5b1874232dc37f100f32ad32a4b757d02d96cda0b49596196f4d715ea61 SHA512 52660b534e64ce727c1eea8060cbf66a2a5776d3149e551aa00800c65c80dfbed5828c974ba82dcd6e56e849612645dd1f7d2cf1aed250a2631b53bb10cccb3c WHIRLPOOL 51605e887017e571800d79394d0515740888c337228dcb89f70389734044553b95043edd7e362b70cd9b1eff0be34a22f37d6a3bc45d41fa102264963e7b00a8
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
-iEYEAREIAAYFAlKRIRMACgkQCaWpQKGI+9QyfgCbBPf4ZXnZGgi6Z9btwYcEtxy9
-oaUAn39nFw5KSle5fGDbZkMcHra7PIk+
-=C6Q7
+iQJ8BAEBCABmBQJSmg6DXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
+ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC
+MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZO11oQAIYGaBKLDPOw9/8dOL+tg2ID
++UJJ2HQPd/7SCKzMx8QnY7e5oF2/u5k/hDLiHVZLsSmAyjRAMAN9h5NcKy03ORLe
+WgXWzMsV8YNpmSrAweQ6sgLO3ARArBm1hx2QOP1w+s2g5dVjMDsRv67A8aSY2PjW
+1QYy5oHvezp5K/VlLIq8MZy1nCZueebmYnveqaE0GRKesfAOj6kM3FVANmopXkv3
+0OrytaZfhKLA8TsLT9qDkcKJ2Hzu5v5By7ce9gIbOoUx0r83MGTfiU7nfuGnd7PL
+PK+nYdVvBnZ9JqjxDWNUZkbg+5Nd/Z5z0lH89apOBYtpxutiJJU0LunQh9aHVLZj
+7Ji1CKgdbngKqlfUL7A6Xra0zjxAeRWeRuxumJqNbeR0VjEWUbGPquuXh77CWh0t
+P2hRszSvfbuid0ckxVklrg3tYKsXt1snJIdvfr/Wm7pFAQn8VCnCH8KMQzxPYAxf
+MMnDRy3wHQwA9WN6v6ypy5ZXgaX0Jf1I6C/ov0ys2l+nlv3lHhRVUVlZTffk18cA
+mLC2nkTe76CvXvoPiqFuB0Sn2BJuDmvHDkfKi7S03jYWEeVpZjoSJk/m9Aaza0zz
+Z2+xiaapxeHs2wrj+1jIa/JMPqk/XHGGoKr0bs7fAYSfLA77seJzzsxrA6/4Ix/Q
+iNRuMZUBoiPyi9LkX7BH
+=bv4r
-----END PGP SIGNATURE-----
diff --git a/media-sound/pulseaudio/pulseaudio-4.0-r1.ebuild b/media-sound/pulseaudio/pulseaudio-4.0-r1.ebuild
new file mode 100644
index 000000000000..6543e570cfc9
--- /dev/null
+++ b/media-sound/pulseaudio/pulseaudio-4.0-r1.ebuild
@@ -0,0 +1,295 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/pulseaudio-4.0-r1.ebuild,v 1.1 2013/11/30 16:12:45 mgorny Exp $
+
+EAPI="5"
+
+inherit eutils flag-o-matic multilib-minimal user versionator udev
+
+DESCRIPTION="A networked sound server with an advanced plugin system"
+HOMEPAGE="http://www.pulseaudio.org/"
+
+SRC_URI="http://freedesktop.org/software/pulseaudio/releases/${P}.tar.xz"
+
+# libpulse-simple and libpulse link to libpulse-core; this is daemon's
+# library and can link to gdbm and other GPL-only libraries. In this
+# cases, we have a fully GPL-2 package. Leaving the rest of the
+# GPL-forcing USE flags for those who use them.
+LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="+alsa +asyncns avahi bluetooth +caps dbus doc equalizer +gdbm +glib gnome
+gtk ipv6 jack libsamplerate lirc neon +orc oss qt4 realtime ssl systemd
+system-wide tcpd test +udev +webrtc-aec +X xen"
+
+RDEPEND=">=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
+ X? (
+ >=x11-libs/libX11-1.4.0[${MULTILIB_USEDEP}]
+ >=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
+ >=x11-libs/xcb-util-0.3.1
+ x11-libs/libSM[${MULTILIB_USEDEP}]
+ x11-libs/libICE[${MULTILIB_USEDEP}]
+ x11-libs/libXtst[${MULTILIB_USEDEP}]
+ )
+ caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
+ libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
+ alsa? ( >=media-libs/alsa-lib-1.0.19 )
+ glib? ( >=dev-libs/glib-2.4.0[${MULTILIB_USEDEP}] )
+ avahi? ( >=net-dns/avahi-0.6.12[dbus] )
+ jack? ( >=media-sound/jack-audio-connection-kit-0.117 )
+ tcpd? ( sys-apps/tcp-wrappers[${MULTILIB_USEDEP}] )
+ lirc? ( app-misc/lirc )
+ dbus? ( >=sys-apps/dbus-1.0.0[${MULTILIB_USEDEP}] )
+ gtk? ( x11-libs/gtk+:3 )
+ gnome? ( >=gnome-base/gconf-2.4.0 )
+ bluetooth? (
+ >=net-wireless/bluez-4.99
+ >=sys-apps/dbus-1.0.0
+ media-libs/sbc
+ )
+ asyncns? ( net-libs/libasyncns[${MULTILIB_USEDEP}] )
+ udev? ( >=virtual/udev-143[hwdb(+)] )
+ realtime? ( sys-auth/rtkit )
+ equalizer? ( sci-libs/fftw:3.0 )
+ orc? ( >=dev-lang/orc-0.4.9 )
+ ssl? ( dev-libs/openssl )
+ >=media-libs/speex-1.2_rc1
+ gdbm? ( sys-libs/gdbm )
+ webrtc-aec? ( media-libs/webrtc-audio-processing )
+ xen? ( app-emulation/xen )
+ systemd? ( >=sys-apps/systemd-39 )
+ dev-libs/json-c[${MULTILIB_USEDEP}]
+ abi_x86_32? ( !<=app-emulation/emul-linux-x86-soundlibs-20131008-r1
+ !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)] )
+ >=sys-devel/libtool-2.2.4" # it's a valid RDEPEND, libltdl.so is used
+
+DEPEND="${RDEPEND}
+ sys-devel/m4
+ doc? ( app-doc/doxygen )
+ test? ( dev-libs/check )
+ X? (
+ x11-proto/xproto[${MULTILIB_USEDEP}]
+ >=x11-libs/libXtst-1.0.99.2[${MULTILIB_USEDEP}]
+ )
+ dev-libs/libatomic_ops
+ virtual/pkgconfig
+ system-wide? ( || ( dev-util/unifdef sys-freebsd/freebsd-ubin ) )
+ dev-util/intltool"
+# This is a PDEPEND to avoid a circular dep
+PDEPEND="alsa? ( media-plugins/alsa-plugins[pulseaudio] )"
+
+# alsa-utils dep is for the alsasound init.d script (see bug #155707)
+# bluez dep is for the bluetooth init.d script
+# PyQt4 dep is for the qpaeq script
+RDEPEND="${RDEPEND}
+ equalizer? ( qt4? ( dev-python/PyQt4[dbus] ) )
+ X? ( gnome-extra/gnome-audio )
+ system-wide? (
+ sys-apps/openrc
+ alsa? ( media-sound/alsa-utils )
+ bluetooth? ( >=net-wireless/bluez-4 )
+ )"
+
+# See "*** BLUEZ support not found (requires D-Bus)" in configure.ac
+REQUIRED_USE="bluetooth? ( dbus )"
+
+pkg_setup() {
+ enewgroup audio 18 # Just make sure it exists
+
+ if use system-wide; then
+ enewgroup pulse-access
+ enewgroup pulse
+ enewuser pulse -1 -1 /var/run/pulse pulse,audio
+ fi
+}
+
+src_prepare() {
+ epatch_user
+}
+
+multilib_src_configure() {
+ local myconf=()
+
+ if use gdbm; then
+ myconf+=( --with-database=gdbm )
+ #elif use tdb; then
+ # myconf+=( --with-database=tdb )
+ else
+ myconf+=( --with-database=simple )
+ fi
+
+ myconf+=(
+ --enable-largefile
+ $(use_enable glib glib2)
+ --disable-solaris
+ $(use_enable asyncns)
+ $(use_enable oss oss-output)
+ $(use_enable alsa)
+ $(use_enable lirc)
+ $(use_enable neon neon-opt)
+ $(use_enable tcpd tcpwrap)
+ $(use_enable jack)
+ $(use_enable avahi)
+ $(use_enable dbus)
+ $(use_enable gnome gconf)
+ $(use_enable gtk gtk3)
+ $(use_enable libsamplerate samplerate)
+ $(use_enable bluetooth bluez)
+ $(use_enable X x11)
+ $(use_enable test default-build-tests)
+ $(use_enable udev)
+ $(use_enable systemd)
+ $(use_enable ipv6)
+ $(use_enable ssl openssl)
+ $(use_enable webrtc-aec)
+ $(use_enable xen)
+ $(use_with caps)
+ $(use_with equalizer fftw)
+ --disable-adrian-aec
+ --disable-esound
+ --localstatedir="${EPREFIX}"/var
+ --with-udev-rules-dir="${EPREFIX}/$(udev_get_udevdir)"/rules.d
+ )
+
+ if ! multilib_build_binaries; then
+ # disable all the modules and stuff
+ myconf+=(
+ --disable-oss-output
+ --disable-alsa
+ --disable-lirc
+ --disable-jack
+ --disable-avahi
+ --disable-gconf
+ --disable-gtk3
+ --disable-samplerate
+ --disable-bluez
+ --disable-udev
+ --disable-systemd
+ --disable-openssl
+ --disable-webrtc-aec
+ --disable-xen
+ --without-fftw
+
+ # tests involve random modules, so just do them for the native
+ --disable-default-build-tests
+
+ # hack around unnecessary checks
+ # (results don't matter, we're not building anything using it)
+ ac_cv_lib_ltdl_lt_dladvise_init=yes
+ --with-database=simple
+ )
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_build_binaries; then
+ emake
+ else
+ emake -C src libpulse{,-simple,-mainloop-glib}.la
+ fi
+}
+
+src_compile() {
+ multilib-minimal_src_compile
+
+ if use doc; then
+ pushd doxygen
+ doxygen doxygen.conf
+ popd
+ fi
+}
+
+multilib_src_test() {
+ # We avoid running the toplevel check target because that will run
+ # po/'s tests too, and they are broken. Officially, it should work
+ # with intltool 0.41, but that doesn't look like a stable release.
+ if multilib_build_binaries; then
+ emake -C src check
+ fi
+}
+
+multilib_src_install() {
+ if multilib_build_binaries; then
+ emake -j1 DESTDIR="${D}" install
+ else
+ emake DESTDIR="${D}" install-pkgconfigDATA
+ emake DESTDIR="${D}" -C src \
+ install-libLTLIBRARIES \
+ lib_LTLIBRARIES="libpulse.la libpulse-simple.la libpulse-mainloop-glib.la" \
+ install-pulseincludeHEADERS
+ fi
+}
+
+multilib_src_install_all() {
+ # Drop the script entirely if X is disabled
+ use X || rm "${ED}"/usr/bin/start-pulseaudio-x11
+
+ if use system-wide; then
+ newconfd "${FILESDIR}/pulseaudio.conf.d" pulseaudio
+
+ use_define() {
+ local define=${2:-$(echo $1 | tr '[:lower:]' '[:upper:]')}
+
+ use "$1" && echo "-D$define" || echo "-U$define"
+ }
+
+ unifdef $(use_define avahi) \
+ $(use_define alsa) \
+ $(use_define bluetooth) \
+ $(use_define udev) \
+ "${FILESDIR}/pulseaudio.init.d-5" \
+ > "${T}/pulseaudio"
+
+ doinitd "${T}/pulseaudio"
+ fi
+
+ use avahi && sed -i -e '/module-zeroconf-publish/s:^#::' "${ED}/etc/pulse/default.pa"
+
+ dodoc README todo
+
+ if use doc; then
+ pushd doxygen/html
+ dohtml *
+ popd
+ fi
+
+ # Create the state directory
+ use prefix || diropts -o pulse -g pulse -m0755
+
+ prune_libtool_files --all
+}
+
+pkg_postinst() {
+ if use system-wide; then
+ elog "PulseAudio in Gentoo can use a system-wide pulseaudio daemon."
+ elog "This support is enabled by starting the pulseaudio init.d ."
+ elog "To be able to access that you need to be in the group pulse-access."
+ elog "If you choose to use this feature, please make sure that you"
+ elog "really want to run PulseAudio this way:"
+ elog " http://pulseaudio.org/wiki/WhatIsWrongWithSystemMode"
+ elog "For more information about system-wide support, please refer to:"
+ elog " http://pulseaudio.org/wiki/SystemWideInstance"
+ if use gnome ; then
+ elog
+ elog "By enabling gnome USE flag, you enabled gconf support. Please note"
+ elog "that you might need to remove the gnome USE flag or disable the"
+ elog "gconf module on /etc/pulse/system.pa to be able to use PulseAudio"
+ elog "with a system-wide instance."
+ fi
+ fi
+ if use bluetooth; then
+ elog
+ elog "The Bluetooth proximity module is not enabled in the default"
+ elog "configuration file. If you do enable it, you'll have to have"
+ elog "your Bluetooth controller enabled and inserted at bootup or"
+ elog "PulseAudio will refuse to start."
+ fi
+ if use equalizer && ! use qt4; then
+ elog "You've enabled the 'equalizer' USE-flag but not the 'qt4' USE-flag."
+ elog "This will build the equalizer module, but the 'qpaeq' tool"
+ elog "which is required to set equalizer levels will not work."
+ fi
+}
diff --git a/media-sound/pulseaudio/pulseaudio-9999.ebuild b/media-sound/pulseaudio/pulseaudio-9999.ebuild
index b38ad3b9c8a7..66103360b380 100644
--- a/media-sound/pulseaudio/pulseaudio-9999.ebuild
+++ b/media-sound/pulseaudio/pulseaudio-9999.ebuild
@@ -1,10 +1,10 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/pulseaudio-9999.ebuild,v 1.38 2013/08/09 19:19:40 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/media-sound/pulseaudio/pulseaudio-9999.ebuild,v 1.39 2013/11/30 16:12:45 mgorny Exp $
EAPI="5"
-inherit autotools eutils flag-o-matic user versionator git-2 udev
+inherit autotools eutils flag-o-matic multilib-minimal user versionator git-2 udev
DESCRIPTION="A networked sound server with an advanced plugin system"
HOMEPAGE="http://www.pulseaudio.org/"
@@ -22,24 +22,24 @@ IUSE="+alsa +asyncns avahi bluetooth +caps dbus doc equalizer +gdbm +glib gnome
gtk ipv6 jack libsamplerate lirc neon +orc oss qt4 realtime ssl systemd
system-wide tcpd test +udev +webrtc-aec +X xen"
-RDEPEND=">=media-libs/libsndfile-1.0.20
+RDEPEND=">=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
X? (
- >=x11-libs/libX11-1.4.0
- >=x11-libs/libxcb-1.6
+ >=x11-libs/libX11-1.4.0[${MULTILIB_USEDEP}]
+ >=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
>=x11-libs/xcb-util-0.3.1
- x11-libs/libSM
- x11-libs/libICE
- x11-libs/libXtst
+ x11-libs/libSM[${MULTILIB_USEDEP}]
+ x11-libs/libICE[${MULTILIB_USEDEP}]
+ x11-libs/libXtst[${MULTILIB_USEDEP}]
)
- caps? ( sys-libs/libcap )
+ caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
alsa? ( >=media-libs/alsa-lib-1.0.19 )
- glib? ( >=dev-libs/glib-2.4.0 )
+ glib? ( >=dev-libs/glib-2.4.0[${MULTILIB_USEDEP}] )
avahi? ( >=net-dns/avahi-0.6.12[dbus] )
jack? ( >=media-sound/jack-audio-connection-kit-0.117 )
- tcpd? ( sys-apps/tcp-wrappers )
+ tcpd? ( sys-apps/tcp-wrappers[${MULTILIB_USEDEP}] )
lirc? ( app-misc/lirc )
- dbus? ( >=sys-apps/dbus-1.0.0 )
+ dbus? ( >=sys-apps/dbus-1.0.0[${MULTILIB_USEDEP}] )
gtk? ( x11-libs/gtk+:3 )
gnome? ( >=gnome-base/gconf-2.4.0 )
bluetooth? (
@@ -47,7 +47,7 @@ RDEPEND=">=media-libs/libsndfile-1.0.20
>=sys-apps/dbus-1.0.0
media-libs/sbc
)
- asyncns? ( net-libs/libasyncns )
+ asyncns? ( net-libs/libasyncns[${MULTILIB_USEDEP}] )
udev? ( >=virtual/udev-143[hwdb(+)] )
realtime? ( sys-auth/rtkit )
equalizer? ( sci-libs/fftw:3.0 )
@@ -58,7 +58,9 @@ RDEPEND=">=media-libs/libsndfile-1.0.20
webrtc-aec? ( media-libs/webrtc-audio-processing )
xen? ( app-emulation/xen )
systemd? ( >=sys-apps/systemd-39 )
- dev-libs/json-c
+ dev-libs/json-c[${MULTILIB_USEDEP}]
+ abi_x86_32? ( !<=app-emulation/emul-linux-x86-soundlibs-20131008-r1
+ !app-emulation/emul-linux-x86-soundlibs[-abi_x86_32(-)] )
>=sys-devel/libtool-2.2.4" # it's a valid RDEPEND, libltdl.so is used
DEPEND="${RDEPEND}
@@ -66,8 +68,8 @@ DEPEND="${RDEPEND}
doc? ( app-doc/doxygen )
test? ( dev-libs/check )
X? (
- x11-proto/xproto
- >=x11-libs/libXtst-1.0.99.2
+ x11-proto/xproto[${MULTILIB_USEDEP}]
+ >=x11-libs/libXtst-1.0.99.2[${MULTILIB_USEDEP}]
)
dev-libs/libatomic_ops
virtual/pkgconfig
@@ -107,47 +109,93 @@ src_prepare() {
epatch_user
}
-src_configure() {
+multilib_src_configure() {
+ local myconf=()
+
if use gdbm; then
- myconf+=" --with-database=gdbm"
+ myconf+=( --with-database=gdbm )
#elif use tdb; then
- # myconf+=" --with-database=tdb"
+ # myconf+=( --with-database=tdb )
else
- myconf+=" --with-database=simple"
+ myconf+=( --with-database=simple )
fi
- econf \
- --enable-largefile \
- $(use_enable glib glib2) \
- --disable-solaris \
- $(use_enable asyncns) \
- $(use_enable oss oss-output) \
- $(use_enable alsa) \
- $(use_enable lirc) \
- $(use_enable neon neon-opt) \
- $(use_enable tcpd tcpwrap) \
- $(use_enable jack) \
- $(use_enable avahi) \
- $(use_enable dbus) \
- $(use_enable gnome gconf) \
- $(use_enable gtk gtk3) \
- $(use_enable libsamplerate samplerate) \
- $(use_enable bluetooth bluez) \
- $(use_enable X x11) \
- $(use_enable test default-build-tests) \
- $(use_enable udev) \
- $(use_enable systemd) \
- $(use_enable ipv6) \
- $(use_enable ssl openssl) \
- $(use_enable webrtc-aec) \
- $(use_enable xen) \
- $(use_with caps) \
- $(use_with equalizer fftw) \
- --disable-adrian-aec \
- --disable-esound \
- --localstatedir="${EPREFIX}"/var \
- --with-udev-rules-dir="${EPREFIX}/$(udev_get_udevdir)"/rules.d \
- ${myconf}
+ myconf+=(
+ --enable-largefile
+ $(use_enable glib glib2)
+ --disable-solaris
+ $(use_enable asyncns)
+ $(use_enable oss oss-output)
+ $(use_enable alsa)
+ $(use_enable lirc)
+ $(use_enable neon neon-opt)
+ $(use_enable tcpd tcpwrap)
+ $(use_enable jack)
+ $(use_enable avahi)
+ $(use_enable dbus)
+ $(use_enable gnome gconf)
+ $(use_enable gtk gtk3)
+ $(use_enable libsamplerate samplerate)
+ $(use_enable bluetooth bluez)
+ $(use_enable X x11)
+ $(use_enable test default-build-tests)
+ $(use_enable udev)
+ $(use_enable systemd)
+ $(use_enable ipv6)
+ $(use_enable ssl openssl)
+ $(use_enable webrtc-aec)
+ $(use_enable xen)
+ $(use_with caps)
+ $(use_with equalizer fftw)
+ --disable-adrian-aec
+ --disable-esound
+ --localstatedir="${EPREFIX}"/var
+ --with-udev-rules-dir="${EPREFIX}/$(udev_get_udevdir)"/rules.d
+ )
+
+ if ! multilib_build_binaries; then
+ # disable all the modules and stuff
+ myconf+=(
+ --disable-oss-output
+ --disable-alsa
+ --disable-lirc
+ --disable-jack
+ --disable-avahi
+ --disable-gconf
+ --disable-gtk3
+ --disable-samplerate
+ --disable-bluez
+ --disable-udev
+ --disable-systemd
+ --disable-openssl
+ --disable-webrtc-aec
+ --disable-xen
+ --without-fftw
+
+ # tests involve random modules, so just do them for the native
+ --disable-default-build-tests
+
+ # hack around unnecessary checks
+ # (results don't matter, we're not building anything using it)
+ ac_cv_lib_ltdl_lt_dladvise_init=yes
+ --with-database=simple
+ )
+ fi
+
+ ECONF_SOURCE=${S} \
+ econf "${myconf[@]}"
+}
+
+multilib_src_compile() {
+ if multilib_build_binaries; then
+ emake
+ else
+ emake -C src libpulse{,-simple,-mainloop-glib}.la
+ fi
+}
+
+src_compile() {
+ multilib-minimal_src_compile
if use doc; then
pushd doxygen
@@ -156,16 +204,28 @@ src_configure() {
fi
}
-src_test() {
+multilib_src_test() {
# We avoid running the toplevel check target because that will run
# po/'s tests too, and they are broken. Officially, it should work
# with intltool 0.41, but that doesn't look like a stable release.
- emake -C src check
+ if multilib_build_binaries; then
+ emake -C src check
+ fi
}
-src_install() {
- emake -j1 DESTDIR="${D}" install
+multilib_src_install() {
+ if multilib_build_binaries; then
+ emake -j1 DESTDIR="${D}" install
+ else
+ emake DESTDIR="${D}" install-pkgconfigDATA
+ emake DESTDIR="${D}" -C src \
+ install-libLTLIBRARIES \
+ lib_LTLIBRARIES="libpulse.la libpulse-simple.la libpulse-mainloop-glib.la" \
+ install-pulseincludeHEADERS
+ fi
+}
+multilib_src_install_all() {
# Drop the script entirely if X is disabled
use X || rm "${ED}"/usr/bin/start-pulseaudio-x11
@@ -201,7 +261,7 @@ src_install() {
# Create the state directory
use prefix || diropts -o pulse -g pulse -m0755
- find "${D}" -name '*.la' -delete
+ prune_libtool_files --all
}
pkg_postinst() {