summaryrefslogtreecommitdiff
path: root/poky/meta/classes
diff options
context:
space:
mode:
authorBrad Bishop <bradleyb@fuzziesquirrel.com>2019-10-16 21:33:32 +0300
committerBrad Bishop <bradleyb@fuzziesquirrel.com>2019-10-16 21:34:50 +0300
commitf3f93bb878a10643895ece0c3926547b853dff7b (patch)
tree58ef864ebb771e07eefc3541334ae30d2eb07d19 /poky/meta/classes
parentb652a03d7d6ab6d9e0ca2b6f4a7b4b37f7f4997a (diff)
downloadopenbmc-f3f93bb878a10643895ece0c3926547b853dff7b.tar.xz
poky: subtree update:03d4d9d68f..52a625582e
Alejandro Enedino Hernandez Samaniego (2): documentation: Update multiconfig syntax and explanation on BBMULTICONFIG bitbake: bitbake-user-manual: Update multiconfig syntax and explanation of BBMULTICONFIG Alexander Kanavin (27): ethtool, libcap: fix upstream version check socat: turn hard readline dependency into an option perl: make gdbm optional python3: make gdbm optional python3: un-break disabling the readline PACKAGECONFIG libcheck: split /usr/bin/checkmk into its own package iproute2: make elfutils support optional bind: do not RDEPEND on bash elfutils: do not depend on target libtool license.bbclass: split incompatible license check into a helper function license_image.bbclass: check and reject packages which have incompatible licenses runqemu: unset another environment variable for 'egl-headless' gobject-introspection: update to 1.62.0 glib-2.0: upgrade to 2.62.1 glib-networking: update to 2.62.1 epiphany: upgrade 3.32.4 -> 3.34.1 webkitgtk: update 2.24.4 -> 2.26.1 gtk-doc: upgrade 1.31 -> 1.32 libdazzle: upgrade 3.32.3 -> 3.34.1 libsecret: upgrade 0.19.0 -> 0.19.1 mpg123: upgrade 1.25.11 -> 1.25.12 p11-kit: upgrade 0.23.16.1 -> 0.23.18.1 vala: upgrade 0.44.7 -> 0.46.3 meson: update to 0.52.0 libmodulemd-v1: introduce the recipe libmodulemd: remove the recipe createrepo-c: upgrade to 0.15.1 Alistair Francis (1): gdb: Bump from 8.3 to 8.3.1 Bruce Ashfield (2): linux-yocto-rt/5.2: update to -rt9 linux-yocto/5.2: fix strace/ptrace long runtime issues Changqing Li (1): llvm: remove -mlongcall from CXXFLAGS for powerpc Chen Qi (2): python: CVE-2019-16056 python3: CVE-2019-16056 Christophe PRIOUZEAU (23): ovmf: Clarify BSD license variant wpa-supplicant: Clarify BSD license variant cmake: Clarify BSD license variant flex: Clarify BSD license variant file: Clarify BSD license variant python-async: Clarify BSD license variant python-smmap: Clarify BSD license variant libtirpc: Clarify BSD license variant libarchive: Clarify BSD license variant pbzip2: Clarify BSD license variant lighttpd: Clarify BSD license variant rpcbind: Clarify BSD license variant tcp-wrappers: Clarify BSD license variant libxpm: Clarify BSD license variant libogg: Clarify BSD license variant libvorbis: Clarify BSD license variant libtheora: Clarify BSD license variant speex: Clarify BSD license variant speexdsp: Clarify BSD license variant libwebp: Clarify BSD license variant libpcre: Clarify BSD license variant p11-kit: Clarify BSD license variant libpcap: Clarify BSD license variant David Reyna (1): bitbake: toaster: Enable Zeus branch in place of Thud Jaewon Lee (1): devtool/standard.py: Not filtering devtool workspace for devtool finish Joerg Vehlow (1): runqemu: Remove disabling of high resolution timer Kai Kang (1): dnf.py: check busybox for case test_dnf_installroot Khem Raj (7): musl: Update to latest qemu: Add ppc64 to QEMU_TARGETS ghostscript: Disable libpaper perl: Handle PACKAGES_DYNAMIC for perl-native gnu-efi: Do not use gcc-only options when building with clang llvm: Update to 9.0.0 glib-2.0: Fix build with clang compiler Martin Jansa (1): kernel-devicetree.bbclass: add missing backslash Maxime Roussin-BĂ©langer (4): meta: add missing some description in devtools meta: simplify over descriptive descriptions in devtools shadow: update homepage and bugtracker meta: add missing description in recipes-extended Michael Cooper (1): wic/direct: Partition numbering is broken for MBR primary partition #4 Michael Halstead (1): uninative: Update to 2.7 release Peiran Hong (1): dbus: Change path of system_bus_socket from /var/run/dbus/ to /run/dbus/ Philip Balister (1): oe.svg: Copy artwork from openembedded-classic. Richard Purdie (8): layer.conf: Update for zeus series layer.conf: Update for zeus series bitbake: bitbake: Update to version 1.44.0 poky.conf: Bump version for 3.0 zeus release build-appliance-image: Update to master head revision scripts/gen-lockedsig-cache: Don't list paths which don't exist readline-native: Fix builds on tumbleweed build-appliance-image: Update to master head revision Ross Burton (15): meson: fix RDEPENDS meson: update patch status meson: fix cross detection systemd: don't install udev.pc manually systemd: don't install systemd-hwdb-update.service insane: add check for perllocal.pod ref-system-requirements: update support distribution list toolchain-scripts: export READELF harfbuzz: add PACKAGECONFIGs for all the optional dependencies oeqa/sdk: improve Meson test pango: remove obsolete libtool FILES bluez5: add needed character encoding for ptests oeqa/selftest/imagefeatures: improve test_hypervisor_fmts poky: add Ubuntu 19.04 as a supported distribution kernel-dev: don't use _append += Trevor Gamblin (3): watchdog: fix PIDFile path in existing patch lib/oe/terminal.py: fix gnome-terminal start behavior systemd.bbclass: add RMINITDIR for nativesdk builds Zang Ruochen (8): libpcap:upgrade 1.9.0 -> 1.9.1 sqlite3:upgrade 3.29 -> 3.30 expat:upgrade 2.2.8 -> 2.2.9 librepo:upgrade 1.10.5 -> 1.10.6 msmtp:upgrade 1.8.5 -> 1.8.6 libxfont2:upgrade 2.0.3 -> 2.0.4 fribidi:upgrade 1.0.5 -> 1.0.7 iso-codes:upgrade 4.3 -> 4.4 Change-Id: I15802c5814d0dbfd90f16d392dbd975f917a8032 Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
Diffstat (limited to 'poky/meta/classes')
-rw-r--r--poky/meta/classes/insane.bbclass19
-rw-r--r--poky/meta/classes/kernel-devicetree.bbclass2
-rw-r--r--poky/meta/classes/license.bbclass25
-rw-r--r--poky/meta/classes/license_image.bbclass10
-rw-r--r--poky/meta/classes/systemd.bbclass1
-rw-r--r--poky/meta/classes/toolchain-scripts.bbclass1
6 files changed, 44 insertions, 14 deletions
diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass
index 9b886d1380..9605ac2bae 100644
--- a/poky/meta/classes/insane.bbclass
+++ b/poky/meta/classes/insane.bbclass
@@ -34,7 +34,7 @@ ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \
split-strip packages-list pkgv-undefined var-undefined \
version-going-backwards expanded-d invalid-chars \
license-checksum dev-elf file-rdeps configure-unsafe \
- configure-gettext \
+ configure-gettext perllocalpod \
"
# Add usrmerge QA check based on distro feature
ERROR_QA_append = "${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', ' usrmerge', '', d)}"
@@ -795,6 +795,23 @@ def package_qa_check_usrmerge(pkg, d, messages):
return False
return True
+QAPKGTEST[perllocalpod] = "package_qa_check_perllocalpod"
+def package_qa_check_perllocalpod(pkg, d, messages):
+ """
+ Check that the recipe didn't ship a perlocal.pod file, which shouldn't be
+ installed in a distribution package. cpan.bbclass sets NO_PERLLOCAL=1 to
+ handle this for most recipes.
+ """
+ import glob
+ pkgd = oe.path.join(d.getVar('PKGDEST'), pkg)
+ podpath = oe.path.join(pkgd, d.getVar("libdir"), "perl*", "*", "*", "perllocal.pod")
+
+ matches = glob.glob(podpath)
+ if matches:
+ matches = [package_qa_clean_path(path, d, pkg) for path in matches]
+ msg = "%s contains perllocal.pod (%s), should not be installed" % (pkg, " ".join(matches))
+ package_qa_add_message(messages, "perllocalpod", msg)
+
QAPKGTEST[expanded-d] = "package_qa_check_expanded_d"
def package_qa_check_expanded_d(package, d, messages):
"""
diff --git a/poky/meta/classes/kernel-devicetree.bbclass b/poky/meta/classes/kernel-devicetree.bbclass
index 867b776aa7..8a81c850fd 100644
--- a/poky/meta/classes/kernel-devicetree.bbclass
+++ b/poky/meta/classes/kernel-devicetree.bbclass
@@ -84,7 +84,7 @@ do_deploy_append() {
${DEPLOYDIR}/$type-$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext.bin
if [ -e "${KERNEL_OUTPUT_DIR}/${type}.initramfs" ]; then
cat ${KERNEL_OUTPUT_DIR}/${type}.initramfs \
- ${DEPLOYDIR}/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext
+ ${DEPLOYDIR}/$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext \
> ${DEPLOYDIR}/${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.bin
ln -sf ${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_NAME}.$dtb_ext.bin \
${DEPLOYDIR}/${type}-${INITRAMFS_NAME}-$dtb_base_name-${KERNEL_DTB_LINK_NAME}.$dtb_ext.bin
diff --git a/poky/meta/classes/license.bbclass b/poky/meta/classes/license.bbclass
index adca881c85..648a4d7892 100644
--- a/poky/meta/classes/license.bbclass
+++ b/poky/meta/classes/license.bbclass
@@ -287,17 +287,7 @@ def incompatible_license_contains(license, truevalue, falsevalue, d):
bad_licenses = expand_wildcard_licenses(d, bad_licenses)
return truevalue if license in bad_licenses else falsevalue
-def incompatible_license(d, dont_want_licenses, package=None):
- """
- This function checks if a recipe has only incompatible licenses. It also
- take into consideration 'or' operand. dont_want_licenses should be passed
- as canonical (SPDX) names.
- """
- import oe.license
- license = d.getVar("LICENSE_%s" % package) if package else None
- if not license:
- license = d.getVar('LICENSE')
-
+def incompatible_pkg_license(d, dont_want_licenses, license):
# Handles an "or" or two license sets provided by
# flattened_licenses(), pick one that works if possible.
def choose_lic_set(a, b):
@@ -311,6 +301,19 @@ def incompatible_license(d, dont_want_licenses, package=None):
return any(not oe.license.license_ok(canonical_license(d, l), \
dont_want_licenses) for l in licenses)
+def incompatible_license(d, dont_want_licenses, package=None):
+ """
+ This function checks if a recipe has only incompatible licenses. It also
+ take into consideration 'or' operand. dont_want_licenses should be passed
+ as canonical (SPDX) names.
+ """
+ import oe.license
+ license = d.getVar("LICENSE_%s" % package) if package else None
+ if not license:
+ license = d.getVar('LICENSE')
+
+ return incompatible_pkg_license(d, dont_want_licenses, license)
+
def check_license_flags(d):
"""
This function checks if a recipe has any LICENSE_FLAGS that
diff --git a/poky/meta/classes/license_image.bbclass b/poky/meta/classes/license_image.bbclass
index 3f102d0fbc..b5399b6d96 100644
--- a/poky/meta/classes/license_image.bbclass
+++ b/poky/meta/classes/license_image.bbclass
@@ -43,10 +43,16 @@ def write_license_files(d, license_manifest, pkg_dic, rootfs=True):
bad_licenses = [canonical_license(d, l) for l in bad_licenses]
bad_licenses = expand_wildcard_licenses(d, bad_licenses)
+ whitelist = []
+ for lic in bad_licenses:
+ whitelist.extend((d.getVar("WHITELIST_" + lic) or "").split())
+
with open(license_manifest, "w") as license_file:
for pkg in sorted(pkg_dic):
- if bad_licenses:
+ if bad_licenses and pkg not in whitelist:
try:
+ if incompatible_pkg_license(d, bad_licenses, pkg_dic[pkg]["LICENSE"]):
+ bb.fatal("Package %s has an incompatible license %s and cannot be installed into the image." %(pkg, pkg_dic[pkg]["LICENSE"]))
(pkg_dic[pkg]["LICENSE"], pkg_dic[pkg]["LICENSES"]) = \
oe.license.manifest_licenses(pkg_dic[pkg]["LICENSE"],
bad_licenses, canonical_license, d)
@@ -56,6 +62,8 @@ def write_license_files(d, license_manifest, pkg_dic, rootfs=True):
pkg_dic[pkg]["LICENSES"] = re.sub(r'[|&()*]', ' ', pkg_dic[pkg]["LICENSE"])
pkg_dic[pkg]["LICENSES"] = re.sub(r' *', ' ', pkg_dic[pkg]["LICENSES"])
pkg_dic[pkg]["LICENSES"] = pkg_dic[pkg]["LICENSES"].split()
+ if pkg in whitelist:
+ bb.warn("Including %s with an incompatible license %s into the image, because it has been whitelisted." %(pkg, pkg_dic[pkg]["LICENSE"]))
if not "IMAGE_MANIFEST" in pkg_dic[pkg]:
# Rootfs manifest
diff --git a/poky/meta/classes/systemd.bbclass b/poky/meta/classes/systemd.bbclass
index 747055b8fa..1dca09964b 100644
--- a/poky/meta/classes/systemd.bbclass
+++ b/poky/meta/classes/systemd.bbclass
@@ -231,5 +231,6 @@ python rm_sysvinit_initddir (){
do_install[postfuncs] += "${RMINITDIR} "
RMINITDIR_class-target = " rm_sysvinit_initddir rm_systemd_unitdir "
+RMINITDIR_class-nativesdk = " rm_sysvinit_initddir rm_systemd_unitdir "
RMINITDIR = ""
diff --git a/poky/meta/classes/toolchain-scripts.bbclass b/poky/meta/classes/toolchain-scripts.bbclass
index 1a2ec4f3b2..db1d3215ef 100644
--- a/poky/meta/classes/toolchain-scripts.bbclass
+++ b/poky/meta/classes/toolchain-scripts.bbclass
@@ -90,6 +90,7 @@ toolchain_shared_env_script () {
echo 'export RANLIB=${TARGET_PREFIX}ranlib' >> $script
echo 'export OBJCOPY=${TARGET_PREFIX}objcopy' >> $script
echo 'export OBJDUMP=${TARGET_PREFIX}objdump' >> $script
+ echo 'export READELF=${TARGET_PREFIX}readelf' >> $script
echo 'export AR=${TARGET_PREFIX}ar' >> $script
echo 'export NM=${TARGET_PREFIX}nm' >> $script
echo 'export M4=m4' >> $script