diff options
Diffstat (limited to 'poky/scripts')
| -rwxr-xr-x | poky/scripts/contrib/oe-build-perf-report-email.py | 13 | ||||
| -rwxr-xr-x | poky/scripts/git-intercept/git | 19 | ||||
| -rw-r--r-- | poky/scripts/lib/recipetool/create.py | 4 | ||||
| -rw-r--r-- | poky/scripts/lib/wic/misc.py | 1 | ||||
| -rw-r--r-- | poky/scripts/lib/wic/plugins/imager/direct.py | 2 | ||||
| -rw-r--r-- | poky/scripts/postinst-intercepts/update_udev_hwdb | 5 | ||||
| -rwxr-xr-x | poky/scripts/runqemu | 35 |
7 files changed, 55 insertions, 24 deletions
diff --git a/poky/scripts/contrib/oe-build-perf-report-email.py b/poky/scripts/contrib/oe-build-perf-report-email.py index c900720f6e..7192113c28 100755 --- a/poky/scripts/contrib/oe-build-perf-report-email.py +++ b/poky/scripts/contrib/oe-build-perf-report-email.py @@ -27,17 +27,6 @@ logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s") log = logging.getLogger('oe-build-perf-report') -def check_utils(): - """Check that all needed utils are installed in the system""" - missing = [] - for cmd in ('phantomjs', 'optipng'): - if not shutil.which(cmd): - missing.append(cmd) - if missing: - log.error("The following tools are missing: %s", ' '.join(missing)) - sys.exit(1) - - def parse_args(argv): """Parse command line arguments""" description = """Email build perf test report""" @@ -101,8 +90,6 @@ def main(argv=None): if args.debug: log.setLevel(logging.DEBUG) - check_utils() - if args.outdir: outdir = args.outdir if not os.path.exists(outdir): diff --git a/poky/scripts/git-intercept/git b/poky/scripts/git-intercept/git new file mode 100755 index 0000000000..8adf5c9ecb --- /dev/null +++ b/poky/scripts/git-intercept/git @@ -0,0 +1,19 @@ +#!/usr/bin/env python3 +# +# Wrapper around 'git' that doesn't think we are root + +import os +import shutil +import sys + +os.environ['PSEUDO_UNLOAD'] = '1' + +# calculate path to the real 'git' +path = os.environ['PATH'] +path = path.replace(os.path.dirname(sys.argv[0]), '') +real_git = shutil.which('git', path=path) + +if len(sys.argv) == 1: + os.execl(real_git, 'git') + +os.execv(real_git, sys.argv) diff --git a/poky/scripts/lib/recipetool/create.py b/poky/scripts/lib/recipetool/create.py index 220465ed2f..824ac6350d 100644 --- a/poky/scripts/lib/recipetool/create.py +++ b/poky/scripts/lib/recipetool/create.py @@ -1235,7 +1235,7 @@ def guess_license(srctree, d): return licenses -def split_pkg_licenses(licvalues, packages, outlines, fallback_licenses=[], pn='${PN}'): +def split_pkg_licenses(licvalues, packages, outlines, fallback_licenses=None, pn='${PN}'): """ Given a list of (license, path, md5sum) as returned by guess_license(), a dict of package name to path mappings, write out a set of @@ -1258,7 +1258,7 @@ def split_pkg_licenses(licvalues, packages, outlines, fallback_licenses=[], pn=' for pkgname in packages: # Assume AND operator between license files license = ' & '.join(list(set(pkglicenses.get(pkgname, ['Unknown'])))) or 'Unknown' - if license == 'Unknown' and pkgname in fallback_licenses: + if license == 'Unknown' and fallback_licenses and pkgname in fallback_licenses: license = fallback_licenses[pkgname] licenses = tidy_licenses(license) license = ' & '.join(licenses) diff --git a/poky/scripts/lib/wic/misc.py b/poky/scripts/lib/wic/misc.py index 3e11822996..3bc165fd7d 100644 --- a/poky/scripts/lib/wic/misc.py +++ b/poky/scripts/lib/wic/misc.py @@ -36,6 +36,7 @@ NATIVE_RECIPES = {"bmaptool": "bmap-tools", "mkdosfs": "dosfstools", "mkisofs": "cdrtools", "mkfs.btrfs": "btrfs-tools", + "mkfs.erofs": "erofs-utils", "mkfs.ext2": "e2fsprogs", "mkfs.ext3": "e2fsprogs", "mkfs.ext4": "e2fsprogs", diff --git a/poky/scripts/lib/wic/plugins/imager/direct.py b/poky/scripts/lib/wic/plugins/imager/direct.py index 35fff7c102..4d0b836ef6 100644 --- a/poky/scripts/lib/wic/plugins/imager/direct.py +++ b/poky/scripts/lib/wic/plugins/imager/direct.py @@ -259,7 +259,7 @@ class DirectPlugin(ImagerPlugin): if part.mountpoint == "/": if part.uuid: return "PARTUUID=%s" % part.uuid - elif part.label: + elif part.label and self.ptable_format != 'msdos': return "PARTLABEL=%s" % part.label else: suffix = 'p' if part.disk.startswith('mmcblk') else '' diff --git a/poky/scripts/postinst-intercepts/update_udev_hwdb b/poky/scripts/postinst-intercepts/update_udev_hwdb index 8076b8ae6f..8b3f5de791 100644 --- a/poky/scripts/postinst-intercepts/update_udev_hwdb +++ b/poky/scripts/postinst-intercepts/update_udev_hwdb @@ -9,14 +9,17 @@ case "${PREFERRED_PROVIDER_udev}" in systemd) UDEV_EXTRA_ARGS="--usr" UDEVLIBDIR="${rootlibexecdir}" + UDEVADM="${base_bindir}/udevadm" ;; *) UDEV_EXTRA_ARGS="" UDEVLIBDIR="${sysconfdir}" + UDEVADM="${bindir}/udevadm" ;; esac rm -f $D${UDEVLIBDIR}/udev/hwdb.bin -PSEUDO_UNLOAD=1 ${binprefix}qemuwrapper -L $D $D${libexecdir}/${binprefix}udevadm hwdb --update --root $D ${UDEV_EXTRA_ARGS} +PSEUDO_UNLOAD=1 ${binprefix}qemuwrapper -L $D $D${UDEVADM} hwdb --update --root $D ${UDEV_EXTRA_ARGS} || + PSEUDO_UNLOAD=1 qemuwrapper -L $D $D${UDEVADM} hwdb --update --root $D ${UDEV_EXTRA_ARGS} chown root:root $D${UDEVLIBDIR}/udev/hwdb.bin diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu index 2f77a7bd0f..6e1f073ed2 100755 --- a/poky/scripts/runqemu +++ b/poky/scripts/runqemu @@ -182,6 +182,7 @@ class BaseConfig(object): self.gl = False self.gl_es = False self.egl_headless = False + self.publicvnc = False self.novga = False self.cleantap = False self.saved_stty = '' @@ -521,6 +522,7 @@ class BaseConfig(object): elif arg == 'snapshot': self.snapshot = True elif arg == 'publicvnc': + self.publicvnc = True self.qemu_opt_script += ' -vnc :0' elif arg.startswith('tcpserial='): self.tcpserial_portnum = '%s' % arg[len('tcpserial='):] @@ -1363,13 +1365,27 @@ class BaseConfig(object): if (self.gl_es == True or self.gl == True) and (self.sdl == False and self.gtk == False): raise RunQemuError('Option gl/gl-es needs gtk or sdl option.') - if self.sdl == True or self.gtk == True or self.egl_headless == True: - if self.gl or self.gl_es or self.egl_headless: - self.qemu_opt += ' -device virtio-vga-gl ' + # If we have no display option, we autodetect based upon what qemu supports. We + # need our font setup and show-cusor below so we need to see what qemu --help says + # is supported so we can pass our correct config in. + if not self.nographic and not self.sdl and not self.gtk and not self.publicvnc and not self.egl_headless == True: + output = subprocess.check_output([self.qemu_bin, "--help"], universal_newlines=True) + if "-display gtk" in output: + self.gtk = True + elif "-display sdl" in output: + self.sdl = True else: - self.qemu_opt += ' -device virtio-vga ' + self.qemu_opt += '-display none' - self.qemu_opt += '-display ' + if self.sdl == True or self.gtk == True or self.egl_headless == True: + + if self.qemu_system.endswith(('i386', 'x86_64')): + if self.gl or self.gl_es or self.egl_headless: + self.qemu_opt += ' -device virtio-vga-gl ' + else: + self.qemu_opt += ' -device virtio-vga ' + + self.qemu_opt += ' -display ' if self.egl_headless == True: self.set_dri_path() self.qemu_opt += 'egl-headless,' @@ -1415,7 +1431,7 @@ class BaseConfig(object): if serial_num < 2: self.qemu_opt += " -serial null" - def setup_final(self): + def find_qemu(self): qemu_bin = os.path.join(self.bindir_native, self.qemu_system) # It is possible to have qemu-native in ASSUME_PROVIDED, and it won't @@ -1434,8 +1450,13 @@ class BaseConfig(object): if not os.access(qemu_bin, os.X_OK): raise OEPathError("No QEMU binary '%s' could be found" % qemu_bin) + self.qemu_bin = qemu_bin + + def setup_final(self): + + self.find_qemu() - self.qemu_opt = "%s %s %s %s %s" % (qemu_bin, self.get('NETWORK_CMD'), self.get('QB_RNG'), self.get('ROOTFS_OPTIONS'), self.get('QB_OPT_APPEND').replace('@DEPLOY_DIR_IMAGE@', self.get('DEPLOY_DIR_IMAGE'))) + self.qemu_opt = "%s %s %s %s %s" % (self.qemu_bin, self.get('NETWORK_CMD'), self.get('QB_RNG'), self.get('ROOTFS_OPTIONS'), self.get('QB_OPT_APPEND').replace('@DEPLOY_DIR_IMAGE@', self.get('DEPLOY_DIR_IMAGE'))) for ovmf in self.ovmf_bios: format = ovmf.rsplit('.', 1)[-1] |
