summaryrefslogtreecommitdiff
path: root/poky/meta/lib
diff options
context:
space:
mode:
authorAndrew Geissler <geissonator@yahoo.com>2020-10-27 21:52:24 +0300
committerAndrew Geissler <geissonator@yahoo.com>2020-11-23 23:00:33 +0300
commit4c19ea120a3e7a73dc8470c86744bc95997f1c90 (patch)
treedd2f114bc0a3614b653d1afde08bec22ab646e7e /poky/meta/lib
parent5f4b874fc7d6f8941582b97eb688c67dc21efffb (diff)
downloadopenbmc-4c19ea120a3e7a73dc8470c86744bc95997f1c90.tar.xz
poky: subtree update:ad30a6d470..7231c10430
Akira Shibakawa (3): License-Update: attr: Add a missing file to LIC_FILES_CHKSUM. License-Update: kmod: Add a missing file to LIC_FILES_CHKSUM. License-Update: gdk-pixbuf: Fix LICENSE. Alejandro Hernandez Samaniego (1): baremetal-helloworld: Fix install path since S doesnt have a trailing slash Alexander Kanavin (4): ncurses: only include upstream releases in version check python3: fix upstream version check boost-build-native: fix upstream version check selftest/virgl: drop the custom 30 sec timeout Alistair (1): weston-init: Allow setting idle time to 0 Changqing Li (1): toolchain-shar-extract.sh: don't print useless info Charlie Davies (1): bitbake: bitbake: fetch/git: use shlex.quote() to support spaces in SRC_URI url Chen Qi (2): watchdog: use /run instead of /var/run in systemd service file cups: use /run instead /var/run in systemd's unit file David Reyna (1): bitbake: toaster: Enable Gatesgarth branch in place of Zeus Douglas Royds (1): externalsrc: No single-task lock if S != B Joshua Watt (2): ref-variables: Given example for naming sources ref-manual: Document wic --offset option Khairul Rohaizzat Jamaluddin (1): imagefeatures: New test case, test_empty_image, added Khem Raj (5): autotools.bbclass: Order CONFIG_SHELL before CACHED_CONFIGUREVARS boost: Fix build on 32-bit arches with 64bit time_t only mesa: Fix build on 32bit arches supporting 64bit time_t only packagegroup-core-tools-debug: Disable for rv32/glibc as well packagegroup-core-tools-profile: Remove lttng-tools and perf for rv32/glibc Konrad Weihmann (1): lib/oe/rootfs: introduce IMAGE_LOG_CHECK_EXCLUDES Lee Chee Yang (2): libproxy: fix CVE-2020-25219 grub2: fix CVE-2020-10713 Martin Jansa (11): tune-cortexa76ae.inc: Correct TUNE_FEATURES arch-armv7a.inc: fix typo arch-mips.inc: remove duplicated mips64el-o32 from PACKAGE_EXTRA_ARCHS_tune-mips64el-o32 arch-arm64.inc: don't append _be to ARMPKGARCH for tune-aarch64_be tune-mips64r6.inc: fix typo in mipsisa64r6-nf tune-ep9312.inc: add t suffix for thumb to PACKAGE_EXTRA_ARCHS_tune-ep9312 tune-riscv.inc: use nf suffix also for TUNE_PKGARCH tune-supersparc.inc: remove tune-thunderx.inc: don't append _be to ARMPKGARCH for tune-thunderx_be siteinfo: Recognize 32bit PPC LE siteinfo: Recognize bigendian sh3be and sh4be Max Krummenacher (2): linux-firmware: package marvel sdio 8997 firmware linux-firmware: package nvidia firmware Mingli Yu (1): tcl: adapt to potential pseudo changes Naoki Hayama (1): dev/test/ref-manual: Fix typos Neil Armstrong (1): linux-firmware: add Amlogic VDEC firmware package Nicolas Dechesne (4): sdk-manual: use built-in footnotes dev-manual/dev-manual-common-tasks: fix warning sphinx: add 3.1.3 and 3.0.4 release in the switcher dev-manual/dev-manual-common-tasks: fix typos and use extlinks Paul Eggleton (2): classes/buildhistory: record SRC_URI classes/buildhistory: also save recipe info for native recipes Quentin Schulz (17): docs: poky.yaml: use HTTPS for links docs: ref-manual: indentation, links and highlights fixes docs: remove OE_INIT_FILE variable docs: ref-manual: fix typos docs: ref-manual: migration-2.3: specify 2.3 version instead of DISTRO docs: ref-manual: ref-classes: remove dropped tinderclient class docs: ref-manual: ref-system-requirements: update requirements to build Sphinx docs docs: sphinx: yocto-vars: rebuild files when poky.yaml has changed docs: poky.yaml: fix identation in host packages variables docs: dev-manual-common-tasks: remove paragraph about race when missing DEPENDS docs: dev-manual-common-tasks: update python webserver example to python3 docs: dev-manual: fix typos, highlights, indentation and links docs: ref-manual: ref-terms: add links to terms in glossary docs: bsp-guide: bsp: fix typos, highlights and links docs: kernel-dev: fix typos, highlights and links docs: kernel-dev-common: add .patch file extension to SRC_URI files docs: kernel-dev-faq: update outdated RDEPENDS_kernel-base Reyna, David (1): bitbake: toaster: Update documentation links to new URLs Richard Purdie (10): layer.conf: Switch to gatesgarth only in preparation for release bitbake: ui/toasterui: Fix startup faults from incorrect event sequencing bitbake: bitbake: Bump version to 1.48.0 ready for the new release oeqa: Add sync call to command execution poky.conf: Bump version for 3.2 gatesgarth release build-appliance-image: Update to master head revision bitbake: tests/fetch: Update upstream master->main branchname transition Revert "classes/buildhistory: also save recipe info for native recipes" valgrind: Fix build on musl after drd fixes build-appliance-image: Update to master head revision Robert Yang (1): weston: Fix PACKAGECONFIG for remoting Roland Hieber (1): devtool: make sure .git/info exists before writing to .git/info/excludes Ross Burton (4): waf: don't assume the waf intepretter is good waf: add ${B} to do_configure[cleandirs] scripts/install-buildtools: Update to 3.2 M3 buildtools glib-2.0: fix parsing of slim encoded tzdata Sourabh Banerjee (1): layer.conf: fix sanity error for PATH variable in extensible SDK workflow Stacy Gaikovaia (2): valgrind: drd: fix pthread intercept test failures bitbake: main: Handle cooker daemon startup error Tim Orling (1): bitbake: lib/bb/ui/knotty: fix typo in parseprogress Victor Kamensky (3): Revert "qemumips: use 34Kf-64tlb CPU emulation" Revert "qemu: add 34Kf-64tlb fictitious cpu type" qemu: change TLBs number to 64 in 34Kf mips cpu model Yi Zhao (1): dhcpcd: add PACKAGECONFIG for ntp/chrony/ypbind hooks Zang Ruochen (1): harfbuzz: Refresh patch akuster (2): busybox: add rev and pgrep kea: add init scripts leimaohui (1): docs: Updated the status of spdx module. zangrc (1): classes: Fixed the problem of undefined variables when compiling meta-toolchain. Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: Ic45bc219b94960751896a0ae3d4923a9f5849e70
Diffstat (limited to 'poky/meta/lib')
-rw-r--r--poky/meta/lib/oe/rootfs.py2
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/devtool.py7
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/imagefeatures.py12
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/runcmd.py16
-rw-r--r--poky/meta/lib/oeqa/utils/commands.py8
5 files changed, 28 insertions, 17 deletions
diff --git a/poky/meta/lib/oe/rootfs.py b/poky/meta/lib/oe/rootfs.py
index 3813f68e8..4e09eae6b 100644
--- a/poky/meta/lib/oe/rootfs.py
+++ b/poky/meta/lib/oe/rootfs.py
@@ -55,6 +55,8 @@ class Rootfs(object, metaclass=ABCMeta):
excludes = [ 'log_check', r'^\+' ]
if hasattr(self, 'log_check_expected_regexes'):
excludes.extend(self.log_check_expected_regexes)
+ # Insert custom log_check excludes
+ excludes += [x for x in (self.d.getVar("IMAGE_LOG_CHECK_EXCLUDES") or "").split(" ") if x]
excludes = [re.compile(x) for x in excludes]
r = re.compile(match)
log_path = self.d.expand("${T}/log.do_rootfs")
diff --git a/poky/meta/lib/oeqa/selftest/cases/devtool.py b/poky/meta/lib/oeqa/selftest/cases/devtool.py
index 0185e670a..d3d2e04c2 100644
--- a/poky/meta/lib/oeqa/selftest/cases/devtool.py
+++ b/poky/meta/lib/oeqa/selftest/cases/devtool.py
@@ -107,13 +107,6 @@ class DevtoolBase(OESelftestTestCase):
'under the build directory')
self.append_config(self.sstate_conf)
- def tearDown(self):
- # devtools tests are heavy on IO and if bitbake can't write out its caches, we see timeouts.
- # call sync around the tests to ensure the IO queue doesn't get too large, taking any IO
- # hit here rather than in bitbake shutdown.
- super().tearDown()
- os.system("sync")
-
def _check_src_repo(self, repo_dir):
"""Check srctree git repository"""
self.assertTrue(os.path.isdir(os.path.join(repo_dir, '.git')),
diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
index f7a253374..415e0315f 100644
--- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
+++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
@@ -5,6 +5,7 @@
from oeqa.selftest.case import OESelftestTestCase
from oeqa.utils.commands import runCmd, bitbake, get_bb_var, runqemu
from oeqa.utils.sshcontrol import SSHControl
+import glob
import os
import json
@@ -347,7 +348,7 @@ UBOOT_ENTRYPOINT = "0x80080000"
Author: Humberto Ibarra <humberto.ibarra.lopez@intel.com>
Yeoh Ee Peng <ee.peng.yeoh@intel.com>
"""
- import glob
+
image_name = 'core-image-minimal'
features = 'IMAGE_GEN_DEBUGFS = "1"\n'
features += 'IMAGE_FSTYPES_DEBUGFS = "tar.bz2"\n'
@@ -368,3 +369,12 @@ UBOOT_ENTRYPOINT = "0x80080000"
for t in dbg_symbols_targets:
result = runCmd('objdump --syms %s | grep debug' % t)
self.assertTrue("debug" in result.output, msg='Failed to find debug symbol: %s' % result.output)
+
+ def test_empty_image(self):
+ """Test creation of image with no packages"""
+ bitbake('test-empty-image')
+ res_dir = get_bb_var('DEPLOY_DIR_IMAGE')
+ images = os.path.join(res_dir, "test-empty-image-*.manifest")
+ result = glob.glob(images)
+ with open(result[1],"r") as f:
+ self.assertEqual(len(f.read().strip()),0)
diff --git a/poky/meta/lib/oeqa/selftest/cases/runcmd.py b/poky/meta/lib/oeqa/selftest/cases/runcmd.py
index a5ef1ea95..fa6113d7f 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runcmd.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runcmd.py
@@ -64,12 +64,12 @@ class RunCmdTests(OESelftestTestCase):
runCmd, "echo foobar >&2; false", shell=True, assert_error=False)
def test_output(self):
- result = runCmd("echo stdout; echo stderr >&2", shell=True)
+ result = runCmd("echo stdout; echo stderr >&2", shell=True, sync=False)
self.assertEqual("stdout\nstderr", result.output)
self.assertEqual("", result.error)
def test_output_split(self):
- result = runCmd("echo stdout; echo stderr >&2", shell=True, stderr=subprocess.PIPE)
+ result = runCmd("echo stdout; echo stderr >&2", shell=True, stderr=subprocess.PIPE, sync=False)
self.assertEqual("stdout", result.output)
self.assertEqual("stderr", result.error)
@@ -77,7 +77,7 @@ class RunCmdTests(OESelftestTestCase):
numthreads = threading.active_count()
start = time.time()
# Killing a hanging process only works when not using a shell?!
- result = runCmd(['sleep', '60'], timeout=self.TIMEOUT, ignore_status=True)
+ result = runCmd(['sleep', '60'], timeout=self.TIMEOUT, ignore_status=True, sync=False)
self.assertEqual(result.status, -signal.SIGTERM)
end = time.time()
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
@@ -87,7 +87,7 @@ class RunCmdTests(OESelftestTestCase):
numthreads = threading.active_count()
start = time.time()
# Killing a hanging process only works when not using a shell?!
- result = runCmd(['sleep', '60'], timeout=self.TIMEOUT, ignore_status=True, stderr=subprocess.PIPE)
+ result = runCmd(['sleep', '60'], timeout=self.TIMEOUT, ignore_status=True, stderr=subprocess.PIPE, sync=False)
self.assertEqual(result.status, -signal.SIGTERM)
end = time.time()
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
@@ -95,7 +95,7 @@ class RunCmdTests(OESelftestTestCase):
def test_stdin(self):
numthreads = threading.active_count()
- result = runCmd("cat", data=b"hello world", timeout=self.TIMEOUT)
+ result = runCmd("cat", data=b"hello world", timeout=self.TIMEOUT, sync=False)
self.assertEqual("hello world", result.output)
self.assertEqual(numthreads, threading.active_count(), msg="Thread counts were not equal before (%s) and after (%s), active threads: %s" % (numthreads, threading.active_count(), threading.enumerate()))
self.assertEqual(numthreads, 1)
@@ -103,7 +103,7 @@ class RunCmdTests(OESelftestTestCase):
def test_stdin_timeout(self):
numthreads = threading.active_count()
start = time.time()
- result = runCmd(['sleep', '60'], data=b"hello world", timeout=self.TIMEOUT, ignore_status=True)
+ result = runCmd(['sleep', '60'], data=b"hello world", timeout=self.TIMEOUT, ignore_status=True, sync=False)
self.assertEqual(result.status, -signal.SIGTERM)
end = time.time()
self.assertLess(end - start, self.TIMEOUT + self.DELTA)
@@ -111,12 +111,12 @@ class RunCmdTests(OESelftestTestCase):
def test_log(self):
log = MemLogger()
- result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log)
+ result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log, sync=False)
self.assertEqual(["Running: echo stdout; echo stderr >&2", "stdout", "stderr"], log.info_msgs)
self.assertEqual([], log.error_msgs)
def test_log_split(self):
log = MemLogger()
- result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log, stderr=subprocess.PIPE)
+ result = runCmd("echo stdout; echo stderr >&2", shell=True, output_log=log, stderr=subprocess.PIPE, sync=False)
self.assertEqual(["Running: echo stdout; echo stderr >&2", "stdout"], log.info_msgs)
self.assertEqual(["stderr"], log.error_msgs)
diff --git a/poky/meta/lib/oeqa/utils/commands.py b/poky/meta/lib/oeqa/utils/commands.py
index f7f8c16bf..8059cbce3 100644
--- a/poky/meta/lib/oeqa/utils/commands.py
+++ b/poky/meta/lib/oeqa/utils/commands.py
@@ -167,7 +167,7 @@ class Result(object):
pass
-def runCmd(command, ignore_status=False, timeout=None, assert_error=True,
+def runCmd(command, ignore_status=False, timeout=None, assert_error=True, sync=True,
native_sysroot=None, limit_exc_output=0, output_log=None, **options):
result = Result()
@@ -184,6 +184,12 @@ def runCmd(command, ignore_status=False, timeout=None, assert_error=True,
cmd = Command(command, timeout=timeout, output_log=output_log, **options)
cmd.run()
+ # tests can be heavy on IO and if bitbake can't write out its caches, we see timeouts.
+ # call sync around the tests to ensure the IO queue doesn't get too large, taking any IO
+ # hit here rather than in bitbake shutdown.
+ if sync:
+ os.system("sync")
+
result.command = command
result.status = cmd.status
result.output = cmd.output