Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 484252 | Differences between
and this patch

Collapse All | Expand All

(-)pulseaudio-4.0.ebuild (-57 / +110 lines)
Lines 4-10 Link Here
4
4
5
EAPI="5"
5
EAPI="5"
6
6
7
inherit eutils flag-o-matic user versionator udev
7
inherit eutils flag-o-matic multilib-minimal user versionator udev
8
8
9
DESCRIPTION="A networked sound server with an advanced plugin system"
9
DESCRIPTION="A networked sound server with an advanced plugin system"
10
HOMEPAGE="http://www.pulseaudio.org/"
10
HOMEPAGE="http://www.pulseaudio.org/"
Lines 17-45 SRC_URI="http://freedesktop.org/software Link Here
17
# GPL-forcing USE flags for those who use them.
17
# GPL-forcing USE flags for those who use them.
18
LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
18
LICENSE="!gdbm? ( LGPL-2.1 ) gdbm? ( GPL-2 )"
19
SLOT="0"
19
SLOT="0"
20
KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
20
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
21
IUSE="+alsa +asyncns avahi bluetooth +caps dbus doc equalizer +gdbm +glib gnome
21
IUSE="+alsa +asyncns avahi bluetooth +caps dbus doc equalizer +gdbm +glib gnome
22
gtk ipv6 jack libsamplerate lirc neon +orc oss qt4 realtime ssl systemd
22
gtk ipv6 jack libsamplerate lirc neon +orc oss qt4 realtime ssl systemd
23
system-wide tcpd test +udev +webrtc-aec +X xen"
23
system-wide tcpd test +udev +webrtc-aec +X xen"
24
24
25
RDEPEND=">=media-libs/libsndfile-1.0.20
25
RDEPEND=">=media-libs/libsndfile-1.0.20[${MULTILIB_USEDEP}]
26
	X? (
26
	X? (
27
		>=x11-libs/libX11-1.4.0
27
		>=x11-libs/libX11-1.4.0[${MULTILIB_USEDEP}]
28
		>=x11-libs/libxcb-1.6
28
		>=x11-libs/libxcb-1.6[${MULTILIB_USEDEP}]
29
		>=x11-libs/xcb-util-0.3.1
29
		>=x11-libs/xcb-util-0.3.1
30
		x11-libs/libSM
30
		x11-libs/libSM[${MULTILIB_USEDEP}]
31
		x11-libs/libICE
31
		x11-libs/libICE[${MULTILIB_USEDEP}]
32
		x11-libs/libXtst
32
		x11-libs/libXtst[${MULTILIB_USEDEP}]
33
	)
33
	)
34
	caps? ( sys-libs/libcap )
34
	caps? ( sys-libs/libcap[${MULTILIB_USEDEP}] )
35
	libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
35
	libsamplerate? ( >=media-libs/libsamplerate-0.1.1-r1 )
36
	alsa? ( >=media-libs/alsa-lib-1.0.19 )
36
	alsa? ( >=media-libs/alsa-lib-1.0.19 )
37
	glib? ( >=dev-libs/glib-2.4.0 )
37
	glib? ( >=dev-libs/glib-2.4.0[${MULTILIB_USEDEP}] )
38
	avahi? ( >=net-dns/avahi-0.6.12[dbus] )
38
	avahi? ( >=net-dns/avahi-0.6.12[dbus] )
39
	jack? ( >=media-sound/jack-audio-connection-kit-0.117 )
39
	jack? ( >=media-sound/jack-audio-connection-kit-0.117 )
40
	tcpd? ( sys-apps/tcp-wrappers )
40
	tcpd? ( sys-apps/tcp-wrappers[${MULTILIB_USEDEP}] )
41
	lirc? ( app-misc/lirc )
41
	lirc? ( app-misc/lirc )
42
	dbus? ( >=sys-apps/dbus-1.0.0 )
42
	dbus? ( >=sys-apps/dbus-1.0.0[${MULTILIB_USEDEP}] )
43
	gtk? ( x11-libs/gtk+:3 )
43
	gtk? ( x11-libs/gtk+:3 )
44
	gnome? ( >=gnome-base/gconf-2.4.0 )
44
	gnome? ( >=gnome-base/gconf-2.4.0 )
45
	bluetooth? (
45
	bluetooth? (
Lines 47-53 RDEPEND=">=media-libs/libsndfile-1.0.20 Link Here
47
		>=sys-apps/dbus-1.0.0
47
		>=sys-apps/dbus-1.0.0
48
		media-libs/sbc
48
		media-libs/sbc
49
	)
49
	)
50
	asyncns? ( net-libs/libasyncns )
50
	asyncns? ( net-libs/libasyncns[${MULTILIB_USEDEP}] )
51
	udev? ( >=virtual/udev-143[hwdb(+)] )
51
	udev? ( >=virtual/udev-143[hwdb(+)] )
52
	realtime? ( sys-auth/rtkit )
52
	realtime? ( sys-auth/rtkit )
53
	equalizer? ( sci-libs/fftw:3.0 )
53
	equalizer? ( sci-libs/fftw:3.0 )
Lines 58-64 RDEPEND=">=media-libs/libsndfile-1.0.20 Link Here
58
	webrtc-aec? ( media-libs/webrtc-audio-processing )
58
	webrtc-aec? ( media-libs/webrtc-audio-processing )
59
	xen? ( app-emulation/xen )
59
	xen? ( app-emulation/xen )
60
	systemd? ( >=sys-apps/systemd-39 )
60
	systemd? ( >=sys-apps/systemd-39 )
61
	dev-libs/json-c
61
	dev-libs/json-c[${MULTILIB_USEDEP}]
62
	>=sys-devel/libtool-2.2.4" # it's a valid RDEPEND, libltdl.so is used
62
	>=sys-devel/libtool-2.2.4" # it's a valid RDEPEND, libltdl.so is used
63
63
64
DEPEND="${RDEPEND}
64
DEPEND="${RDEPEND}
Lines 66-73 DEPEND="${RDEPEND} Link Here
66
	doc? ( app-doc/doxygen )
66
	doc? ( app-doc/doxygen )
67
	test? ( dev-libs/check )
67
	test? ( dev-libs/check )
68
	X? (
68
	X? (
69
		x11-proto/xproto
69
		x11-proto/xproto[${MULTILIB_USEDEP}]
70
		>=x11-libs/libXtst-1.0.99.2
70
		>=x11-libs/libXtst-1.0.99.2[${MULTILIB_USEDEP}]
71
	)
71
	)
72
	dev-libs/libatomic_ops
72
	dev-libs/libatomic_ops
73
	virtual/pkgconfig
73
	virtual/pkgconfig
Lines 105-151 src_prepare() { Link Here
105
	epatch_user
105
	epatch_user
106
}
106
}
107
107
108
src_configure() {
108
multilib_src_configure() {
109
	local myconf=()
110
109
	if use gdbm; then
111
	if use gdbm; then
110
		myconf+=" --with-database=gdbm"
112
		myconf+=( --with-database=gdbm )
111
	#elif use tdb; then
113
	#elif use tdb; then
112
	#	myconf+=" --with-database=tdb"
114
	#	myconf+=( --with-database=tdb )
113
	else
115
	else
114
		myconf+=" --with-database=simple"
116
		myconf+=( --with-database=simple )
115
	fi
117
	fi
116
118
117
	econf \
119
	myconf+=(
118
		--enable-largefile \
120
		--enable-largefile
119
		$(use_enable glib glib2) \
121
		$(use_enable glib glib2)
120
		--disable-solaris \
122
		--disable-solaris
121
		$(use_enable asyncns) \
123
		$(use_enable asyncns)
122
		$(use_enable oss oss-output) \
124
		$(use_enable oss oss-output)
123
		$(use_enable alsa) \
125
		$(use_enable alsa)
124
		$(use_enable lirc) \
126
		$(use_enable lirc)
125
		$(use_enable neon neon-opt) \
127
		$(use_enable neon neon-opt)
126
		$(use_enable tcpd tcpwrap) \
128
		$(use_enable tcpd tcpwrap)
127
		$(use_enable jack) \
129
		$(use_enable jack)
128
		$(use_enable avahi) \
130
		$(use_enable avahi)
129
		$(use_enable dbus) \
131
		$(use_enable dbus)
130
		$(use_enable gnome gconf) \
132
		$(use_enable gnome gconf)
131
		$(use_enable gtk gtk3) \
133
		$(use_enable gtk gtk3)
132
		$(use_enable libsamplerate samplerate) \
134
		$(use_enable libsamplerate samplerate)
133
		$(use_enable bluetooth bluez) \
135
		$(use_enable bluetooth bluez)
134
		$(use_enable X x11) \
136
		$(use_enable X x11)
135
		$(use_enable test default-build-tests) \
137
		$(use_enable test default-build-tests)
136
		$(use_enable udev) \
138
		$(use_enable udev)
137
		$(use_enable systemd) \
139
		$(use_enable systemd)
138
		$(use_enable ipv6) \
140
		$(use_enable ipv6)
139
		$(use_enable ssl openssl) \
141
		$(use_enable ssl openssl)
140
		$(use_enable webrtc-aec) \
142
		$(use_enable webrtc-aec)
141
		$(use_enable xen) \
143
		$(use_enable xen)
142
		$(use_with caps) \
144
		$(use_with caps)
143
		$(use_with equalizer fftw) \
145
		$(use_with equalizer fftw)
144
		--disable-adrian-aec \
146
		--disable-adrian-aec
145
		--disable-esound \
147
		--disable-esound
146
		--localstatedir="${EPREFIX}"/var \
148
		--localstatedir="${EPREFIX}"/var
147
		--with-udev-rules-dir="${EPREFIX}/$(udev_get_udevdir)"/rules.d \
149
		--with-udev-rules-dir="${EPREFIX}/$(udev_get_udevdir)"/rules.d
148
		${myconf}
150
	)
151
152
	if ! multilib_build_binaries; then
153
		# disable all the modules and stuff
154
		myconf+=(
155
			--disable-oss-output
156
			--disable-alsa
157
			--disable-lirc
158
			--disable-jack
159
			--disable-avahi
160
			--disable-gconf
161
			--disable-gtk3
162
			--disable-samplerate
163
			--disable-bluez
164
			--disable-udev
165
			--disable-systemd
166
			--disable-openssl
167
			--disable-webrtc-aec
168
			--disable-xen
169
			--without-fftw
170
171
			# tests involve random modules, so just do them for the native
172
			--disable-default-build-tests
173
		)
174
	fi
175
176
	ECONF_SOURCE=${S} \
177
	econf "${myconf[@]}"
178
}
179
180
multilib_src_compile() {
181
	if multilib_build_binaries; then
182
		emake
183
	else
184
		emake -C src libpulse{,-simple,-mainloop-glib}.la
185
	fi
186
}
187
188
src_compile() {
189
	multilib-minimal_src_compile
149
190
150
	if use doc; then
191
	if use doc; then
151
		pushd doxygen
192
		pushd doxygen
Lines 154-169 src_configure() { Link Here
154
	fi
195
	fi
155
}
196
}
156
197
157
src_test() {
198
multilib_src_test() {
158
	# We avoid running the toplevel check target because that will run
199
	# We avoid running the toplevel check target because that will run
159
	# po/'s tests too, and they are broken. Officially, it should work
200
	# po/'s tests too, and they are broken. Officially, it should work
160
	# with intltool 0.41, but that doesn't look like a stable release.
201
	# with intltool 0.41, but that doesn't look like a stable release.
161
	emake -C src check
202
	if multilib_build_binaries; then
203
		emake -C src check
204
	fi
162
}
205
}
163
206
164
src_install() {
207
multilib_src_install() {
165
	emake -j1 DESTDIR="${D}" install
208
	if multilib_build_binaries; then
209
		emake -j1 DESTDIR="${D}" install
210
	else
211
		emake DESTDIR="${D}" install-pkgconfigDATA
212
		emake DESTDIR="${D}" -C src \
213
			install-libLTLIBRARIES \
214
			lib_LTLIBRARIES="libpulse.la libpulse-simple.la libpulse-mainloop-glib.la" \
215
			install-pulseincludeHEADERS
216
	fi
217
}
166
218
219
multilib_src_install_all() {
167
	# Drop the script entirely if X is disabled
220
	# Drop the script entirely if X is disabled
168
	use X || rm "${ED}"/usr/bin/start-pulseaudio-x11
221
	use X || rm "${ED}"/usr/bin/start-pulseaudio-x11
169
222
Lines 199-205 src_install() { Link Here
199
	# Create the state directory
252
	# Create the state directory
200
	use prefix || diropts -o pulse -g pulse -m0755
253
	use prefix || diropts -o pulse -g pulse -m0755
201
254
202
	find "${D}" -name '*.la' -delete
255
	prune_libtool_files --all
203
}
256
}
204
257
205
pkg_postinst() {
258
pkg_postinst() {

Return to bug 484252