base.bbclass: add support for commercial license check

This addresses [BUGID #410], require implict action by someone to enable
functionality that may have license implications.

By default this diables mp3 and mpeg decoding

Signed-off-by: Saul Wold <Saul.Wold@intel.com>
This commit is contained in:
Saul Wold 2010-10-07 23:35:26 -07:00 committed by Richard Purdie
parent c47132ae66
commit 7d42965565
2 changed files with 11 additions and 0 deletions

View File

@ -466,6 +466,12 @@ python () {
if license == "INVALID":
bb.fatal('This recipe does not have the LICENSE field set (%s)' % pn)
commercial_license = bb.data.getVar('COMMERCIAL_LICENSE', d, 1)
import re
if commercial_license and re.search(pn, commercial_license):
bb.note("SKIPPING %s because it's Commerciallly Licensed" % pn)
raise bb.parse.SkipPackage("because it requires commercial license to ship product")
# If we're building a target package we need to use fakeroot (pseudo)
# in order to capture permissions, owners, groups and special files
if not bb.data.inherits_class('native', d) and not bb.data.inherits_class('cross', d):

View File

@ -123,6 +123,11 @@ GPLv3_HOSTTOOLS_WHITELIST = ""
GPLv3_WHITELIST = "less gnome-common"
GPLv3_LGPLv2_WHITELIST = "libassuan gnutls libtasn1 libidn"
# This is a list of packages that require a commercial license to ship
# product. If shipped as part of an image these packages may have
# implications so they are disabled by default
COMMERCIAL_LICENSE = "lame gst-fluendo-mp3 libmad mpeg2dec ffmpeg qmmp"
require conf/distro/include/world-broken.inc
require conf/distro/include/distro_tracking_fields.inc