diff options
author | Tanu Kaskinen <tanuk@iki.fi> | 2017-02-03 09:06:35 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2017-02-15 20:06:41 -0800 |
commit | 36f6e71ccbba456e706dd7723cb0e69990b6b552 (patch) | |
tree | 2c244b1a0b5cb4f9928b1768325f4db40fabca51 /meta/recipes-multimedia/pulseaudio/pulseaudio.inc | |
parent | 8b4474aa727976bb40ad3115ebe28d6ea81794c2 (diff) | |
download | poky-36f6e71ccbba456e706dd7723cb0e69990b6b552.tar.gz |
pulseaudio: 9.0 -> 10.0
Relase notes:
https://www.freedesktop.org/wiki/Software/PulseAudio/Notes/10.0/
The checksum of the LICENSE file changed due to some clarifications.
There were no changes to the actual licensing terms.
The LICENSE variable was not accurate, so I made changes to it.
Specifically:
* there's no GPL code in PulseAudio so I dropped GPL from the list
* the LGPL code allows using later versions of the license rather than
limiting to just 2.1
* there are some MIT and BSD licensed bits
I added more files to LIC_FILES_CHKSUM to have better coverage of all
the differently licensed code.
Dropped json-c and gdbm from DEPENDS. The new release doesn't use json-c
any more. gdbm isn't used when --with-database=simple is passed to
configure, so it should have been removed from DEPENDS a long time ago.
The new release dropped the Xen module, so the --without-xen configure
option isn't needed any more.
Added a comment for why --without-fftw is used.
Disabled the adrian echo canceller, because it has an unusual license,
and disabling the code was simpler than adding a new license to OE-Core.
Dropped upstreamed patches.
(From OE-Core rev: 4ddaf28fd36294fd940f26d55973da20eeeeb0d8)
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia/pulseaudio/pulseaudio.inc')
-rw-r--r-- | meta/recipes-multimedia/pulseaudio/pulseaudio.inc | 80 |
1 files changed, 74 insertions, 6 deletions
diff --git a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc index f5c5ed29c9..818ff560cc 100644 --- a/meta/recipes-multimedia/pulseaudio/pulseaudio.inc +++ b/meta/recipes-multimedia/pulseaudio/pulseaudio.inc | |||
@@ -2,16 +2,69 @@ SUMMARY = "Sound server for Linux and Unix-like operating systems" | |||
2 | HOMEPAGE = "http://www.pulseaudio.org" | 2 | HOMEPAGE = "http://www.pulseaudio.org" |
3 | AUTHOR = "Lennart Poettering" | 3 | AUTHOR = "Lennart Poettering" |
4 | SECTION = "libs/multimedia" | 4 | SECTION = "libs/multimedia" |
5 | LICENSE = "GPLv2+ & LGPLv2.1" | 5 | |
6 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d9ae089c8dc5339f8ac9d8563038a29f \ | 6 | # Most of PulseAudio code is under LGPLv2.1+. There are a few exceptions: |
7 | # | ||
8 | # The "adrian" echo canceller variant has code under a non-standard permissive | ||
9 | # license. See src/modules/echo-cancel/adrian-license.txt for details. This | ||
10 | # recipe disables the adrian echo canceller to avoid hassle with the unusual | ||
11 | # license. | ||
12 | # | ||
13 | # The src/modules/reserve* and src/pulsecore/rtkit* files are under the MIT | ||
14 | # license. | ||
15 | # | ||
16 | # The src/pulsecore/filter/ directory contains code under the 3-clause BSD | ||
17 | # license. | ||
18 | # | ||
19 | # src/utils/qpaeq is licensed under AGPL. qpaeq is not installed by this | ||
20 | # recipe, however, which is why AGPL is not mentioned in LICENSE. | ||
21 | # | ||
22 | # People who distribute PulseAudio binaries need to also consider that there | ||
23 | # are some dependencies to GPL libraries. LGPL code that depends on GPL | ||
24 | # libraries probably becomes effectively GPL-licensed (at compile-time? or at | ||
25 | # at link-time?). I'm not a lawyer, though, so I'm not sure of the exact | ||
26 | # implications. The GPL dependencies only affect the server, not the client | ||
27 | # library, with the exception of libdbus that affects both. These are the GPL | ||
28 | # library dependencies: | ||
29 | # | ||
30 | # One of the resampler implementations uses libsamplerate. This recipe doesn't | ||
31 | # enable that resampler, however. | ||
32 | # | ||
33 | # One of the database implementations uses gdbm. This recipe doesn't enable | ||
34 | # that database implementation, however. | ||
35 | # | ||
36 | # module-lirc (enabled by PACKAGECONFIG[lirc]) uses LIRC. | ||
37 | # | ||
38 | # module-equalizer-sink uses FFTW. This recipe disables that, however. | ||
39 | # | ||
40 | # The dependency with the most complicated licensing considerations is libdbus. | ||
41 | # When PACKAGECONFIG[dbus] is enabled (like it is by default), libdbus will be | ||
42 | # used by both the server and the client library (libpulse). Does this affect | ||
43 | # applications that use libpulse? It should be also noted that libdbus is | ||
44 | # dual-licensed: either GPLv2+ or AFL-2 terms apply. Whose decision is it which | ||
45 | # of the licenses apply? What a mess. Some people hold the view that libdbus is | ||
46 | # a system library that is covered by the "special exception" in GPLv2's | ||
47 | # section 3, and therefore libdbus's GPL license doesn't affect PulseAudio. | ||
48 | LICENSE = "LGPLv2.1+ & MIT & BSD-3-Clause" | ||
49 | |||
50 | LIC_FILES_CHKSUM = "file://LICENSE;md5=a848e8d03f04976778eab2348b59ed2b \ | ||
7 | file://GPL;md5=4325afd396febcb659c36b49533135d4 \ | 51 | file://GPL;md5=4325afd396febcb659c36b49533135d4 \ |
8 | file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \ | 52 | file://LGPL;md5=2d5025d4aa3495befef8f17206a5b0a1 \ |
9 | file://src/pulsecore/resampler.h;beginline=4;endline=21;md5=09794012ae16912c0270f3280cc8ff84" | 53 | file://AGPL;md5=73f1eb20517c55bf9493b7dd6e480788 \ |
54 | file://src/modules/echo-cancel/adrian-license.txt;md5=abbab006a561fbffccedf1c3531f34ab \ | ||
55 | file://src/pulsecore/filter/LICENSE.WEBKIT;md5=49defbaffddf8c51faf606ff7fc3b1f7 \ | ||
56 | file://src/pulsecore/resampler.h;beginline=4;endline=21;md5=09794012ae16912c0270f3280cc8ff84 \ | ||
57 | file://src/modules/reserve.h;beginline=6;endline=28;md5=0e23094760367d51b6609750e9b31fbb \ | ||
58 | file://src/pulsecore/rtkit.h;beginline=6;endline=29;md5=3f00ff966716ae0817c31576d1473528 \ | ||
59 | file://src/utils/qpaeq;beginline=2;endline=16;md5=7f62515a4762f0c3fc3d4201858bb964 \ | ||
60 | file://src/modules/echo-cancel/adrian-aec.h;beginline=3;endline=12;md5=d3ed4fad1c073f8b06f37495dc5d1026 \ | ||
61 | file://src/pulsecore/filter/biquad.h;beginline=1;endline=4;md5=6d46d1365206528a20137355924233c1 \ | ||
62 | " | ||
10 | 63 | ||
11 | DEPENDS = "libatomic-ops libsndfile1 libtool intltool-native" | 64 | DEPENDS = "libatomic-ops libsndfile1 libtool intltool-native" |
12 | # optional | 65 | # optional |
13 | DEPENDS += "udev alsa-lib glib-2.0 gconf" | 66 | DEPENDS += "udev alsa-lib glib-2.0 gconf" |
14 | DEPENDS += "json-c gdbm speexdsp libxml-parser-perl-native libcap" | 67 | DEPENDS += "speexdsp libxml-parser-perl-native libcap" |
15 | 68 | ||
16 | inherit autotools bash-completion pkgconfig useradd gettext perlnative bluetooth systemd manpages | 69 | inherit autotools bash-completion pkgconfig useradd gettext perlnative bluetooth systemd manpages |
17 | 70 | ||
@@ -25,9 +78,7 @@ EXTRA_OECONF = "\ | |||
25 | --enable-tcpwrap=no \ | 78 | --enable-tcpwrap=no \ |
26 | --with-access-group=audio \ | 79 | --with-access-group=audio \ |
27 | --disable-openssl \ | 80 | --disable-openssl \ |
28 | --disable-xen \ | ||
29 | --with-database=simple \ | 81 | --with-database=simple \ |
30 | --without-fftw \ | ||
31 | --without-zsh-completion-dir \ | 82 | --without-zsh-completion-dir \ |
32 | --with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d \ | 83 | --with-udev-rules-dir=`pkg-config --variable=udevdir udev`/rules.d \ |
33 | ac_cv_header_valgrind_memcheck_h=no \ | 84 | ac_cv_header_valgrind_memcheck_h=no \ |
@@ -38,6 +89,23 @@ EXTRA_OECONF = "\ | |||
38 | # oe-core nor meta-oe, so let's not add a PACKAGECONFIG entry for it for now. | 89 | # oe-core nor meta-oe, so let's not add a PACKAGECONFIG entry for it for now. |
39 | EXTRA_OECONF += "--without-soxr" | 90 | EXTRA_OECONF += "--without-soxr" |
40 | 91 | ||
92 | # The FFTW dependency (for module-equalizer-sink) was removed in commit | ||
93 | # ddbd713293 without explaining why it was not made a PACKAGECONFIG item | ||
94 | # instead. Oh well, let's keep it disabled until someone expresses some | ||
95 | # interest in having it enabled. | ||
96 | # | ||
97 | # One nice thing about disabling this is that it also prevents qpaeq from | ||
98 | # being installed, so we avoid adding AGPL to the list of licenses (nothing | ||
99 | # else in PulseAudio is licensed under AGPL). | ||
100 | EXTRA_OECONF += "--without-fftw" | ||
101 | |||
102 | # The "adrian" echo canceller implementation has a non-standard license | ||
103 | # (src/modules/echo-cancel/adrian-license.txt). It's a permissive license, so | ||
104 | # the licensing terms are probably not problematic, but it would be an extra | ||
105 | # hassle to add the license to OE-Core's set of licenses. The canceller isn't | ||
106 | # very good anyway, better alternatives exist (such as the webrtc canceller). | ||
107 | EXTRA_OECONF += "--disable-adrian-aec" | ||
108 | |||
41 | PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \ | 109 | PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', '${BLUEZ}', '', d)} \ |
42 | ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ | 110 | ${@bb.utils.contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \ |
43 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ | 111 | ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ |