Experienced users can change license with 'gpl' and 'lic3' PACKAGECONFIG
switches.
fix: drop unwanted --enable-libtheora & --enable-libvorbis in EXTRA_OECONF
Reported-by: Andreas Oberritter
Signed-off-by: Matthieu Crapet
---
meta/recipes-multimedia/libav/libav.inc | 35 +
1 file changed, 27 insertions(+), 8 deletions(-)
diff --git a/meta/recipes-multimedia/libav/libav.inc
b/meta/recipes-multimedia/libav/libav.inc
index 1d617a2..de9770b 100644
--- a/meta/recipes-multimedia/libav/libav.inc
+++ b/meta/recipes-multimedia/libav/libav.inc
@@ -7,7 +7,7 @@ DESCRIPTION = "Libav is a friendly and community-driven effort
to provide its us
HOMEPAGE = "http://libav.org/";
SECTION = "libs"
-LICENSE = "GPLv2+"
+LICENSE = "LGPLv2.1+"
LICENSE_FLAGS = "commercial"
# Provides ffmpeg compat, see http://libav.org/about.html
@@ -29,7 +29,7 @@ BUILD_OPTIMIZATION = "${FULL_OPTIMIZATION}"
EXTRA_FFCONF_armv7a = "--cpu=cortex-a8"
EXTRA_FFCONF ?= ""
-PACKAGECONFIG ??= "bzip2 x264 theora ${@bb.utils.contains('DISTRO_FEATURES',
'x11', 'x11', '', d)}"
+PACKAGECONFIG ??= "bzip2 gpl x264 theora
${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
PACKAGECONFIG[bzip2] = "--enable-bzlib,--disable-bzlib,bzip2"
PACKAGECONFIG[faac] = "--enable-libfaac,--disable-libfaac,faac"
PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm"
@@ -44,14 +44,35 @@ PACKAGECONFIG[vpx] =
"--enable-libvpx,--disable-libvpx,libvpx"
PACKAGECONFIG[x11] = "--enable-x11grab,--disable-x11grab,virtual/libx11
libxfixes libxext xproto virtual/libsdl"
PACKAGECONFIG[x264] = "--enable-libx264,--disable-libx264,x264"
-# Check codecs that require --enable-nonfree
-USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'faac', 'openssl'
], 'yes', '', d)}"
+# Licenses flags: allow to switch licence LGPL/GPL and v2/v3
+PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl"
+PACKAGECONFIG[lic3] = "--enable-version3,--disable-version3"
+
+# Check codecs and license coherency
+python () {
+ pkgconfig = (d.getVar('PACKAGECONFIG', True) or "").split()
+ nonfree = [ 'faac', 'openssl' ]
+ gpl = [ 'x11', 'x264' ]
+
+ if 'gpl' in pkgconfig:
+ if 'lic3' in pkgconfig:
+ d.setVar('LICENSE', 'GPLv3+')
+ else:
+ d.setVar('LICENSE', 'GPLv2+')
+ elif set(pkgconfig) & set(gpl):
+ raise bb.parse.SkipPackage("incompatible license, please add
'gpl' in PACKAGECONFIG")
+ elif 'lic3' in pkgconfig:
+ d.setVar('LICENSE', 'LGPLv3+')
+
+ if set(pkgconfig) & set(nonfree):
+ d.setVar('LICENSE', 'Proprietary')
+ bb.note("Change LICENSE to 'Proprietary'")
+}
EXTRA_OECONF = " \
--enable-shared \
--enable-pthreads \
---enable-gpl \
-${@bb.utils.contains('USE_NONFREE', 'yes', '--enable-nonfree', '', d)} \
+${@bb.utils.contains('LICENSE', 'Proprietary', '--enable-nonfree', '', d)}
\
--enable-avfilter \
\
--cross-prefix=${TARGET_PREFIX} \
@@ -60,8 +81,6 @@ EXTRA_OECONF = " \
--enable-avserver \
--enable-avplay \
--ld="${CCLD}" \
---enable-libtheora \
---enable-libvorbis \
--arch=${TARGET_ARCH} \
--target-os="linux" \
--enable-cross-compile \
--
2.0.0
--
___
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core