From c342db356d4f451821781eb24eb9f3d39d6c0c5e Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Wed, 15 May 2019 21:57:59 -0400 Subject: subtree updates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit poky: 4e511f0abc..a015ed7704: Adrian Bunk (22): gnutls: upgrade 3.6.5 -> 3.6.7 dhcp: Replace OE specific patch for compatibility with latest bind with upstream patch Set XZ_COMPRESSION_LEVEL to -9 gcc: Remove Java support variables Use the best xz compression for the SDK gnome-doc-utils: Remove stale patch libxcrypt: Stop adding -std=gnu99 to CPPFLAGS file: Stop adding -std=c99 to CFLAGS gnu-efi: Remove support patch for gcc < 4.7 grub: Use -Wno-error instead of doing this on a per-warning basis socat: upgrade 1.7.3.2 -> 1.7.3.3 bison: upgrade 3.0.4 -> 3.1 mmc-utils: update to the latest upstream code cogl: upgrade 1.22.2 -> 1.22.4 cogl: remove -Werror=maybe-uninitialized workaround libxcb: remove workaround patch for a bug that was fixed in gcc 5 in 2015 sysstat: inherit upstream-version-is-even ccache: upgrade 3.6 -> 3.7.1 lttng-modules: upgrade 2.10.8 -> 2.10.9 iproute2: Remove bogus workaround patch for musl openssl: Remove openssl10 Remove irda-utils and the irda feature Alejandro Enedino Hernandez Samaniego (1): run-postinsts: Fix full execution of scripts at first boot Alejandro del Castillo (1): opkg: add ptest Alex Kiernan (12): systemd-conf: simplify creation of machine-specific configuration systemctl-native: Rewrite in Python supporting preset-all and mask image: call systemctl preset-all for images uboot-sign: Fix build when UBOOT_DTB_BINARY is empty patchelf: Upgrade 0.9 -> 0.10 python3: Add ntpath.py to python core go: Exclude vcs files when installing deps recipetool: fix unbound variable when fixed SRCREV can't be found systemd: Default to non-stateless images systemd-systemctl: Restore support for enable command systemd: Restore mask and preset targets, fix instance creation shadow: Backport last change reproducibility Alexander Kanavin (38): python3: add a tr-tr locale for test_locale ptest gobject-introspection: update to 1.60.1 dtc: upgrade 1.4.7 -> 1.5.0 webkitgtk: update to 2.24.0 libdazzle: update to 3.32.1 vala: update to 0.44.3 libdnf: update to 0.28.1 libcomps: upgrade 0.1.10 -> 0.1.11 dnf: upgrade 4.1.0 -> 4.2.2 btrfs-tools: upgrade 4.20.1 -> 4.20.2 meson: update to 0.50.0 libmodulemd: update to 2.2.3 at-spi2-core: fix meson 0.50 build ffmpeg: update to 4.1.3 python: update to 2.7.16 python: update to 3.7.3 python-numpy: update to 1.16.2 icu: update to 64.1 epiphany: update to 3.32.1.2 python3: add another multilib fix meson: do not try to substitute the prefix in python supplied paths python3-pygobject: update to 3.32.0 meson: add missing Upstream-Status and SOB to a patch acpica: update to 20190405 msmtp: fix upstream version check python-scons: update to 3.0.5 python-setuptools: update to 41.0.1 python3-mako: update to 1.0.9 python3-pbr: update to 5.1.3 python3-pip: update to 19.0.3 buildhistory: call a dependency parser only on actual dependency lists gtk-doc.bbclass: unify option setting for meson-based recipes python3-pycairo: update to 1.18.1 maintainers.inc: take over as perl maintainer xorg-lib: drop native overrides for REQUIRED_DISTRO_FEATURES meson: update to 0.50.1 perl: update to 5.28.2 packagegroup-self-hosted: drop epiphany Alistair Francis (5): u-boot: Upgrade from 2019.01 to 2019.04 beaglebone-yocto: Update u-boot config to match u-boot 19.04 u-boot: Fix missing Python.h build failure libsoup: Upgrade from 2.64.2 to 2.66.1 qemu: Upgrade from 3.1.0 to 4.0.0 Andre Rosa (1): bitbake: utils: Let mkdirhier fail if existing path is not a folder Andreas Müller (17): gobject-introspection: auto-enable/-disable gobject-introspection for meson libmodulemd: use gobject-introspection.bbclass on/off mechanism gdk-pixbuf: use gobject-introspection.bbclass on/off mechanism json-glib: use gobject-introspection.bbclass on/off mechanism libdazzle: use gobject-introspection.bbclass on/off mechanism clutter-gtk-1.0: use gobject-introspection.bbclass on/off mechanism pango: use gobject-introspection.bbclass on/off mechanism at-spi2-core: use gobject-introspection.bbclass on/off mechanism atk: use gobject-introspection.bbclass on/off mechanism libsoup-2.4: use gobject-introspection.bbclass on/off mechanism glib-networking: upgrade 2.58.0 -> 2.60.1 gst-plugins: move 'inherit gobject-introspection' to recipes supporting GI gstreamer1.0-python: rework gobject-introspection handling insane.bbclass: Trigger unrecognzed configure option for meson vte: upgrade 0.52.2 -> 0.56.1 vte: move shell auto scripts into seperate package qemu: split out vte into seperate PACKAGECONFIG Andreas Obergschwandtner (1): uboot-sign: add support for different u-boot configurations Andrej Valek (2): dropbear: update to 2019.78 systemd: upgrade to 242 Angus Lees (1): Revert "wic: Set a miniumum FAT16 volume size." Anuj Mittal (4): gcc: fix CVE-2018-18484 gdb: fix CVE-2017-9778 binutils: fix CVE-2019-9074 CVE-2019-9075 CVE-2019-9076 CVE-2019-9077 openssh: fix CVE-2018-20685, CVE-2019-6109, CVE-2019-6111 Armin Kuster (8): resulttool: add ltp test support logparser: Add decoding ltp logs ltp: add runtime test resulttool: add LTP compliance section logparser: Add LTP compliance section ltp_compliance: add new runtime manual compliance: remove bits done at runtime nss: cleanup recipe to match OE style Beniamin Sandu (1): kernel-devsrc: check for localversion files in the kernel source tree Breno Leitao (3): weston-init: Fix tab indentation weston-init: Add support for non-root start weston-init: Fix WESTON_USER typo Bruce Ashfield (8): linux-yocto/5.0: update to v5.0.5 linux-yocto-rt: update to 5.0.5-rt3 linux-yocto/5.0: update to v5.0.7 linux-yocto/4.19: update to v4.19.34 linux-yocto-rt/4.19: fix merge conflict in lru_drain linux-yocto/5.0: port RAID configuration tweaks from master linux-yocto/5.0: integrate TCP timeout / hang fix linux-yocto/5.0: update TCP patch to mainline version Changhyeok Bae (2): iw: upgrade 4.14 -> 5.0.1 iptables: upgrade 1.6.2 -> 1.8.2 Changqing Li (11): ruby: make ext module fiddle can compile success ruby: add ptest cogl: fix compile error caused by -Werror=maybe-uninitialized systemd: change default locale from C.UTF-8 to C m4: add ptest support gettext: add ptest support waffle: supprt build waffle without x11 piglit: support build piglit without x11 dbus: fix ptest failure populate_sdk_base: provide options to set sdk type python3: fix do_install fail for parallel buiild Chee Yang Lee (1): wic/bootimg-efi: replace hardcoded volume name with label Chen Qi (9): runqemu: do not check return code of tput busybox: fix ptest failure about 'dc' base-files: move hostname operations out of issue file settings webkitgtk: set CVE_PRODUCT dropbear: set CVE_PRODUCT libsdl: set CVE_PRODUCT ghostscript: set CVE_PRODUCT flac: also add flac to CVE_PRODUCT squashfs-tools: set CVE_PRODUCT David Reyna (1): bitbake: toaster: update to Warrior Dengke Du (2): perf: workaround the error cased by maybe-uninitialized warning linux-yocto_5.0: set devicetree for armv5 Denys Dmytriyenko (1): weston: upgrade 5.0.0 -> 6.0.0 Douglas Royds (2): distutils: Run python from the PATH in the -native case as well distutils: Tidy and simplify for readability Fabio Berton (1): mesa: Update 19.0.1 -> 19.0.3 He Zhe (2): ltp: Fix setrlimit03 call succeeded unexpectedly systemd: Bump up SRCREV to systemd-stable top to include the fix for shutdown now hang Hongxu Jia (15): image_types.bbclass: fix a race between the ubi and ubifs FSTYPES cpio/tar/native.bbclass: move rmt to sbindir and add a prefix to avoid native clashing acpica: use update-alternatives for acpidump apr: upgrade 1.6.5 -> 1.7.0 man-pages: upgrade 4.16 -> 5.01 man-db: upgrade 2.8.4 -> 2.8.5 bash: upgrade 4.4.18 -> 5.0 ncurses: fix incorrect UPSTREAM_CHECK_GITTAGREGEX gpgme: upgrade 1.12.0 -> 1.13.0 subversion: upgrade 1.11.1 -> 1.12.0 groff: upgrade 1.22.3 -> 1.22.4 libxml2: upgrade 2.9.8 -> 2.9.9 ghostscript: 9.26 -> 9.27 groff: imporve musl support oeqa/targetcontrol.py: fix qemuparams not work in runqemu with launch_cmd Jacob Kroon (3): grub-efi-native: Install grub-editenv bitbake: knotty: Pretty print task elapsed time base-passwd: Add kvm group Jaewon Lee (1): Adding back wrapper and using OEPYTHON3HOME variable for python3 Jens Rehsack (1): kernel-module-split.bbclass: support CONFIG_MODULE_COMPRESS=y Jonas Bonn (3): systemd: don't build firstboot by default systemd: do not create machine-id systemd: create preset files instead of installing in image Joshua Watt (6): classes/waf: Set WAFLOCK resulttool: Load results from URL resulttool: Add log subcommand qemux86: Allow higher tunes bitbake.conf: Account for older versions of bitbake resulttool: Add option to dump all ptest logs Kai Kang (5): msmtp: 1.6.6 -> 1.8.3 cryptodev: fix module loading error target-sdk-provides-dummy: resolve sstate conflict bitbake.conf: set NO_RECOMMENDATIONS with weak assignment webkitgtk: fix compile error for arm64 Kevin Hao (1): meta-yocto-bsp: Bump to the latest stable kernel for all the BSP Khem Raj (9): gcc-cross-canadian: Make baremetal specific code generic musl: Upgrade to master past 1.1.22 webkitgtk: Fix build with clang mdadm: Disable Werror gcc-target: Do not set --with-sysroot and gxx-include-dir paths systemd: Add -Wno-error=format-overflow to fix build with gcc9 systemd: Backport patch to fix build with gcc9 libgfortan: Package target gcc include directory to fix gcc-9: Add recipes for gcc 9.1 release Lei Maohui (2): dnf: Enable nativesdk icu: Added armeb support. Lei Yang (1): recipetool: add missed module Luca Boccassi (1): systemd: add cgroupv2 PACKAGECONFIG Mardegan, Alberto (1): oeqa/core/runner: dump stdout and stderr of each test case Mariano Lopez (5): update-alternatives.bbclass: Add function to get metadata ptest.bbclass: Add feature to populate a binary directory util-linux: Use PTEST binary directory busybox: Use PTEST binary directory ptest.bbclass: Use d.getVar instead of os.environ Martin Jansa (6): connman: add PACKAGECONFIG for nfc, fix MACHINE_ARCH signature when l2tp is enabled icecc.bbclass: stop causing everything to be effectivelly MACHINE_ARCH glibc: always use bfd linker opkg: fix ptest packaging when OPKGLIBDIR == libdir kexec-tools: refresh patches with devtool perf: make sure that the tools/include/uapi/asm-generic directory exists Matthias Schiffer (1): systemd: move "machines" symlinks to systemd-container Max Kellermann (2): useradd-staticids: print exception after parse_args() error initrdscripts: merge multiple "mkdir" calls Michael Scott (2): kernel-fitimage: support RISC-V procps: update legacy sysctl.conf to fix rp_filter sysctl issue Mikko Rapeli (3): elfutils: remove Elfutils-Exception and include GPLv2 for shared libraries oeqa/sdk: use bash to execute SDK test commands openssh: recommend rng-tools with sshd Mingli Yu (6): nettle: fix ptest failure elfutils: add ptest support elfutils: fix build failure with musl gcc-sanitizers: fix -Werror=maybe-uninitialized issue nettle: fix the Segmentation fault nettle: fix ptest failure Nathan Rossi (1): ccmake.bbclass: Fix up un-escaped quotes in output formatting Naveen Saini (5): core-image-rt: make sure that we append to DEPENDS core-image-rt-sdk: make sure that we append to DEPENDS bitbake.conf: add git-lfs to HOSTTOOLS_NONFATAL bitbake: bitbake: fetch2/git: git-lfs check linux-yocto: update genericx86* SRCREV for 4.19 Oleksandr Kravchuk (52): iproute2: update to 5.0.0 curl: update to 7.64.1 libxext: update to 1.3.4 x11perf: update to 1.6.1 libxdmcp: update to 1.1.3 libxkbfile: update 1.1.0 libxvmc: update to 1.0.11 libxrandr: update to 1.5.2 connman: update to 1.37 ethtool: update to 5.0 tar: update to 1.32 ffmpeg: update to 4.1.2 librepo: update to 1.9.6 libxmu: update to 1.1.3 libxcrypt: update to 4.4.4 wget: update to 1.20.2 libsecret: 0.18.8 createrepo-c: update to 0.12.2 libinput: update to 1.13.0 cronie: update to 1.5.4 libyaml: update to 0.2.2 fontconfig: update to 2.13.1 makedepend: update to 1.0.6 libdrm: update to 2.4.98 libinput: update to 1.13.1 libnotify: update to 0.7.8 libpng: update to 1.6.37 libcroco: update to 0.6.13 libpsl: update to 0.21.0 git: update to 2.21.0 quota: update to 4.05 gnupg: update to 2.2.15 lz4: update to 1.9.0 orc: update to 0.4.29 help2man-native: update to 1.47.10 cups: update to 2.2.11 pixman: update to 0.38.4 libcap: update to 2.27 ninja: add Upstream-Status and SOB for musl patch python-numpy: update to 1.16.3 python3-pygobject: update to 3.32.1 wget: update to 1.20.3 libsolv: update to 0.7.4 ell: add recipe sqlite3: update to 3.28.0 kmscube: update to latest revision coreutils: update to 8.31 mtools: update to 4.0.23 msmtp: update to 1.8.4 wpa-supplicant: update to 2.8 bitbake.conf: use https instead of http ell: update to 0.20 Paul Barker (3): oe.path: Add copyhardlink() helper function license_image: Use new oe.path.copyhardlink() helper gdb: Fix aarch64 build with musl Peter Kjellerstedt (1): systemd: Use PACKAGECONFIG definition to depend on libnss-myhostname Randy MacLeod (5): valgrind: update from 3.14.0 to 3.15.0 valgrind: fix vg_regtest return code valgrind: update the ptest subdirs list valgrind: adjust test filters and expected output valgrind: fix call/cachegrind ptests Richard Purdie (52): pseudo: Update to gain key bugfixes python3: Avoid hanging tests python3: Fix ptest output parsing go.bbclass: Remove unused override goarch.bbclass: Simplify logic e2fsprogs: Skip slow ptest tests bitbake: bitbake: Update version to 1.42.0 poky.conf: Bump version for 2.7 warrior release build-appliance-image: Update to warrior head revision bitbake: bitbake: Post release version bumnp to 1.43 poky.conf: Post release version bump build-appliance-image: Update to master head revision Revert "nettle: fix ptest failure" core-image-sato-sdk-ptest: Try and keep image below 4GB limit core-image-sato-ptest-fast: Add 'fast' ptest execution image core-image-sato-sdk-ptest: Include more ptests in ptest image core-image-sato-sdk-ptest: Add temporary PROVIDES core-image-sato-ptest resultool/resultutils: Fix module import error lttng-tools: Add missing patch Upstream-Status utils/multiprocess_launch: Improve failing subprocess output python3: Drop ptest hack ptest-packagelists: Add m4 and gettext as 'fast' ptests bitbake: knotty: Implement console 'keepalive' output bitbake: build: Ensure warning for invalid task dependencies is useful bitbake: build: Disable warning about dependent tasks for now oeqa/ssh: Avoid unicode decode exceptions elfutils: ptest fixes elfutils: Fix ptest compile failures on musl bitbake: bitbake: Add initial pass of SPDX license headers to source code bitbake: bitbake: Drop duplicate license boilerplace text bitbake: bitbake: Strip old editor directives from file headers bitbake: HEADER: Drop it openssh/systemd/python/qemu: Fix patch Upstream-Status scripts/pybootchart: Fix mixed indentation scripts/pybootchart: Port to python3 scripts/pybootchart/draw: Clarify some variable names scripts/pybootchart/draw: Fix some bounding problems coreutils: Fix patch upstream status field oeqa: Drop OETestID meta/lib+scripts: Convert to SPDX license headers oeqa/core/runner: Handle unexpectedSucesses oeqa/systemd_boot: Drop OETestID oeqa/runner: Fix subunit setupClass/setupModule failure handling oeqa/concurrenttest: Patch subunit module to handle classSetup failures tcmode-default: Add PREFERRED_VERSION for libgfortran oeqa/selftest: Automate manual pybootchart tests openssh: Avoid PROVIDES warning from rng-tools dependency oeqa/target/ssh: Replace suggogatepass with ignoring errors core-image-sato-sdk-ptest: Tweak size to stay within 4GB limit valgrind: Include debugging symbols in ptests dbus-test: Improve ptest dependencies dependencies ptest: Add RDEPENDS frpm PN-ptest to PN package Robert Joslyn (1): qemu: Add PACKAGECONFIG for snappy Robert Yang (6): bitbake: bitbake-diffsigs: Use 4 spaces as indent for recursecb bitbake: bb: siggen: Make dump_sigfile and compare_sigfiles print uuid4 bitbake: bb: siggen: Print more info when basehash are mis-matched bitbake: BBHandler: Fix addtask and deltask bitbake: build.py: check dependendent task for addtask bitbake: tests/parse.py: Add testcase for addtask and deltask Ross Burton (14): lttng-tools: fix Upstream-Status acpica: upgrade to 20190215 staging: add ${datadir}/gtk-doc/html to the sysroot blacklist mpg123: port to use libsdl2 meta-poky: remove obsolete DISTRO_FEATURES_LIBC m4: update patch status packagegroup-core-full-cmdline: remove zlib wic: change expand behaviour to match docs wic: add global debug option gtk-icon-cache: clean up DEPENDS patch: add minver and maxver parameters glib-2.0: fix locale handling glib-2.0: add missing locales for the tests glib-2.0: fix last failing ptest Scott Rifenbark (34): bitbake: poky.ent: Removed "ECLIPSE" entity variables. bitbake: bitbake-user-manual: Added section on modifying variables Makefile: Removed Eclipse support Documentation: Removed customization.xsl files for Eclipse mega-manual: Removed two Eclipse figures from tarball list mega-manual, overview-manual: Added updated index releases figure poky.ent: Removed Eclipse related variables. mega-manual: Removed the Eclipse chapters dev-manual: Removed all references to Eclipse. overview-manual: Removed all references to Eclipse profile-manual: Removed all references to Eclipse ref-manual: Removed all references to Eclipse sdk-manual: Removed all references to Eclipse sdk-manual: Removed all references to Eclipse dev-manual; brief-yoctoprojectqs: Updated checkout branch example dev-manual: Added reasoning blurb to "Viewing Variables" section. ref-manual: Inserted Migration 2.7 section. ref-manual: Added Eclipse removal for migration section. ref-manual: Added "License Value Corrections to migration. ref-manual: Added Fedora 29 to the supported distros list. poky.ent: changed 2.7 release variable date to "May 2019" ref-manual: Review comments applied to 2.7 migration section. documentation: Prepared for 2.8 release bsp-guide: Removed inaccurate "container layer" references. ref-manual: Updated the "Container Layer" term. bsp-guide: Updated the "beaglebone-yocto.conf" example. documentation: Cleaned up "plug-in"/"plugin" terminology. bsp-guide: Updated the BSP kernel recipe example. ref-manual: Updated PREFERRED_VERSION variable to use 5.0 bsp-guide: More corrections to the BSP Kernel Recipe example dev-manual: Added cross-link to "Fetchers" section in BB manual. bitbake: bitbake-user-manual: Added npm to other fetcher list. overview-manual: Updated SMC section to link to fetchers ref-manual: Added "npm" information to the SRC_URI variable. Stefan Kral (1): bitbake: build: Add verbnote to shell log commands Stefan Müller-Klieser (1): cml1.bbclass: fix undefined behavior Steven Hung (洪于玉) (1): kernel.bbclass: convert base_do_unpack_append() to a task Tom Rini (2): vim: Rework to not rely on relative directories vim: Update to 8.1.1240 Wenlin Kang (1): systemd: install libnss-myhostname.so when myhostname be enabled Yeoh Ee Peng (1): resulttool/manualexecution: Refactor and remove duplicate code Yi Zhao (2): harfbuzz: update source checksums after upstream replaced the tarball libyaml: update SRC_URI[md5sum] and SRC_URI[sha256sum] Ying-Chun Liu (PaulLiu) (1): uboot-sign: Fix u-boot-nodtb symlinks Zang Ruochen (10): libatomic-ops:upgrade 7.6.8 -> 7.6.10 libgpg-error:upgrade 1.35 -> 1.36 libxft:upgrade 2.3.2 -> 2.3.3 libxxf86dga:upgrade 1.1.4 -> 1.1.5 nss:upgrade 3.42.1 -> 3.43 sysprof:upgrade 3.30.2 -> 3.32.0 libtirpc:upgrade 1.0.3 -> 1.1.4 xtrans:upgrade 1.3.5 -> 1.4.0 harfbuzz:upgrade 2.3.1 -> 2.4.0 icu: Upgrade 64.1 -> 64.2 Zheng Ruoqin (1): sanity: check_perl_modules bug fix sangeeta jain (1): resulttool/manualexecution: Enable test case configuration option meta-openembedded: 4a9deabbc8..1ecd8b4364: Adrian Bunk (34): linux-atm: Remove DEPENDS on virtual/kernel and PACKAGE_ARCH linux-atm: Replace bogus on_exit removal with musl-specific hack ledmon: Mark as incompatible on musl instead of adding bogus patch efivars: Drop workaround patch for host gcc < 4.7 sshfs-fuse: upgrade 2.8 -> 2.10 wv: upgrade 1.2.4 -> 1.2.9 caps: Upgrade 0.9.24 -> 0.9.26 dvb-apps: Remove dvb-fe-xc5000c-4.1.30.7.fw schroedinger: Remove the obsolete DEPENDS on liboil vlc: Remove workaround and patches for problems fixed upstream Remove liboil dnrd: Remove stale files of recipe removed 2 years ago postfix: Upgrade 3.4.1 -> 3.4.5 pptp-linux: Upgrade 1.9.0 -> 1.10.0 dovecot: Upgrade 2.2.36 -> 2.2.36.3 postgresql: Upgrade 11.2 -> 11.3 rocksdb: Upgrade 5.18.2 -> 5.18.3 cloud9: Remove stale files of recipe removed 2 years ago fluentbit: Upgrade 0.12.1 -> 0.12.19 libcec: Upgrade 4.0.2 -> 4.0.4 libqb: Upgrade 1.0.3 -> 1.0.5 openwsman: Upgrade 2.6.8 -> 2.6.9 glm: Upgrade 0.9.9.3 -> 0.9.9.5 fvwm: Upgrade 2.6.7 -> 2.6.8 augeas: Upgrade 1.11.0 -> 1.12.0 ccid: Upgrade 1.4.24 -> 1.4.30 daemonize: Upgrade 1.7.7 -> 1.7.8 inotify-tools: Upgrade 3.14 -> 3.20.1 liboop: Upgrade 1.0 -> 1.0.1 ode: Remove stale file of recipe removed 2 years ago openwbem: Remove stale files of recipe removed 2 years ago catch2: Upgrade 2.6.1 -> 2.7.2 geos: Upgrade 3.4.2 -> 3.4.3 rdfind: Upgrade 1.3.4 -> 1.4.1 Akshay Bhat (3): python-urllib3: Set CVE_PRODUCT python3-pillow: Set CVE_PRODUCT python-requests: Set CVE_PRODUCT Alistair Francis (3): mycroft: Update the systemd service to ensure we are ready to start mycroft: Bump from 19.2.2 to 19.2.3 python-obd: Add missing RDEPENDS Andreas Müller (33): gvfs: remove executable permission from systemd user services udisks2: upgrade 2.8.1 -> 2.8.2 parole: upgrade 1.0.1 -> 1.0.2 ristretto: upgrade 0.8.3 -> 0.8.4 networkmanager: rework musl build gvfs: remove systemd user unit executable permission adjustment fltk: upgrade 1.3.4-2 -> 1.3.5 samba: install bundled libs into seperate packages samba: rework localstatedir package split fluidsynth: upgrade 2.0.4 -> 2.0.5 xfce4-vala: auto-detect vala api version gnome-desktop3: set correct meson gtk doc option vlc: rework qt PACKAGECONFIG evince: add patch to fix build with recent gobject-introspection xfce4-cpufreq-plugin: Fix memory leak and reduce CPU load packagegroup-meta-networking: replace DISTRO_FEATURE by DISTRO_FEATURES meta-xfce: add meta-networking to layer depends gtksourceview4: initial add 4.2.0 gtksourceview-classic-light: extend to gtksourceview4 itstool: rework - it went out too early fontforge: upgrade 20170731 -> 20190413 exo: upgrade 0.12.4 -> 0.12.5 xfce4-places-plugin: upgrade 1.7.0 -> 1.8.0 xfce4-datetime-plugin: upgrade 0.7.0 -> 0.7.1 xfce4-notifyd: upgrade 0.4.3 -> 0.4.4 desktop-file-utils: remove - a more recent version is in oe-core libwnck3: upgrade 3.30.0 and move to meson build xfce4-terminal: add vte-prompt to RRECOMMENDS xfce4-session: get rid of machine-host xfce4-session: remove strange entry in FILES_${PN} libxfce4ui: Add PACKAGECONFIG 'gladeui2' for glade (gtk3) support glade3: move to to meta-xfce Remove me as maintainer Andrej Valek (2): squid: upgrade squid 3.5.28 -> 4.6 ntp: upgrade 4.2.8p12 -> 4.2.8p13 Ankit Navik (1): libnfc: Initial recipe for Near Field Communication library. Armin Kuster (1): meta-filesystems: drop bitbake from README Changqing Li (5): gd: fix compile error caused by -Werror=maybe-uninitialized apache2: add back patch for set perlbin php: upgrade 7.3.2 -> 7.3.4 postgresql: fix compile error php: correct httpd path Chris Garren (1): python-cryptography: Move linker flag to .inc Denys Dmytriyenko (1): v4l-utils: upgrade 1.16.0 -> 1.16.5 Gianfranco Costamagna (1): cpprest: update to 2.10.13, drop 32bit build fix upstream Hains van den Bosch (1): libcdio: update to version 2.1.0 Hongxu Jia (1): pmtools: use update-alternatives for acpidump Hongzhi.Song (1): lua: upgrade from v5.3.4 to v5.3.5 Ivan Maidanski (1): bdwgc: upgrade 7.6.12 -> 8.0.4 Johannes Pointner (1): samba: update to 4.8.11 Kai Kang (3): gvfs: fix typo libexec drbd: fix compile errors drbd-utils: fix file conflict with base-files Khem Raj (3): redis: Upgrade to 4.0.14 squid: Link with libatomic on mips/ppc cpupower: Inherit bash completion class Leon Anavi (1): openbox: Add python-shell as a runtime dependency Liwei Song (1): ledmon: control hard disk led for RAID arrays Mark Asselstine (1): xfconf: fix 'Failed to get connection to xfconfd' during do_rootfs Martin Jansa (13): ftgl: add x11 to required DISTRO_FEATURES like freeglut libforms: add x11 to required DISTRO_FEATURES because of libx11 Revert "ell: remove recipe" ne10: set NE10_TARGET_ARCH with an override instead of anonymous python libopus: use armv7a, aarch64 overrides when adding ne10 dependency esound: fix SRC_URI for multilib opusfile: fix SRC_URI for multilib miniupnpd: fix SRC_URI for multilib zbar: fix SRC_URI for multilib libvncserver: set PV in the recipe efivar: prevent native efivar depending on target kernel libdbi-perl: prevent native libdbi-perl depending on target perl aufs-util: prevent native aufs-util depending on target kernel Ming Liu (1): libmodbus: add documentation PACKAGECONFIG Mingli Yu (6): indent: Upgrade to 2.2.12 hostapd: Upgrade to 2.8 hwdata: Upgrade to 0.322 rrdtool: Upgrade to 1.7.1 libdev-checklib-perl: add new recipe libdbd-mysql-perl: Upgrade to 4.050 Nathan Rossi (1): fatresize_1.0.2.bb: Add recipe for fatresize command line tool Nicolas Dechesne (3): cpupower: remove LIC_FILES_CHKSUM bpftool: remove LIC_FILES_CHKSUM cannelloni: move from meta-oe to meta-networking Oleksandr Kravchuk (38): smcroute: update to 2.4.4 phytool: update to v2 fwknop: update to 2.6.10 cifs-utils: update to 6.9 keepalived: update to 2.0.15 usbredir: update to 0.8.0 open-isns: update to 0.99 nanomsg: update to 1.1.5 stunnel: update to 5.51 babeld: update to 1.8.4 drbd-utils: update to 9.8.0 drbd: update to 9.0.17-1 macchanger: update to 1.7.0 wolfssl: update to 4.0.0 ell: remove recipe analyze-suspend: update to 5.3 chrony: update to 3.4 nghttp2: update to 1.38 nano: update to 4.1 networkmanager-openvpn: update to 1.8.10 wpan-tools: update to 0.9 uftp: update to 4.9.9 vblade: add UPSTREAM_CHECK_URI traceroute: add UPSTREAM_CHECK_URI nuttcp: update to 8.2.2 nfacct: add UPSTREAM_CHECK_URI nftables: add UPSTREAM_CHECK_URI libnetfilter-queue: update to 1.0.3 arno-iptables-firewall: update to 2.0.3 ypbind-mt: update to 2.6 ebtables: add UPSTREAM_CHECK_URI doxygen: replace ninja 1.9.0 fix with official one libnetfilter-queue: fix update to 1.0.3 networkd-dispatcher: update to 2.0.1 opensaf: update to 5.19.01 libnetfilter-conntrack: update to 1.0.7 conntrack-tools: update to 1.4.5 openvpn: update to 2.4.7 Paolo Valente (1): s-suite: push SRCREV to version 3.2 Parthiban Nallathambi (6): python3-aiohttp: add version 3.5.4 python3-supervisor: add version 4.0.2 python3-websocket-client: add version 0.56.0 python3-tinyrecord: add version 0.1.5 python3-sentry-sdk: add version 0.7.14 python3-raven: add version 6.10.0 Pascal Bach (2): paho-mqtt-c: 1.2.1 -> 1.3.0 thrift: update to 0.12.0 Pavel Modilaynen (1): jsoncpp: add native BBCLASSEXTEND Peter Kjellerstedt (2): apache2: Correct appending to SYSROOT_PREPROCESS_FUNCS apache2: Correct packaging of build and doc related files Philip Balister (1): sip: Update to 4.19.16. Qi.Chen@windriver.com (4): multipath-tools: fix up patch to avoid segfault netkit-rsh: add tag to CVE patch ipsec-tools: fix CVE tag in patch gd: set CVE_PRODUCT Randy MacLeod (1): imagemagick: update from 7.0.8-35 to 7.0.8-43 Robert Joslyn (5): gpm: Fix gpm path in unit file gpm: Add PID file to systemd unit file gpm: Generate documentation gpm: Remove duplicate definition of _GNU_SOURCE gpm: Recipe cleanup Sean Nyekjaer (2): cannelloni: new package, CAN to ethernet proxy ser2net: upgrade to version 3.5.1 Vincent Prince (1): mongodb: Fix build with gcc Wenlin Kang (1): samba: add PACKAGECONFIG for libunwind Yi Zhao (7): python-flask-socketio: move to meta-python directory apache2: upgrade 2.4.34 -> 2.4.39 apache-websocket: upgrade to latest git rev netkit-rsh: security fixes openhpi: fix failure of ptest case ohpi_035 openhpi: update openhpi-fix-testfail-errors.patch phpmyadmin: upgrade 4.8.3 -> 4.8.5 Zang Ruochen (43): xlsatoms: upgrade 1.1.2 -> 1.1.3 xrdb: upgrade 1.1.1 -> 1.2.0 xrefresh: upgrade 1.0.5 -> 1.0.6 xsetroot: upgrade 1.1.1 -> 1.1.2 xstdcmap: upgrade 1.0.3 -> 1.0.4 xbitmaps: upgrade 1.1.1 -> 1.1.2 wireshark: upgrade 3.0.0 -> 3.0.1 python-cffi: upgrade 1.11.5 -> 1.12.2 python-attrs: upgrade 18.1.0 -> 19.1.0 python-certifi: upgrade 2018.8.13 -> 2019.3.9 python-beabutifulsoup4: upgrade 4.6.0 -> 4.7.1 python-dateutil: upgrade 2.7.3 -> 2.8.0 python-mako: upgrade 1.0.7 -> 1.0.9 python-msgpack: upgrade 0.6.0 -> 0.6.1 python-paste: upgrade 3.0.6 -> 3.0.8 python-psutil: upgrade 5.4.6 -> 5.6.1 python-py: upgrade 1.6.0 -> 1.8.0 python-pymongo: upgrade 3.7.1 -> 3.7.2 python-pyopenssl: upgrade 18.0.0 -> 19.0.0 python-pytz: upgrade 2018.5 -> 2019.1 python-stevedore: upgrade 1.29.0 -> 1.30.1 python-pbr: upgrade 4.2.0 -> 5.1.3 python-cython: upgrade 0.28.5 -> 0.29.6 python-editor: upgrade 1.0.3 -> 1.0.4 python-jinja2: upgrade 2.10 -> 2.10.1 python-lxml: upgrade 4.3.1 -> 4.3.3 python-alembic: upgrade 1.0.0 -> 1.0.9 python-cffi: upgrade 1.12.2 -> 1.12.3 python-hyperlink: upgrade 18.0.0 -> 19.0.0 python-twisted: upgrade 18.4.0 -> 19.2.0 python-zopeinterface: upgrade 4.5.0 -> 4.6.0 python-decorator: upgrade 4.3.0 -> 4.4.0 python-pip: upgrade 18.0 -> 19.1 python-pyasn1: upgrade 0.4.4 -> 0.4.5 libnet-dns-perl: upgrade 1.19 -> 1.20 python-alembic: upgrade 1.0.9 -> 1.0.10 python-cython: upgrade 0.29.6 -> 0.29.7 python-mock: upgrade 2.0.0 -> 3.0.5 python-pbr: upgrade 5.1.3 -> 5.2.0 python-psutil: upgrade 5.6.1 -> 5.6.2 python-pymongo: upgrade 3.7.2 -> 3.8.0 python-pyperclip: upgrade 1.6.2 -> 1.7.0 python-rfc3987: upgrade 1.3.7 -> 1.3.8 leimaohui (3): To fix confilict error with python3-pbr. python-pycodestyle: Fix conflict error with python3-pycodestyle during do_rootfs mozjs: Make mozjs support arm32BE. meta-raspberrypi: 9ceb84ee9e..7059c37451: Francesco Giancane (1): qtbase_%.bbappend: update PACKAGECONFIG name for xkbcommon Gianluigi Tiesi (1): psplash: Raise alternatives priority to 200 Martin Jansa (3): linux_raspberrypi_4.19: Update to 4.19.34 bluez5: apply the same patches and pi-bluetooth dependency for all rpi MACHINEs userland: use default PACKAGE_ARCH Paul Barker (3): linux-raspberrypi: Update 4.14.y kernel linux-raspberrypi: Switch default back to 4.14.y linux-raspberrypi 4.9: Drop old version meta-security: 8a1f54a246..9f5cc2a7eb: Alexander Kanavin (1): apparmor: fetch from git Armin Kuster (15): clamav runtime: add resolve.conf support clamav: fix llvm reference version libldb: add waf-cross-answeres clamav: runtime fix local routing clamav: add clamav-cvd package for cvd db clamav-native: fix new build issue apparmor: fix fragment for 5.0 kernel apparmor: add a few more runtime smack: move patch to smack dir smack-test: add smack tests from meta-intel-iot-security samhain: add more tests and fix ret checks libldb: add earlier version libseccomp: update to 2.4.1 oe-selftest: add running cve checker smack: kernel fragment update Yi Zhao (2): meta-tpm/conf/layer.conf: update layer dependencies meta-tpm/README: update Change-Id: I9e02cb75a779f25fca84395144025410bb609dfa Signed-off-by: Brad Bishop --- poky/LICENSE | 24 +- poky/LICENSE.GPL-2.0-only | 288 ++ poky/LICENSE.MIT | 25 + poky/bitbake/COPYING | 339 -- poky/bitbake/HEADER | 19 - poky/bitbake/LICENSE | 12 +- poky/bitbake/LICENSE.GPL-2.0-only | 288 ++ poky/bitbake/LICENSE.MIT | 25 + poky/bitbake/bin/bitbake | 16 +- poky/bitbake/bin/bitbake-diffsigs | 14 +- poky/bitbake/bin/bitbake-hashserv | 13 +- poky/bitbake/bin/bitbake-layers | 12 +- poky/bitbake/bin/bitbake-prserv | 4 + poky/bitbake/bin/bitbake-selftest | 12 +- poky/bitbake/bin/bitbake-worker | 3 + poky/bitbake/bin/bitdoc | 14 +- poky/bitbake/bin/git-make-shallow | 4 + poky/bitbake/bin/toaster | 12 +- poky/bitbake/bin/toaster-eventreplay | 17 +- poky/bitbake/contrib/dump_cache.py | 2 - .../bitbake-user-manual-fetching.xml | 13 +- .../bitbake-user-manual-metadata.xml | 72 + poky/bitbake/doc/poky.ent | 8 - poky/bitbake/lib/bb/COW.py | 15 - poky/bitbake/lib/bb/__init__.py | 16 +- poky/bitbake/lib/bb/build.py | 20 +- poky/bitbake/lib/bb/cache.py | 14 +- poky/bitbake/lib/bb/cache_extra.py | 14 +- poky/bitbake/lib/bb/checksum.py | 12 +- poky/bitbake/lib/bb/codeparser.py | 4 + poky/bitbake/lib/bb/command.py | 12 +- poky/bitbake/lib/bb/compat.py | 4 + poky/bitbake/lib/bb/cooker.py | 15 +- poky/bitbake/lib/bb/cookerdata.py | 14 +- poky/bitbake/lib/bb/daemonize.py | 4 + poky/bitbake/lib/bb/data.py | 15 +- poky/bitbake/lib/bb/data_smart.py | 14 +- poky/bitbake/lib/bb/event.py | 14 +- poky/bitbake/lib/bb/exceptions.py | 3 + poky/bitbake/lib/bb/fetch2/__init__.py | 15 +- poky/bitbake/lib/bb/fetch2/bzr.py | 12 +- poky/bitbake/lib/bb/fetch2/clearcase.py | 15 +- poky/bitbake/lib/bb/fetch2/cvs.py | 17 +- poky/bitbake/lib/bb/fetch2/git.py | 41 +- poky/bitbake/lib/bb/fetch2/gitannex.py | 14 +- poky/bitbake/lib/bb/fetch2/gitsm.py | 14 +- poky/bitbake/lib/bb/fetch2/hg.py | 16 +- poky/bitbake/lib/bb/fetch2/local.py | 16 +- poky/bitbake/lib/bb/fetch2/npm.py | 5 +- poky/bitbake/lib/bb/fetch2/osc.py | 5 +- poky/bitbake/lib/bb/fetch2/perforce.py | 15 +- poky/bitbake/lib/bb/fetch2/repo.py | 16 +- poky/bitbake/lib/bb/fetch2/s3.py | 15 +- poky/bitbake/lib/bb/fetch2/sftp.py | 15 +- poky/bitbake/lib/bb/fetch2/ssh.py | 14 +- poky/bitbake/lib/bb/fetch2/svn.py | 15 +- poky/bitbake/lib/bb/fetch2/wget.py | 15 +- poky/bitbake/lib/bb/main.py | 14 +- poky/bitbake/lib/bb/methodpool.py | 15 +- poky/bitbake/lib/bb/monitordisk.py | 14 +- poky/bitbake/lib/bb/msg.py | 14 +- poky/bitbake/lib/bb/namedtuple_with_abc.py | 3 + poky/bitbake/lib/bb/parse/__init__.py | 14 +- poky/bitbake/lib/bb/parse/ast.py | 15 +- poky/bitbake/lib/bb/parse/parse_py/BBHandler.py | 33 +- poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py | 14 +- poky/bitbake/lib/bb/parse/parse_py/__init__.py | 16 +- poky/bitbake/lib/bb/persist_data.py | 12 +- poky/bitbake/lib/bb/process.py | 4 + poky/bitbake/lib/bb/progress.py | 12 +- poky/bitbake/lib/bb/providers.py | 14 +- poky/bitbake/lib/bb/remotedata.py | 12 +- poky/bitbake/lib/bb/runqueue.py | 16 +- poky/bitbake/lib/bb/server/__init__.py | 14 +- poky/bitbake/lib/bb/server/process.py | 12 +- poky/bitbake/lib/bb/server/xmlrpcclient.py | 12 +- poky/bitbake/lib/bb/server/xmlrpcserver.py | 12 +- poky/bitbake/lib/bb/siggen.py | 20 +- poky/bitbake/lib/bb/taskdata.py | 14 +- poky/bitbake/lib/bb/tests/codeparser.py | 15 +- poky/bitbake/lib/bb/tests/cooker.py | 15 +- poky/bitbake/lib/bb/tests/cow.py | 17 +- poky/bitbake/lib/bb/tests/data.py | 15 +- poky/bitbake/lib/bb/tests/event.py | 15 +- poky/bitbake/lib/bb/tests/fetch.py | 15 +- poky/bitbake/lib/bb/tests/parse.py | 33 +- poky/bitbake/lib/bb/tests/persist_data.py | 15 +- poky/bitbake/lib/bb/tests/utils.py | 15 +- poky/bitbake/lib/bb/tinfoil.py | 12 +- poky/bitbake/lib/bb/ui/__init__.py | 12 +- poky/bitbake/lib/bb/ui/buildinfohelper.py | 12 +- poky/bitbake/lib/bb/ui/knotty.py | 39 +- poky/bitbake/lib/bb/ui/ncurses.py | 12 +- poky/bitbake/lib/bb/ui/taskexp.py | 12 +- poky/bitbake/lib/bb/ui/toasterui.py | 12 +- poky/bitbake/lib/bb/ui/uievent.py | 15 +- poky/bitbake/lib/bb/ui/uihelper.py | 14 +- poky/bitbake/lib/bb/utils.py | 16 +- poky/bitbake/lib/bblayers/__init__.py | 4 + poky/bitbake/lib/bblayers/action.py | 4 + poky/bitbake/lib/bblayers/common.py | 4 + poky/bitbake/lib/bblayers/layerindex.py | 4 + poky/bitbake/lib/bblayers/query.py | 4 + poky/bitbake/lib/hashserv/__init__.py | 12 +- poky/bitbake/lib/hashserv/tests.py | 12 +- poky/bitbake/lib/layerindexlib/__init__.py | 12 +- poky/bitbake/lib/layerindexlib/cooker.py | 12 +- poky/bitbake/lib/layerindexlib/plugin.py | 13 +- poky/bitbake/lib/layerindexlib/restapi.py | 12 +- poky/bitbake/lib/layerindexlib/tests/common.py | 12 +- poky/bitbake/lib/layerindexlib/tests/cooker.py | 12 +- .../lib/layerindexlib/tests/layerindexobj.py | 12 +- poky/bitbake/lib/layerindexlib/tests/restapi.py | 12 +- poky/bitbake/lib/progressbar/__init__.py | 2 + poky/bitbake/lib/progressbar/compat.py | 2 + poky/bitbake/lib/progressbar/progressbar.py | 2 + poky/bitbake/lib/progressbar/widgets.py | 2 + poky/bitbake/lib/prserv/__init__.py | 4 + poky/bitbake/lib/prserv/db.py | 4 + poky/bitbake/lib/prserv/serv.py | 4 + poky/bitbake/lib/pyinotify.py | 17 +- poky/bitbake/lib/toaster/bldcollector/admin.py | 4 + poky/bitbake/lib/toaster/bldcollector/urls.py | 13 +- poky/bitbake/lib/toaster/bldcollector/views.py | 12 +- poky/bitbake/lib/toaster/bldcontrol/admin.py | 4 + .../bitbake/lib/toaster/bldcontrol/bbcontroller.py | 16 +- .../toaster/bldcontrol/localhostbecontroller.py | 16 +- .../management/commands/checksettings.py | 4 + .../bldcontrol/management/commands/runbuilds.py | 4 + poky/bitbake/lib/toaster/bldcontrol/models.py | 4 + poky/bitbake/lib/toaster/bldcontrol/views.py | 4 + poky/bitbake/lib/toaster/manage.py | 4 + poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml | 12 +- poky/bitbake/lib/toaster/orm/fixtures/poky.xml | 18 +- .../toaster/orm/management/commands/lsupdates.py | 15 +- poky/bitbake/lib/toaster/orm/models.py | 15 +- .../lib/toaster/tests/browser/selenium_helpers.py | 15 +- .../toaster/tests/browser/selenium_helpers_base.py | 15 +- .../toaster/tests/browser/test_all_builds_page.py | 14 +- .../tests/browser/test_all_projects_page.py | 14 +- .../tests/browser/test_builddashboard_page.py | 14 +- .../browser/test_builddashboard_page_artifacts.py | 14 +- .../browser/test_builddashboard_page_recipes.py | 14 +- .../browser/test_builddashboard_page_tasks.py | 14 +- .../toaster/tests/browser/test_js_unit_tests.py | 14 +- .../lib/toaster/tests/browser/test_landing_page.py | 16 +- .../tests/browser/test_layerdetails_page.py | 16 +- .../browser/test_most_recent_builds_states.py | 16 +- .../tests/browser/test_new_custom_image_page.py | 14 +- .../toaster/tests/browser/test_new_project_page.py | 14 +- .../tests/browser/test_project_builds_page.py | 14 +- .../tests/browser/test_project_config_page.py | 14 +- .../lib/toaster/tests/browser/test_project_page.py | 14 +- .../lib/toaster/tests/browser/test_sample.py | 14 +- .../lib/toaster/tests/browser/test_task_page.py | 14 +- .../toaster/tests/browser/test_toastertable_ui.py | 14 +- poky/bitbake/lib/toaster/tests/builds/buildtest.py | 14 +- .../toaster/tests/builds/test_core_image_min.py | 15 +- .../lib/toaster/tests/commands/test_loaddata.py | 14 +- .../lib/toaster/tests/commands/test_lsupdates.py | 14 +- .../lib/toaster/tests/commands/test_runbuilds.py | 14 +- poky/bitbake/lib/toaster/tests/db/test_db.py | 2 + .../lib/toaster/tests/eventreplay/__init__.py | 14 +- .../toaster/tests/functional/functional_helpers.py | 14 +- .../tests/functional/test_functional_basic.py | 14 +- poky/bitbake/lib/toaster/tests/views/test_views.py | 14 +- poky/bitbake/lib/toaster/toastergui/api.py | 13 +- poky/bitbake/lib/toaster/toastergui/buildtables.py | 15 +- poky/bitbake/lib/toaster/toastergui/tablefilter.py | 15 +- poky/bitbake/lib/toaster/toastergui/tables.py | 15 +- .../toastergui/templatetags/field_values_filter.py | 4 + .../templatetags/objects_to_dictionaries_filter.py | 4 + .../toastergui/templatetags/project_url_tag.py | 4 + .../toaster/toastergui/templatetags/projecttags.py | 15 +- poky/bitbake/lib/toaster/toastergui/typeaheads.py | 12 +- poky/bitbake/lib/toaster/toastergui/urls.py | 12 +- poky/bitbake/lib/toaster/toastergui/views.py | 16 +- poky/bitbake/lib/toaster/toastergui/widgets.py | 15 +- .../toastermain/management/commands/builddelete.py | 4 + .../toastermain/management/commands/buildimport.py | 15 +- .../toastermain/management/commands/buildslist.py | 4 + .../toastermain/management/commands/checksocket.py | 14 +- .../toastermain/management/commands/perf.py | 4 + poky/bitbake/lib/toaster/toastermain/settings.py | 15 +- .../toastermain/settings_production_example.py | 15 +- .../lib/toaster/toastermain/settings_test.py | 15 +- poky/bitbake/lib/toaster/toastermain/urls.py | 15 +- poky/bitbake/lib/toaster/toastermain/wsgi.py | 7 +- poky/documentation/Makefile | 122 +- .../brief-yoctoprojectqs-eclipse-customization.xsl | 35 - .../brief-yoctoprojectqs/brief-yoctoprojectqs.xml | 1 + .../bsp-guide/bsp-guide-eclipse-customization.xsl | 35 - poky/documentation/bsp-guide/bsp-guide.xml | 7 +- poky/documentation/bsp-guide/bsp.xml | 98 +- .../dev-manual/dev-manual-common-tasks.xml | 97 +- .../dev-manual-eclipse-customization.xsl | 35 - poky/documentation/dev-manual/dev-manual-start.xml | 24 +- poky/documentation/dev-manual/dev-manual.xml | 7 +- .../kernel-dev-eclipse-customization.xsl | 35 - poky/documentation/kernel-dev/kernel-dev.xml | 7 +- .../mega-manual/figures/index-downloads.png | Bin 36362 -> 18142 bytes .../mega-manual/figures/lttngmain0.png | Bin 120581 -> 0 bytes .../mega-manual/figures/sdk-eclipse-dev-flow.png | Bin 62626 -> 0 bytes poky/documentation/mega-manual/mega-manual.xml | 11 +- .../overview-manual/figures/index-downloads.png | Bin 36362 -> 18142 bytes .../overview-manual/overview-manual-concepts.xml | 10 +- .../overview-manual-development-environment.xml | 25 +- .../overview-manual-eclipse-customization.xsl | 35 - .../overview-manual/overview-manual-yp-intro.xml | 43 - .../overview-manual/overview-manual.xml | 9 +- poky/documentation/poky.ent | 28 +- .../profile-manual/figures/lttngmain0.png | Bin 120581 -> 0 bytes .../profile-manual-eclipse-customization.xsl | 35 - .../profile-manual/profile-manual-usage.xml | 180 - .../profile-manual/profile-manual.xml | 7 +- poky/documentation/ref-manual/migration.xml | 278 +- poky/documentation/ref-manual/ref-features.xml | 3 - poky/documentation/ref-manual/ref-kickstart.xml | 14 +- .../ref-manual-eclipse-customization.xsl | 35 - poky/documentation/ref-manual/ref-manual.xml | 7 +- .../ref-manual/ref-system-requirements.xml | 1 + poky/documentation/ref-manual/ref-terms.xml | 15 +- poky/documentation/ref-manual/ref-variables.xml | 11 +- poky/documentation/ref-manual/resources.xml | 8 - .../sdk-manual/figures/sdk-eclipse-dev-flow.png | Bin 62626 -> 0 bytes .../sdk-manual/sdk-appendix-customizing.xml | 2 +- .../documentation/sdk-manual/sdk-appendix-neon.xml | 956 ---- .../sdk-manual/sdk-appendix-obtain.xml | 9 - .../sdk-manual/sdk-eclipse-project.xml | 1248 ------ poky/documentation/sdk-manual/sdk-extensible.xml | 8 +- poky/documentation/sdk-manual/sdk-intro.xml | 65 - .../sdk-manual-eclipse-customization.xsl | 35 - poky/documentation/sdk-manual/sdk-manual.xml | 11 +- poky/documentation/sdk-manual/sdk-using.xml | 9 +- .../sdk-manual/sdk-working-projects.xml | 8 +- .../toaster-manual/toaster-manual.xml | 7 +- poky/documentation/tools/mega-manual.sed | 46 +- poky/meta-poky/conf/distro/poky-tiny.conf | 4 +- poky/meta-poky/conf/distro/poky.conf | 7 +- poky/meta-poky/conf/local.conf.sample.extended | 20 +- poky/meta-selftest/COPYING.MIT | 17 - poky/meta-skeleton/COPYING.MIT | 17 - .../conf/machine/beaglebone-yocto.conf | 2 +- .../lib/oeqa/selftest/cases/systemd_boot.py | 3 - .../recipes-kernel/linux/linux-yocto_4.19.bbappend | 20 +- .../recipes-kernel/linux/linux-yocto_5.0.bbappend | 20 +- poky/meta/COPYING.GPLv2 | 339 -- poky/meta/classes/ccmake.bbclass | 2 +- poky/meta/classes/cml1.bbclass | 2 +- poky/meta/classes/distutils.bbclass | 33 +- poky/meta/classes/distutils3.bbclass | 25 +- poky/meta/classes/go.bbclass | 4 +- poky/meta/classes/goarch.bbclass | 11 +- poky/meta/classes/gobject-introspection.bbclass | 14 +- poky/meta/classes/gtk-doc.bbclass | 11 + poky/meta/classes/gtk-icon-cache.bbclass | 4 +- poky/meta/classes/icecc.bbclass | 1 + poky/meta/classes/image.bbclass | 10 +- poky/meta/classes/image_types.bbclass | 7 +- poky/meta/classes/insane.bbclass | 12 +- poky/meta/classes/kernel-fitimage.bbclass | 2 + poky/meta/classes/kernel-module-split.bbclass | 20 +- poky/meta/classes/kernel.bbclass | 3 +- poky/meta/classes/license_image.bbclass | 6 +- poky/meta/classes/native.bbclass | 1 + poky/meta/classes/populate_sdk_base.bbclass | 29 +- poky/meta/classes/ptest.bbclass | 33 + poky/meta/classes/rootfs-postcommands.bbclass | 6 + poky/meta/classes/sanity.bbclass | 2 +- poky/meta/classes/staging.bbclass | 3 +- poky/meta/classes/systemd.bbclass | 52 +- poky/meta/classes/testimage.bbclass | 3 +- poky/meta/classes/uboot-sign.bbclass | 89 +- poky/meta/classes/update-alternatives.bbclass | 70 +- poky/meta/classes/useradd-staticids.bbclass | 8 +- poky/meta/classes/waf.bbclass | 26 + poky/meta/conf/bitbake.conf | 31 +- .../conf/distro/include/default-distrovars.inc | 2 +- poky/meta/conf/distro/include/maintainers.inc | 10 +- poky/meta/conf/distro/include/no-static-libs.inc | 3 - .../conf/distro/include/ptest-packagelists.inc | 77 + poky/meta/conf/distro/include/tcmode-default.inc | 3 +- poky/meta/conf/layer.conf | 1 + poky/meta/conf/licenses.conf | 2 +- poky/meta/conf/machine/qemux86.conf | 4 +- poky/meta/files/common-licenses/Elfutils-Exception | 12 - poky/meta/files/toolchain-shar-extract.sh | 22 +- poky/meta/lib/bblayers/create.py | 4 + poky/meta/lib/buildstats.py | 3 + poky/meta/lib/oe/__init__.py | 4 + poky/meta/lib/oe/buildhistory_analysis.py | 4 +- poky/meta/lib/oe/cachedpath.py | 2 + poky/meta/lib/oe/classextend.py | 4 + poky/meta/lib/oe/classutils.py | 3 + poky/meta/lib/oe/copy_buildsystem.py | 3 + poky/meta/lib/oe/data.py | 4 + poky/meta/lib/oe/distro_check.py | 4 + poky/meta/lib/oe/elf.py | 4 + poky/meta/lib/oe/gpg_sign.py | 4 + poky/meta/lib/oe/license.py | 4 +- poky/meta/lib/oe/lsb.py | 4 + poky/meta/lib/oe/maketype.py | 3 + poky/meta/lib/oe/manifest.py | 4 + poky/meta/lib/oe/package.py | 4 + poky/meta/lib/oe/package_manager.py | 4 + poky/meta/lib/oe/packagedata.py | 4 + poky/meta/lib/oe/packagegroup.py | 4 + poky/meta/lib/oe/patch.py | 15 + poky/meta/lib/oe/path.py | 17 +- poky/meta/lib/oe/prservice.py | 3 + poky/meta/lib/oe/qa.py | 4 + poky/meta/lib/oe/recipeutils.py | 2 + poky/meta/lib/oe/rootfs.py | 3 + poky/meta/lib/oe/sdk.py | 4 + poky/meta/lib/oe/sstatesig.py | 3 + poky/meta/lib/oe/terminal.py | 3 + poky/meta/lib/oe/types.py | 4 + poky/meta/lib/oe/useradd.py | 3 + poky/meta/lib/oe/utils.py | 11 +- poky/meta/lib/oeqa/buildperf/__init__.py | 8 +- poky/meta/lib/oeqa/buildperf/base.py | 9 +- poky/meta/lib/oeqa/buildperf/test_basic.py | 9 +- poky/meta/lib/oeqa/controllers/__init__.py | 3 + poky/meta/lib/oeqa/controllers/masterimage.py | 4 +- poky/meta/lib/oeqa/controllers/testtargetloader.py | 4 + poky/meta/lib/oeqa/core/case.py | 5 +- .../meta/lib/oeqa/core/cases/example/test_basic.py | 4 +- poky/meta/lib/oeqa/core/context.py | 6 +- poky/meta/lib/oeqa/core/decorator/__init__.py | 5 +- poky/meta/lib/oeqa/core/decorator/data.py | 5 +- poky/meta/lib/oeqa/core/decorator/depends.py | 5 +- poky/meta/lib/oeqa/core/decorator/oeid.py | 23 - poky/meta/lib/oeqa/core/decorator/oetag.py | 5 +- poky/meta/lib/oeqa/core/decorator/oetimeout.py | 5 +- poky/meta/lib/oeqa/core/exception.py | 5 +- poky/meta/lib/oeqa/core/loader.py | 5 +- poky/meta/lib/oeqa/core/runner.py | 70 +- poky/meta/lib/oeqa/core/target/__init__.py | 5 +- poky/meta/lib/oeqa/core/target/qemu.py | 5 +- poky/meta/lib/oeqa/core/target/ssh.py | 9 +- poky/meta/lib/oeqa/core/tests/cases/data.py | 5 +- poky/meta/lib/oeqa/core/tests/cases/depends.py | 5 +- .../oeqa/core/tests/cases/loader/invalid/oeid.py | 15 - .../oeqa/core/tests/cases/loader/valid/another.py | 5 +- poky/meta/lib/oeqa/core/tests/cases/oeid.py | 18 - poky/meta/lib/oeqa/core/tests/cases/oetag.py | 5 +- poky/meta/lib/oeqa/core/tests/cases/timeout.py | 5 +- poky/meta/lib/oeqa/core/tests/common.py | 5 +- poky/meta/lib/oeqa/core/tests/test_data.py | 4 +- poky/meta/lib/oeqa/core/tests/test_decorators.py | 29 +- poky/meta/lib/oeqa/core/tests/test_loader.py | 17 +- poky/meta/lib/oeqa/core/tests/test_runner.py | 6 +- poky/meta/lib/oeqa/core/utils/concurrencytest.py | 29 +- poky/meta/lib/oeqa/core/utils/misc.py | 5 +- poky/meta/lib/oeqa/core/utils/path.py | 5 +- poky/meta/lib/oeqa/core/utils/test.py | 5 +- poky/meta/lib/oeqa/manual/compliance-test.json | 90 +- poky/meta/lib/oeqa/manual/oe-core.json | 26 - poky/meta/lib/oeqa/oetest.py | 4 +- poky/meta/lib/oeqa/runexported.py | 6 +- poky/meta/lib/oeqa/runtime/case.py | 5 +- poky/meta/lib/oeqa/runtime/cases/_qemutiny.py | 4 + poky/meta/lib/oeqa/runtime/cases/apt.py | 4 + poky/meta/lib/oeqa/runtime/cases/buildcpio.py | 6 +- .../meta/lib/oeqa/runtime/cases/buildgalculator.py | 6 +- poky/meta/lib/oeqa/runtime/cases/buildlzip.py | 6 +- poky/meta/lib/oeqa/runtime/cases/connman.py | 7 +- poky/meta/lib/oeqa/runtime/cases/date.py | 6 +- poky/meta/lib/oeqa/runtime/cases/df.py | 6 +- poky/meta/lib/oeqa/runtime/cases/dnf.py | 19 +- poky/meta/lib/oeqa/runtime/cases/gcc.py | 9 +- poky/meta/lib/oeqa/runtime/cases/gi.py | 4 + poky/meta/lib/oeqa/runtime/cases/gstreamer.py | 4 + poky/meta/lib/oeqa/runtime/cases/kernelmodule.py | 6 +- poky/meta/lib/oeqa/runtime/cases/ksample.py | 5 +- poky/meta/lib/oeqa/runtime/cases/ldd.py | 6 +- poky/meta/lib/oeqa/runtime/cases/logrotate.py | 7 +- poky/meta/lib/oeqa/runtime/cases/ltp.py | 118 + poky/meta/lib/oeqa/runtime/cases/ltp_compliance.py | 97 + poky/meta/lib/oeqa/runtime/cases/multilib.py | 7 +- poky/meta/lib/oeqa/runtime/cases/oe_syslog.py | 9 +- poky/meta/lib/oeqa/runtime/cases/opkg.py | 4 + poky/meta/lib/oeqa/runtime/cases/pam.py | 6 +- poky/meta/lib/oeqa/runtime/cases/parselogs.py | 6 +- poky/meta/lib/oeqa/runtime/cases/perl.py | 6 +- poky/meta/lib/oeqa/runtime/cases/ping.py | 6 +- poky/meta/lib/oeqa/runtime/cases/ptest.py | 6 +- poky/meta/lib/oeqa/runtime/cases/python.py | 6 +- poky/meta/lib/oeqa/runtime/cases/rpm.py | 11 +- poky/meta/lib/oeqa/runtime/cases/scp.py | 6 +- poky/meta/lib/oeqa/runtime/cases/skeletoninit.py | 6 +- poky/meta/lib/oeqa/runtime/cases/ssh.py | 6 +- poky/meta/lib/oeqa/runtime/cases/stap.py | 6 +- poky/meta/lib/oeqa/runtime/cases/systemd.py | 9 +- poky/meta/lib/oeqa/runtime/cases/x32lib.py | 6 +- poky/meta/lib/oeqa/runtime/cases/xorg.py | 6 +- poky/meta/lib/oeqa/runtime/context.py | 5 +- poky/meta/lib/oeqa/runtime/decorator/package.py | 5 +- poky/meta/lib/oeqa/runtime/loader.py | 5 +- .../lib/oeqa/runtime/utils/targetbuildproject.py | 5 +- poky/meta/lib/oeqa/sdk/case.py | 7 +- poky/meta/lib/oeqa/sdk/cases/assimp.py | 4 + poky/meta/lib/oeqa/sdk/cases/buildcpio.py | 4 + poky/meta/lib/oeqa/sdk/cases/buildepoxy.py | 4 + poky/meta/lib/oeqa/sdk/cases/buildgalculator.py | 4 + poky/meta/lib/oeqa/sdk/cases/buildlzip.py | 4 + poky/meta/lib/oeqa/sdk/cases/gcc.py | 4 + poky/meta/lib/oeqa/sdk/cases/perl.py | 4 + poky/meta/lib/oeqa/sdk/cases/python.py | 4 + poky/meta/lib/oeqa/sdk/context.py | 5 +- poky/meta/lib/oeqa/sdk/testsdk.py | 5 +- poky/meta/lib/oeqa/sdk/utils/sdkbuildproject.py | 8 +- poky/meta/lib/oeqa/sdkext/case.py | 5 +- poky/meta/lib/oeqa/sdkext/cases/devtool.py | 12 +- poky/meta/lib/oeqa/sdkext/context.py | 5 +- poky/meta/lib/oeqa/sdkext/testsdk.py | 5 +- poky/meta/lib/oeqa/selftest/case.py | 5 +- .../lib/oeqa/selftest/cases/_sstatetests_noauto.py | 4 + poky/meta/lib/oeqa/selftest/cases/archiver.py | 8 +- poky/meta/lib/oeqa/selftest/cases/bblayers.py | 12 +- poky/meta/lib/oeqa/selftest/cases/bbtests.py | 30 +- poky/meta/lib/oeqa/selftest/cases/buildhistory.py | 4 + poky/meta/lib/oeqa/selftest/cases/buildoptions.py | 14 +- .../meta/lib/oeqa/selftest/cases/containerimage.py | 6 +- poky/meta/lib/oeqa/selftest/cases/devtool.py | 43 +- poky/meta/lib/oeqa/selftest/cases/distrodata.py | 6 +- poky/meta/lib/oeqa/selftest/cases/eSDK.py | 7 +- .../lib/oeqa/selftest/cases/efibootpartition.py | 2 + poky/meta/lib/oeqa/selftest/cases/fetch.py | 6 +- poky/meta/lib/oeqa/selftest/cases/gotoolchain.py | 4 + poky/meta/lib/oeqa/selftest/cases/image_typedep.py | 6 +- poky/meta/lib/oeqa/selftest/cases/imagefeatures.py | 13 +- poky/meta/lib/oeqa/selftest/cases/layerappend.py | 6 +- poky/meta/lib/oeqa/selftest/cases/liboe.py | 8 +- poky/meta/lib/oeqa/selftest/cases/lic_checksum.py | 6 +- poky/meta/lib/oeqa/selftest/cases/manifest.py | 7 +- poky/meta/lib/oeqa/selftest/cases/meta_ide.py | 8 +- poky/meta/lib/oeqa/selftest/cases/multiconfig.py | 4 + .../lib/oeqa/selftest/cases/oelib/buildhistory.py | 8 +- poky/meta/lib/oeqa/selftest/cases/oelib/elf.py | 4 + poky/meta/lib/oeqa/selftest/cases/oelib/license.py | 4 + poky/meta/lib/oeqa/selftest/cases/oelib/path.py | 4 + poky/meta/lib/oeqa/selftest/cases/oelib/types.py | 4 + poky/meta/lib/oeqa/selftest/cases/oelib/utils.py | 4 + poky/meta/lib/oeqa/selftest/cases/oescripts.py | 40 +- poky/meta/lib/oeqa/selftest/cases/package.py | 8 +- poky/meta/lib/oeqa/selftest/cases/pkgdata.py | 13 +- poky/meta/lib/oeqa/selftest/cases/prservice.py | 14 +- poky/meta/lib/oeqa/selftest/cases/recipetool.py | 43 +- poky/meta/lib/oeqa/selftest/cases/recipeutils.py | 5 +- .../lib/oeqa/selftest/cases/resulttooltests.py | 4 + poky/meta/lib/oeqa/selftest/cases/runcmd.py | 21 +- poky/meta/lib/oeqa/selftest/cases/runqemu.py | 15 +- poky/meta/lib/oeqa/selftest/cases/runtime_test.py | 13 +- poky/meta/lib/oeqa/selftest/cases/selftest.py | 6 +- poky/meta/lib/oeqa/selftest/cases/signing.py | 8 +- poky/meta/lib/oeqa/selftest/cases/sstate.py | 4 + poky/meta/lib/oeqa/selftest/cases/sstatetests.py | 25 +- poky/meta/lib/oeqa/selftest/cases/tinfoil.py | 15 +- poky/meta/lib/oeqa/selftest/cases/wic.py | 75 +- poky/meta/lib/oeqa/selftest/context.py | 5 +- poky/meta/lib/oeqa/targetcontrol.py | 6 +- poky/meta/lib/oeqa/utils/__init__.py | 3 + poky/meta/lib/oeqa/utils/buildproject.py | 4 +- poky/meta/lib/oeqa/utils/commands.py | 4 +- poky/meta/lib/oeqa/utils/decorators.py | 4 +- poky/meta/lib/oeqa/utils/dump.py | 4 + poky/meta/lib/oeqa/utils/ftools.py | 4 + poky/meta/lib/oeqa/utils/git.py | 2 +- poky/meta/lib/oeqa/utils/gitarchive.py | 9 +- poky/meta/lib/oeqa/utils/httpserver.py | 4 + poky/meta/lib/oeqa/utils/logparser.py | 65 + poky/meta/lib/oeqa/utils/metadata.py | 2 +- poky/meta/lib/oeqa/utils/network.py | 4 + poky/meta/lib/oeqa/utils/package_manager.py | 4 + poky/meta/lib/oeqa/utils/qemurunner.py | 4 +- poky/meta/lib/oeqa/utils/qemutinyrunner.py | 4 +- poky/meta/lib/oeqa/utils/sshcontrol.py | 5 +- poky/meta/lib/oeqa/utils/subprocesstweak.py | 3 + poky/meta/lib/oeqa/utils/targetbuild.py | 4 +- poky/meta/lib/oeqa/utils/testexport.py | 4 +- poky/meta/lib/rootfspostcommands.py | 4 + .../gnu-efi/gnu-efi/gcc46-compatibility.patch | 35 - poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.9.bb | 1 - .../files/disable-address-of-packed-member.patch | 262 -- .../grub/files/fix.build.with.gcc-7.patch | 39 - .../grub/files/fix.build.with.squashfs.patch | 24 - poky/meta/recipes-bsp/grub/grub-efi_2.02.bb | 5 +- poky/meta/recipes-bsp/grub/grub2.inc | 5 +- poky/meta/recipes-bsp/u-boot/u-boot-common.inc | 2 +- .../recipes-bsp/u-boot/u-boot-fw-utils_2019.01.bb | 34 - .../recipes-bsp/u-boot/u-boot-fw-utils_2019.04.bb | 34 + .../recipes-bsp/u-boot/u-boot-tools_2019.01.bb | 67 - .../recipes-bsp/u-boot/u-boot-tools_2019.04.bb | 67 + poky/meta/recipes-bsp/u-boot/u-boot.inc | 2 +- poky/meta/recipes-bsp/u-boot/u-boot_2019.01.bb | 4 - poky/meta/recipes-bsp/u-boot/u-boot_2019.04.bb | 4 + poky/meta/recipes-connectivity/connman/connman.inc | 1 + ...us-issues-which-cause-problems-under-musl.patch | 362 -- .../recipes-connectivity/connman/connman_1.36.bb | 16 - .../recipes-connectivity/connman/connman_1.37.bb | 15 + ...eplace-custom-isc_boolean_t-with-C-standa.patch | 2882 ------------ ...d-includes-of-new-BIND9-compatibility-hea.patch | 79 + poky/meta/recipes-connectivity/dhcp/dhcp_4.4.1.bb | 2 +- .../recipes-connectivity/iproute2/iproute2.inc | 16 +- .../iproute2/0001-ip-Remove-unneed-header.patch | 30 - .../iproute2/iproute2/configure-cross.patch | 31 +- .../iproute2/iproute2_4.19.0.bb | 14 - .../iproute2/iproute2_5.0.0.bb | 13 + .../irda-utils/irda-utils-0.9.18/init | 78 - .../irda-utils/irda-utils-0.9.18/ldflags.patch | 87 - .../irda-utils/irda-utils-0.9.18/musl.patch | 29 - .../irda-utils/irda-utils_0.9.18.bb | 51 - .../iw/0001-connect-fix-parsing-of-WEP-keys.patch | 194 - .../iw/iw/separate-objdir.patch | 27 +- poky/meta/recipes-connectivity/iw/iw_4.14.bb | 34 - poky/meta/recipes-connectivity/iw/iw_5.0.1.bb | 33 + ...ve-progressmeter-force-an-update-at-the-b.patch | 121 + .../openssh/openssh/CVE-2018-20685.patch | 40 + .../openssh/openssh/CVE-2019-6109.patch | 275 ++ .../openssh/openssh/CVE-2019-6111.patch | 187 + .../recipes-connectivity/openssh/openssh_7.9p1.bb | 5 + .../openssl10/0001-Fix-BN_LLONG-breakage.patch | 33 - .../openssl10/0001-Fix-DES_LONG-breakage.patch | 35 - ...build-with-clang-using-external-assembler.patch | 45 - .../0001-allow-manpages-to-be-disabled.patch | 31 - ...penssl-force-soft-link-to-avoid-rare-race.patch | 46 - .../openssl/openssl10/Makefiles-ptest.patch | 89 - .../Use-SHA256-not-MD5-as-default-digest.patch | 69 - .../openssl/openssl10/configure-musl-target.patch | 25 - .../openssl/openssl10/configure-targets.patch | 35 - .../openssl/openssl10/debian/c_rehash-compat.patch | 71 - .../openssl/openssl10/debian/debian-targets.patch | 73 - .../openssl/openssl10/debian/man-dir.patch | 15 - .../openssl/openssl10/debian/man-section.patch | 34 - .../openssl/openssl10/debian/no-rpath.patch | 15 - .../openssl/openssl10/debian/no-symbolic.patch | 15 - .../openssl/openssl10/debian/pic.patch | 177 - .../debian1.0.2/block_digicert_malaysia.patch | 29 - .../openssl10/debian1.0.2/block_diginotar.patch | 68 - .../openssl/openssl10/debian1.0.2/soname.patch | 15 - .../openssl10/debian1.0.2/version-script.patch | 4658 -------------------- .../openssl10/engines-install-in-libdir-ssl.patch | 64 - .../openssl/openssl10/oe-ldflags.patch | 24 - .../openssl/openssl10/openssl-c_rehash.sh | 222 - .../openssl10/openssl-fix-des.pod-error.patch | 19 - .../openssl/openssl10/openssl_fix_for_x32.patch | 39 - .../openssl/openssl10/parallel.patch | 368 -- .../openssl/openssl10/ptest-deps.patch | 34 - .../openssl/openssl10/ptest_makefile_deps.patch | 248 -- .../openssl/openssl10/reproducible-cflags.patch | 20 - .../openssl10/reproducible-mkbuildinf.patch | 21 - .../openssl/openssl10/run-ptest | 2 - .../openssl/openssl10/shared-libs.patch | 41 - .../openssl/openssl10_1.0.2r.bb | 360 -- .../recipes-connectivity/openssl/openssl_1.1.1b.bb | 4 - ...001-Access-c_ispeed-and-c_ospeed-via-APIs.patch | 52 - .../socat/Makefile.in-fix-for-parallel-build.patch | 35 - .../recipes-connectivity/socat/socat_1.7.3.2.bb | 54 - .../recipes-connectivity/socat/socat_1.7.3.3.bb | 52 + .../wpa-supplicant/wpa-supplicant_2.7.bb | 109 - .../wpa-supplicant/wpa-supplicant_2.8.bb | 109 + .../recipes-core/base-files/base-files_3.0.14.bb | 7 +- .../recipes-core/base-passwd/base-passwd/kvm.patch | 23 + .../recipes-core/base-passwd/base-passwd_3.5.29.bb | 3 +- poky/meta/recipes-core/busybox/busybox.inc | 16 +- ...ix-two-test-case-to-also-depend-on-DC_BIG.patch | 39 + poky/meta/recipes-core/busybox/busybox_1.30.1.bb | 1 + .../coreutils/strtod_fix_clash_with_strtold.patch | 56 + poky/meta/recipes-core/coreutils/coreutils_8.30.bb | 139 - poky/meta/recipes-core/coreutils/coreutils_8.31.bb | 141 + poky/meta/recipes-core/dbus/dbus-test_1.12.12.bb | 17 +- poky/meta/recipes-core/dbus/dbus/run-ptest | 16 +- poky/meta/recipes-core/dropbear/dropbear.inc | 2 + .../meta/recipes-core/dropbear/dropbear_2019.77.bb | 4 - .../meta/recipes-core/dropbear/dropbear_2019.78.bb | 4 + poky/meta/recipes-core/ell/ell_0.20.bb | 22 + .../gettext/gettext-0.19.8.1/run-ptest | 6 + .../gettext-0.19.8.1/serial-tests-config.patch | 58 + poky/meta/recipes-core/gettext/gettext_0.19.8.1.bb | 57 +- .../glib-2.0/glib-2.0/fix-nl-abaltmon.patch | 104 + poky/meta/recipes-core/glib-2.0/glib-2.0_2.58.3.bb | 1 + poky/meta/recipes-core/glib-2.0/glib.inc | 16 +- .../glib-networking/glib-networking_2.58.0.bb | 31 - .../glib-networking/glib-networking_2.60.1.bb | 31 + poky/meta/recipes-core/glibc/glibc_2.29.bb | 2 +- .../images/build-appliance-image_15.0.0.bb | 2 +- .../recipes-core/initrdscripts/files/init-live.sh | 6 +- poky/meta/recipes-core/libxcrypt/libxcrypt.bb | 30 - .../meta/recipes-core/libxcrypt/libxcrypt_4.4.4.bb | 32 + ...1-Fix-infinite-loop-in-LZMA-decompression.patch | 55 - .../libxml/libxml2/fix-CVE-2017-8872.patch | 65 - .../libxml/libxml2/fix-CVE-2018-14404.patch | 45 - .../libxml/libxml2/fix-execution-of-ptests.patch | 24 +- .../recipes-core/libxml/libxml2/libxml-64bit.patch | 24 +- .../libxml/libxml2/libxml-m4-use-pkgconfig.patch | 16 +- .../libxml/libxml2/python-sitepackages-dir.patch | 13 +- .../meta/recipes-core/libxml/libxml2/runtest.patch | 204 +- poky/meta/recipes-core/libxml/libxml2_2.9.8.bb | 113 - poky/meta/recipes-core/libxml/libxml2_2.9.9.bb | 110 + .../recipes-core/meta/target-sdk-provides-dummy.bb | 2 + poky/meta/recipes-core/musl/musl_git.bb | 4 +- .../recipes-core/ncurses/ncurses_6.1+20181013.bb | 2 +- .../packagegroups/packagegroup-base.bb | 19 - .../packagegroups/packagegroup-self-hosted.bb | 1 - poky/meta/recipes-core/systemd/systemd-boot_241.bb | 71 - poky/meta/recipes-core/systemd/systemd-boot_242.bb | 71 + .../systemd/systemd-conf/journald.conf | 3 + .../recipes-core/systemd/systemd-conf/logind.conf | 2 + .../recipes-core/systemd/systemd-conf/system.conf | 2 + .../systemd/systemd-conf/system.conf-qemuall | 3 + poky/meta/recipes-core/systemd/systemd-conf_241.bb | 53 - poky/meta/recipes-core/systemd/systemd-conf_242.bb | 32 + .../systemd/systemd-systemctl/systemctl | 510 ++- poky/meta/recipes-core/systemd/systemd.inc | 4 +- ...01-do-not-disable-buffer-in-writing-files.patch | 208 +- ...re-version.h-as-dep-for-various-targets-t.patch | 118 - ...clare-version.h-as-dependency-for-systemd.patch | 32 - .../0002-don-t-use-glibc-specific-qsort_r.patch | 39 +- ...e.h-add-__compare_fn_t-and-comparison_fn_.patch | 32 +- ...llback-parse_printf_format-implementation.patch | 22 +- ...les-watch-metadata-changes-in-ide-devices.patch | 4 +- ...asic-missing.h-check-for-missing-strndupa.patch | 326 +- ...work-remove-redunant-link-name-in-message.patch | 41 + ...-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not.patch | 55 +- ...il-don-t-fail-if-libc-doesn-t-support-IDN.patch | 8 +- ...exdecoct.c-Include-missing.h-for-strndupa.patch | 28 - ...ble-buffering-when-writing-to-oom_score_a.patch | 9 +- ...id-redefinition-of-prctl_mm_map-structure.patch | 19 +- .../systemd/0024-test-json.c-define-M_PIl.patch | 8 +- ...025-fs-utilh-add-missing-sys-stat-include.patch | 30 + .../recipes-core/systemd/systemd/99-default.preset | 1 + poky/meta/recipes-core/systemd/systemd_241.bb | 652 --- poky/meta/recipes-core/systemd/systemd_242.bb | 662 +++ poky/meta/recipes-core/util-linux/util-linux.inc | 5 +- .../recipes-core/util-linux/util-linux/run-ptest | 4 + .../recipes-devtools/binutils/binutils-2.32.inc | 4 + .../binutils/binutils/CVE-2019-9074.patch | 68 + .../binutils/binutils/CVE-2019-9075.patch | 119 + .../binutils/binutils/CVE-2019-9076.patch | 49 + .../binutils/binutils/CVE-2019-9077.patch | 37 + ...need_charset_alias-when-building-for-musl.patch | 33 - .../0001-src-local.mk-fix-parallel-issue.patch | 34 - .../meta/recipes-devtools/bison/bison/gnulib.patch | 21 - poky/meta/recipes-devtools/bison/bison_3.0.4.bb | 43 - poky/meta/recipes-devtools/bison/bison_3.1.bb | 40 + .../btrfs-tools/btrfs-tools_4.20.1.bb | 44 - .../btrfs-tools/btrfs-tools_4.20.2.bb | 44 + poky/meta/recipes-devtools/ccache/ccache.inc | 2 +- poky/meta/recipes-devtools/ccache/ccache_3.6.bb | 12 - poky/meta/recipes-devtools/ccache/ccache_3.7.1.bb | 7 + .../0002-dev.mk.in-fix-file-name-too-long.patch | 30 - ...mentation-fault-error-when-gcc-o-dev-null.patch | 79 - .../createrepo-c/createrepo-c_0.12.2.bb | 34 + .../createrepo-c/createrepo-c_git.bb | 35 - poky/meta/recipes-devtools/dnf/dnf_4.1.0.bb | 75 - poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb | 83 + .../recipes-devtools/e2fsprogs/e2fsprogs/run-ptest | 2 +- .../recipes-devtools/elfutils/elfutils_0.176.bb | 44 +- ...1-fix-err-variable-and-function-conflicts.patch | 91 + .../0001-skip-the-test-when-gcc-not-deployed.patch | 45 + .../files/debian/testsuite-ignore-elflint.diff | 52 + .../recipes-devtools/elfutils/files/musl.patch | 29 + .../recipes-devtools/elfutils/files/ptest.patch | 76 + .../meta/recipes-devtools/elfutils/files/run-ptest | 6 + poky/meta/recipes-devtools/file/file_5.36.bb | 2 - poky/meta/recipes-devtools/gcc/gcc-8.3.inc | 2 +- ...sion-limit-to-libiberty-s-demangling-code.patch | 325 ++ poky/meta/recipes-devtools/gcc/gcc-9.1.inc | 118 + .../0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch | 42 + .../0002-gcc-poison-system-directories.patch | 203 + .../0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch | 73 + .../gcc/gcc-9.1/0004-64-bit-multilib-hack.patch | 119 + .../gcc/gcc-9.1/0005-optional-libstdc.patch | 125 + ...0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch | 59 + .../gcc/gcc-9.1/0007-COLLECT_GCC_OPTIONS.patch | 38 + ...efaults.h-in-B-instead-of-S-and-t-oe-in-B.patch | 96 + .../gcc-9.1/0009-fortran-cross-compile-hack.patch | 46 + .../gcc/gcc-9.1/0010-cpp-honor-sysroot.patch | 54 + .../gcc-9.1/0011-MIPS64-Default-to-N64-ABI.patch | 57 + ...C_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch | 232 + ...0013-gcc-Fix-argument-list-too-long-error.patch | 40 + .../gcc/gcc-9.1/0014-Disable-sdt.patch | 113 + .../gcc/gcc-9.1/0015-libtool.patch | 42 + ...4-pass-fix-v4bx-to-linker-to-support-EABI.patch | 43 + ...tilib-config-files-from-B-instead-of-usin.patch | 102 + ...-libdir-from-.la-which-usually-points-to-.patch | 31 + .../gcc/gcc-9.1/0019-export-CPP.patch | 53 + ...Ensure-target-gcc-headers-can-be-included.patch | 98 + ...-t-build-with-disable-dependency-tracking.patch | 54 + ...h-host-directory-during-relink-if-inst_pr.patch | 38 + ...IBS_DIR-replacement-instead-of-hardcoding.patch | 29 + .../0024-aarch64-Add-support-for-musl-ldso.patch | 28 + ...ibcc1-fix-libcc1-s-install-path-and-rpath.patch | 54 + ...-handle-sysroot-support-for-nativesdk-gcc.patch | 213 + ...et-sysroot-gcc-version-specific-dirs-with.patch | 102 + ...-various-_FOR_BUILD-and-related-variables.patch | 137 + .../0029-nios2-Define-MUSL_DYNAMIC_LINKER.patch | 28 + ...shared-to-link-commandline-for-musl-targe.patch | 87 + ...31-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch | 125 + ...bgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch | 29 + ...e-alias-for-__cpu_indicator_init-instead-.patch | 86 + .../gcc-9.1/0034-sync-gcc-stddef.h-with-musl.patch | 91 + ...ation-fault-in-precompiled-header-generat.patch | 60 + .../gcc-9.1/0036-Fix-for-testsuite-failure.patch | 258 ++ ...0037-Re-introduce-spe-commandline-options.patch | 41 + .../recipes-devtools/gcc/gcc-configure-common.inc | 8 +- .../recipes-devtools/gcc/gcc-cross-canadian.inc | 9 +- .../recipes-devtools/gcc/gcc-cross-canadian_9.1.bb | 5 + poky/meta/recipes-devtools/gcc/gcc-cross_9.1.bb | 3 + poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.1.bb | 2 + poky/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb | 12 + poky/meta/recipes-devtools/gcc/gcc-sanitizers.inc | 3 + .../recipes-devtools/gcc/gcc-sanitizers_9.1.bb | 7 + poky/meta/recipes-devtools/gcc/gcc-source_9.1.bb | 4 + poky/meta/recipes-devtools/gcc/gcc-target.inc | 2 - poky/meta/recipes-devtools/gcc/gcc_9.1.bb | 14 + .../recipes-devtools/gcc/libgcc-initial_9.1.bb | 5 + poky/meta/recipes-devtools/gcc/libgcc_9.1.bb | 5 + poky/meta/recipes-devtools/gcc/libgfortran.inc | 1 + poky/meta/recipes-devtools/gcc/libgfortran_9.1.bb | 3 + poky/meta/recipes-devtools/gdb/gdb-8.2.1.inc | 2 + ...-AArch64-Fix-the-gdb-build-with-musl-libc.patch | 52 + .../recipes-devtools/gdb/gdb/CVE-2017-9778.patch | 99 + poky/meta/recipes-devtools/git/git_2.20.1.bb | 11 - poky/meta/recipes-devtools/git/git_2.21.0.bb | 11 + .../help2man/help2man-native_1.47.10.bb | 24 + .../help2man/help2man-native_1.47.6.bb | 25 - ...2-Set-library-installation-path-correctly.patch | 27 - .../meta/recipes-devtools/libcomps/libcomps_git.bb | 5 +- .../libdnf/libdnf/0001-Add-WITH_TESTS-option.patch | 44 +- ...ers-for-both-libsolv-and-libsolvext-libdn.patch | 16 +- ...nclude-missing-string-and-errno.h-headers.patch | 65 - ...-variables-with-pkg-config-cmake-s-own-mo.patch | 20 +- poky/meta/recipes-devtools/libdnf/libdnf_0.26.0.bb | 29 - poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb | 28 + .../libmodulemd/libmodulemd_git.bb | 15 +- .../meta/recipes-devtools/librepo/librepo_1.9.4.bb | 21 - .../meta/recipes-devtools/librepo/librepo_1.9.6.bb | 21 + poky/meta/recipes-devtools/m4/m4-1.4.18.inc | 37 +- .../m4/m4/0001-test-getopt-posix-fix.patch | 41 + .../m4/m4/m4-1.4.18-glibc-change-work-around.patch | 3 +- poky/meta/recipes-devtools/m4/m4/run-ptest | 5 + .../m4/m4/serial-tests-config.patch | 30 + poky/meta/recipes-devtools/meson/meson.inc | 15 +- ...s-move-cross_args-in-front-of-output_args.patch | 30 - .../0001-Make-CPU-family-warnings-fatal.patch | 35 +- ....py-detect-windows-also-if-the-system-str.patch | 25 + ...ix-issues-that-arise-when-cross-compiling.patch | 2 +- ...environment.py-check-environment-for-vari.patch | 28 + ...environment.py-do-not-determine-whether-a.patch | 28 + ...hon.py-do-not-substitute-python-s-install.patch | 44 + ...odules-windows-split-WINDRES-env-variable.patch | 26 - ...02-Support-building-allarch-recipes-again.patch | 16 +- ....py-detect-windows-also-if-the-system-str.patch | 25 - ...onbuild-allow-multiple-cross-file-options.patch | 185 + .../meson/meson/cross-libdir.patch | 35 - .../load-configs-generalise-search-path.patch | 53 + .../recipes-devtools/meson/meson/many-cross.patch | 207 - poky/meta/recipes-devtools/meson/meson_0.49.2.bb | 4 - poky/meta/recipes-devtools/meson/meson_0.50.1.bb | 4 + .../meson/nativesdk-meson_0.49.2.bb | 71 - .../meson/nativesdk-meson_0.50.1.bb | 71 + ...ce-strncpy-with-memmove-on-overlapping-me.patch | 36 - poky/meta/recipes-devtools/mmc/mmc-utils_git.bb | 5 +- ...en-if-fs-size-is-not-divisible-by-sectors.patch | 34 - ...01-remove-LOCK_NB-to-use-blocking-request.patch | 44 - poky/meta/recipes-devtools/mtools/mtools_4.0.19.bb | 53 - poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb | 51 + .../recipes-devtools/ninja/ninja/fix-musl.patch | 15 +- ...pkg-add-target-for-testsuite-installation.patch | 43 + ...sue72.py-resolve-paths-before-comparision.patch | 31 + poky/meta/recipes-devtools/opkg/opkg/run-ptest | 5 + poky/meta/recipes-devtools/opkg/opkg_0.4.0.bb | 13 +- poky/meta/recipes-devtools/orc/orc_0.4.28.bb | 27 - poky/meta/recipes-devtools/orc/orc_0.4.29.bb | 26 + .../patchelf/Increase-maxSize-to-64MB.patch | 46 - .../patchelf/Skip-empty-section-fixes-66.patch | 30 - .../patchelf/patchelf/avoidholes.patch | 163 - .../patchelf/fix-adjusting-startPage.patch | 15 +- .../patchelf/patchelf/handle-read-only-files.patch | 17 +- .../recipes-devtools/patchelf/patchelf_0.10.bb | 16 + .../meta/recipes-devtools/patchelf/patchelf_0.9.bb | 19 - .../recipes-devtools/perl-sanity/perl_5.28.1.bb | 304 -- .../recipes-devtools/perl-sanity/perl_5.28.2.bb | 304 ++ poky/meta/recipes-devtools/pseudo/pseudo_git.bb | 2 +- ...h-usr-and-so-on-for-libraries-by-default-.patch | 16 +- .../files/0001-npy_cpu-Add-riscv-support.patch | 14 +- .../python-numpy/files/fix_shebang_f2py.patch | 29 - .../recipes-devtools/python-numpy/python-numpy.inc | 10 +- .../python-numpy/python-numpy_1.14.5.bb | 6 - .../python-numpy/python-numpy_1.16.3.bb | 6 + .../python-numpy/python3-numpy_1.14.5.bb | 2 - .../python-numpy/python3-numpy_1.16.3.bb | 3 + poky/meta/recipes-devtools/python/python-mako.inc | 4 +- .../python/python-native_2.7.15.bb | 91 - .../python/python-native_2.7.16.bb | 89 + .../python/python-scons-native_3.0.1.bb | 8 - .../python/python-scons-native_3.0.5.bb | 8 + .../recipes-devtools/python/python-scons_3.0.1.bb | 21 - .../recipes-devtools/python/python-scons_3.0.5.bb | 24 + .../recipes-devtools/python/python-setuptools.inc | 4 +- .../python/python-setuptools_40.8.0.bb | 9 - .../python/python-setuptools_41.0.1.bb | 9 + poky/meta/recipes-devtools/python/python.inc | 11 +- ...23-Use-XML_SetHashSalt-in-_elementtree-GH.patch | 96 - ...ix-test_ssl-when-a-filename-cannot-be-enc.patch | 55 - ...LS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch | 120 - ...34540-Convert-shutil._call_external_zip-t.patch | 67 - ...dd-missing-closing-wrapper-in-test_tls1_3.patch | 37 - ...ix-test_ssl.test_options-to-account-for-O.patch | 37 - ...ix-test_default_ecdh_curve-needs-no-tlsv1.patch | 34 - .../recipes-devtools/python/python3-mako_1.0.7.bb | 2 - .../recipes-devtools/python/python3-mako_1.0.9.bb | 3 + .../recipes-devtools/python/python3-pbr_5.1.2.bb | 5 - .../recipes-devtools/python/python3-pbr_5.1.3.bb | 5 + .../recipes-devtools/python/python3-pip_19.0.2.bb | 30 - .../recipes-devtools/python/python3-pip_19.0.3.bb | 30 + .../python/python3-pycairo_1.15.6.bb | 31 - .../python/python3-pycairo_1.18.1.bb | 27 + .../0001-Do-not-build-tests.patch | 30 + .../python/python3-pygobject_3.28.3.bb | 29 - .../python/python3-pygobject_3.32.1.bb | 33 + .../python/python3-setuptools_40.8.0.bb | 6 - .../python/python3-setuptools_41.0.1.bb | 6 + ...ig.py-fix-another-place-where-lib-is-hard.patch | 31 + ...ix-Issue36464-parallel-build-race-problem.patch | 34 + ...ysconfig-append-STAGING_LIBDIR-python-sys.patch | 2 +- ...EPYTHON3HOME-is-set-use-instead-of-PYTHON.patch | 49 + ...2-distutils-prefix-is-inside-staging-area.patch | 2 +- .../python/python3/python3-manifest.json | 1 + .../meta/recipes-devtools/python/python3/run-ptest | 2 +- poky/meta/recipes-devtools/python/python3_3.7.2.bb | 290 -- poky/meta/recipes-devtools/python/python3_3.7.3.bb | 300 ++ poky/meta/recipes-devtools/python/python_2.7.15.bb | 271 -- poky/meta/recipes-devtools/python/python_2.7.16.bb | 267 ++ .../qemu/nativesdk-qemu-helper_1.0.bb | 2 +- poky/meta/recipes-devtools/qemu/qemu-native.inc | 4 +- .../recipes-devtools/qemu/qemu-native_3.1.0.bb | 9 - .../recipes-devtools/qemu/qemu-native_4.0.0.bb | 9 + .../qemu/qemu-system-native_3.1.0.bb | 23 - .../qemu/qemu-system-native_4.0.0.bb | 24 + poky/meta/recipes-devtools/qemu/qemu.inc | 45 +- .../qemu/qemu/0001-Add-a-missing-X11-include.patch | 65 - .../0001-egl-headless-add-egl_create_context.patch | 50 - ...001-qemu-Add-missing-wacom-HID-descriptor.patch | 139 + ...sdl.c-allow-user-to-disable-pointer-grabs.patch | 72 - ...age-ptest-which-runs-all-unit-test-cases-.patch | 33 + ...002-qemu-Add-missing-wacom-HID-descriptor.patch | 139 - ...age-ptest-which-runs-all-unit-test-cases-.patch | 33 - ...dition-environment-space-to-boot-loader-q.patch | 33 + ...dition-environment-space-to-boot-loader-q.patch | 33 - .../qemu/qemu/0004-qemu-disable-Valgrind.patch | 34 + ...paths-searched-during-user-mode-emulation.patch | 146 + .../qemu/qemu/0005-qemu-disable-Valgrind.patch | 34 - ...paths-searched-during-user-mode-emulation.patch | 146 - ...-set-ld.bfd-fix-cflags-and-set-some-envir.patch | 26 + ...ardev-connect-socket-to-a-spawned-command.patch | 239 + ...-set-ld.bfd-fix-cflags-and-set-some-envir.patch | 26 - .../qemu/0008-apic-fixup-fallthrough-to-PIC.patch | 44 + ...ardev-connect-socket-to-a-spawned-command.patch | 240 - .../qemu/0009-apic-fixup-fallthrough-to-PIC.patch | 44 - ...-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch | 33 + ...x-user-fix-mmap-munmap-mprotect-mremap-sh.patch | 142 + ...-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch | 33 - ...x-user-fix-mmap-munmap-mprotect-mremap-sh.patch | 142 - ...11-fix-libcap-header-issue-on-some-distro.patch | 86 + ...error-messages-when-qemi_cpu_kick_thread-.patch | 74 + ...12-fix-libcap-header-issue-on-some-distro.patch | 86 - ...et-arm-Use-vector-operations-for-saturati.patch | 493 +++ ...error-messages-when-qemi_cpu_kick_thread-.patch | 74 - .../qemu/qemu/0014-fix-CVE-2018-16872.patch | 85 - .../qemu/qemu/0015-fix-CVE-2018-20124.patch | 60 - .../qemu/qemu/0016-fix-CVE-2018-20125.patch | 54 - .../qemu/qemu/0017-fix-CVE-2018-20126.patch | 113 - .../qemu/qemu/0018-fix-CVE-2018-20191.patch | 47 - .../qemu/qemu/0019-fix-CVE-2018-20216.patch | 85 - .../recipes-devtools/qemu/qemu/CVE-2019-3812.patch | 39 - poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb | 22 - poky/meta/recipes-devtools/qemu/qemu_4.0.0.bb | 20 + poky/meta/recipes-devtools/ruby/ruby.inc | 4 +- poky/meta/recipes-devtools/ruby/ruby/run-ptest | 13 + poky/meta/recipes-devtools/ruby/ruby_2.5.3.bb | 11 + .../run-postinsts/run-postinsts/run-postinsts | 2 +- .../squashfs-tools/squashfs-tools_git.bb | 2 + .../subversion/subversion/disable_macos.patch | 45 +- .../subversion/subversion/serfmacro.patch | 27 +- .../subversion-1.12.0-apr_1.7.0_fix-1.patch | 107 + .../subversion/subversion_1.11.1.bb | 58 - .../subversion/subversion_1.12.0.bb | 59 + poky/meta/recipes-devtools/vala/vala.inc | 2 +- .../vala/vala/0001-Disable-valadoc.patch | 32 - .../vala/vala/disable-graphviz.patch | 226 - poky/meta/recipes-devtools/vala/vala_0.42.5.bb | 10 - poky/meta/recipes-devtools/vala/vala_0.44.3.bb | 8 + ...ncies-between-libcoregrind-.a-and-m_main..patch | 45 - ...-Return-a-valid-exit_code-from-vg_regtest.patch | 27 + ...1-tests-amd64-Do-not-clobber-rsp-register.patch | 37 - ...grind-filter_xml_frames-do-not-filter-usr.patch | 39 + ...-valgrind-adjust-std_list-expected-output.patch | 32 + .../recipes-devtools/valgrind/valgrind_3.14.0.bb | 162 - .../recipes-devtools/valgrind/valgrind_3.15.0.bb | 184 + .../recipes-extended/acpica/acpica_20180508.bb | 52 - .../recipes-extended/acpica/acpica_20190405.bb | 49 + .../files/manipulate-fds-instead-of-FILE.patch | 71 - .../files/rename-yy_scan_string-manually.patch | 64 - ...1-help-fix-printf-format-security-warning.patch | 35 - .../recipes-extended/bash/bash/build-tests.patch | 7 +- .../recipes-extended/bash/bash/execute_cmd.patch | 19 +- .../recipes-extended/bash/bash/pathexp-dep.patch | 13 - poky/meta/recipes-extended/bash/bash_4.4.18.bb | 41 - poky/meta/recipes-extended/bash/bash_5.0.bb | 45 + poky/meta/recipes-extended/cpio/cpio_2.12.bb | 6 +- .../cronie/cronie/crond_pam_config.patch | 16 +- poky/meta/recipes-extended/cronie/cronie_1.5.2.bb | 83 - poky/meta/recipes-extended/cronie/cronie_1.5.4.bb | 83 + poky/meta/recipes-extended/cups/cups_2.2.10.bb | 6 - poky/meta/recipes-extended/cups/cups_2.2.11.bb | 6 + .../ethtool/ethtool/avoid_parallel_tests.patch | 2 +- poky/meta/recipes-extended/ethtool/ethtool_4.19.bb | 30 - poky/meta/recipes-extended/ethtool/ethtool_5.0.bb | 30 + .../ghostscript/CVE-2019-3835-0001.patch | 99 - .../ghostscript/CVE-2019-3835-0002.patch | 71 - .../ghostscript/CVE-2019-3835-0003.patch | 295 -- .../ghostscript/CVE-2019-3835-0004.patch | 167 - .../ghostscript/CVE-2019-3838-0001.patch | 34 - .../ghostscript/CVE-2019-3838-0002.patch | 30 - .../ghostscript/CVE-2019-6116-0001.patch | 177 - .../ghostscript/CVE-2019-6116-0002.patch | 442 -- .../ghostscript/CVE-2019-6116-0003.patch | 32 - .../ghostscript/CVE-2019-6116-0004.patch | 136 - .../ghostscript/CVE-2019-6116-0005.patch | 250 -- .../ghostscript/CVE-2019-6116-0006.patch | 596 --- .../ghostscript/CVE-2019-6116-0007.patch | 346 -- .../ghostscript/ghostscript-9.02-genarch.patch | 14 +- .../ghostscript/ghostscript_9.26.bb | 138 - .../ghostscript/ghostscript_9.27.bb | 128 + .../groff/files/0001-fix-shebang-for-taget.patch | 31 + .../0001-replace-perl-w-with-use-warnings.patch | 106 + .../groff/files/0001-support-musl.patch | 41 + .../groff-not-search-fonts-on-build-host.patch | 32 + ...need_charset_alias-when-building-for-musl.patch | 30 - .../0001-replace-perl-w-with-use-warnings.patch | 102 - ...off-1.22.2-correct-man.local-install-path.patch | 34 - .../groff-not-search-fonts-on-build-host.patch | 20 - poky/meta/recipes-extended/groff/groff_1.22.3.bb | 87 - poky/meta/recipes-extended/groff/groff_1.22.4.bb | 65 + ...ions-format-security-fixes-in-libipt_icmp.patch | 61 + .../recipes-extended/iptables/iptables_1.6.2.bb | 64 - .../recipes-extended/iptables/iptables_1.8.2.bb | 65 + ...e-only-disfavor-recommends-if-there-are-a.patch | 33 - .../meta/recipes-extended/libsolv/libsolv_0.7.3.bb | 32 - .../meta/recipes-extended/libsolv/libsolv_0.7.4.bb | 32 + .../libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch | 103 - .../recipes-extended/libtirpc/libtirpc_1.0.3.bb | 29 - .../recipes-extended/libtirpc/libtirpc_1.1.4.bb | 28 + ...trlimit03.c-read-proc-sys-fs-nr_open-for-.patch | 70 + poky/meta/recipes-extended/ltp/ltp_20190115.bb | 1 + poky/meta/recipes-extended/man-db/man-db_2.8.4.bb | 56 - poky/meta/recipes-extended/man-db/man-db_2.8.5.bb | 59 + .../recipes-extended/man-pages/man-pages_4.16.bb | 37 - .../recipes-extended/man-pages/man-pages_5.01.bb | 37 + .../mdadm/files/debian-no-Werror.patch | 25 + poky/meta/recipes-extended/mdadm/mdadm_4.1.bb | 1 + poky/meta/recipes-extended/msmtp/msmtp_1.6.6.bb | 30 - poky/meta/recipes-extended/msmtp/msmtp_1.8.4.bb | 29 + .../packagegroup-core-full-cmdline.bb | 1 - .../recipes-extended/procps/procps/sysctl.conf | 105 +- poky/meta/recipes-extended/quota/quota/fcntl.patch | 48 +- .../quota/quota/remove_non_posix_types.patch | 198 - .../quota/quota/replace_getrpcbynumber_r.patch | 32 - poky/meta/recipes-extended/quota/quota_4.04.bb | 38 - poky/meta/recipes-extended/quota/quota_4.05.bb | 34 + ...p_lstchg-shadow-field-reproducible-re.-71.patch | 89 + ...002-gettime-Use-secure_getenv-over-getenv.patch | 71 + poky/meta/recipes-extended/shadow/shadow.inc | 2 + poky/meta/recipes-extended/sysstat/sysstat.inc | 3 +- poky/meta/recipes-extended/tar/tar_1.31.bb | 65 - poky/meta/recipes-extended/tar/tar_1.32.bb | 65 + poky/meta/recipes-extended/wget/wget_1.20.1.bb | 8 - poky/meta/recipes-extended/wget/wget_1.20.3.bb | 8 + .../meta/recipes-gnome/epiphany/epiphany_3.30.3.bb | 22 - .../recipes-gnome/epiphany/epiphany_3.32.1.2.bb | 20 + .../recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb | 14 +- ...t.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch | 40 - ...1-Port-cross-compilation-support-to-meson.patch | 37 +- ...he-repository-directory-for-native-builds.patch | 12 +- ...ncomplete-upstream-attempt-at-cross-compi.patch | 8 +- ...01-configure.ac-make-GIR_DIR-configurable.patch | 68 - ...01-giscanner-add-a-lib-dirs-envvar-option.patch | 16 +- ...gnore-error-return-codes-from-ldd-wrapper.patch | 7 +- ....build-disable-tests-when-cross-compiling.patch | 26 + ...c-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch | 10 +- .../0002-g-ir-tools-respect-gir_dir_prefix.patch | 76 - ...3-giscanner-add-use-binary-wrapper-option.patch | 8 +- ...04-giscanner-add-a-use-ldd-wrapper-option.patch | 10 +- ...config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch | 10 +- .../0010-meson-add-option-gir-dir-prefix.patch | 66 - .../gobject-introspection_1.58.3.bb | 206 - .../gobject-introspection_1.60.1.bb | 206 + .../recipes-gnome/json-glib/json-glib_1.4.4.bb | 12 - ...a-define-so-that-gir-compilation-succeeds.patch | 26 - .../recipes-gnome/libdazzle/libdazzle_3.30.2.bb | 20 - .../recipes-gnome/libdazzle/libdazzle_3.32.1.bb | 15 + .../recipes-gnome/libnotify/libnotify_0.7.7.bb | 21 - .../recipes-gnome/libnotify/libnotify_0.7.8.bb | 21 + .../recipes-gnome/libsecret/libsecret_0.18.7.bb | 22 - .../recipes-gnome/libsecret/libsecret_0.18.8.bb | 22 + .../recipes-graphics/clutter/clutter-gtk-1.0.inc | 17 +- poky/meta/recipes-graphics/cogl/cogl-1.0.inc | 1 + ...Fix-an-incorrect-preprocessor-conditional.patch | 32 - ...ce-culling.c-fix-may-be-used-uninitialize.patch | 35 - poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb | 8 - poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.4.bb | 6 + poky/meta/recipes-graphics/drm/libdrm_2.4.97.bb | 60 - poky/meta/recipes-graphics/drm/libdrm_2.4.98.bb | 60 + ...cache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch | 33 - ...src-fcxml.c-avoid-double-free-of-filename.patch | 28 - .../fontconfig/revert-static-pkgconfig.patch | 12 +- .../fontconfig/fontconfig_2.12.6.bb | 71 - .../fontconfig/fontconfig_2.13.1.bb | 70 + .../recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb | 40 - .../recipes-graphics/harfbuzz/harfbuzz_2.4.0.bb | 40 + poky/meta/recipes-graphics/kmscube/kmscube_git.bb | 2 +- poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb | 2 + .../meta/recipes-graphics/libsdl2/libsdl2_2.0.9.bb | 2 + poky/meta/recipes-graphics/mesa/mesa-gl_19.0.1.bb | 10 - poky/meta/recipes-graphics/mesa/mesa-gl_19.0.3.bb | 10 + poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb | 19 - poky/meta/recipes-graphics/mesa/mesa_19.0.3.bb | 19 + poky/meta/recipes-graphics/pango/pango_1.42.4.bb | 15 +- poky/meta/recipes-graphics/piglit/piglit_git.bb | 13 +- poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb | 7 +- .../recipes-graphics/wayland/libinput_1.12.6.bb | 29 - .../recipes-graphics/wayland/libinput_1.13.1.bb | 29 + .../wayland/weston-init/weston-start | 29 +- .../wayland/weston/0001-make-error-portable.patch | 10 +- ...ch-Provide-a-default-version-that-doesn-t.patch | 33 +- poky/meta/recipes-graphics/wayland/weston_5.0.0.bb | 108 - poky/meta/recipes-graphics/wayland/weston_6.0.0.bb | 109 + .../recipes-graphics/xorg-app/x11perf_1.6.0.bb | 23 - .../recipes-graphics/xorg-app/x11perf_1.6.1.bb | 23 + .../libxcb/gcc-mips-pr68302-mips-workaround.patch | 22 - .../recipes-graphics/xorg-lib/libxcb_1.13.1.bb | 2 - .../recipes-graphics/xorg-lib/libxdmcp_1.1.2.bb | 29 - .../recipes-graphics/xorg-lib/libxdmcp_1.1.3.bb | 29 + .../recipes-graphics/xorg-lib/libxext_1.3.3.bb | 26 - .../recipes-graphics/xorg-lib/libxext_1.3.4.bb | 26 + .../meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb | 33 - .../meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb | 33 + .../recipes-graphics/xorg-lib/libxkbfile_1.0.9.bb | 18 - .../recipes-graphics/xorg-lib/libxkbfile_1.1.0.bb | 18 + .../meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb | 35 - .../meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb | 34 + .../recipes-graphics/xorg-lib/libxrandr_1.5.1.bb | 23 - .../recipes-graphics/xorg-lib/libxrandr_1.5.2.bb | 23 + .../recipes-graphics/xorg-lib/libxvmc_1.0.10.bb | 19 - .../recipes-graphics/xorg-lib/libxvmc_1.0.11.bb | 19 + .../recipes-graphics/xorg-lib/libxxf86dga_1.1.4.bb | 19 - .../recipes-graphics/xorg-lib/libxxf86dga_1.1.5.bb | 19 + .../recipes-graphics/xorg-lib/pixman_0.38.0.bb | 40 - .../recipes-graphics/xorg-lib/pixman_0.38.4.bb | 40 + .../recipes-graphics/xorg-lib/xorg-lib-common.inc | 1 - .../meta/recipes-graphics/xorg-lib/xtrans_1.3.5.bb | 26 - .../meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb | 26 + .../recipes-graphics/xorg-util/makedepend_1.0.5.bb | 21 - .../recipes-graphics/xorg-util/makedepend_1.0.6.bb | 21 + poky/meta/recipes-kernel/cryptodev/cryptodev.inc | 4 +- ...01-Fix-module-loading-with-Linux-v5.0-rc5.patch | 59 + poky/meta/recipes-kernel/dtc/dtc.inc | 2 + poky/meta/recipes-kernel/dtc/dtc_1.4.7.bb | 10 - poky/meta/recipes-kernel/dtc/dtc_1.5.0.bb | 10 + .../kexec-tools/0001-Disable-PIE-during-link.patch | 31 - ...0001-powerpc-change-the-memory-size-limit.patch | 35 + .../0001-purgatory-Pass-r-directly-to-linker.patch | 32 - ...0002-powerpc-change-the-memory-size-limit.patch | 35 - .../0002-purgatory-Pass-r-directly-to-linker.patch | 29 + ...-ARM-Fix-add_buffer_phys_virt-align-issue.patch | 49 + ...support-to-build-kexec-tools-with-x32-ABI.patch | 93 + .../kexec-tools/0005-Disable-PIE-during-link.patch | 28 + ...-ARM-Fix-add_buffer_phys_virt-align-issue.patch | 52 - .../kexec/kexec-tools/kexec-x32.patch | 88 - .../recipes-kernel/kexec/kexec-tools_2.0.19.bb | 18 +- poky/meta/recipes-kernel/linux/kernel-devsrc.bb | 3 + .../recipes-kernel/linux/linux-yocto-rt_4.19.bb | 6 +- .../recipes-kernel/linux/linux-yocto-rt_5.0.bb | 6 +- .../recipes-kernel/linux/linux-yocto-tiny_4.19.bb | 8 +- .../recipes-kernel/linux/linux-yocto-tiny_5.0.bb | 8 +- poky/meta/recipes-kernel/linux/linux-yocto_4.19.bb | 20 +- poky/meta/recipes-kernel/linux/linux-yocto_5.0.bb | 21 +- ...Distinguish-between-kernel_siginfo-and-si.patch | 133 - ...2-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch | 67 - ...just-reserved-cluster-count-when-removing.patch | 149 - ...04-Fix-timer-instrumentation-for-RHEL-7.6.patch | 32 - ...type-argument-from-access_ok-function-v5..patch | 204 - ...-pointer-values-with-task-tk_pid-and-rpc_.patch | 186 - ...Simplify-defining-common-RPC-trace-events.patch | 183 - ...emove-fsid-metadata_fsid-fields-from-btrf.patch | 341 -- ...nup-tp-mempool-Remove-logically-dead-code.patch | 46 - .../recipes-kernel/lttng/lttng-modules_2.10.8.bb | 45 - .../recipes-kernel/lttng/lttng-modules_2.10.9.bb | 36 + ...06-Tests-check-for-lttng-modules-presence.patch | 2 +- ...ix-getgrnam-is-not-MT-Safe-use-getgrnam_r.patch | 2 + poky/meta/recipes-kernel/perf/perf.bb | 3 +- poky/meta/recipes-kernel/sysprof/sysprof_3.30.2.bb | 32 - poky/meta/recipes-kernel/sysprof/sysprof_3.32.0.bb | 32 + .../meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.1.bb | 157 - .../meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.3.bb | 157 + poky/meta/recipes-multimedia/flac/flac_1.3.2.bb | 2 +- .../gstreamer/gstreamer1.0-plugins-bad_1.14.4.bb | 2 +- .../gstreamer/gstreamer1.0-plugins-base_1.14.4.bb | 2 +- .../gstreamer/gstreamer1.0-plugins.inc | 2 +- .../gstreamer/gstreamer1.0-python_1.14.4.bb | 6 +- .../libpng/libpng/CVE-2019-7317.patch | 20 - .../recipes-multimedia/libpng/libpng_1.6.36.bb | 32 - .../recipes-multimedia/libpng/libpng_1.6.37.bb | 31 + .../recipes-multimedia/mpg123/mpg123/sdl2.patch | 14 + .../recipes-multimedia/mpg123/mpg123_1.25.10.bb | 5 +- poky/meta/recipes-rt/images/core-image-rt-sdk.bb | 2 +- poky/meta/recipes-rt/images/core-image-rt.bb | 2 +- .../images/core-image-sato-ptest-fast.bb | 16 + .../images/core-image-sato-sdk-ptest.bb | 10 +- .../webkitgtk/0001-Fix-build-with-musl.patch | 12 +- ...c-settings-so-that-gtkdoc-generation-work.patch | 37 +- ...bKitMacros-Append-to-I-and-not-to-isystem.patch | 32 +- .../webkit/webkitgtk/bad_optional_access.patch | 35 - .../webkit/webkitgtk/include_array.patch | 15 + .../recipes-sato/webkit/webkitgtk/narrowing.patch | 31 + .../recipes-sato/webkit/webkitgtk/snprintf.patch | 15 + poky/meta/recipes-sato/webkit/webkitgtk_2.22.7.bb | 134 - poky/meta/recipes-sato/webkit/webkitgtk_2.24.0.bb | 137 + ..._t-size-doesn-t-match-in-glibc-when-cross.patch | 26 +- poky/meta/recipes-support/apr/apr_1.6.5.bb | 112 - poky/meta/recipes-support/apr/apr_1.7.0.bb | 112 + .../atk/at-spi2-core/meson-0.50-fix.patch | 31 + .../recipes-support/atk/at-spi2-core_2.30.0.bb | 15 +- poky/meta/recipes-support/atk/atk_2.30.0.bb | 14 - poky/meta/recipes-support/curl/curl_7.64.0.bb | 80 - poky/meta/recipes-support/curl/curl_7.64.1.bb | 80 + ...1-Woverride-init-is-not-needed-with-gcc-9.patch | 13 +- poky/meta/recipes-support/gnupg/gnupg_2.2.13.bb | 56 - poky/meta/recipes-support/gnupg/gnupg_2.2.15.bb | 56 + poky/meta/recipes-support/gnutls/gnutls_3.6.5.bb | 64 - poky/meta/recipes-support/gnutls/gnutls_3.6.7.bb | 63 + ...d-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch | 134 + .../gpgme/gpgme/0001-pkgconfig.patch | 72 +- ...python-gpg-error-config-should-not-be-use.patch | 33 +- .../gpgme/0008-do-not-auto-check-var-PYTHON.patch | 36 + poky/meta/recipes-support/gpgme/gpgme_1.12.0.bb | 85 - poky/meta/recipes-support/gpgme/gpgme_1.13.0.bb | 85 + .../icu/icu/0001-Fix-big-endian-build.patch | 28 + .../icu/icu/0001-icu-Added-armeb-support.patch | 30 + .../icu/icu/0002-Add-ARC-support.patch | 27 - .../recipes-support/icu/icu/CVE-2018-18928.patch | 63 - poky/meta/recipes-support/icu/icu_63.1.bb | 30 - poky/meta/recipes-support/icu/icu_64.2.bb | 30 + .../libatomic-ops/libatomic-ops_7.6.10.bb | 22 + .../libatomic-ops/libatomic-ops_7.6.8.bb | 22 - poky/meta/recipes-support/libcap/libcap_2.26.bb | 73 - poky/meta/recipes-support/libcap/libcap_2.27.bb | 73 + .../libcroco/libcroco/CVE-2017-7960.patch | 56 - .../libcroco/libcroco/CVE-2017-7961.patch | 45 - .../recipes-support/libcroco/libcroco_0.6.12.bb | 24 - .../recipes-support/libcroco/libcroco_0.6.13.bb | 20 + .../libgpg-error/libgpg-error_1.35.bb | 71 - .../libgpg-error/libgpg-error_1.36.bb | 71 + poky/meta/recipes-support/libpsl/libpsl_0.20.2.bb | 20 - poky/meta/recipes-support/libpsl/libpsl_0.21.0.bb | 20 + ...orce-no-introspection-when-cross-building.patch | 20 +- .../recipes-support/libsoup/libsoup-2.4_2.64.2.bb | 51 - .../recipes-support/libsoup/libsoup-2.4_2.66.1.bb | 38 + poky/meta/recipes-support/libyaml/libyaml_0.2.1.bb | 18 - poky/meta/recipes-support/libyaml/libyaml_0.2.2.bb | 18 + poky/meta/recipes-support/lz4/lz4_1.8.3.bb | 27 - poky/meta/recipes-support/lz4/lz4_1.9.0.bb | 27 + .../nettle/nettle-3.4.1/dlopen-test.patch | 5 +- poky/meta/recipes-support/nettle/nettle_3.4.1.bb | 5 +- poky/meta/recipes-support/nss/nss_3.42.1.bb | 264 -- poky/meta/recipes-support/nss/nss_3.43.bb | 267 ++ .../sqlite/sqlite3/CVE-2019-9936.patch | 28 - .../sqlite/sqlite3/CVE-2019-9937.patch | 187 - poky/meta/recipes-support/sqlite/sqlite3_3.27.2.bb | 13 - poky/meta/recipes-support/sqlite/sqlite3_3.28.0.bb | 8 + poky/meta/recipes-support/vim/vim-tiny_8.1.1017.bb | 15 - poky/meta/recipes-support/vim/vim-tiny_8.1.1240.bb | 15 + poky/meta/recipes-support/vim/vim_8.1.1017.bb | 129 - poky/meta/recipes-support/vim/vim_8.1.1240.bb | 141 + ...dd-W_EXITCODE-macro-for-non-glibc-systems.patch | 59 + poky/meta/recipes-support/vte/vte_0.52.2.bb | 49 - poky/meta/recipes-support/vte/vte_0.56.1.bb | 57 + poky/oe-init-build-env | 13 +- poky/scripts/autobuilder-worker-prereq-tests | 2 +- poky/scripts/bitbake-prserv-tool | 3 + poky/scripts/bitbake-whatchanged | 12 +- poky/scripts/buildhistory-collect-srcrevs | 12 +- poky/scripts/buildhistory-diff | 3 + poky/scripts/buildstats-diff | 10 +- poky/scripts/combo-layer | 12 +- poky/scripts/combo-layer-hook-default.sh | 3 + poky/scripts/contrib/bb-perf/bb-matrix-plot.sh | 15 +- poky/scripts/contrib/bb-perf/bb-matrix.sh | 15 +- poky/scripts/contrib/bb-perf/buildstats-plot.sh | 15 +- poky/scripts/contrib/bb-perf/buildstats.sh | 15 +- poky/scripts/contrib/bbvars.py | 14 +- poky/scripts/contrib/build-perf-test-wrapper.sh | 10 +- poky/scripts/contrib/ddimage | 3 + poky/scripts/contrib/devtool-stress.py | 13 +- poky/scripts/contrib/dialog-power-control | 2 + poky/scripts/contrib/documentation-audit.sh | 3 +- poky/scripts/contrib/graph-tool | 13 +- poky/scripts/contrib/list-packageconfig-flags.py | 15 +- poky/scripts/contrib/oe-build-perf-report-email.py | 10 +- poky/scripts/contrib/patchreview.py | 3 + poky/scripts/contrib/patchtest.sh | 18 +- poky/scripts/contrib/serdevtry | 3 +- poky/scripts/contrib/test_build_time.sh | 16 +- poky/scripts/contrib/test_build_time_worker.sh | 4 +- poky/scripts/contrib/uncovered | 15 +- poky/scripts/contrib/verify-homepage.py | 4 +- poky/scripts/cp-noerror | 2 + poky/scripts/create-pull-request | 15 +- poky/scripts/crosstap | 13 +- poky/scripts/devtool | 12 +- poky/scripts/gen-lockedsig-cache | 3 + poky/scripts/gen-site-config | 12 +- poky/scripts/lib/argparse_oe.py | 4 + poky/scripts/lib/build_perf/__init__.py | 9 +- poky/scripts/lib/build_perf/html.py | 9 +- poky/scripts/lib/build_perf/report.py | 9 +- poky/scripts/lib/buildstats.py | 9 +- poky/scripts/lib/checklayer/__init__.py | 4 +- poky/scripts/lib/checklayer/case.py | 4 +- poky/scripts/lib/checklayer/cases/bsp.py | 4 +- poky/scripts/lib/checklayer/cases/common.py | 4 +- poky/scripts/lib/checklayer/cases/distro.py | 4 +- poky/scripts/lib/checklayer/context.py | 4 +- poky/scripts/lib/devtool/__init__.py | 12 +- poky/scripts/lib/devtool/build.py | 12 +- poky/scripts/lib/devtool/build_image.py | 12 +- poky/scripts/lib/devtool/build_sdk.py | 12 +- poky/scripts/lib/devtool/deploy.py | 12 +- poky/scripts/lib/devtool/export.py | 12 +- poky/scripts/lib/devtool/import.py | 12 +- poky/scripts/lib/devtool/package.py | 12 +- poky/scripts/lib/devtool/runqemu.py | 12 +- poky/scripts/lib/devtool/sdk.py | 12 +- poky/scripts/lib/devtool/search.py | 12 +- poky/scripts/lib/devtool/standard.py | 12 +- poky/scripts/lib/devtool/upgrade.py | 13 +- poky/scripts/lib/devtool/utilcmds.py | 12 +- poky/scripts/lib/recipetool/append.py | 12 +- poky/scripts/lib/recipetool/create.py | 14 +- poky/scripts/lib/recipetool/create_buildsys.py | 12 +- .../lib/recipetool/create_buildsys_python.py | 12 +- poky/scripts/lib/recipetool/create_kernel.py | 12 +- poky/scripts/lib/recipetool/create_kmod.py | 12 +- poky/scripts/lib/recipetool/create_npm.py | 13 +- poky/scripts/lib/recipetool/edit.py | 12 +- poky/scripts/lib/recipetool/newappend.py | 12 +- poky/scripts/lib/recipetool/setvar.py | 12 +- poky/scripts/lib/resulttool/log.py | 71 + poky/scripts/lib/resulttool/manualexecution.py | 107 +- poky/scripts/lib/resulttool/merge.py | 18 +- poky/scripts/lib/resulttool/regression.py | 16 +- poky/scripts/lib/resulttool/report.py | 95 +- poky/scripts/lib/resulttool/resultutils.py | 49 +- poky/scripts/lib/resulttool/store.py | 14 +- .../resulttool/template/test_report_full_text.txt | 34 + poky/scripts/lib/scriptpath.py | 12 +- poky/scripts/lib/scriptutils.py | 12 +- poky/scripts/lib/wic/__init__.py | 12 +- poky/scripts/lib/wic/engine.py | 16 +- poky/scripts/lib/wic/filemap.py | 9 +- poky/scripts/lib/wic/help.py | 17 +- poky/scripts/lib/wic/ksparser.py | 15 +- poky/scripts/lib/wic/misc.py | 16 +- poky/scripts/lib/wic/partition.py | 18 +- poky/scripts/lib/wic/pluginbase.py | 12 +- poky/scripts/lib/wic/plugins/imager/direct.py | 16 +- poky/scripts/lib/wic/plugins/source/bootimg-efi.py | 22 +- .../lib/wic/plugins/source/bootimg-partition.py | 15 +- .../lib/wic/plugins/source/bootimg-pcbios.py | 16 +- .../lib/wic/plugins/source/isoimage-isohybrid.py | 15 +- poky/scripts/lib/wic/plugins/source/rawcopy.py | 15 +- poky/scripts/lib/wic/plugins/source/rootfs.py | 16 +- poky/scripts/lnr | 3 + poky/scripts/multilib_header_wrapper.h | 18 +- poky/scripts/native-intercept/chown | 3 + poky/scripts/oe-build-perf-report | 10 +- poky/scripts/oe-build-perf-test | 11 +- poky/scripts/oe-buildenv-internal | 13 +- poky/scripts/oe-check-sstate | 12 +- poky/scripts/oe-depends-dot | 12 +- poky/scripts/oe-find-native-sysroot | 12 +- poky/scripts/oe-git-archive | 10 +- poky/scripts/oe-git-proxy | 3 +- poky/scripts/oe-gnome-terminal-phonehome | 2 + poky/scripts/oe-pkgdata-util | 13 +- poky/scripts/oe-publish-sdk | 16 +- poky/scripts/oe-pylint | 2 + poky/scripts/oe-run-native | 14 +- poky/scripts/oe-selftest | 12 +- poky/scripts/oe-setup-builddir | 13 +- poky/scripts/oe-test | 4 +- poky/scripts/oe-trim-schemas | 3 + poky/scripts/oepydevshell-internal.py | 3 + poky/scripts/opkg-query-helper.py | 15 +- .../postinst-intercepts/delay_to_first_boot | 4 + .../scripts/postinst-intercepts/postinst_intercept | 2 + poky/scripts/postinst-intercepts/update_font_cache | 3 + .../postinst-intercepts/update_gio_module_cache | 3 + .../postinst-intercepts/update_gtk_immodules_cache | 3 + poky/scripts/postinst-intercepts/update_icon_cache | 3 + .../postinst-intercepts/update_pixbuf_cache | 3 + poky/scripts/postinst-intercepts/update_udev_hwdb | 3 + poky/scripts/pybootchartgui/pybootchartgui.py | 2 +- poky/scripts/pybootchartgui/pybootchartgui/draw.py | 1383 +++--- poky/scripts/pybootchartgui/pybootchartgui/gui.py | 208 +- .../pybootchartgui/pybootchartgui/parsing.py | 12 +- poky/scripts/pythondeps | 2 + poky/scripts/recipetool | 12 +- poky/scripts/relocate_sdk.py | 13 +- poky/scripts/resulttool | 11 +- poky/scripts/rpm2cpio.sh | 1 - poky/scripts/runqemu | 18 +- poky/scripts/runqemu-addptable2image | 14 +- poky/scripts/runqemu-export-rootfs | 12 +- poky/scripts/runqemu-extract-sdk | 12 +- poky/scripts/runqemu-gen-tapdevs | 12 +- poky/scripts/runqemu-ifdown | 12 +- poky/scripts/runqemu-ifup | 12 +- poky/scripts/send-error-report | 3 + poky/scripts/send-pull-request | 15 +- poky/scripts/sstate-cache-management.sh | 13 +- poky/scripts/sstate-diff-machines.sh | 4 +- poky/scripts/sstate-sysroot-cruft.sh | 4 +- poky/scripts/sysroot-relativelinks.py | 4 + poky/scripts/task-time | 3 + poky/scripts/test-reexec | 15 +- poky/scripts/test-remote-image | 14 +- poky/scripts/tiny/dirsize.py | 16 +- poky/scripts/tiny/ksize.py | 16 +- poky/scripts/tiny/ksum.py | 16 +- poky/scripts/verify-bashisms | 3 + poky/scripts/wic | 23 +- poky/scripts/yocto-check-layer | 4 +- poky/scripts/yocto-check-layer-wrapper | 4 +- 1347 files changed, 22226 insertions(+), 37732 deletions(-) create mode 100644 poky/LICENSE.GPL-2.0-only create mode 100644 poky/LICENSE.MIT delete mode 100644 poky/bitbake/COPYING delete mode 100644 poky/bitbake/HEADER create mode 100644 poky/bitbake/LICENSE.GPL-2.0-only create mode 100644 poky/bitbake/LICENSE.MIT delete mode 100644 poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl delete mode 100644 poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl delete mode 100644 poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl delete mode 100644 poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl mode change 100644 => 100755 poky/documentation/mega-manual/figures/index-downloads.png delete mode 100644 poky/documentation/mega-manual/figures/lttngmain0.png delete mode 100644 poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png mode change 100644 => 100755 poky/documentation/overview-manual/figures/index-downloads.png delete mode 100644 poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl delete mode 100644 poky/documentation/profile-manual/figures/lttngmain0.png delete mode 100644 poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl delete mode 100644 poky/documentation/ref-manual/ref-manual-eclipse-customization.xsl delete mode 100644 poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png delete mode 100644 poky/documentation/sdk-manual/sdk-appendix-neon.xml delete mode 100644 poky/documentation/sdk-manual/sdk-eclipse-project.xml delete mode 100644 poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl delete mode 100644 poky/meta-selftest/COPYING.MIT delete mode 100644 poky/meta-skeleton/COPYING.MIT delete mode 100644 poky/meta/COPYING.GPLv2 create mode 100644 poky/meta/conf/distro/include/ptest-packagelists.inc delete mode 100644 poky/meta/files/common-licenses/Elfutils-Exception delete mode 100644 poky/meta/lib/oeqa/core/decorator/oeid.py delete mode 100644 poky/meta/lib/oeqa/core/tests/cases/loader/invalid/oeid.py delete mode 100644 poky/meta/lib/oeqa/core/tests/cases/oeid.py create mode 100644 poky/meta/lib/oeqa/runtime/cases/ltp.py create mode 100644 poky/meta/lib/oeqa/runtime/cases/ltp_compliance.py delete mode 100644 poky/meta/recipes-bsp/gnu-efi/gnu-efi/gcc46-compatibility.patch delete mode 100644 poky/meta/recipes-bsp/grub/files/disable-address-of-packed-member.patch delete mode 100644 poky/meta/recipes-bsp/grub/files/fix.build.with.gcc-7.patch delete mode 100644 poky/meta/recipes-bsp/grub/files/fix.build.with.squashfs.patch delete mode 100644 poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.01.bb create mode 100644 poky/meta/recipes-bsp/u-boot/u-boot-fw-utils_2019.04.bb delete mode 100644 poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.01.bb create mode 100644 poky/meta/recipes-bsp/u-boot/u-boot-tools_2019.04.bb delete mode 100644 poky/meta/recipes-bsp/u-boot/u-boot_2019.01.bb create mode 100644 poky/meta/recipes-bsp/u-boot/u-boot_2019.04.bb delete mode 100644 poky/meta/recipes-connectivity/connman/connman/0001-Fix-various-issues-which-cause-problems-under-musl.patch delete mode 100644 poky/meta/recipes-connectivity/connman/connman_1.36.bb create mode 100644 poky/meta/recipes-connectivity/connman/connman_1.37.bb delete mode 100644 poky/meta/recipes-connectivity/dhcp/dhcp/0001-dhcpd-fix-Replace-custom-isc_boolean_t-with-C-standa.patch create mode 100644 poky/meta/recipes-connectivity/dhcp/dhcp/0001-master-Added-includes-of-new-BIND9-compatibility-hea.patch delete mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2/0001-ip-Remove-unneed-header.patch delete mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_4.19.0.bb create mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_5.0.0.bb delete mode 100755 poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/init delete mode 100644 poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/ldflags.patch delete mode 100644 poky/meta/recipes-connectivity/irda-utils/irda-utils-0.9.18/musl.patch delete mode 100644 poky/meta/recipes-connectivity/irda-utils/irda-utils_0.9.18.bb delete mode 100644 poky/meta/recipes-connectivity/iw/iw/0001-connect-fix-parsing-of-WEP-keys.patch delete mode 100644 poky/meta/recipes-connectivity/iw/iw_4.14.bb create mode 100644 poky/meta/recipes-connectivity/iw/iw_5.0.1.bb create mode 100644 poky/meta/recipes-connectivity/openssh/openssh/0001-upstream-Have-progressmeter-force-an-update-at-the-b.patch create mode 100644 poky/meta/recipes-connectivity/openssh/openssh/CVE-2018-20685.patch create mode 100644 poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6109.patch create mode 100644 poky/meta/recipes-connectivity/openssh/openssh/CVE-2019-6111.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-BN_LLONG-breakage.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-DES_LONG-breakage.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/0001-Fix-build-with-clang-using-external-assembler.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/0001-allow-manpages-to-be-disabled.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/0001-openssl-force-soft-link-to-avoid-rare-race.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/Makefiles-ptest.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/Use-SHA256-not-MD5-as-default-digest.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/configure-musl-target.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/configure-targets.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/c_rehash-compat.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/debian-targets.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/man-dir.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/man-section.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/no-rpath.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/no-symbolic.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian/pic.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_digicert_malaysia.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/block_diginotar.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/soname.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/debian1.0.2/version-script.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/engines-install-in-libdir-ssl.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/oe-ldflags.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/openssl-c_rehash.sh delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/openssl-fix-des.pod-error.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/openssl_fix_for_x32.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/parallel.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/ptest-deps.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/ptest_makefile_deps.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/reproducible-cflags.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/reproducible-mkbuildinf.patch delete mode 100755 poky/meta/recipes-connectivity/openssl/openssl10/run-ptest delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10/shared-libs.patch delete mode 100644 poky/meta/recipes-connectivity/openssl/openssl10_1.0.2r.bb delete mode 100644 poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch delete mode 100644 poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch delete mode 100644 poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb create mode 100644 poky/meta/recipes-connectivity/socat/socat_1.7.3.3.bb delete mode 100644 poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.7.bb create mode 100644 poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.8.bb create mode 100644 poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch create mode 100644 poky/meta/recipes-core/busybox/busybox/0001-dc.tests-fix-two-test-case-to-also-depend-on-DC_BIG.patch create mode 100644 poky/meta/recipes-core/coreutils/coreutils/strtod_fix_clash_with_strtold.patch delete mode 100644 poky/meta/recipes-core/coreutils/coreutils_8.30.bb create mode 100644 poky/meta/recipes-core/coreutils/coreutils_8.31.bb delete mode 100644 poky/meta/recipes-core/dropbear/dropbear_2019.77.bb create mode 100644 poky/meta/recipes-core/dropbear/dropbear_2019.78.bb create mode 100644 poky/meta/recipes-core/ell/ell_0.20.bb create mode 100644 poky/meta/recipes-core/gettext/gettext-0.19.8.1/run-ptest create mode 100644 poky/meta/recipes-core/gettext/gettext-0.19.8.1/serial-tests-config.patch create mode 100644 poky/meta/recipes-core/glib-2.0/glib-2.0/fix-nl-abaltmon.patch delete mode 100644 poky/meta/recipes-core/glib-networking/glib-networking_2.58.0.bb create mode 100644 poky/meta/recipes-core/glib-networking/glib-networking_2.60.1.bb mode change 100644 => 100755 poky/meta/recipes-core/initrdscripts/files/init-live.sh delete mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt.bb create mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.4.bb delete mode 100644 poky/meta/recipes-core/libxml/libxml2/0001-Fix-infinite-loop-in-LZMA-decompression.patch delete mode 100644 poky/meta/recipes-core/libxml/libxml2/fix-CVE-2017-8872.patch delete mode 100644 poky/meta/recipes-core/libxml/libxml2/fix-CVE-2018-14404.patch delete mode 100644 poky/meta/recipes-core/libxml/libxml2_2.9.8.bb create mode 100644 poky/meta/recipes-core/libxml/libxml2_2.9.9.bb delete mode 100644 poky/meta/recipes-core/systemd/systemd-boot_241.bb create mode 100644 poky/meta/recipes-core/systemd/systemd-boot_242.bb create mode 100644 poky/meta/recipes-core/systemd/systemd-conf/journald.conf create mode 100644 poky/meta/recipes-core/systemd/systemd-conf/logind.conf create mode 100644 poky/meta/recipes-core/systemd/systemd-conf/system.conf create mode 100644 poky/meta/recipes-core/systemd/systemd-conf/system.conf-qemuall delete mode 100644 poky/meta/recipes-core/systemd/systemd-conf_241.bb create mode 100644 poky/meta/recipes-core/systemd/systemd-conf_242.bb delete mode 100644 poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dep-for-various-targets-t.patch delete mode 100644 poky/meta/recipes-core/systemd/systemd/0001-meson-declare-version.h-as-dependency-for-systemd.patch create mode 100644 poky/meta/recipes-core/systemd/systemd/0006-network-remove-redunant-link-name-in-message.patch delete mode 100644 poky/meta/recipes-core/systemd/systemd/0013-test-hexdecoct.c-Include-missing.h-for-strndupa.patch create mode 100644 poky/meta/recipes-core/systemd/systemd/0025-fs-utilh-add-missing-sys-stat-include.patch create mode 100644 poky/meta/recipes-core/systemd/systemd/99-default.preset delete mode 100644 poky/meta/recipes-core/systemd/systemd_241.bb create mode 100644 poky/meta/recipes-core/systemd/systemd_242.bb create mode 100644 poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9074.patch create mode 100644 poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9075.patch create mode 100644 poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9076.patch create mode 100644 poky/meta/recipes-devtools/binutils/binutils/CVE-2019-9077.patch delete mode 100644 poky/meta/recipes-devtools/bison/bison/0001-Unset-need_charset_alias-when-building-for-musl.patch delete mode 100644 poky/meta/recipes-devtools/bison/bison/0001-src-local.mk-fix-parallel-issue.patch delete mode 100644 poky/meta/recipes-devtools/bison/bison/gnulib.patch delete mode 100644 poky/meta/recipes-devtools/bison/bison_3.0.4.bb create mode 100644 poky/meta/recipes-devtools/bison/bison_3.1.bb delete mode 100644 poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.1.bb create mode 100644 poky/meta/recipes-devtools/btrfs-tools/btrfs-tools_4.20.2.bb delete mode 100644 poky/meta/recipes-devtools/ccache/ccache_3.6.bb create mode 100644 poky/meta/recipes-devtools/ccache/ccache_3.7.1.bb delete mode 100644 poky/meta/recipes-devtools/ccache/files/0002-dev.mk.in-fix-file-name-too-long.patch delete mode 100644 poky/meta/recipes-devtools/ccache/files/0003-Fix-Segmentation-fault-error-when-gcc-o-dev-null.patch create mode 100644 poky/meta/recipes-devtools/createrepo-c/createrepo-c_0.12.2.bb delete mode 100644 poky/meta/recipes-devtools/createrepo-c/createrepo-c_git.bb delete mode 100644 poky/meta/recipes-devtools/dnf/dnf_4.1.0.bb create mode 100644 poky/meta/recipes-devtools/dnf/dnf_4.2.2.bb create mode 100644 poky/meta/recipes-devtools/elfutils/files/0001-fix-err-variable-and-function-conflicts.patch create mode 100644 poky/meta/recipes-devtools/elfutils/files/0001-skip-the-test-when-gcc-not-deployed.patch create mode 100644 poky/meta/recipes-devtools/elfutils/files/debian/testsuite-ignore-elflint.diff create mode 100644 poky/meta/recipes-devtools/elfutils/files/musl.patch create mode 100644 poky/meta/recipes-devtools/elfutils/files/ptest.patch create mode 100644 poky/meta/recipes-devtools/elfutils/files/run-ptest create mode 100644 poky/meta/recipes-devtools/gcc/gcc-8.3/0041-Add-a-recursion-limit-to-libiberty-s-demangling-code.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1.inc create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0002-gcc-poison-system-directories.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0003-gcc-4.3.3-SYSROOT_CFLAGS_FOR_TARGET.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0004-64-bit-multilib-hack.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0005-optional-libstdc.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0006-gcc-disable-MASK_RELAX_PIC_CALLS-bit.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0007-COLLECT_GCC_OPTIONS.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0008-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0009-fortran-cross-compile-hack.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0010-cpp-honor-sysroot.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0011-MIPS64-Default-to-N64-ABI.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0012-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0013-gcc-Fix-argument-list-too-long-error.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0014-Disable-sdt.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0015-libtool.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0016-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0017-Use-the-multilib-config-files-from-B-instead-of-usin.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0018-Avoid-using-libdir-from-.la-which-usually-points-to-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0019-export-CPP.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0020-Ensure-target-gcc-headers-can-be-included.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0021-gcc-4.8-won-t-build-with-disable-dependency-tracking.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0022-Don-t-search-host-directory-during-relink-if-inst_pr.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0023-Use-SYSTEMLIBS_DIR-replacement-instead-of-hardcoding.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0024-aarch64-Add-support-for-musl-ldso.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0025-libcc1-fix-libcc1-s-install-path-and-rpath.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0026-handle-sysroot-support-for-nativesdk-gcc.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0027-Search-target-sysroot-gcc-version-specific-dirs-with.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0028-Fix-various-_FOR_BUILD-and-related-variables.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0029-nios2-Define-MUSL_DYNAMIC_LINKER.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0030-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0031-libgcc-Add-knob-to-use-ldbl-128-on-ppc.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0032-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0033-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0034-sync-gcc-stddef.h-with-musl.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0035-fix-segmentation-fault-in-precompiled-header-generat.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0036-Fix-for-testsuite-failure.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-9.1/0037-Re-introduce-spe-commandline-options.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross-canadian_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-cross_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-crosssdk_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-runtime_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-sanitizers_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc-source_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/gcc_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgcc-initial_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgcc_9.1.bb create mode 100644 poky/meta/recipes-devtools/gcc/libgfortran_9.1.bb create mode 100644 poky/meta/recipes-devtools/gdb/gdb/0012-AArch64-Fix-the-gdb-build-with-musl-libc.patch create mode 100644 poky/meta/recipes-devtools/gdb/gdb/CVE-2017-9778.patch delete mode 100644 poky/meta/recipes-devtools/git/git_2.20.1.bb create mode 100644 poky/meta/recipes-devtools/git/git_2.21.0.bb create mode 100644 poky/meta/recipes-devtools/help2man/help2man-native_1.47.10.bb delete mode 100644 poky/meta/recipes-devtools/help2man/help2man-native_1.47.6.bb delete mode 100644 poky/meta/recipes-devtools/libcomps/libcomps/0002-Set-library-installation-path-correctly.patch delete mode 100644 poky/meta/recipes-devtools/libdnf/libdnf/0001-include-missing-string-and-errno.h-headers.patch delete mode 100644 poky/meta/recipes-devtools/libdnf/libdnf_0.26.0.bb create mode 100644 poky/meta/recipes-devtools/libdnf/libdnf_0.28.1.bb delete mode 100644 poky/meta/recipes-devtools/librepo/librepo_1.9.4.bb create mode 100644 poky/meta/recipes-devtools/librepo/librepo_1.9.6.bb create mode 100644 poky/meta/recipes-devtools/m4/m4/0001-test-getopt-posix-fix.patch create mode 100644 poky/meta/recipes-devtools/m4/m4/run-ptest create mode 100644 poky/meta/recipes-devtools/m4/m4/serial-tests-config.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson/0001-Linker-rules-move-cross_args-in-front-of-output_args.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/0001-environment.py-detect-windows-also-if-the-system-str.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-check-environment-for-vari.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/0001-mesonbuild-environment.py-do-not-determine-whether-a.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/0001-modules-python.py-do-not-substitute-python-s-install.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson/0001-modules-windows-split-WINDRES-env-variable.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson/0002-environment.py-detect-windows-also-if-the-system-str.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/0007-mesonbuild-allow-multiple-cross-file-options.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson/cross-libdir.patch create mode 100644 poky/meta/recipes-devtools/meson/meson/load-configs-generalise-search-path.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson/many-cross.patch delete mode 100644 poky/meta/recipes-devtools/meson/meson_0.49.2.bb create mode 100644 poky/meta/recipes-devtools/meson/meson_0.50.1.bb delete mode 100644 poky/meta/recipes-devtools/meson/nativesdk-meson_0.49.2.bb create mode 100644 poky/meta/recipes-devtools/meson/nativesdk-meson_0.50.1.bb delete mode 100644 poky/meta/recipes-devtools/mmc/mmc-utils/0001-lsmmc-replace-strncpy-with-memmove-on-overlapping-me.patch delete mode 100644 poky/meta/recipes-devtools/mtools/mtools/0001-Continue-even-if-fs-size-is-not-divisible-by-sectors.patch delete mode 100644 poky/meta/recipes-devtools/mtools/mtools/0001-remove-LOCK_NB-to-use-blocking-request.patch delete mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.19.bb create mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb create mode 100644 poky/meta/recipes-devtools/opkg/opkg/0001-opkg-add-target-for-testsuite-installation.patch create mode 100644 poky/meta/recipes-devtools/opkg/opkg/0001-regress-issue72.py-resolve-paths-before-comparision.patch create mode 100644 poky/meta/recipes-devtools/opkg/opkg/run-ptest delete mode 100644 poky/meta/recipes-devtools/orc/orc_0.4.28.bb create mode 100644 poky/meta/recipes-devtools/orc/orc_0.4.29.bb delete mode 100644 poky/meta/recipes-devtools/patchelf/patchelf/Increase-maxSize-to-64MB.patch delete mode 100644 poky/meta/recipes-devtools/patchelf/patchelf/Skip-empty-section-fixes-66.patch delete mode 100644 poky/meta/recipes-devtools/patchelf/patchelf/avoidholes.patch create mode 100644 poky/meta/recipes-devtools/patchelf/patchelf_0.10.bb delete mode 100644 poky/meta/recipes-devtools/patchelf/patchelf_0.9.bb delete mode 100644 poky/meta/recipes-devtools/perl-sanity/perl_5.28.1.bb create mode 100644 poky/meta/recipes-devtools/perl-sanity/perl_5.28.2.bb delete mode 100644 poky/meta/recipes-devtools/python-numpy/files/fix_shebang_f2py.patch delete mode 100644 poky/meta/recipes-devtools/python-numpy/python-numpy_1.14.5.bb create mode 100644 poky/meta/recipes-devtools/python-numpy/python-numpy_1.16.3.bb delete mode 100644 poky/meta/recipes-devtools/python-numpy/python3-numpy_1.14.5.bb create mode 100644 poky/meta/recipes-devtools/python-numpy/python3-numpy_1.16.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python-native_2.7.15.bb create mode 100644 poky/meta/recipes-devtools/python/python-native_2.7.16.bb delete mode 100644 poky/meta/recipes-devtools/python/python-scons-native_3.0.1.bb create mode 100644 poky/meta/recipes-devtools/python/python-scons-native_3.0.5.bb delete mode 100644 poky/meta/recipes-devtools/python/python-scons_3.0.1.bb create mode 100644 poky/meta/recipes-devtools/python/python-scons_3.0.5.bb delete mode 100644 poky/meta/recipes-devtools/python/python-setuptools_40.8.0.bb create mode 100644 poky/meta/recipes-devtools/python/python-setuptools_41.0.1.bb delete mode 100644 poky/meta/recipes-devtools/python/python/0001-2.7-bpo-34623-Use-XML_SetHashSalt-in-_elementtree-GH.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0001-bpo-33354-Fix-test_ssl-when-a-filename-cannot-be-enc.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0001-bpo-33570-TLS-1.3-ciphers-for-OpenSSL-1.1.1-GH-6976-.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0001-closes-bpo-34540-Convert-shutil._call_external_zip-t.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0002-bpo-34818-Add-missing-closing-wrapper-in-test_tls1_3.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0003-bpo-34834-Fix-test_ssl.test_options-to-account-for-O.patch delete mode 100644 poky/meta/recipes-devtools/python/python/0004-bpo-34836-fix-test_default_ecdh_curve-needs-no-tlsv1.patch delete mode 100644 poky/meta/recipes-devtools/python/python3-mako_1.0.7.bb create mode 100644 poky/meta/recipes-devtools/python/python3-mako_1.0.9.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pbr_5.1.2.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pbr_5.1.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pip_19.0.2.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pip_19.0.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-pycairo_1.15.6.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pycairo_1.18.1.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pygobject/0001-Do-not-build-tests.patch delete mode 100644 poky/meta/recipes-devtools/python/python3-pygobject_3.28.3.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pygobject_3.32.1.bb delete mode 100644 poky/meta/recipes-devtools/python/python3-setuptools_40.8.0.bb create mode 100644 poky/meta/recipes-devtools/python/python3-setuptools_41.0.1.bb create mode 100644 poky/meta/recipes-devtools/python/python3/0001-Lib-sysconfig.py-fix-another-place-where-lib-is-hard.patch create mode 100644 poky/meta/recipes-devtools/python/python3/0001-Makefile-fix-Issue36464-parallel-build-race-problem.patch create mode 100644 poky/meta/recipes-devtools/python/python3/0001-main.c-if-OEPYTHON3HOME-is-set-use-instead-of-PYTHON.patch delete mode 100644 poky/meta/recipes-devtools/python/python3_3.7.2.bb create mode 100644 poky/meta/recipes-devtools/python/python3_3.7.3.bb delete mode 100644 poky/meta/recipes-devtools/python/python_2.7.15.bb create mode 100644 poky/meta/recipes-devtools/python/python_2.7.16.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu-native_3.1.0.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu-native_4.0.0.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu-system-native_3.1.0.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu-system-native_4.0.0.bb delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0001-Add-a-missing-X11-include.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0001-egl-headless-add-egl_create_context.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0001-sdl.c-allow-user-to-disable-pointer-grabs.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0002-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0002-qemu-Add-missing-wacom-HID-descriptor.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0003-Add-subpackage-ptest-which-runs-all-unit-test-cases-.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0004-qemu-Add-addition-environment-space-to-boot-loader-q.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0004-qemu-disable-Valgrind.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Limit-paths-searched-during-user-mode-emulation.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0005-qemu-disable-Valgrind.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Limit-paths-searched-during-user-mode-emulation.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0006-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0007-chardev-connect-socket-to-a-spawned-command.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0007-qemu-native-set-ld.bfd-fix-cflags-and-set-some-envir.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0008-apic-fixup-fallthrough-to-PIC.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0008-chardev-connect-socket-to-a-spawned-command.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0009-apic-fixup-fallthrough-to-PIC.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0009-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0010-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0010-linux-user-Fix-webkitgtk-hangs-on-32-bit-x86-target.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0011-Revert-linux-user-fix-mmap-munmap-mprotect-mremap-sh.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0011-fix-libcap-header-issue-on-some-distro.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0012-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch create mode 100644 poky/meta/recipes-devtools/qemu/qemu/0013-Revert-target-arm-Use-vector-operations-for-saturati.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0014-fix-CVE-2018-16872.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0015-fix-CVE-2018-20124.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0016-fix-CVE-2018-20125.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0017-fix-CVE-2018-20126.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0018-fix-CVE-2018-20191.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/0019-fix-CVE-2018-20216.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu/CVE-2019-3812.patch delete mode 100644 poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu_4.0.0.bb create mode 100644 poky/meta/recipes-devtools/ruby/ruby/run-ptest create mode 100644 poky/meta/recipes-devtools/subversion/subversion/subversion-1.12.0-apr_1.7.0_fix-1.patch delete mode 100644 poky/meta/recipes-devtools/subversion/subversion_1.11.1.bb create mode 100644 poky/meta/recipes-devtools/subversion/subversion_1.12.0.bb delete mode 100644 poky/meta/recipes-devtools/vala/vala/0001-Disable-valadoc.patch delete mode 100644 poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch delete mode 100644 poky/meta/recipes-devtools/vala/vala_0.42.5.bb create mode 100644 poky/meta/recipes-devtools/vala/vala_0.44.3.bb delete mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-dependencies-between-libcoregrind-.a-and-m_main..patch create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch delete mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-amd64-Do-not-clobber-rsp-register.patch create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch delete mode 100644 poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb delete mode 100644 poky/meta/recipes-extended/acpica/acpica_20180508.bb create mode 100644 poky/meta/recipes-extended/acpica/acpica_20190405.bb delete mode 100644 poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch delete mode 100644 poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch delete mode 100644 poky/meta/recipes-extended/bash/bash/0001-help-fix-printf-format-security-warning.patch delete mode 100644 poky/meta/recipes-extended/bash/bash/pathexp-dep.patch delete mode 100644 poky/meta/recipes-extended/bash/bash_4.4.18.bb create mode 100644 poky/meta/recipes-extended/bash/bash_5.0.bb delete mode 100644 poky/meta/recipes-extended/cronie/cronie_1.5.2.bb create mode 100644 poky/meta/recipes-extended/cronie/cronie_1.5.4.bb delete mode 100644 poky/meta/recipes-extended/cups/cups_2.2.10.bb create mode 100644 poky/meta/recipes-extended/cups/cups_2.2.11.bb delete mode 100644 poky/meta/recipes-extended/ethtool/ethtool_4.19.bb create mode 100644 poky/meta/recipes-extended/ethtool/ethtool_5.0.bb delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0001.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0002.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0003.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0004.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0001.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0002.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0001.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0002.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0003.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0004.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0005.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0006.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0007.patch delete mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript_9.26.bb create mode 100644 poky/meta/recipes-extended/ghostscript/ghostscript_9.27.bb create mode 100644 poky/meta/recipes-extended/groff/files/0001-fix-shebang-for-taget.patch create mode 100644 poky/meta/recipes-extended/groff/files/0001-replace-perl-w-with-use-warnings.patch create mode 100644 poky/meta/recipes-extended/groff/files/0001-support-musl.patch create mode 100644 poky/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch delete mode 100644 poky/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch delete mode 100644 poky/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch delete mode 100644 poky/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch delete mode 100644 poky/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch delete mode 100644 poky/meta/recipes-extended/groff/groff_1.22.3.bb create mode 100644 poky/meta/recipes-extended/groff/groff_1.22.4.bb create mode 100644 poky/meta/recipes-extended/iptables/iptables/0003-extensions-format-security-fixes-in-libipt_icmp.patch delete mode 100644 poky/meta/recipes-extended/iptables/iptables_1.6.2.bb create mode 100644 poky/meta/recipes-extended/iptables/iptables_1.8.2.bb delete mode 100644 poky/meta/recipes-extended/libsolv/libsolv/0001-solver_solve-only-disfavor-recommends-if-there-are-a.patch delete mode 100644 poky/meta/recipes-extended/libsolv/libsolv_0.7.3.bb create mode 100644 poky/meta/recipes-extended/libsolv/libsolv_0.7.4.bb delete mode 100644 poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch delete mode 100644 poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb create mode 100644 poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb create mode 100644 poky/meta/recipes-extended/ltp/ltp/0001-syscalls-setrlimit03.c-read-proc-sys-fs-nr_open-for-.patch delete mode 100644 poky/meta/recipes-extended/man-db/man-db_2.8.4.bb create mode 100644 poky/meta/recipes-extended/man-db/man-db_2.8.5.bb delete mode 100644 poky/meta/recipes-extended/man-pages/man-pages_4.16.bb create mode 100644 poky/meta/recipes-extended/man-pages/man-pages_5.01.bb create mode 100644 poky/meta/recipes-extended/mdadm/files/debian-no-Werror.patch delete mode 100644 poky/meta/recipes-extended/msmtp/msmtp_1.6.6.bb create mode 100644 poky/meta/recipes-extended/msmtp/msmtp_1.8.4.bb delete mode 100644 poky/meta/recipes-extended/quota/quota/remove_non_posix_types.patch delete mode 100644 poky/meta/recipes-extended/quota/quota/replace_getrpcbynumber_r.patch delete mode 100644 poky/meta/recipes-extended/quota/quota_4.04.bb create mode 100644 poky/meta/recipes-extended/quota/quota_4.05.bb create mode 100644 poky/meta/recipes-extended/shadow/files/0001-Make-the-sp_lstchg-shadow-field-reproducible-re.-71.patch create mode 100644 poky/meta/recipes-extended/shadow/files/0002-gettime-Use-secure_getenv-over-getenv.patch delete mode 100644 poky/meta/recipes-extended/tar/tar_1.31.bb create mode 100644 poky/meta/recipes-extended/tar/tar_1.32.bb delete mode 100644 poky/meta/recipes-extended/wget/wget_1.20.1.bb create mode 100644 poky/meta/recipes-extended/wget/wget_1.20.3.bb delete mode 100644 poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb create mode 100644 poky/meta/recipes-gnome/epiphany/epiphany_3.32.1.2.bb delete mode 100644 poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch delete mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch create mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-meson.build-disable-tests-when-cross-compiling.patch delete mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-g-ir-tools-respect-gir_dir_prefix.patch delete mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch delete mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb create mode 100644 poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.60.1.bb delete mode 100644 poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch delete mode 100644 poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb create mode 100644 poky/meta/recipes-gnome/libdazzle/libdazzle_3.32.1.bb delete mode 100644 poky/meta/recipes-gnome/libnotify/libnotify_0.7.7.bb create mode 100644 poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb delete mode 100644 poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb create mode 100644 poky/meta/recipes-gnome/libsecret/libsecret_0.18.8.bb delete mode 100644 poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch delete mode 100644 poky/meta/recipes-graphics/cogl/cogl-1.0/test-backface-culling.c-fix-may-be-used-uninitialize.patch delete mode 100644 poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb create mode 100644 poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.4.bb delete mode 100644 poky/meta/recipes-graphics/drm/libdrm_2.4.97.bb create mode 100644 poky/meta/recipes-graphics/drm/libdrm_2.4.98.bb delete mode 100644 poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fccache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch delete mode 100644 poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch delete mode 100644 poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb create mode 100644 poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb delete mode 100644 poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb create mode 100644 poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.4.0.bb delete mode 100644 poky/meta/recipes-graphics/mesa/mesa-gl_19.0.1.bb create mode 100644 poky/meta/recipes-graphics/mesa/mesa-gl_19.0.3.bb delete mode 100644 poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb create mode 100644 poky/meta/recipes-graphics/mesa/mesa_19.0.3.bb delete mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.12.6.bb create mode 100644 poky/meta/recipes-graphics/wayland/libinput_1.13.1.bb delete mode 100644 poky/meta/recipes-graphics/wayland/weston_5.0.0.bb create mode 100644 poky/meta/recipes-graphics/wayland/weston_6.0.0.bb delete mode 100644 poky/meta/recipes-graphics/xorg-app/x11perf_1.6.0.bb create mode 100644 poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.2.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.3.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxext_1.3.3.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxext_1.3.4.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.9.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.1.0.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.2.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.11.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.4.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.5.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/pixman_0.38.0.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb delete mode 100644 poky/meta/recipes-graphics/xorg-lib/xtrans_1.3.5.bb create mode 100644 poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb delete mode 100644 poky/meta/recipes-graphics/xorg-util/makedepend_1.0.5.bb create mode 100644 poky/meta/recipes-graphics/xorg-util/makedepend_1.0.6.bb create mode 100644 poky/meta/recipes-kernel/cryptodev/files/0001-Fix-module-loading-with-Linux-v5.0-rc5.patch delete mode 100644 poky/meta/recipes-kernel/dtc/dtc_1.4.7.bb create mode 100644 poky/meta/recipes-kernel/dtc/dtc_1.5.0.bb delete mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0001-Disable-PIE-during-link.patch create mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0001-powerpc-change-the-memory-size-limit.patch delete mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0001-purgatory-Pass-r-directly-to-linker.patch delete mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0002-powerpc-change-the-memory-size-limit.patch create mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch create mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch create mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0004-x86_64-Add-support-to-build-kexec-tools-with-x32-ABI.patch create mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch delete mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch delete mode 100644 poky/meta/recipes-kernel/kexec/kexec-tools/kexec-x32.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-signal-Distinguish-between-kernel_siginfo-and-si.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-ext4-adjust-reserved-cluster-count-when-removing.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-timer-instrumentation-for-RHEL-7.6.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0005-Fix-Remove-type-argument-from-access_ok-function-v5..patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0006-Fix-Replace-pointer-values-with-task-tk_pid-and-rpc_.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0007-Fix-SUNRPC-Simplify-defining-common-RPC-trace-events.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0008-Fix-btrfs-Remove-fsid-metadata_fsid-fields-from-btrf.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0009-Cleanup-tp-mempool-Remove-logically-dead-code.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.10.8.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.10.9.bb delete mode 100644 poky/meta/recipes-kernel/sysprof/sysprof_3.30.2.bb create mode 100644 poky/meta/recipes-kernel/sysprof/sysprof_3.32.0.bb delete mode 100644 poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.1.bb create mode 100644 poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.3.bb delete mode 100644 poky/meta/recipes-multimedia/libpng/libpng/CVE-2019-7317.patch delete mode 100644 poky/meta/recipes-multimedia/libpng/libpng_1.6.36.bb create mode 100644 poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb create mode 100644 poky/meta/recipes-multimedia/mpg123/mpg123/sdl2.patch create mode 100644 poky/meta/recipes-sato/images/core-image-sato-ptest-fast.bb delete mode 100644 poky/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch create mode 100644 poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch create mode 100644 poky/meta/recipes-sato/webkit/webkitgtk/narrowing.patch create mode 100644 poky/meta/recipes-sato/webkit/webkitgtk/snprintf.patch delete mode 100644 poky/meta/recipes-sato/webkit/webkitgtk_2.22.7.bb create mode 100644 poky/meta/recipes-sato/webkit/webkitgtk_2.24.0.bb delete mode 100644 poky/meta/recipes-support/apr/apr_1.6.5.bb create mode 100644 poky/meta/recipes-support/apr/apr_1.7.0.bb create mode 100644 poky/meta/recipes-support/atk/at-spi2-core/meson-0.50-fix.patch delete mode 100644 poky/meta/recipes-support/curl/curl_7.64.0.bb create mode 100644 poky/meta/recipes-support/curl/curl_7.64.1.bb delete mode 100644 poky/meta/recipes-support/gnupg/gnupg_2.2.13.bb create mode 100644 poky/meta/recipes-support/gnupg/gnupg_2.2.15.bb delete mode 100644 poky/meta/recipes-support/gnutls/gnutls_3.6.5.bb create mode 100644 poky/meta/recipes-support/gnutls/gnutls_3.6.7.bb create mode 100644 poky/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch create mode 100644 poky/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch delete mode 100644 poky/meta/recipes-support/gpgme/gpgme_1.12.0.bb create mode 100644 poky/meta/recipes-support/gpgme/gpgme_1.13.0.bb create mode 100644 poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch create mode 100644 poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch delete mode 100644 poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch delete mode 100644 poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch delete mode 100644 poky/meta/recipes-support/icu/icu_63.1.bb create mode 100644 poky/meta/recipes-support/icu/icu_64.2.bb create mode 100644 poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb delete mode 100644 poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.8.bb delete mode 100644 poky/meta/recipes-support/libcap/libcap_2.26.bb create mode 100644 poky/meta/recipes-support/libcap/libcap_2.27.bb delete mode 100644 poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7960.patch delete mode 100644 poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7961.patch delete mode 100644 poky/meta/recipes-support/libcroco/libcroco_0.6.12.bb create mode 100644 poky/meta/recipes-support/libcroco/libcroco_0.6.13.bb delete mode 100644 poky/meta/recipes-support/libgpg-error/libgpg-error_1.35.bb create mode 100644 poky/meta/recipes-support/libgpg-error/libgpg-error_1.36.bb delete mode 100644 poky/meta/recipes-support/libpsl/libpsl_0.20.2.bb create mode 100644 poky/meta/recipes-support/libpsl/libpsl_0.21.0.bb delete mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb create mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.66.1.bb delete mode 100644 poky/meta/recipes-support/libyaml/libyaml_0.2.1.bb create mode 100644 poky/meta/recipes-support/libyaml/libyaml_0.2.2.bb delete mode 100644 poky/meta/recipes-support/lz4/lz4_1.8.3.bb create mode 100644 poky/meta/recipes-support/lz4/lz4_1.9.0.bb delete mode 100644 poky/meta/recipes-support/nss/nss_3.42.1.bb create mode 100644 poky/meta/recipes-support/nss/nss_3.43.bb delete mode 100644 poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9936.patch delete mode 100644 poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9937.patch delete mode 100644 poky/meta/recipes-support/sqlite/sqlite3_3.27.2.bb create mode 100644 poky/meta/recipes-support/sqlite/sqlite3_3.28.0.bb delete mode 100644 poky/meta/recipes-support/vim/vim-tiny_8.1.1017.bb create mode 100644 poky/meta/recipes-support/vim/vim-tiny_8.1.1240.bb delete mode 100644 poky/meta/recipes-support/vim/vim_8.1.1017.bb create mode 100644 poky/meta/recipes-support/vim/vim_8.1.1240.bb create mode 100644 poky/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch delete mode 100644 poky/meta/recipes-support/vte/vte_0.52.2.bb create mode 100644 poky/meta/recipes-support/vte/vte_0.56.1.bb create mode 100644 poky/scripts/lib/resulttool/log.py (limited to 'poky') diff --git a/poky/LICENSE b/poky/LICENSE index 21fa6e6bd..d20dc59fb 100644 --- a/poky/LICENSE +++ b/poky/LICENSE @@ -1,14 +1,20 @@ Different components of OpenEmbedded are under different licenses (a mix -of MIT and GPLv2). Please see: - -meta/COPYING.GPLv2 (GPLv2) -meta/COPYING.MIT (MIT) -meta-selftest/COPYING.MIT (MIT) -meta-skeleton/COPYING.MIT (MIT) +of MIT and GPLv2). See LICENSE.GPL-2.0-only and LICENSE.MIT for further +details of the individual licenses. All metadata is MIT licensed unless otherwise stated. Source code -included in tree for individual recipes is under the LICENSE stated in -the associated recipe (.bb file) unless otherwise stated. +included in tree for individual recipes (e.g. patches) are under +the LICENSE stated in the associated recipe (.bb file) unless +otherwise stated. License information for any other files is either explicitly stated -or defaults to GPL version 2. +or defaults to GPL version 2 only. + +Individual files contain the following style tags instead of the full license +text to identify their license: + + SPDX-License-Identifier: GPL-2.0-only + SPDX-License-Identifier: MIT + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ diff --git a/poky/LICENSE.GPL-2.0-only b/poky/LICENSE.GPL-2.0-only new file mode 100644 index 000000000..5db3c0a21 --- /dev/null +++ b/poky/LICENSE.GPL-2.0-only @@ -0,0 +1,288 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + +Note: +Individual files contain the following tag instead of the full license text. + + SPDX-License-Identifier: GPL-2.0-only + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ diff --git a/poky/LICENSE.MIT b/poky/LICENSE.MIT new file mode 100644 index 000000000..a6919eb7e --- /dev/null +++ b/poky/LICENSE.MIT @@ -0,0 +1,25 @@ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Note: +Individual files contain the following tag instead of the full license text. + + SPDX-License-Identifier: MIT + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ diff --git a/poky/bitbake/COPYING b/poky/bitbake/COPYING deleted file mode 100644 index d511905c1..000000000 --- a/poky/bitbake/COPYING +++ /dev/null @@ -1,339 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 2, June 1991 - - Copyright (C) 1989, 1991 Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The licenses for most software are designed to take away your -freedom to share and change it. By contrast, the GNU General Public -License is intended to guarantee your freedom to share and change free -software--to make sure the software is free for all its users. This -General Public License applies to most of the Free Software -Foundation's software and to any other program whose authors commit to -using it. (Some other Free Software Foundation software is covered by -the GNU Lesser General Public License instead.) You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -this service if you wish), that you receive source code or can get it -if you want it, that you can change the software or use pieces of it -in new free programs; and that you know you can do these things. - - To protect your rights, we need to make restrictions that forbid -anyone to deny you these rights or to ask you to surrender the rights. -These restrictions translate to certain responsibilities for you if you -distribute copies of the software, or if you modify it. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must give the recipients all the rights that -you have. You must make sure that they, too, receive or can get the -source code. And you must show them these terms so they know their -rights. - - We protect your rights with two steps: (1) copyright the software, and -(2) offer you this license which gives you legal permission to copy, -distribute and/or modify the software. - - Also, for each author's protection and ours, we want to make certain -that everyone understands that there is no warranty for this free -software. If the software is modified by someone else and passed on, we -want its recipients to know that what they have is not the original, so -that any problems introduced by others will not reflect on the original -authors' reputations. - - Finally, any free program is threatened constantly by software -patents. We wish to avoid the danger that redistributors of a free -program will individually obtain patent licenses, in effect making the -program proprietary. To prevent this, we have made it clear that any -patent must be licensed for everyone's free use or not licensed at all. - - The precise terms and conditions for copying, distribution and -modification follow. - - GNU GENERAL PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. This License applies to any program or other work which contains -a notice placed by the copyright holder saying it may be distributed -under the terms of this General Public License. The "Program", below, -refers to any such program or work, and a "work based on the Program" -means either the Program or any derivative work under copyright law: -that is to say, a work containing the Program or a portion of it, -either verbatim or with modifications and/or translated into another -language. (Hereinafter, translation is included without limitation in -the term "modification".) Each licensee is addressed as "you". - -Activities other than copying, distribution and modification are not -covered by this License; they are outside its scope. The act of -running the Program is not restricted, and the output from the Program -is covered only if its contents constitute a work based on the -Program (independent of having been made by running the Program). -Whether that is true depends on what the Program does. - - 1. You may copy and distribute verbatim copies of the Program's -source code as you receive it, in any medium, provided that you -conspicuously and appropriately publish on each copy an appropriate -copyright notice and disclaimer of warranty; keep intact all the -notices that refer to this License and to the absence of any warranty; -and give any other recipients of the Program a copy of this License -along with the Program. - -You may charge a fee for the physical act of transferring a copy, and -you may at your option offer warranty protection in exchange for a fee. - - 2. You may modify your copy or copies of the Program or any portion -of it, thus forming a work based on the Program, and copy and -distribute such modifications or work under the terms of Section 1 -above, provided that you also meet all of these conditions: - - a) You must cause the modified files to carry prominent notices - stating that you changed the files and the date of any change. - - b) You must cause any work that you distribute or publish, that in - whole or in part contains or is derived from the Program or any - part thereof, to be licensed as a whole at no charge to all third - parties under the terms of this License. - - c) If the modified program normally reads commands interactively - when run, you must cause it, when started running for such - interactive use in the most ordinary way, to print or display an - announcement including an appropriate copyright notice and a - notice that there is no warranty (or else, saying that you provide - a warranty) and that users may redistribute the program under - these conditions, and telling the user how to view a copy of this - License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) - -These requirements apply to the modified work as a whole. If -identifiable sections of that work are not derived from the Program, -and can be reasonably considered independent and separate works in -themselves, then this License, and its terms, do not apply to those -sections when you distribute them as separate works. But when you -distribute the same sections as part of a whole which is a work based -on the Program, the distribution of the whole must be on the terms of -this License, whose permissions for other licensees extend to the -entire whole, and thus to each and every part regardless of who wrote it. - -Thus, it is not the intent of this section to claim rights or contest -your rights to work written entirely by you; rather, the intent is to -exercise the right to control the distribution of derivative or -collective works based on the Program. - -In addition, mere aggregation of another work not based on the Program -with the Program (or with a work based on the Program) on a volume of -a storage or distribution medium does not bring the other work under -the scope of this License. - - 3. You may copy and distribute the Program (or a work based on it, -under Section 2) in object code or executable form under the terms of -Sections 1 and 2 above provided that you also do one of the following: - - a) Accompany it with the complete corresponding machine-readable - source code, which must be distributed under the terms of Sections - 1 and 2 above on a medium customarily used for software interchange; or, - - b) Accompany it with a written offer, valid for at least three - years, to give any third party, for a charge no more than your - cost of physically performing source distribution, a complete - machine-readable copy of the corresponding source code, to be - distributed under the terms of Sections 1 and 2 above on a medium - customarily used for software interchange; or, - - c) Accompany it with the information you received as to the offer - to distribute corresponding source code. (This alternative is - allowed only for noncommercial distribution and only if you - received the program in object code or executable form with such - an offer, in accord with Subsection b above.) - -The source code for a work means the preferred form of the work for -making modifications to it. For an executable work, complete source -code means all the source code for all modules it contains, plus any -associated interface definition files, plus the scripts used to -control compilation and installation of the executable. However, as a -special exception, the source code distributed need not include -anything that is normally distributed (in either source or binary -form) with the major components (compiler, kernel, and so on) of the -operating system on which the executable runs, unless that component -itself accompanies the executable. - -If distribution of executable or object code is made by offering -access to copy from a designated place, then offering equivalent -access to copy the source code from the same place counts as -distribution of the source code, even though third parties are not -compelled to copy the source along with the object code. - - 4. You may not copy, modify, sublicense, or distribute the Program -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense or distribute the Program is -void, and will automatically terminate your rights under this License. -However, parties who have received copies, or rights, from you under -this License will not have their licenses terminated so long as such -parties remain in full compliance. - - 5. You are not required to accept this License, since you have not -signed it. However, nothing else grants you permission to modify or -distribute the Program or its derivative works. These actions are -prohibited by law if you do not accept this License. Therefore, by -modifying or distributing the Program (or any work based on the -Program), you indicate your acceptance of this License to do so, and -all its terms and conditions for copying, distributing or modifying -the Program or works based on it. - - 6. Each time you redistribute the Program (or any work based on the -Program), the recipient automatically receives a license from the -original licensor to copy, distribute or modify the Program subject to -these terms and conditions. You may not impose any further -restrictions on the recipients' exercise of the rights granted herein. -You are not responsible for enforcing compliance by third parties to -this License. - - 7. If, as a consequence of a court judgment or allegation of patent -infringement or for any other reason (not limited to patent issues), -conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot -distribute so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you -may not distribute the Program at all. For example, if a patent -license would not permit royalty-free redistribution of the Program by -all those who receive copies directly or indirectly through you, then -the only way you could satisfy both it and this License would be to -refrain entirely from distribution of the Program. - -If any portion of this section is held invalid or unenforceable under -any particular circumstance, the balance of the section is intended to -apply and the section as a whole is intended to apply in other -circumstances. - -It is not the purpose of this section to induce you to infringe any -patents or other property right claims or to contest validity of any -such claims; this section has the sole purpose of protecting the -integrity of the free software distribution system, which is -implemented by public license practices. Many people have made -generous contributions to the wide range of software distributed -through that system in reliance on consistent application of that -system; it is up to the author/donor to decide if he or she is willing -to distribute software through any other system and a licensee cannot -impose that choice. - -This section is intended to make thoroughly clear what is believed to -be a consequence of the rest of this License. - - 8. If the distribution and/or use of the Program is restricted in -certain countries either by patents or by copyrighted interfaces, the -original copyright holder who places the Program under this License -may add an explicit geographical distribution limitation excluding -those countries, so that distribution is permitted only in or among -countries not thus excluded. In such case, this License incorporates -the limitation as if written in the body of this License. - - 9. The Free Software Foundation may publish revised and/or new versions -of the General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies a version number of this License which applies to it and "any -later version", you have the option of following the terms and conditions -either of that version or of any later version published by the Free -Software Foundation. If the Program does not specify a version number of -this License, you may choose any version ever published by the Free Software -Foundation. - - 10. If you wish to incorporate parts of the Program into other free -programs whose distribution conditions are different, write to the author -to ask for permission. For software which is copyrighted by the Free -Software Foundation, write to the Free Software Foundation; we sometimes -make exceptions for this. Our decision will be guided by the two goals -of preserving the free status of all derivatives of our free software and -of promoting the sharing and reuse of software generally. - - NO WARRANTY - - 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY -FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN -OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES -PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED -OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS -TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE -PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, -REPAIR OR CORRECTION. - - 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR -REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING -OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED -TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY -YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER -PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE -POSSIBILITY OF SUCH DAMAGES. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -convey the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - - Copyright (C) - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -Also add information on how to contact you by electronic and paper mail. - -If the program is interactive, make it output a short notice like this -when it starts in an interactive mode: - - Gnomovision version 69, Copyright (C) year name of author - Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, the commands you use may -be called something other than `show w' and `show c'; they could even be -mouse-clicks or menu items--whatever suits your program. - -You should also get your employer (if you work as a programmer) or your -school, if any, to sign a "copyright disclaimer" for the program, if -necessary. Here is a sample; alter the names: - - Yoyodyne, Inc., hereby disclaims all copyright interest in the program - `Gnomovision' (which makes passes at compilers) written by James Hacker. - - , 1 April 1989 - Ty Coon, President of Vice - -This General Public License does not permit incorporating your program into -proprietary programs. If your program is a subroutine library, you may -consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. diff --git a/poky/bitbake/HEADER b/poky/bitbake/HEADER deleted file mode 100644 index 9859255df..000000000 --- a/poky/bitbake/HEADER +++ /dev/null @@ -1,19 +0,0 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# -# -# Copyright (C) -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - diff --git a/poky/bitbake/LICENSE b/poky/bitbake/LICENSE index 7d4e5f44b..845804230 100644 --- a/poky/bitbake/LICENSE +++ b/poky/bitbake/LICENSE @@ -1,4 +1,13 @@ -BitBake is licensed under the GNU General Public License version 2.0. See COPYING for further details. +BitBake is licensed under the GNU General Public License version 2.0. See +LICENSE.GPL-2.0-only for further details. + +Individual files contain the following style tags instead of the full license text: + + SPDX-License-Identifier: GPL-2.0-only + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ + The following external components are distributed with this software: @@ -17,3 +26,4 @@ Foundation and individual contributors. * Font Awesome fonts redistributed under the SIL Open Font License 1.1 * simplediff is distributed under the zlib license. + diff --git a/poky/bitbake/LICENSE.GPL-2.0-only b/poky/bitbake/LICENSE.GPL-2.0-only new file mode 100644 index 000000000..5db3c0a21 --- /dev/null +++ b/poky/bitbake/LICENSE.GPL-2.0-only @@ -0,0 +1,288 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + +Note: +Individual files contain the following tag instead of the full license text. + + SPDX-License-Identifier: GPL-2.0-only + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ diff --git a/poky/bitbake/LICENSE.MIT b/poky/bitbake/LICENSE.MIT new file mode 100644 index 000000000..a6919eb7e --- /dev/null +++ b/poky/bitbake/LICENSE.MIT @@ -0,0 +1,25 @@ +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +Note: +Individual files contain the following tag instead of the full license text. + + SPDX-License-Identifier: MIT + +This enables machine processing of license information based on the SPDX +License Identifiers that are here available: http://spdx.org/licenses/ diff --git a/poky/bitbake/bin/bitbake b/poky/bitbake/bin/bitbake index 57dec2a4c..b219d362e 100755 --- a/poky/bitbake/bin/bitbake +++ b/poky/bitbake/bin/bitbake @@ -1,6 +1,4 @@ #!/usr/bin/env python3 -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell @@ -9,18 +7,8 @@ # Copyright (C) 2005 ROAD GmbH # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys @@ -38,7 +26,7 @@ from bb.main import bitbake_main, BitBakeConfigParameters, BBMainException if sys.getfilesystemencoding() != "utf-8": sys.exit("Please use a locale setting which supports UTF-8 (such as LANG=en_US.UTF-8).\nPython can't change the filesystem locale after loading so we need a UTF-8 when Python starts or things won't work.") -__version__ = "1.40.0" +__version__ = "1.43.0" if __name__ == "__main__": if __version__ != bb.__version__: diff --git a/poky/bitbake/bin/bitbake-diffsigs b/poky/bitbake/bin/bitbake-diffsigs index fa430bb3b..19420a2df 100755 --- a/poky/bitbake/bin/bitbake-diffsigs +++ b/poky/bitbake/bin/bitbake-diffsigs @@ -5,18 +5,8 @@ # # Copyright (C) 2012-2013, 2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys @@ -105,7 +95,7 @@ def recursecb(key, hash1, hash2): out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb, color=color) for change in out2: for line in change.splitlines(): - recout.append(' ' + line) + recout.append(' ' + line) return recout diff --git a/poky/bitbake/bin/bitbake-hashserv b/poky/bitbake/bin/bitbake-hashserv index c49397b73..848a0ca39 100755 --- a/poky/bitbake/bin/bitbake-hashserv +++ b/poky/bitbake/bin/bitbake-hashserv @@ -2,18 +2,9 @@ # # Copyright (C) 2018 Garmin Ltd. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + import os import sys import logging diff --git a/poky/bitbake/bin/bitbake-layers b/poky/bitbake/bin/bitbake-layers index d184011ea..a884dc1f8 100755 --- a/poky/bitbake/bin/bitbake-layers +++ b/poky/bitbake/bin/bitbake-layers @@ -7,18 +7,8 @@ # Copyright (C) 2011 Mentor Graphics Corporation # Copyright (C) 2011-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import logging import os diff --git a/poky/bitbake/bin/bitbake-prserv b/poky/bitbake/bin/bitbake-prserv index f38d2dd88..1e9b6cbc1 100755 --- a/poky/bitbake/bin/bitbake-prserv +++ b/poky/bitbake/bin/bitbake-prserv @@ -1,4 +1,8 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# + import os import sys,logging import optparse diff --git a/poky/bitbake/bin/bitbake-selftest b/poky/bitbake/bin/bitbake-selftest index 99f1af910..20553e981 100755 --- a/poky/bitbake/bin/bitbake-selftest +++ b/poky/bitbake/bin/bitbake-selftest @@ -2,18 +2,8 @@ # # Copyright (C) 2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys, logging diff --git a/poky/bitbake/bin/bitbake-worker b/poky/bitbake/bin/bitbake-worker index a9e997e1f..f63f060c5 100755 --- a/poky/bitbake/bin/bitbake-worker +++ b/poky/bitbake/bin/bitbake-worker @@ -1,4 +1,7 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import os import sys diff --git a/poky/bitbake/bin/bitdoc b/poky/bitbake/bin/bitdoc index 274467882..9bd02be69 100755 --- a/poky/bitbake/bin/bitdoc +++ b/poky/bitbake/bin/bitdoc @@ -1,21 +1,9 @@ #!/usr/bin/env python3 -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2005 Holger Hans Peter Freyther # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import optparse, os, sys diff --git a/poky/bitbake/bin/git-make-shallow b/poky/bitbake/bin/git-make-shallow index 296d3a3db..57069f7ed 100755 --- a/poky/bitbake/bin/git-make-shallow +++ b/poky/bitbake/bin/git-make-shallow @@ -1,4 +1,8 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# + """git-make-shallow: make the current git repository shallow Remove the history of the specified revisions, then optionally filter the diff --git a/poky/bitbake/bin/toaster b/poky/bitbake/bin/toaster index ecf66fa51..c3472dfee 100755 --- a/poky/bitbake/bin/toaster +++ b/poky/bitbake/bin/toaster @@ -3,19 +3,9 @@ # toaster - shell script to start Toaster # Copyright (C) 2013-2015 Intel Corp. - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-or-later # -# You should have received a copy of the GNU General Public License -# along with this program. If not, see http://www.gnu.org/licenses/. HELP=" Usage: source toaster start|stop [webport=] [noweb] [nobuild] [toasterdir] diff --git a/poky/bitbake/bin/toaster-eventreplay b/poky/bitbake/bin/toaster-eventreplay index 80967a093..8fa4ab711 100755 --- a/poky/bitbake/bin/toaster-eventreplay +++ b/poky/bitbake/bin/toaster-eventreplay @@ -1,25 +1,12 @@ #!/usr/bin/env python3 -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2014 Alex Damian # +# SPDX-License-Identifier: GPL-2.0-only +# # This file re-uses code spread throughout other Bitbake source files. # As such, all other copyrights belong to their own right holders. # -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ This command takes a filename as a single parameter. The filename is read diff --git a/poky/bitbake/contrib/dump_cache.py b/poky/bitbake/contrib/dump_cache.py index 8963ca4b0..c6723cbf0 100755 --- a/poky/bitbake/contrib/dump_cache.py +++ b/poky/bitbake/contrib/dump_cache.py @@ -1,6 +1,4 @@ #!/usr/bin/env python3 -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2012, 2018 Wind River Systems, Inc. # diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml index 3acd7c403..684040856 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-fetching.xml @@ -832,19 +832,22 @@ Bazaar (bzr://) - Trees using Git Annex (gitannex://) + Mercurial (hg://) - Secure FTP (sftp://) + npm (npm://) - Secure Shell (ssh://) + OSC (osc://) - OSC (osc://) + Secure FTP (sftp://) - Mercurial (hg://) + Secure Shell (ssh://) + + + Trees using Git Annex (gitannex://) No documentation currently exists for these lesser used diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml index 199ab2309..a125ad332 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml @@ -61,6 +61,78 @@ +
+ Modifying Existing Variables + + + Sometimes you need to modify existing variables. + Following are some cases where you might find you want to + modify an existing variable: + + + Customize a recipe that uses the variable. + + + Change a variable's default value used in a + *.bbclass file. + + + Change the variable in a *.bbappend + file to override the variable in the original recipe. + + + Change the variable in a configuration file so that the + value overrides an existing configuration. + + + + + + Changing a variable value can sometimes depend on how the + value was originally assigned and also on the desired + intent of the change. + In particular, when you append a value to a variable that + has a default value, the resulting value might not be what + you expect. + In this case, the value you provide might replace the value + rather than append to the default value. + + + + If after you have changed a variable's value and something + unexplained occurs, you can use BitBake to check the actual + value of the suspect variable. + You can make these checks for both configuration and recipe + level changes: + + + For configuration changes, use the following: + + $ bitbake -e + + This command displays variable values after the + configuration files (i.e. local.conf, + bblayers.conf, + bitbake.conf and so forth) have + been parsed. + + Variables that are exported to the environment are + preceded by the string "export" in the command's + output. + + + + For recipe changes, use the following: + + $ bitbake recipe -e | grep VARIABLE=" + + This command checks to see if the variable actually + makes it into a specific recipe. + + + +
+
Line Joining diff --git a/poky/bitbake/doc/poky.ent b/poky/bitbake/doc/poky.ent index c032e1418..85d9c83bf 100644 --- a/poky/bitbake/doc/poky.ent +++ b/poky/bitbake/doc/poky.ent @@ -17,13 +17,6 @@ - - - - - - - @@ -31,7 +24,6 @@ - diff --git a/poky/bitbake/lib/bb/COW.py b/poky/bitbake/lib/bb/COW.py index 7817473ab..d26e98195 100644 --- a/poky/bitbake/lib/bb/COW.py +++ b/poky/bitbake/lib/bb/COW.py @@ -1,23 +1,8 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # This is a copy on write dictionary and set which abuses classes to try and be nice and fast. # # Copyright (C) 2006 Tim Ansell # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# #Please Note: # Be careful when using mutable types (ie Dict and Lists) - operations involving these are SLOW. # Assign a file to __warn__ to get warnings about slow operations. diff --git a/poky/bitbake/lib/bb/__init__.py b/poky/bitbake/lib/bb/__init__.py index 4bc47c8ab..7579a893b 100644 --- a/poky/bitbake/lib/bb/__init__.py +++ b/poky/bitbake/lib/bb/__init__.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Build System Python Library # @@ -8,20 +6,10 @@ # # Based on Gentoo's portage.py. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -__version__ = "1.40.0" +__version__ = "1.43.0" import sys if sys.version_info < (3, 4, 0): diff --git a/poky/bitbake/lib/bb/build.py b/poky/bitbake/lib/bb/build.py index 7571421d7..dae42ac47 100644 --- a/poky/bitbake/lib/bb/build.py +++ b/poky/bitbake/lib/bb/build.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake 'Build' implementation # @@ -10,18 +8,7 @@ # # Based on Gentoo's portage.py. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig @@ -408,6 +395,8 @@ exit $ret bb.plain(value) elif cmd == 'bbnote': bb.note(value) + elif cmd == 'bbverbnote': + bb.verbnote(value) elif cmd == 'bbwarn': bb.warn(value) elif cmd == 'bberror': @@ -815,6 +804,9 @@ def add_tasks(tasklist, d): task_deps['parents'][task] = [] if 'deps' in flags: for dep in flags['deps']: + # Check and warn for "addtask task after foo" while foo does not exist + #if not dep in tasklist: + # bb.warn('%s: dependent task %s for %s does not exist' % (d.getVar('PN'), dep, task)) dep = d.expand(dep) task_deps['parents'][task].append(dep) diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py index 65c514b90..060758e0c 100644 --- a/poky/bitbake/lib/bb/cache.py +++ b/poky/bitbake/lib/bb/cache.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Cache implementation # @@ -15,18 +13,8 @@ # Copyright (C) 2005 Holger Hans Peter Freyther # Copyright (C) 2005 ROAD GmbH # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/bb/cache_extra.py b/poky/bitbake/lib/bb/cache_extra.py index 83f4959d6..bf4226d16 100644 --- a/poky/bitbake/lib/bb/cache_extra.py +++ b/poky/bitbake/lib/bb/cache_extra.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Extra RecipeInfo will be all defined in this file. Currently, # Only Hob (Image Creator) Requests some extra fields. So @@ -12,18 +10,8 @@ # Copyright (C) 2011, Intel Corporation. All rights reserved. -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from bb.cache import RecipeInfoCommon diff --git a/poky/bitbake/lib/bb/checksum.py b/poky/bitbake/lib/bb/checksum.py index 4e1598fe8..5bc8a8fcb 100644 --- a/poky/bitbake/lib/bb/checksum.py +++ b/poky/bitbake/lib/bb/checksum.py @@ -2,18 +2,8 @@ # # Copyright (C) 2012 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import glob import operator diff --git a/poky/bitbake/lib/bb/codeparser.py b/poky/bitbake/lib/bb/codeparser.py index ac995a6a1..fd2c4734f 100644 --- a/poky/bitbake/lib/bb/codeparser.py +++ b/poky/bitbake/lib/bb/codeparser.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + """ BitBake code parser diff --git a/poky/bitbake/lib/bb/command.py b/poky/bitbake/lib/bb/command.py index 6c966e3db..378f389b3 100644 --- a/poky/bitbake/lib/bb/command.py +++ b/poky/bitbake/lib/bb/command.py @@ -6,18 +6,8 @@ Provide an interface to interact with the bitbake server through 'commands' # Copyright (C) 2006-2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ The bitbake server takes 'commands' from its UI/commandline. diff --git a/poky/bitbake/lib/bb/compat.py b/poky/bitbake/lib/bb/compat.py index de1923d28..49356681a 100644 --- a/poky/bitbake/lib/bb/compat.py +++ b/poky/bitbake/lib/bb/compat.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + """Code pulled from future python versions, here for compatibility""" from collections import MutableMapping, KeysView, ValuesView, ItemsView, OrderedDict diff --git a/poky/bitbake/lib/bb/cooker.py b/poky/bitbake/lib/bb/cooker.py index 9ccaa79f5..c8e14042d 100644 --- a/poky/bitbake/lib/bb/cooker.py +++ b/poky/bitbake/lib/bb/cooker.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell @@ -9,19 +7,8 @@ # Copyright (C) 2005 ROAD GmbH # Copyright (C) 2006 - 2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import sys, os, glob, os.path, re, time import atexit diff --git a/poky/bitbake/lib/bb/cookerdata.py b/poky/bitbake/lib/bb/cookerdata.py index 09412e28c..f8ae41093 100644 --- a/poky/bitbake/lib/bb/cookerdata.py +++ b/poky/bitbake/lib/bb/cookerdata.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell @@ -9,18 +7,8 @@ # Copyright (C) 2005 ROAD GmbH # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import logging import os diff --git a/poky/bitbake/lib/bb/daemonize.py b/poky/bitbake/lib/bb/daemonize.py index c937675eb..f01e6ec7c 100644 --- a/poky/bitbake/lib/bb/daemonize.py +++ b/poky/bitbake/lib/bb/daemonize.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + """ Python Daemonizing helper diff --git a/poky/bitbake/lib/bb/data.py b/poky/bitbake/lib/bb/data.py index 29c238803..92ef40530 100644 --- a/poky/bitbake/lib/bb/data.py +++ b/poky/bitbake/lib/bb/data.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Data' implementations @@ -22,18 +20,7 @@ the speed is more critical here. # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2005 Holger Hans Peter Freyther # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/data_smart.py b/poky/bitbake/lib/bb/data_smart.py index 07db7be97..dd5c61856 100644 --- a/poky/bitbake/lib/bb/data_smart.py +++ b/poky/bitbake/lib/bb/data_smart.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake Smart Dictionary Implementation @@ -14,18 +12,8 @@ BitBake build tools. # Copyright (C) 2005 Uli Luckas # Copyright (C) 2005 ROAD GmbH # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # Based on functions from the base bb module, Copyright 2003 Holger Schurig import copy, re, sys, traceback diff --git a/poky/bitbake/lib/bb/event.py b/poky/bitbake/lib/bb/event.py index 5b1b094a8..7cbb5ca47 100644 --- a/poky/bitbake/lib/bb/event.py +++ b/poky/bitbake/lib/bb/event.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Event' implementation @@ -9,18 +7,8 @@ BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os, sys import warnings diff --git a/poky/bitbake/lib/bb/exceptions.py b/poky/bitbake/lib/bb/exceptions.py index cd713439e..ecbad5997 100644 --- a/poky/bitbake/lib/bb/exceptions.py +++ b/poky/bitbake/lib/bb/exceptions.py @@ -1,3 +1,6 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# import inspect import traceback diff --git a/poky/bitbake/lib/bb/fetch2/__init__.py b/poky/bitbake/lib/bb/fetch2/__init__.py index 8fecc809d..0126e0d7c 100644 --- a/poky/bitbake/lib/bb/fetch2/__init__.py +++ b/poky/bitbake/lib/bb/fetch2/__init__.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementations @@ -10,18 +8,7 @@ BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2012 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/fetch2/bzr.py b/poky/bitbake/lib/bb/fetch2/bzr.py index 658502f9a..c56d87530 100644 --- a/poky/bitbake/lib/bb/fetch2/bzr.py +++ b/poky/bitbake/lib/bb/fetch2/bzr.py @@ -10,18 +10,8 @@ BitBake 'Fetch' implementation for bzr. # BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/bb/fetch2/clearcase.py b/poky/bitbake/lib/bb/fetch2/clearcase.py index 3a6573d0b..9ed0d9bea 100644 --- a/poky/bitbake/lib/bb/fetch2/clearcase.py +++ b/poky/bitbake/lib/bb/fetch2/clearcase.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' clearcase implementation @@ -47,18 +45,7 @@ User credentials: """ # Copyright (C) 2014 Siemens AG # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import os diff --git a/poky/bitbake/lib/bb/fetch2/cvs.py b/poky/bitbake/lib/bb/fetch2/cvs.py index 0e0a3196f..1b35ba4cf 100644 --- a/poky/bitbake/lib/bb/fetch2/cvs.py +++ b/poky/bitbake/lib/bb/fetch2/cvs.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementations @@ -10,20 +8,9 @@ BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -#Based on functions from the base bb module, Copyright 2003 Holger Schurig +# Based on functions from the base bb module, Copyright 2003 Holger Schurig # import os diff --git a/poky/bitbake/lib/bb/fetch2/git.py b/poky/bitbake/lib/bb/fetch2/git.py index 8185bf4db..e171aa7eb 100644 --- a/poky/bitbake/lib/bb/fetch2/git.py +++ b/poky/bitbake/lib/bb/fetch2/git.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' git implementation @@ -55,20 +53,10 @@ Supported SRC_URI options are: """ -#Copyright (C) 2005 Richard Purdie +# Copyright (C) 2005 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import collections import errno @@ -503,6 +491,17 @@ class Git(FetchMethod): repourl = self._get_repo_url(ud) runfetchcmd("%s remote set-url origin %s" % (ud.basecmd, repourl), d, workdir=destdir) + + if self._contains_lfs(ud, d, destdir): + path = d.getVar('PATH') + if path: + gitlfstool = bb.utils.which(path, "git-lfs", executable=True) + if not gitlfstool: + raise bb.fetch2.FetchError("Repository %s has lfs content, install git-lfs plugin on host to download" % (repourl)) + else: + bb.note("Could not find 'PATH'") + + if not ud.nocheckout: if subdir != "": runfetchcmd("%s read-tree %s%s" % (ud.basecmd, ud.revisions[ud.names[0]], readpathspec), d, @@ -553,6 +552,20 @@ class Git(FetchMethod): raise bb.fetch2.FetchError("The command '%s' gave output with more then 1 line unexpectedly, output: '%s'" % (cmd, output)) return output.split()[0] != "0" + def _contains_lfs(self, ud, d, wd): + """ + Check if the repository has 'lfs' (large file) content + """ + cmd = "%s grep lfs HEAD:.gitattributes | wc -l" % ( + ud.basecmd) + try: + output = runfetchcmd(cmd, d, quiet=True, workdir=wd) + if int(output) > 0: + return True + except (bb.fetch2.FetchError,ValueError): + pass + return False + def _get_repo_url(self, ud): """ Return the repository URL diff --git a/poky/bitbake/lib/bb/fetch2/gitannex.py b/poky/bitbake/lib/bb/fetch2/gitannex.py index a9b69caab..1d497dcb0 100644 --- a/poky/bitbake/lib/bb/fetch2/gitannex.py +++ b/poky/bitbake/lib/bb/fetch2/gitannex.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' git annex implementation """ @@ -7,18 +5,8 @@ BitBake 'Fetch' git annex implementation # Copyright (C) 2014 Otavio Salvador # Copyright (C) 2014 O.S. Systems Software LTDA. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import bb diff --git a/poky/bitbake/lib/bb/fetch2/gitsm.py b/poky/bitbake/lib/bb/fetch2/gitsm.py index 32389130b..1f03ba7a0 100644 --- a/poky/bitbake/lib/bb/fetch2/gitsm.py +++ b/poky/bitbake/lib/bb/fetch2/gitsm.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' git submodules implementation @@ -16,18 +14,8 @@ NOTE: Switching a SRC_URI from "git://" to "gitsm://" requires a clean of your r # Copyright (C) 2013 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import bb diff --git a/poky/bitbake/lib/bb/fetch2/hg.py b/poky/bitbake/lib/bb/fetch2/hg.py index 5a2985e16..15d729e7b 100644 --- a/poky/bitbake/lib/bb/fetch2/hg.py +++ b/poky/bitbake/lib/bb/fetch2/hg.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementation for mercurial DRCS (hg). @@ -9,20 +7,10 @@ BitBake 'Fetch' implementation for mercurial DRCS (hg). # Copyright (C) 2004 Marcin Juszkiewicz # Copyright (C) 2007 Robert Schuster # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig +# import os import sys diff --git a/poky/bitbake/lib/bb/fetch2/local.py b/poky/bitbake/lib/bb/fetch2/local.py index a114ac12e..01d9ff9f8 100644 --- a/poky/bitbake/lib/bb/fetch2/local.py +++ b/poky/bitbake/lib/bb/fetch2/local.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementations @@ -10,20 +8,10 @@ BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig +# import os import urllib.request, urllib.parse, urllib.error diff --git a/poky/bitbake/lib/bb/fetch2/npm.py b/poky/bitbake/lib/bb/fetch2/npm.py index 65bf5a364..f08bdee73 100644 --- a/poky/bitbake/lib/bb/fetch2/npm.py +++ b/poky/bitbake/lib/bb/fetch2/npm.py @@ -1,5 +1,6 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- +# +# SPDX-License-Identifier: GPL-2.0-only +# """ BitBake 'Fetch' NPM implementation diff --git a/poky/bitbake/lib/bb/fetch2/osc.py b/poky/bitbake/lib/bb/fetch2/osc.py index 6c60456b5..3e567155d 100644 --- a/poky/bitbake/lib/bb/fetch2/osc.py +++ b/poky/bitbake/lib/bb/fetch2/osc.py @@ -1,5 +1,6 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- +# +# SPDX-License-Identifier: GPL-2.0-only +# """ Bitbake "Fetch" implementation for osc (Opensuse build service client). Based on the svn "Fetch" implementation. diff --git a/poky/bitbake/lib/bb/fetch2/perforce.py b/poky/bitbake/lib/bb/fetch2/perforce.py index 903a8e61a..54d001ec8 100644 --- a/poky/bitbake/lib/bb/fetch2/perforce.py +++ b/poky/bitbake/lib/bb/fetch2/perforce.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementation for perforce @@ -8,18 +6,7 @@ BitBake 'Fetch' implementation for perforce # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2016 Kodak Alaris, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/fetch2/repo.py b/poky/bitbake/lib/bb/fetch2/repo.py index 8c7e81853..2bdbbd409 100644 --- a/poky/bitbake/lib/bb/fetch2/repo.py +++ b/poky/bitbake/lib/bb/fetch2/repo.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake "Fetch" repo (git) implementation @@ -8,20 +6,10 @@ BitBake "Fetch" repo (git) implementation # Copyright (C) 2009 Tom Rini # # Based on git.py which is: -#Copyright (C) 2005 Richard Purdie +# Copyright (C) 2005 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import bb diff --git a/poky/bitbake/lib/bb/fetch2/s3.py b/poky/bitbake/lib/bb/fetch2/s3.py index 162928862..ffca73c8e 100644 --- a/poky/bitbake/lib/bb/fetch2/s3.py +++ b/poky/bitbake/lib/bb/fetch2/s3.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementation for Amazon AWS S3. @@ -13,18 +11,7 @@ The aws tool must be correctly installed and configured prior to use. # Based in part on bb.fetch2.wget: # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/fetch2/sftp.py b/poky/bitbake/lib/bb/fetch2/sftp.py index 81884a6aa..f87f292e5 100644 --- a/poky/bitbake/lib/bb/fetch2/sftp.py +++ b/poky/bitbake/lib/bb/fetch2/sftp.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake SFTP Fetch implementation @@ -44,18 +42,7 @@ SRC_URI = "sftp://user@host.example.com/dir/path.file.txt" # Based in part on bb.fetch2.wget: # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/fetch2/ssh.py b/poky/bitbake/lib/bb/fetch2/ssh.py index 6047ee417..f5be060c4 100644 --- a/poky/bitbake/lib/bb/fetch2/ssh.py +++ b/poky/bitbake/lib/bb/fetch2/ssh.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- ''' BitBake 'Fetch' implementations @@ -29,18 +27,8 @@ IETF secsh internet draft: # Copyright 2003 Holger Schurig # # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re, os from bb.fetch2 import FetchMethod diff --git a/poky/bitbake/lib/bb/fetch2/svn.py b/poky/bitbake/lib/bb/fetch2/svn.py index 9dcf3eb09..baeb0e7ee 100644 --- a/poky/bitbake/lib/bb/fetch2/svn.py +++ b/poky/bitbake/lib/bb/fetch2/svn.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementation for svn. @@ -8,18 +6,7 @@ BitBake 'Fetch' implementation for svn. # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2004 Marcin Juszkiewicz # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/fetch2/wget.py b/poky/bitbake/lib/bb/fetch2/wget.py index 3bb3e3bb0..0f71ee4ea 100644 --- a/poky/bitbake/lib/bb/fetch2/wget.py +++ b/poky/bitbake/lib/bb/fetch2/wget.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'Fetch' implementations @@ -10,18 +8,7 @@ BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig diff --git a/poky/bitbake/lib/bb/main.py b/poky/bitbake/lib/bb/main.py index 41dd3b9e0..8d1978f98 100755 --- a/poky/bitbake/lib/bb/main.py +++ b/poky/bitbake/lib/bb/main.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell @@ -9,18 +7,8 @@ # Copyright (C) 2005 ROAD GmbH # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/bb/methodpool.py b/poky/bitbake/lib/bb/methodpool.py index 49aed3338..51783acc1 100644 --- a/poky/bitbake/lib/bb/methodpool.py +++ b/poky/bitbake/lib/bb/methodpool.py @@ -1,21 +1,8 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # # Copyright (C) 2006 Holger Hans Peter Freyther # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from bb.utils import better_compile, better_exec diff --git a/poky/bitbake/lib/bb/monitordisk.py b/poky/bitbake/lib/bb/monitordisk.py index 2ad1e6156..69b25c772 100644 --- a/poky/bitbake/lib/bb/monitordisk.py +++ b/poky/bitbake/lib/bb/monitordisk.py @@ -1,21 +1,9 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2012 Robert Yang # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os, logging, re, sys import bb diff --git a/poky/bitbake/lib/bb/msg.py b/poky/bitbake/lib/bb/msg.py index 96f077ec4..6216eb3bc 100644 --- a/poky/bitbake/lib/bb/msg.py +++ b/poky/bitbake/lib/bb/msg.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'msg' implementation @@ -9,18 +7,8 @@ Message handling infrastructure for bitbake # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import copy diff --git a/poky/bitbake/lib/bb/namedtuple_with_abc.py b/poky/bitbake/lib/bb/namedtuple_with_abc.py index 32f2fc642..c8e1d55c1 100644 --- a/poky/bitbake/lib/bb/namedtuple_with_abc.py +++ b/poky/bitbake/lib/bb/namedtuple_with_abc.py @@ -1,6 +1,9 @@ # http://code.activestate.com/recipes/577629-namedtupleabc-abstract-base-class-mix-in-for-named/ #!/usr/bin/env python # Copyright (c) 2011 Jan Kaliszewski (zuo). Available under the MIT License. +# +# SPDX-License-Identifier: MIT +# """ namedtuple_with_abc.py: diff --git a/poky/bitbake/lib/bb/parse/__init__.py b/poky/bitbake/lib/bb/parse/__init__.py index 5397d57a5..76e180b41 100644 --- a/poky/bitbake/lib/bb/parse/__init__.py +++ b/poky/bitbake/lib/bb/parse/__init__.py @@ -9,20 +9,10 @@ File parsers for the BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig +# handlers = [] diff --git a/poky/bitbake/lib/bb/parse/ast.py b/poky/bitbake/lib/bb/parse/ast.py index 6d7c80b34..f0911e6fb 100644 --- a/poky/bitbake/lib/bb/parse/ast.py +++ b/poky/bitbake/lib/bb/parse/ast.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ AbstractSyntaxTree classes for the Bitbake language """ @@ -8,19 +6,8 @@ # Copyright (C) 2003, 2004 Phil Blundell # Copyright (C) 2009 Holger Hans Peter Freyther # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import re import string diff --git a/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py b/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py index 9dba5f233..889f230f7 100644 --- a/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py +++ b/poky/bitbake/lib/bb/parse/parse_py/BBHandler.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ class for handling .bb files @@ -12,19 +10,8 @@ # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import re, bb, os import logging @@ -42,7 +29,7 @@ __func_start_regexp__ = re.compile(r"(((?Ppython)|(?Pfakeroot))\s*)*( __inherit_regexp__ = re.compile(r"inherit\s+(.+)" ) __export_func_regexp__ = re.compile(r"EXPORT_FUNCTIONS\s+(.+)" ) __addtask_regexp__ = re.compile(r"addtask\s+(?P\w+)\s*((before\s*(?P((.*(?=after))|(.*))))|(after\s*(?P((.*(?=before))|(.*)))))*") -__deltask_regexp__ = re.compile(r"deltask\s+(?P\w+)") +__deltask_regexp__ = re.compile(r"deltask\s+(?P\w+)(?P.*)") __addhandler_regexp__ = re.compile(r"addhandler\s+(.+)" ) __def_regexp__ = re.compile(r"def\s+(\w+).*:" ) __python_func_regexp__ = re.compile(r"(\s+.*)|(^$)|(^#)" ) @@ -236,11 +223,27 @@ def feeder(lineno, s, fn, root, statements, eof=False): m = __addtask_regexp__.match(s) if m: + if len(m.group().split()) == 2: + # Check and warn for "addtask task1 task2" + m2 = re.match(r"addtask\s+(?P\w+)(?P.*)", s) + if m2 and m2.group('ignores'): + logger.warning('addtask ignored: "%s"' % m2.group('ignores')) + + # Check and warn for "addtask task1 before task2 before task3", the + # similar to "after" + taskexpression = s.split() + for word in ('before', 'after'): + if taskexpression.count(word) > 1: + logger.warning("addtask contained multiple '%s' keywords, only one is supported" % word) + ast.handleAddTask(statements, fn, lineno, m) return m = __deltask_regexp__.match(s) if m: + # Check and warn "for deltask task1 task2" + if m.group('ignores'): + logger.warning('deltask ignored: "%s"' % m.group('ignores')) ast.handleDelTask(statements, fn, lineno, m) return diff --git a/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py index ea49f8ca9..71bf61b76 100644 --- a/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ class for handling configuration data files @@ -11,18 +9,8 @@ # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import errno import re diff --git a/poky/bitbake/lib/bb/parse/parse_py/__init__.py b/poky/bitbake/lib/bb/parse/parse_py/__init__.py index 3e658d0de..cdebe440d 100644 --- a/poky/bitbake/lib/bb/parse/parse_py/__init__.py +++ b/poky/bitbake/lib/bb/parse/parse_py/__init__.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake Parsers @@ -11,20 +9,10 @@ File parsers for the BitBake build tools. # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Based on functions from the base bb module, Copyright 2003 Holger Schurig +# from __future__ import absolute_import from . import ConfHandler diff --git a/poky/bitbake/lib/bb/persist_data.py b/poky/bitbake/lib/bb/persist_data.py index 0d44100f1..de8f87a8b 100644 --- a/poky/bitbake/lib/bb/persist_data.py +++ b/poky/bitbake/lib/bb/persist_data.py @@ -8,18 +8,8 @@ currently, providing a key/value store accessed by 'domain'. # Copyright (C) 2007 Richard Purdie # Copyright (C) 2010 Chris Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import collections import logging diff --git a/poky/bitbake/lib/bb/process.py b/poky/bitbake/lib/bb/process.py index e69697cb6..2dc472a86 100644 --- a/poky/bitbake/lib/bb/process.py +++ b/poky/bitbake/lib/bb/process.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import logging import signal import subprocess diff --git a/poky/bitbake/lib/bb/progress.py b/poky/bitbake/lib/bb/progress.py index f54d1c76f..e9b72e28b 100644 --- a/poky/bitbake/lib/bb/progress.py +++ b/poky/bitbake/lib/bb/progress.py @@ -4,18 +4,8 @@ BitBake progress handling code # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import re diff --git a/poky/bitbake/lib/bb/providers.py b/poky/bitbake/lib/bb/providers.py index f496d84d1..f80963cb4 100644 --- a/poky/bitbake/lib/bb/providers.py +++ b/poky/bitbake/lib/bb/providers.py @@ -1,5 +1,3 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2003, 2004 Chris Larson # Copyright (C) 2003, 2004 Phil Blundell @@ -8,18 +6,8 @@ # Copyright (C) 2005 ROAD GmbH # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re import logging diff --git a/poky/bitbake/lib/bb/remotedata.py b/poky/bitbake/lib/bb/remotedata.py index 68ecffc19..7391e1b45 100644 --- a/poky/bitbake/lib/bb/remotedata.py +++ b/poky/bitbake/lib/bb/remotedata.py @@ -6,18 +6,8 @@ Provides support for using a datastore from the bitbake client # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import bb.data diff --git a/poky/bitbake/lib/bb/runqueue.py b/poky/bitbake/lib/bb/runqueue.py index 329cda33a..d573ed460 100644 --- a/poky/bitbake/lib/bb/runqueue.py +++ b/poky/bitbake/lib/bb/runqueue.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'RunQueue' implementation @@ -9,18 +7,8 @@ Handles preparation and execution of a queue of tasks # Copyright (C) 2006-2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import copy import os @@ -1667,7 +1655,7 @@ class RunQueue: recout = [] if len(hashfiles) == 2: out2 = bb.siggen.compare_sigfiles(hashfiles[hash1], hashfiles[hash2], recursecb) - recout.extend(list(' ' + l for l in out2)) + recout.extend(list(' ' + l for l in out2)) else: recout.append("Unable to find matching sigdata for %s with hashes %s or %s" % (key, hash1, hash2)) diff --git a/poky/bitbake/lib/bb/server/__init__.py b/poky/bitbake/lib/bb/server/__init__.py index 5a3fba968..b6f751318 100644 --- a/poky/bitbake/lib/bb/server/__init__.py +++ b/poky/bitbake/lib/bb/server/__init__.py @@ -5,17 +5,5 @@ # Copyright (C) 2006 - 2008 Richard Purdie # Copyright (C) 2013 Alexandru Damian # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - diff --git a/poky/bitbake/lib/bb/server/process.py b/poky/bitbake/lib/bb/server/process.py index 80a7875ad..f901fe505 100644 --- a/poky/bitbake/lib/bb/server/process.py +++ b/poky/bitbake/lib/bb/server/process.py @@ -3,18 +3,8 @@ # # Copyright (C) 2010 Bob Foerster # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ This module implements a multiprocessing.Process based server for bitbake. diff --git a/poky/bitbake/lib/bb/server/xmlrpcclient.py b/poky/bitbake/lib/bb/server/xmlrpcclient.py index 4661a9e5a..c054c3c89 100644 --- a/poky/bitbake/lib/bb/server/xmlrpcclient.py +++ b/poky/bitbake/lib/bb/server/xmlrpcclient.py @@ -4,18 +4,8 @@ # Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer # Copyright (C) 2006 - 2008 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/bb/server/xmlrpcserver.py b/poky/bitbake/lib/bb/server/xmlrpcserver.py index 875b1282e..54fa32f57 100644 --- a/poky/bitbake/lib/bb/server/xmlrpcserver.py +++ b/poky/bitbake/lib/bb/server/xmlrpcserver.py @@ -4,18 +4,8 @@ # Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer # Copyright (C) 2006 - 2008 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/bb/siggen.py b/poky/bitbake/lib/bb/siggen.py index 09c9c8a25..e0a66e68d 100644 --- a/poky/bitbake/lib/bb/siggen.py +++ b/poky/bitbake/lib/bb/siggen.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import hashlib import logging import os @@ -119,6 +123,12 @@ class SignatureGeneratorBasic(SignatureGenerator): k = fn + "." + task if not ignore_mismatch and k in self.basehash and self.basehash[k] != basehash[k]: bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (k, self.basehash[k], basehash[k])) + bb.error("The following commands may help:") + cmd = "$ bitbake %s -c%s" % (d.getVar('PN'), task) + # Make sure sigdata is dumped before run printdiff + bb.error("%s -Snone" % cmd) + bb.error("Then:") + bb.error("%s -Sprintdiff\n" % cmd) self.basehash[k] = basehash[k] self.taskdeps[fn] = taskdeps @@ -633,6 +643,10 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False): a_taint = a_data.get('taint', None) b_taint = b_data.get('taint', None) if a_taint != b_taint: + if a_taint.startswith('nostamp:'): + a_taint = a_taint.replace('nostamp:', 'nostamp(uuid4):') + if b_taint.startswith('nostamp:'): + b_taint = b_taint.replace('nostamp:', 'nostamp(uuid4):') output.append(color_format("{color_title}Taint (by forced/invalidated task) changed{color_default} from %s to %s") % (a_taint, b_taint)) return output @@ -705,7 +719,11 @@ def dump_sigfile(a): output.append("Hash for dependent task %s is %s" % (dep, a_data['runtaskhashes'][dep])) if 'taint' in a_data: - output.append("Tainted (by forced/invalidated task): %s" % a_data['taint']) + if a_data['taint'].startswith('nostamp:'): + msg = a_data['taint'].replace('nostamp:', 'nostamp(uuid4):') + else: + msg = a_data['taint'] + output.append("Tainted (by forced/invalidated task): %s" % msg) if 'task' in a_data: computed_basehash = calc_basehash(a_data) diff --git a/poky/bitbake/lib/bb/taskdata.py b/poky/bitbake/lib/bb/taskdata.py index 94e822c48..c7de3db38 100644 --- a/poky/bitbake/lib/bb/taskdata.py +++ b/poky/bitbake/lib/bb/taskdata.py @@ -1,6 +1,4 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake 'TaskData' implementation @@ -10,18 +8,8 @@ Task data collection and handling # Copyright (C) 2006 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import logging import re diff --git a/poky/bitbake/lib/bb/tests/codeparser.py b/poky/bitbake/lib/bb/tests/codeparser.py index 3fd76a8f9..826a2d2f6 100644 --- a/poky/bitbake/lib/bb/tests/codeparser.py +++ b/poky/bitbake/lib/bb/tests/codeparser.py @@ -1,23 +1,10 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Test for codeparser.py # # Copyright (C) 2010 Chris Larson # Copyright (C) 2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/cooker.py b/poky/bitbake/lib/bb/tests/cooker.py index 2b4423650..090916e94 100644 --- a/poky/bitbake/lib/bb/tests/cooker.py +++ b/poky/bitbake/lib/bb/tests/cooker.py @@ -1,20 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for cooker.py # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/cow.py b/poky/bitbake/lib/bb/tests/cow.py index d149d84d0..b4af4bbcb 100644 --- a/poky/bitbake/lib/bb/tests/cow.py +++ b/poky/bitbake/lib/bb/tests/cow.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for Copy-on-Write (cow.py) # -# Copyright 2006 Holger Freyther -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# Copyright 2006 Holger Freyther # import unittest diff --git a/poky/bitbake/lib/bb/tests/data.py b/poky/bitbake/lib/bb/tests/data.py index 3c511f214..3cf5abec7 100644 --- a/poky/bitbake/lib/bb/tests/data.py +++ b/poky/bitbake/lib/bb/tests/data.py @@ -1,23 +1,10 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for the Data Store (data.py/data_smart.py) # # Copyright (C) 2010 Chris Larson # Copyright (C) 2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/event.py b/poky/bitbake/lib/bb/tests/event.py index d3a5f6269..b6e40c6ae 100644 --- a/poky/bitbake/lib/bb/tests/event.py +++ b/poky/bitbake/lib/bb/tests/event.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for the Event implementation (event.py) # # Copyright (C) 2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/fetch.py b/poky/bitbake/lib/bb/tests/fetch.py index 429998b34..97656dff6 100644 --- a/poky/bitbake/lib/bb/tests/fetch.py +++ b/poky/bitbake/lib/bb/tests/fetch.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for the Fetcher (fetch2/) # # Copyright (C) 2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/parse.py b/poky/bitbake/lib/bb/tests/parse.py index 1bc47405d..9afd1b208 100644 --- a/poky/bitbake/lib/bb/tests/parse.py +++ b/poky/bitbake/lib/bb/tests/parse.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Test for lib/bb/parse/ # # Copyright (C) 2015 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest @@ -187,3 +174,21 @@ python () { self.assertEqual(d1.getVar("VAR_var"), "B") self.assertEqual(d2.getVar("VAR_var"), None) + addtask_deltask = """ +addtask do_patch after do_foo after do_unpack before do_configure before do_compile +addtask do_fetch do_patch + +deltask do_fetch do_patch +""" + def test_parse_addtask_deltask(self): + import sys + f = self.parsehelper(self.addtask_deltask) + d = bb.parse.handle(f.name, self.d)[''] + + stdout = sys.stdout.getvalue() + self.assertTrue("addtask contained multiple 'before' keywords" in stdout) + self.assertTrue("addtask contained multiple 'after' keywords" in stdout) + self.assertTrue('addtask ignored: " do_patch"' in stdout) + self.assertTrue('deltask ignored: " do_patch"' in stdout) + #self.assertTrue('dependent task do_foo for do_patch does not exist' in stdout) + diff --git a/poky/bitbake/lib/bb/tests/persist_data.py b/poky/bitbake/lib/bb/tests/persist_data.py index 812bcbd7b..f641b5acb 100644 --- a/poky/bitbake/lib/bb/tests/persist_data.py +++ b/poky/bitbake/lib/bb/tests/persist_data.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Test for lib/bb/persist_data/ # # Copyright (C) 2018 Garmin Ltd. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tests/utils.py b/poky/bitbake/lib/bb/tests/utils.py index f1cd83a41..4d788281a 100644 --- a/poky/bitbake/lib/bb/tests/utils.py +++ b/poky/bitbake/lib/bb/tests/utils.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Tests for utils.py # # Copyright (C) 2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import unittest diff --git a/poky/bitbake/lib/bb/tinfoil.py b/poky/bitbake/lib/bb/tinfoil.py index 368264f39..0a1b91305 100644 --- a/poky/bitbake/lib/bb/tinfoil.py +++ b/poky/bitbake/lib/bb/tinfoil.py @@ -4,18 +4,8 @@ # Copyright (C) 2011 Mentor Graphics Corporation # Copyright (C) 2006-2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import logging import os diff --git a/poky/bitbake/lib/bb/ui/__init__.py b/poky/bitbake/lib/bb/ui/__init__.py index a4805ed02..4b7ac36ca 100644 --- a/poky/bitbake/lib/bb/ui/__init__.py +++ b/poky/bitbake/lib/bb/ui/__init__.py @@ -3,15 +3,5 @@ # # Copyright (C) 2006-2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. diff --git a/poky/bitbake/lib/bb/ui/buildinfohelper.py b/poky/bitbake/lib/bb/ui/buildinfohelper.py index 31323d281..f2151c2d4 100644 --- a/poky/bitbake/lib/bb/ui/buildinfohelper.py +++ b/poky/bitbake/lib/bb/ui/buildinfohelper.py @@ -3,18 +3,8 @@ # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import bb diff --git a/poky/bitbake/lib/bb/ui/knotty.py b/poky/bitbake/lib/bb/ui/knotty.py index fa88e6ccd..3d9e2031b 100644 --- a/poky/bitbake/lib/bb/ui/knotty.py +++ b/poky/bitbake/lib/bb/ui/knotty.py @@ -5,18 +5,8 @@ # # Copyright (C) 2006-2012 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from __future__ import division @@ -222,6 +212,23 @@ class TerminalFilter(object): sys.stdout.flush() self.footer_present = False + def elapsed(self, sec): + hrs = int(sec / 3600.0) + sec -= hrs * 3600 + min = int(sec / 60.0) + sec -= min * 60 + if hrs > 0: + return "%dh%dm%ds" % (hrs, min, sec) + elif min > 0: + return "%dm%ds" % (min, sec) + else: + return "%ds" % (sec) + + def keepAlive(self, t): + if not self.cuu: + print("Bitbake still alive (%ds)" % t) + sys.stdout.flush() + def updateFooter(self): if not self.cuu: return @@ -258,7 +265,7 @@ class TerminalFilter(object): else: start_time = activetasks[t].get("starttime", None) if start_time: - tasks.append("%s - %ds (pid %s)" % (activetasks[t]["title"], currenttime - start_time, t)) + tasks.append("%s - %s (pid %s)" % (activetasks[t]["title"], self.elapsed(currenttime - start_time), t)) else: tasks.append("%s (pid %s)" % (activetasks[t]["title"], t)) @@ -455,11 +462,17 @@ def main(server, eventHandler, params, tf = TerminalFilter): warnings = 0 taskfailures = [] + printinterval = 5000 + lastprint = time.time() + termfilter = tf(main, helper, console, errconsole, format, params.options.quiet) atexit.register(termfilter.finish) while True: try: + if (lastprint + printinterval) <= time.time(): + termfilter.keepAlive(printinterval) + printinterval += 5000 event = eventHandler.waitEvent(0) if event is None: if main.shutdown > 1: @@ -488,6 +501,8 @@ def main(server, eventHandler, params, tf = TerminalFilter): continue if isinstance(event, logging.LogRecord): + lastprint = time.time() + printinterval = 5000 if event.levelno >= format.ERROR: errors = errors + 1 return_value = 1 diff --git a/poky/bitbake/lib/bb/ui/ncurses.py b/poky/bitbake/lib/bb/ui/ncurses.py index 8690c529c..c422732b2 100644 --- a/poky/bitbake/lib/bb/ui/ncurses.py +++ b/poky/bitbake/lib/bb/ui/ncurses.py @@ -6,18 +6,8 @@ # Copyright (C) 2006 Michael 'Mickey' Lauer # Copyright (C) 2006-2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ We have the following windows: diff --git a/poky/bitbake/lib/bb/ui/taskexp.py b/poky/bitbake/lib/bb/ui/taskexp.py index 8305d70f4..50a943cd0 100644 --- a/poky/bitbake/lib/bb/ui/taskexp.py +++ b/poky/bitbake/lib/bb/ui/taskexp.py @@ -4,18 +4,8 @@ # Copyright (C) 2007 Ross Burton # Copyright (C) 2007 - 2008 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import gi diff --git a/poky/bitbake/lib/bb/ui/toasterui.py b/poky/bitbake/lib/bb/ui/toasterui.py index 88cec3759..51892c9a0 100644 --- a/poky/bitbake/lib/bb/ui/toasterui.py +++ b/poky/bitbake/lib/bb/ui/toasterui.py @@ -7,18 +7,8 @@ # Copyright (C) 2006-2012 Richard Purdie # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from __future__ import division import time diff --git a/poky/bitbake/lib/bb/ui/uievent.py b/poky/bitbake/lib/bb/ui/uievent.py index 9542b911c..fedb05064 100644 --- a/poky/bitbake/lib/bb/ui/uievent.py +++ b/poky/bitbake/lib/bb/ui/uievent.py @@ -1,22 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer # Copyright (C) 2006 - 2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - """ Use this class to fork off a thread to recieve event callbacks from the bitbake diff --git a/poky/bitbake/lib/bb/ui/uihelper.py b/poky/bitbake/lib/bb/ui/uihelper.py index 963c1ea2d..db7f0ca08 100644 --- a/poky/bitbake/lib/bb/ui/uihelper.py +++ b/poky/bitbake/lib/bb/ui/uihelper.py @@ -1,21 +1,9 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (C) 2006 - 2007 Michael 'Mickey' Lauer # Copyright (C) 2006 - 2007 Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import bb.build import time diff --git a/poky/bitbake/lib/bb/utils.py b/poky/bitbake/lib/bb/utils.py index d186b1fa2..ed19825fa 100644 --- a/poky/bitbake/lib/bb/utils.py +++ b/poky/bitbake/lib/bb/utils.py @@ -1,23 +1,11 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- """ BitBake Utility Functions """ # Copyright (C) 2004 Michael Lauer # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re, fcntl, os, string, stat, shutil, time import sys @@ -734,7 +722,7 @@ def mkdirhier(directory): try: os.makedirs(directory) except OSError as e: - if e.errno != errno.EEXIST: + if e.errno != errno.EEXIST or not os.path.isdir(directory): raise e def movefile(src, dest, newmtime = None, sstat = None): diff --git a/poky/bitbake/lib/bblayers/__init__.py b/poky/bitbake/lib/bblayers/__init__.py index 3ad9513f4..4e7c09da0 100644 --- a/poky/bitbake/lib/bblayers/__init__.py +++ b/poky/bitbake/lib/bblayers/__init__.py @@ -1,2 +1,6 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from pkgutil import extend_path __path__ = extend_path(__path__, __name__) diff --git a/poky/bitbake/lib/bblayers/action.py b/poky/bitbake/lib/bblayers/action.py index a3f658f93..d6459d661 100644 --- a/poky/bitbake/lib/bblayers/action.py +++ b/poky/bitbake/lib/bblayers/action.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import fnmatch import logging import os diff --git a/poky/bitbake/lib/bblayers/common.py b/poky/bitbake/lib/bblayers/common.py index 98515ced4..c5657d381 100644 --- a/poky/bitbake/lib/bblayers/common.py +++ b/poky/bitbake/lib/bblayers/common.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import argparse import logging import os diff --git a/poky/bitbake/lib/bblayers/layerindex.py b/poky/bitbake/lib/bblayers/layerindex.py index b2ff2268e..57cd9027f 100644 --- a/poky/bitbake/lib/bblayers/layerindex.py +++ b/poky/bitbake/lib/bblayers/layerindex.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import layerindexlib import argparse diff --git a/poky/bitbake/lib/bblayers/query.py b/poky/bitbake/lib/bblayers/query.py index 9294dfa88..993589de9 100644 --- a/poky/bitbake/lib/bblayers/query.py +++ b/poky/bitbake/lib/bblayers/query.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import collections import fnmatch import logging diff --git a/poky/bitbake/lib/hashserv/__init__.py b/poky/bitbake/lib/hashserv/__init__.py index 46bca7cab..fdc9ced9f 100644 --- a/poky/bitbake/lib/hashserv/__init__.py +++ b/poky/bitbake/lib/hashserv/__init__.py @@ -1,17 +1,7 @@ # Copyright (C) 2018 Garmin Ltd. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from http.server import BaseHTTPRequestHandler, HTTPServer import contextlib diff --git a/poky/bitbake/lib/hashserv/tests.py b/poky/bitbake/lib/hashserv/tests.py index 806b54c5e..8300a2559 100644 --- a/poky/bitbake/lib/hashserv/tests.py +++ b/poky/bitbake/lib/hashserv/tests.py @@ -2,18 +2,8 @@ # # Copyright (C) 2018 Garmin Ltd. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import unittest import threading diff --git a/poky/bitbake/lib/layerindexlib/__init__.py b/poky/bitbake/lib/layerindexlib/__init__.py index cb79cb37d..d231cf6a9 100644 --- a/poky/bitbake/lib/layerindexlib/__init__.py +++ b/poky/bitbake/lib/layerindexlib/__init__.py @@ -1,17 +1,7 @@ # Copyright (C) 2016-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import datetime diff --git a/poky/bitbake/lib/layerindexlib/cooker.py b/poky/bitbake/lib/layerindexlib/cooker.py index 848f0e2ee..604a9611d 100644 --- a/poky/bitbake/lib/layerindexlib/cooker.py +++ b/poky/bitbake/lib/layerindexlib/cooker.py @@ -1,17 +1,7 @@ # Copyright (C) 2016-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import logging import json diff --git a/poky/bitbake/lib/layerindexlib/plugin.py b/poky/bitbake/lib/layerindexlib/plugin.py index 92a2e978b..7015a1af2 100644 --- a/poky/bitbake/lib/layerindexlib/plugin.py +++ b/poky/bitbake/lib/layerindexlib/plugin.py @@ -1,18 +1,7 @@ # Copyright (C) 2016-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - # The file contains: # LayerIndex exceptions # Plugin base class diff --git a/poky/bitbake/lib/layerindexlib/restapi.py b/poky/bitbake/lib/layerindexlib/restapi.py index d08eb2055..21fd14414 100644 --- a/poky/bitbake/lib/layerindexlib/restapi.py +++ b/poky/bitbake/lib/layerindexlib/restapi.py @@ -1,17 +1,7 @@ # Copyright (C) 2016-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import logging import json diff --git a/poky/bitbake/lib/layerindexlib/tests/common.py b/poky/bitbake/lib/layerindexlib/tests/common.py index 22a54585c..077382f11 100644 --- a/poky/bitbake/lib/layerindexlib/tests/common.py +++ b/poky/bitbake/lib/layerindexlib/tests/common.py @@ -1,17 +1,7 @@ # Copyright (C) 2017-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import unittest import tempfile diff --git a/poky/bitbake/lib/layerindexlib/tests/cooker.py b/poky/bitbake/lib/layerindexlib/tests/cooker.py index fdbf09110..1fa102e60 100644 --- a/poky/bitbake/lib/layerindexlib/tests/cooker.py +++ b/poky/bitbake/lib/layerindexlib/tests/cooker.py @@ -1,17 +1,7 @@ # Copyright (C) 2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import unittest import tempfile diff --git a/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py b/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py index e2fbb950b..0c5ec8881 100644 --- a/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py +++ b/poky/bitbake/lib/layerindexlib/tests/layerindexobj.py @@ -1,17 +1,7 @@ # Copyright (C) 2017-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import unittest import tempfile diff --git a/poky/bitbake/lib/layerindexlib/tests/restapi.py b/poky/bitbake/lib/layerindexlib/tests/restapi.py index 58766950c..6d8dc0058 100644 --- a/poky/bitbake/lib/layerindexlib/tests/restapi.py +++ b/poky/bitbake/lib/layerindexlib/tests/restapi.py @@ -1,17 +1,7 @@ # Copyright (C) 2017-2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import unittest import tempfile diff --git a/poky/bitbake/lib/progressbar/__init__.py b/poky/bitbake/lib/progressbar/__init__.py index fbab744ee..c545a6275 100644 --- a/poky/bitbake/lib/progressbar/__init__.py +++ b/poky/bitbake/lib/progressbar/__init__.py @@ -4,6 +4,8 @@ # progressbar - Text progress bar library for Python. # Copyright (c) 2005 Nilton Volpato # +# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear +# # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either diff --git a/poky/bitbake/lib/progressbar/compat.py b/poky/bitbake/lib/progressbar/compat.py index a39f4a1f4..9804e0b51 100644 --- a/poky/bitbake/lib/progressbar/compat.py +++ b/poky/bitbake/lib/progressbar/compat.py @@ -3,6 +3,8 @@ # progressbar - Text progress bar library for Python. # Copyright (c) 2005 Nilton Volpato # +# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear +# # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either diff --git a/poky/bitbake/lib/progressbar/progressbar.py b/poky/bitbake/lib/progressbar/progressbar.py index 2873ad6ca..e2b6ba108 100644 --- a/poky/bitbake/lib/progressbar/progressbar.py +++ b/poky/bitbake/lib/progressbar/progressbar.py @@ -5,6 +5,8 @@ # # (With some small changes after importing into BitBake) # +# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear +# # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either diff --git a/poky/bitbake/lib/progressbar/widgets.py b/poky/bitbake/lib/progressbar/widgets.py index 77285ca7a..0772aa536 100644 --- a/poky/bitbake/lib/progressbar/widgets.py +++ b/poky/bitbake/lib/progressbar/widgets.py @@ -3,6 +3,8 @@ # progressbar - Text progress bar library for Python. # Copyright (c) 2005 Nilton Volpato # +# SPDX-License-Identifier: LGPL-2.1-or-later OR BSD-3-Clause-Clear +# # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either diff --git a/poky/bitbake/lib/prserv/__init__.py b/poky/bitbake/lib/prserv/__init__.py index c3cb73ad9..9961040b5 100644 --- a/poky/bitbake/lib/prserv/__init__.py +++ b/poky/bitbake/lib/prserv/__init__.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + __version__ = "1.0.0" import os, time diff --git a/poky/bitbake/lib/prserv/db.py b/poky/bitbake/lib/prserv/db.py index 495d09f39..d6188a679 100644 --- a/poky/bitbake/lib/prserv/db.py +++ b/poky/bitbake/lib/prserv/db.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import logging import os.path import errno diff --git a/poky/bitbake/lib/prserv/serv.py b/poky/bitbake/lib/prserv/serv.py index 6a99728c4..be3acec36 100644 --- a/poky/bitbake/lib/prserv/serv.py +++ b/poky/bitbake/lib/prserv/serv.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import os,sys,logging import signal, time from xmlrpc.server import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler diff --git a/poky/bitbake/lib/pyinotify.py b/poky/bitbake/lib/pyinotify.py index 4eb03b092..9dcfd0d2e 100644 --- a/poky/bitbake/lib/pyinotify.py +++ b/poky/bitbake/lib/pyinotify.py @@ -3,23 +3,8 @@ # pyinotify.py - python interface to inotify # Copyright (c) 2005-2015 Sebastien Martini # -# Permission is hereby granted, free of charge, to any person obtaining a copy -# of this software and associated documentation files (the "Software"), to deal -# in the Software without restriction, including without limitation the rights -# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -# copies of the Software, and to permit persons to whom the Software is -# furnished to do so, subject to the following conditions: +# SPDX-License-Identifier: MIT # -# The above copyright notice and this permission notice shall be included in -# all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -# THE SOFTWARE. """ pyinotify diff --git a/poky/bitbake/lib/toaster/bldcollector/admin.py b/poky/bitbake/lib/toaster/bldcollector/admin.py index 1f2e07f50..feaa888c7 100644 --- a/poky/bitbake/lib/toaster/bldcollector/admin.py +++ b/poky/bitbake/lib/toaster/bldcollector/admin.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.contrib import admin from orm.models import BitbakeVersion, Release, ToasterSetting, Layer_Version from django import forms diff --git a/poky/bitbake/lib/toaster/bldcollector/urls.py b/poky/bitbake/lib/toaster/bldcollector/urls.py index 888175d0a..8eb1e34a5 100644 --- a/poky/bitbake/lib/toaster/bldcollector/urls.py +++ b/poky/bitbake/lib/toaster/bldcollector/urls.py @@ -3,19 +3,8 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - from django.conf.urls import include, url diff --git a/poky/bitbake/lib/toaster/bldcollector/views.py b/poky/bitbake/lib/toaster/bldcollector/views.py index f32fa4d22..c708b415e 100644 --- a/poky/bitbake/lib/toaster/bldcollector/views.py +++ b/poky/bitbake/lib/toaster/bldcollector/views.py @@ -3,18 +3,8 @@ # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.views.decorators.cache import cache_control from django.core.urlresolvers import reverse diff --git a/poky/bitbake/lib/toaster/bldcontrol/admin.py b/poky/bitbake/lib/toaster/bldcontrol/admin.py index fcbe5f593..e85c30ed1 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/admin.py +++ b/poky/bitbake/lib/toaster/bldcontrol/admin.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.contrib import admin from django.contrib.admin.filters import RelatedFieldListFilter from .models import BuildEnvironment diff --git a/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py b/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py index 5195600d9..301df1880 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py +++ b/poky/bitbake/lib/toaster/bldcontrol/bbcontroller.py @@ -1,24 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import os import sys diff --git a/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py b/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py index 949063593..39ea736b5 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py +++ b/poky/bitbake/lib/toaster/bldcontrol/localhostbecontroller.py @@ -1,24 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import os import sys diff --git a/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py b/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py index 14298d9da..fe2c4dc2b 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py +++ b/poky/bitbake/lib/toaster/bldcontrol/management/commands/checksettings.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.core.management.base import BaseCommand, CommandError from django.db import transaction diff --git a/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py b/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py index 6a55dd46c..50ec40986 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py +++ b/poky/bitbake/lib/toaster/bldcontrol/management/commands/runbuilds.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.core.management.base import BaseCommand from django.db import transaction from django.db.models import Q diff --git a/poky/bitbake/lib/toaster/bldcontrol/models.py b/poky/bitbake/lib/toaster/bldcontrol/models.py index 409614b9e..bcffcf5e2 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/models.py +++ b/poky/bitbake/lib/toaster/bldcontrol/models.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from __future__ import unicode_literals from django.db import models from django.core.validators import MaxValueValidator, MinValueValidator diff --git a/poky/bitbake/lib/toaster/bldcontrol/views.py b/poky/bitbake/lib/toaster/bldcontrol/views.py index 60f00ef0e..286d88b45 100644 --- a/poky/bitbake/lib/toaster/bldcontrol/views.py +++ b/poky/bitbake/lib/toaster/bldcontrol/views.py @@ -1 +1,5 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + # Create your views here. diff --git a/poky/bitbake/lib/toaster/manage.py b/poky/bitbake/lib/toaster/manage.py index 0c7ea5088..ae32619d1 100755 --- a/poky/bitbake/lib/toaster/manage.py +++ b/poky/bitbake/lib/toaster/manage.py @@ -1,4 +1,8 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# + import os import sys diff --git a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml index a37c66462..bd9c32685 100644 --- a/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml +++ b/poky/bitbake/lib/toaster/orm/fixtures/oe-core.xml @@ -8,9 +8,9 @@ - sumo + warrior git://git.openembedded.org/bitbake - 1.38 + 1.42 HEAD @@ -30,11 +30,11 @@ - sumo - Openembedded Sumo + warrior + Openembedded Warrior 1 - sumo - Toaster will run your builds using the tip of the <a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=sumo\">OpenEmbedded Sumo</a> branch. + warrior + Toaster will run your builds using the tip of the <a href=\"http://cgit.openembedded.org/openembedded-core/log/?h=warrior\">OpenEmbedded Warrior</a> branch. local diff --git a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml index 482efaf0f..4162e4fba 100644 --- a/poky/bitbake/lib/toaster/orm/fixtures/poky.xml +++ b/poky/bitbake/lib/toaster/orm/fixtures/poky.xml @@ -8,9 +8,9 @@ - sumo + warrior git://git.yoctoproject.org/poky - sumo + warrior bitbake @@ -35,11 +35,11 @@ - sumo - Yocto Project 2.5 "Sumo" + warrior + Yocto Project 2.7 "Warrior" 1 - sumo - Toaster will run your builds using the tip of the <a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=sumo">Yocto Project Sumo branch</a>. + warrior + Toaster will run your builds using the tip of the <a href="http://git.yoctoproject.org/cgit/cgit.cgi/poky/log/?h=warrior">Yocto Project Warrior branch</a>. local @@ -130,7 +130,7 @@ 1 0 1 - sumo + warrior meta @@ -168,7 +168,7 @@ 2 0 1 - sumo + warrior meta-poky @@ -206,7 +206,7 @@ 3 0 1 - sumo + warrior meta-yocto-bsp diff --git a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py index 66114ff89..5b5abbb29 100644 --- a/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py +++ b/poky/bitbake/lib/toaster/orm/management/commands/lsupdates.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2016-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.management.base import BaseCommand diff --git a/poky/bitbake/lib/toaster/orm/models.py b/poky/bitbake/lib/toaster/orm/models.py index 772029021..41a9f819d 100644 --- a/poky/bitbake/lib/toaster/orm/models.py +++ b/poky/bitbake/lib/toaster/orm/models.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from __future__ import unicode_literals diff --git a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py index 08711e455..6d9bb8092 100644 --- a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py +++ b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers.py @@ -1,23 +1,10 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # The Wait class and some of SeleniumDriverHelper and SeleniumTestCase are # modified from Patchwork, released under the same licence terms as Toaster: diff --git a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py index 156d639b1..8417aa3b2 100644 --- a/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py +++ b/poky/bitbake/lib/toaster/tests/browser/selenium_helpers_base.py @@ -1,23 +1,10 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # The Wait class and some of SeleniumDriverHelper and SeleniumTestCase are # modified from Patchwork, released under the same licence terms as Toaster: diff --git a/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py b/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py index b86f29bdd..f4021614b 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_all_builds_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re diff --git a/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py b/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py index 44da64075..f86d19d28 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_all_projects_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py index f8ccb5452..53c125ec5 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py index 1c627ad49..c560d7de1 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_artifacts.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py index ed18324e5..e4f3d685e 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_recipes.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py index da50f1601..bdb0c27be 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_builddashboard_page_tasks.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py b/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py index 3c0b96252..63f3f4a74 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_js_unit_tests.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ Run the js unit tests diff --git a/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py b/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py index 4d4cd660f..0a00fccc1 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_landing_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # -# Copyright (C) 2013-2016 Intel Corporation -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Copyright (C) 2013-2016 Intel Corporation # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py b/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py index f24fb093a..e34aa13db 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_layerdetails_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # -# Copyright (C) 2013-2016 Intel Corporation -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Copyright (C) 2013-2016 Intel Corporation # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from tests.browser.selenium_helpers import SeleniumTestCase diff --git a/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py b/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py index abc0b0bc8..d52b18429 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_most_recent_builds_states.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # -# Copyright (C) 2013-2016 Intel Corporation -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# Copyright (C) 2013-2016 Intel Corporation # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py b/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py index ab5a8e66b..3b47a497e 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_new_custom_image_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from tests.browser.selenium_helpers import SeleniumTestCase diff --git a/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py b/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py index 77e5f1526..d250bd143 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_new_project_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from tests.browser.selenium_helpers import SeleniumTestCase diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py index 9fe91ab06..065f3ebe6 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_project_builds_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py index 071008499..48508dff3 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_project_config_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re diff --git a/poky/bitbake/lib/toaster/tests/browser/test_project_page.py b/poky/bitbake/lib/toaster/tests/browser/test_project_page.py index 018646332..5cb607ddd 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_project_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_project_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_sample.py b/poky/bitbake/lib/toaster/tests/browser/test_sample.py index 20ec53c28..008ba14a2 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_sample.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_sample.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """ A small example test demonstrating the basics of writing a test with diff --git a/poky/bitbake/lib/toaster/tests/browser/test_task_page.py b/poky/bitbake/lib/toaster/tests/browser/test_task_page.py index 690d116cb..47c8c1aee 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_task_page.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_task_page.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.core.urlresolvers import reverse from django.utils import timezone diff --git a/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py b/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py index 53ddf30c3..b4f83447f 100644 --- a/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py +++ b/poky/bitbake/lib/toaster/tests/browser/test_toastertable_ui.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from datetime import datetime diff --git a/poky/bitbake/lib/toaster/tests/builds/buildtest.py b/poky/bitbake/lib/toaster/tests/builds/buildtest.py index 5a56a110a..9f40f978d 100644 --- a/poky/bitbake/lib/toaster/tests/builds/buildtest.py +++ b/poky/bitbake/lib/toaster/tests/builds/buildtest.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys diff --git a/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py b/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py index 586f4a8f7..3d3aa2a8a 100644 --- a/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py +++ b/poky/bitbake/lib/toaster/tests/builds/test_core_image_min.py @@ -1,24 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - # Tests were part of openembedded-core oe selftest Authored by: Lucian Musat # Ionut Chisanovici, Paul Eggleton and Cristian Iorga diff --git a/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py b/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py index 951f6ff5a..b633d9774 100644 --- a/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py +++ b/poky/bitbake/lib/toaster/tests/commands/test_loaddata.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.test import TestCase from django.core import management diff --git a/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py b/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py index 49897a476..23a84a248 100644 --- a/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py +++ b/poky/bitbake/lib/toaster/tests/commands/test_lsupdates.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.test import TestCase from django.core import management diff --git a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py index 3e634835e..29bc7c900 100644 --- a/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py +++ b/poky/bitbake/lib/toaster/tests/commands/test_runbuilds.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os diff --git a/poky/bitbake/lib/toaster/tests/db/test_db.py b/poky/bitbake/lib/toaster/tests/db/test_db.py index a0f5f6ec0..041042227 100644 --- a/poky/bitbake/lib/toaster/tests/db/test_db.py +++ b/poky/bitbake/lib/toaster/tests/db/test_db.py @@ -2,6 +2,8 @@ # # Copyright (c) 2016 Damien Lespiau # +# SPDX-License-Identifier: MIT +# # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to deal # in the Software without restriction, including without limitation the rights diff --git a/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py b/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py index 695661947..3606cba4f 100644 --- a/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py +++ b/poky/bitbake/lib/toaster/tests/eventreplay/__init__.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # Tests were part of openembedded-core oe selftest Authored by: Lucian Musat # Ionut Chisanovici, Paul Eggleton and Cristian Iorga diff --git a/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py b/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py index 486078a61..6a3f74baa 100644 --- a/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py +++ b/poky/bitbake/lib/toaster/tests/functional/functional_helpers.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster functional tests implementation # # Copyright (C) 2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import logging diff --git a/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py b/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py index cfa2b0fdf..2b3a2886c 100644 --- a/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py +++ b/poky/bitbake/lib/toaster/tests/functional/test_functional_basic.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster functional tests implementation # # Copyright (C) 2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import time import re diff --git a/poky/bitbake/lib/toaster/tests/views/test_views.py b/poky/bitbake/lib/toaster/tests/views/test_views.py index 1463077e9..477654ea5 100644 --- a/poky/bitbake/lib/toaster/tests/views/test_views.py +++ b/poky/bitbake/lib/toaster/tests/views/test_views.py @@ -1,23 +1,11 @@ #! /usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2013-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Test cases for Toaster GUI and ReST.""" diff --git a/poky/bitbake/lib/toaster/toastergui/api.py b/poky/bitbake/lib/toaster/toastergui/api.py index 564d595a1..8b49b3ee3 100644 --- a/poky/bitbake/lib/toaster/toastergui/api.py +++ b/poky/bitbake/lib/toaster/toastergui/api.py @@ -3,19 +3,8 @@ # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - # Please run flake8 on this file before sending patches import os diff --git a/poky/bitbake/lib/toaster/toastergui/buildtables.py b/poky/bitbake/lib/toaster/toastergui/buildtables.py index 755a7c2e4..327059d00 100644 --- a/poky/bitbake/lib/toaster/toastergui/buildtables.py +++ b/poky/bitbake/lib/toaster/toastergui/buildtables.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from orm.models import Build, Task, Target, Package from django.db.models import Q, Sum diff --git a/poky/bitbake/lib/toaster/toastergui/tablefilter.py b/poky/bitbake/lib/toaster/toastergui/tablefilter.py index 65454e140..ffef7955f 100644 --- a/poky/bitbake/lib/toaster/toastergui/tablefilter.py +++ b/poky/bitbake/lib/toaster/toastergui/tablefilter.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.db.models import Q, Max, Min from django.utils import dateparse, timezone diff --git a/poky/bitbake/lib/toaster/toastergui/tables.py b/poky/bitbake/lib/toaster/toastergui/tables.py index 9ff756bc8..b3ea2227e 100644 --- a/poky/bitbake/lib/toaster/toastergui/tables.py +++ b/poky/bitbake/lib/toaster/toastergui/tables.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from toastergui.widgets import ToasterTable from orm.models import Recipe, ProjectLayer, Layer_Version, Machine, Project diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py b/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py index 5a73af797..eb483396c 100644 --- a/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py +++ b/poky/bitbake/lib/toaster/toastergui/templatetags/field_values_filter.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django import template register = template.Library() diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py b/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py index 0dcc7d271..048d53387 100644 --- a/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py +++ b/poky/bitbake/lib/toaster/toastergui/templatetags/objects_to_dictionaries_filter.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django import template import json diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py b/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py index 04770ac6a..71e092578 100644 --- a/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py +++ b/poky/bitbake/lib/toaster/toastergui/templatetags/project_url_tag.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django import template from django.core.urlresolvers import reverse diff --git a/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py b/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py index b170a1616..1dbab3bdb 100644 --- a/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py +++ b/poky/bitbake/lib/toaster/toastergui/templatetags/projecttags.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from datetime import datetime, timedelta from os.path import relpath diff --git a/poky/bitbake/lib/toaster/toastergui/typeaheads.py b/poky/bitbake/lib/toaster/toastergui/typeaheads.py index 5aa0f8d88..fd750ffb7 100644 --- a/poky/bitbake/lib/toaster/toastergui/typeaheads.py +++ b/poky/bitbake/lib/toaster/toastergui/typeaheads.py @@ -3,18 +3,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import subprocess diff --git a/poky/bitbake/lib/toaster/toastergui/urls.py b/poky/bitbake/lib/toaster/toastergui/urls.py index dc03e3035..673d9ae96 100644 --- a/poky/bitbake/lib/toaster/toastergui/urls.py +++ b/poky/bitbake/lib/toaster/toastergui/urls.py @@ -3,18 +3,8 @@ # # Copyright (C) 2013-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.conf.urls import include, url from django.views.generic import RedirectView, TemplateView diff --git a/poky/bitbake/lib/toaster/toastergui/views.py b/poky/bitbake/lib/toaster/toastergui/views.py index c712b06a6..d7acaff89 100644 --- a/poky/bitbake/lib/toaster/toastergui/views.py +++ b/poky/bitbake/lib/toaster/toastergui/views.py @@ -1,24 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - import re diff --git a/poky/bitbake/lib/toaster/toastergui/widgets.py b/poky/bitbake/lib/toaster/toastergui/widgets.py index db5c3aa00..645f4587e 100644 --- a/poky/bitbake/lib/toaster/toastergui/widgets.py +++ b/poky/bitbake/lib/toaster/toastergui/widgets.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.views.generic import View, TemplateView from django.views.decorators.cache import cache_control diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py b/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py index bf69a8fb8..c2d773a57 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/builddelete.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.core.management.base import BaseCommand, CommandError from django.core.exceptions import ObjectDoesNotExist from orm.models import Build diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py index 2d57ab557..408ad44e6 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/buildimport.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2018 Wind River Systems # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # buildimport: import a project for project specific configuration # diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py b/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py index 70b5812d9..1ed20224d 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/buildslist.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.core.management.base import BaseCommand, CommandError from orm.models import Build import os diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py b/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py index 0399b8659..c1758f340 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/checksocket.py @@ -1,23 +1,11 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # BitBake Toaster Implementation # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Custom management command checksocket.""" diff --git a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py index 6b450bbdf..7d629fb37 100644 --- a/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py +++ b/poky/bitbake/lib/toaster/toastermain/management/commands/perf.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + from django.core.management.base import BaseCommand from django.test.client import Client import os, sys, re diff --git a/poky/bitbake/lib/toaster/toastermain/settings.py b/poky/bitbake/lib/toaster/toastermain/settings.py index 13541d380..74501fa26 100644 --- a/poky/bitbake/lib/toaster/toastermain/settings.py +++ b/poky/bitbake/lib/toaster/toastermain/settings.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # Django settings for Toaster project. diff --git a/poky/bitbake/lib/toaster/toastermain/settings_production_example.py b/poky/bitbake/lib/toaster/toastermain/settings_production_example.py index 61a288864..6cd0f52dd 100644 --- a/poky/bitbake/lib/toaster/toastermain/settings_production_example.py +++ b/poky/bitbake/lib/toaster/toastermain/settings_production_example.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # See Django documentation for more information about deployment # https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/ diff --git a/poky/bitbake/lib/toaster/toastermain/settings_test.py b/poky/bitbake/lib/toaster/toastermain/settings_test.py index a32271157..6538d9e45 100644 --- a/poky/bitbake/lib/toaster/toastermain/settings_test.py +++ b/poky/bitbake/lib/toaster/toastermain/settings_test.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # Django settings for Toaster project. diff --git a/poky/bitbake/lib/toaster/toastermain/urls.py b/poky/bitbake/lib/toaster/toastermain/urls.py index e2fb0aebf..ac77bc363 100644 --- a/poky/bitbake/lib/toaster/toastermain/urls.py +++ b/poky/bitbake/lib/toaster/toastermain/urls.py @@ -1,23 +1,10 @@ # -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # BitBake Toaster Implementation # # Copyright (C) 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. from django.conf.urls import include, url from django.views.generic import RedirectView, TemplateView diff --git a/poky/bitbake/lib/toaster/toastermain/wsgi.py b/poky/bitbake/lib/toaster/toastermain/wsgi.py index 031b314b1..4c3128327 100644 --- a/poky/bitbake/lib/toaster/toastermain/wsgi.py +++ b/poky/bitbake/lib/toaster/toastermain/wsgi.py @@ -1,7 +1,8 @@ -""" -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # +# SPDX-License-Identifier: GPL-2.0-only +# + +""" WSGI config for Toaster project. This module contains the WSGI application used by Django's development server diff --git a/poky/documentation/Makefile b/poky/documentation/Makefile index 1480e14ea..accf23414 100644 --- a/poky/documentation/Makefile +++ b/poky/documentation/Makefile @@ -4,24 +4,17 @@ # in any manuals must be .PNG files and live in the individual book's figures # directory as well as in the figures directory for the mega-manual. # -# Some manuals are available as linked help through the Eclipse development -# system. These manuals also include an "eclipse" sub-directory as part of -# the make process. -# # Note that the figures for the Yocto Project Development Tasks Manual # differ depending on the BRANCH being built. # # The Makefile has these targets: # all: If you leave off the target then "all" is implied. -# You will generate HTML, eclipse help (if applicable), -# and a tarball of files. +# You will generate HTML and a tarball of files. # # pdf: generates a PDF version of a manual. Not valid for the # Quick Start or the mega-manual (single, large HTML file # comprised of all Yocto Project manuals). # html: generates an HTML version of a manual. -# eclipse: generates an HTML version of a manual that can be used as -# eclipse help (including necessary metadata files). # tarball: creates a tarball for the doc files. # validate: validates # publish: pushes generated files to the Yocto Project website @@ -53,13 +46,13 @@ # make DOC=dev-manual BRANCH=edison # make DOC=mega-manual BRANCH=denzil # -# The first example generates the HTML and Eclipse help versions of the BSP Guide. +# The first example generates the HTML version of the BSP Guide. # The second example generates the HTML version only of the Quick Start. Note # that the Quick Start only has an HTML version available. So, the # 'make DOC=brief-yoctoprojectqs' command would be equivalent. The third example # generates just the PDF version of the Yocto Project Reference Manual. -# The fourth example generates the HTML 'edison' version and (if available) -# the Eclipse help version of the YP Development Tasks Manual. The last example +# The fourth example generates the HTML 'edison' version of the YP Development +# Tasks Manual. The last example # generates the HTML version of the mega-manual and uses the 'denzil' # branch when choosing figures for the tarball of figures. Any example that does # not use the BRANCH argument builds the current version of the manual set. @@ -67,7 +60,7 @@ # The publish target pushes the generated manuals to the Yocto Project # website. Unless you are a developer on the YP team, you will not succeed in # pushing manuals to this server. All files needed for the manual's HTML form are -# pushed as well as applicable Eclipse versions. +# pushed. # # Examples: # @@ -90,10 +83,10 @@ XSLTOPTS = --stringparam html.stylesheet brief-yoctoprojectqs-style.css \ --stringparam section.autolabel 0 \ --stringparam section.label.includes.component.label 0 \ --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = brief-yoctoprojectqs-style.css brief-yoctoprojectqs.html figures/bypqs-title.png \ figures/yocto-project-transp.png -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css @@ -101,7 +94,7 @@ endif ifeq ($(DOC),overview-manual) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = overview-manual-style.css overview-manual.html figures/overview-manual-title.png \ figures/git-workflow.png figures/source-repos.png figures/index-downloads.png \ figures/yp-download.png figures/YP-flow-diagram.png figures/key-dev-elements.png \ @@ -110,9 +103,8 @@ TARFILES = overview-manual-style.css overview-manual.html figures/overview-manua figures/package-feeds.png figures/patching.png figures/source-fetching.png \ figures/configuration-compile-autoreconf.png figures/analysis-for-package-splitting.png \ figures/image-generation.png figures/sdk-generation.png figures/images.png \ - figures/sdk.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/sdk.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css @@ -120,11 +112,10 @@ endif ifeq ($(DOC),bsp-guide) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = bsp-style.css bsp-guide.html figures/bsp-title.png \ - figures/bsp-dev-flow.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/bsp-dev-flow.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css @@ -132,7 +123,7 @@ endif ifeq ($(DOC),dev-manual) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball # # Note that the tarfile might produce the "Cannot stat: No such file or # directory" error message for .PNG files that are not present when building @@ -165,11 +156,10 @@ TARFILES = dev-style.css dev-manual.html \ TARFILES = dev-style.css dev-manual.html figures/buildhistory-web.png \ figures/dev-title.png figures/buildhistory.png \ figures/recipe-workflow.png figures/bitbake-build-flow.png \ - figures/multiconfig_files.png \ - eclipse + figures/multiconfig_files.png endif -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css @@ -230,7 +220,7 @@ TARFILES = mega-manual.html mega-style.css \ figures/profile-title.png figures/kernelshark-all.png \ figures/kernelshark-choose-events.png \ figures/kernelshark-i915-display.png \ - figures/kernelshark-output-display.png figures/lttngmain0.png \ + figures/kernelshark-output-display.png \ figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \ figures/oprofileui-downloading.png figures/oprofileui-processes.png \ figures/perf-probe-do_fork-profile.png \ @@ -267,7 +257,7 @@ TARFILES = mega-manual.html mega-style.css \ figures/compatible-layers.png figures/import-layer.png figures/new-project.png \ figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \ figures/sdk-devtool-add-flow.png figures/sdk-installed-extensible-sdk-directory.png \ - figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \ + figures/sdk-devtool-modify-flow.png \ figures/sdk-devtool-upgrade-flow.png figures/bitbake-build-flow.png figures/bypqs-title.png \ figures/overview-manual-title.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \ figures/bb_multiconfig_files.png figures/bitbake-title.png @@ -281,37 +271,35 @@ endif ifeq ($(DOC),ref-manual) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = ref-manual.html ref-style.css figures/poky-title.png \ - figures/build-workspace-directory.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/build-workspace-directory.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css endif ifeq ($(DOC),sdk-manual) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = sdk-manual.html sdk-style.css figures/sdk-title.png \ figures/sdk-environment.png figures/sdk-installed-standard-sdk-directory.png \ figures/sdk-installed-extensible-sdk-directory.png figures/sdk-devtool-add-flow.png \ - figures/sdk-devtool-modify-flow.png figures/sdk-eclipse-dev-flow.png \ - figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/sdk-devtool-modify-flow.png \ + figures/sdk-devtool-upgrade-flow.png figures/sdk-autotools-flow.png figures/sdk-makefile-flow.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css endif ifeq ($(DOC),profile-manual) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = profile-manual.html profile-manual-style.css \ figures/profile-title.png figures/kernelshark-all.png \ figures/kernelshark-choose-events.png \ figures/kernelshark-i915-display.png \ - figures/kernelshark-output-display.png figures/lttngmain0.png \ + figures/kernelshark-output-display.png \ figures/oprofileui-busybox.png figures/oprofileui-copy-to-user.png \ figures/oprofileui-downloading.png figures/oprofileui-processes.png \ figures/perf-probe-do_fork-profile.png \ @@ -332,21 +320,19 @@ TARFILES = profile-manual.html profile-manual-style.css \ figures/pychart-linux-yocto-rpm.png \ figures/pychart-linux-yocto-rpm-nostrip.png \ figures/sched-wakeup-profile.png figures/sysprof-callers.png \ - figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/sysprof-copy-from-user.png figures/sysprof-copy-to-user.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css endif ifeq ($(DOC),kernel-dev) XSLTOPTS = --xinclude -ALLPREQ = html eclipse tarball +ALLPREQ = html tarball TARFILES = kernel-dev.html kernel-dev-style.css \ figures/kernel-dev-title.png figures/kernel-overview-2-generic.png \ - figures/kernel-architecture-overview.png figures/kernel-dev-flow.png \ - eclipse -MANUALS = $(DOC)/$(DOC).html $(DOC)/eclipse + figures/kernel-architecture-overview.png figures/kernel-dev-flow.png +MANUALS = $(DOC)/$(DOC).html FIGURES = figures STYLESHEET = $(DOC)/*.css endif @@ -412,50 +398,6 @@ else endif -eclipse: BASE_DIR = html/$(DOC)/ - -eclipse: eclipse-generate eclipse-resolve-links - -.PHONY : eclipse-generate eclipse-resolve-links - -eclipse-generate: -ifeq ($(filter $(DOC), overview-manual sdk-manual bsp-guide dev-manual kernel-dev profile-manual ref-manual brief-yoctoprojectqs),) - @echo " " - @echo "ERROR: You can only create eclipse documentation" - @echo " of the following documentation parts:" - @echo " - overview-manual" - @echo " - sdk-manual" - @echo " - bsp-guide" - @echo " - dev-manual" - @echo " - kernel-dev" - @echo " - profile-manual" - @echo " - ref-manual" - @echo " - brief-yoctoprojectqs" - @echo " " -else - @echo " " - @echo "******** Building eclipse help of "$(DOC) - @echo " " - cd $(DOC) && \ - xsltproc $(XSLTOPTS) \ - --stringparam base.dir '$(BASE_DIR)' \ - -o eclipse/$(DOC).html \ - $(DOC)-eclipse-customization.xsl $(DOC).xml && \ - mv eclipse/toc.xml eclipse/$(DOC)-toc.xml && \ - cp -rf $(FIGURES) eclipse/$(BASE_DIR) && \ - cd ..; - - $(call modify-eclipse) -endif - -eclipse-resolve-links: - @echo " " - @echo "******** Using eclipse-help.sed to process external links" - @echo " " - $(foreach FILE, \ - $(wildcard $(DOC)/eclipse/html/$(DOC)/*.html), \ - $(shell sed -i -f tools/eclipse-help.sed $(FILE))) - tarball: html @echo " " @echo "******** Creating Tarball of document files" diff --git a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl deleted file mode 100644 index fbb3b578e..000000000 --- a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml index 421412ebe..1daeb2547 100644 --- a/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml +++ b/poky/documentation/brief-yoctoprojectqs/brief-yoctoprojectqs.xml @@ -174,6 +174,7 @@ yocto-2.5.2 yocto-2.6 yocto-2.6.1 + yocto-2.6.2 yocto-2.7 yocto_1.5_M5.rc8 diff --git a/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl b/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl deleted file mode 100644 index 35346effc..000000000 --- a/poky/documentation/bsp-guide/bsp-guide-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/poky/documentation/bsp-guide/bsp-guide.xml b/poky/documentation/bsp-guide/bsp-guide.xml index f559e0809..addb42118 100644 --- a/poky/documentation/bsp-guide/bsp-guide.xml +++ b/poky/documentation/bsp-guide/bsp-guide.xml @@ -128,9 +128,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + diff --git a/poky/documentation/bsp-guide/bsp.xml b/poky/documentation/bsp-guide/bsp.xml index 0bb0b68ab..58f5733f7 100644 --- a/poky/documentation/bsp-guide/bsp.xml +++ b/poky/documentation/bsp-guide/bsp.xml @@ -148,16 +148,11 @@ Some layers function as a layer to hold other BSP layers. These layers are knows as "container layers". - An example of this type of layer is the - meta-intel layer. - This layer contains BSP layers for the Intel-core2-32 - Intel Common Core - (Intel-core2-32) and the Intel-corei7-64 - Intel Common Core - (Intel-corei7-64). - the meta-intel layer also contains - the common/ directory, which contains - common content across those layers. + An example of this type of layer is OpenEmbedded's + meta-openembedded + layer. + The meta-openembedded layer contains + many meta-* layers. @@ -1817,9 +1812,8 @@ The remainder of this section provides a description of the Yocto Project reference BSP for Beaglebone, which resides in the - Container Layer - (i.e. - meta-yocto-bsp). + meta-yocto-bsp + layer.
@@ -1882,7 +1876,7 @@ For example, the machine configuration file for the BeagleBone and BeagleBone Black development boards - is located in the container layer + is located in the layer poky/meta-yocto-bsp/conf/machine and is named beaglebone-yocto.conf: @@ -1908,10 +1902,11 @@ IMAGE_INSTALL_append = " kernel-devicetree kernel-image-zimage" do_image_wic[depends] += "mtools-native:do_populate_sysroot dosfstools-native:do_populate_sysroot" - SERIAL_CONSOLES = "115200;ttyO0" + SERIAL_CONSOLES ?= "115200;ttyS0 115200;ttyO0" + SERIAL_CONSOLES_CHECK = "${SERIAL_CONSOLES}" PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto" - PREFERRED_VERSION_linux-yocto ?= "4.12%" + PREFERRED_VERSION_linux-yocto ?= "5.0%" KERNEL_IMAGETYPE = "zImage" KERNEL_DEVICETREE = "am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb" @@ -1919,13 +1914,13 @@ SPL_BINARY = "MLO" UBOOT_SUFFIX = "img" - UBOOT_MACHINE = "am335x_boneblack_config" + UBOOT_MACHINE = "am335x_evm_defconfig" UBOOT_ENTRYPOINT = "0x80008000" UBOOT_LOADADDRESS = "0x80008000" MACHINE_FEATURES = "usbgadget usbhost vfat alsa" - IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} MLO" + IMAGE_BOOT_FILES ?= "u-boot.${UBOOT_SUFFIX} MLO zImage am335x-bone.dtb am335x-boneblack.dtb am335x-bonegreen.dtb" The variables used to configure the machine define machine-specific properties. @@ -1954,7 +1949,7 @@ In this case, the recipe that provides "virtual/xserver" is "xserver-xorg", which exists in - poky/meta/recipes-graphics/xserver-xorg. + poky/meta/recipes-graphics/xorg-xserver. XSERVER: @@ -2067,7 +2062,7 @@ PREFERRED_VERSION_linux-yocto: Defines the version of the recipe used - to build the kernel, which is "4.12" in this + to build the kernel, which is "5.0" in this case. @@ -2078,8 +2073,8 @@ KERNEL_DEVICETREE: - The name of the generated Linux kernel device - tree (i.e. the .dtb) file. + The names of the generated Linux kernel device + trees (i.e. the *.dtb) files. All the device trees for the various BeagleBone devices are included. COMPATIBLE_MACHINE: diff --git a/poky/documentation/dev-manual/dev-manual-common-tasks.xml b/poky/documentation/dev-manual/dev-manual-common-tasks.xml index 893ef7ba0..8ddcd5b07 100644 --- a/poky/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/poky/documentation/dev-manual/dev-manual-common-tasks.xml @@ -1883,7 +1883,8 @@ do_fetch task uses the prefix of each entry in the SRC_URI variable value to determine which - fetcher to use to get your source files. + fetcher + to use to get your source files. It is the SRC_URI variable that triggers the fetcher. The @@ -7387,17 +7388,17 @@ it is based on is by definition incomplete. The purpose of the command is to allow the generation of customized images, and as such, was designed to be - completely extensible through a plug-in interface. + completely extensible through a plugin interface. See the - "Using the Wic Plug-Ins Interface" - section for information on these plug-ins. + "Using the Wic PlugIn Interface" + section for information on these plugins. This section provides some background information on Wic, describes what you need to have in place to run the tool, provides instruction on how to use - the Wic utility, provides information on using the Wic plug-ins + the Wic utility, provides information on using the Wic plugins interface, and provides several examples that show how to use Wic. @@ -7792,28 +7793,28 @@
-
- Using the Wic Plug-Ins Interface +
+ Using the Wic Plugin Interface You can extend and specialize Wic functionality by using - Wic plug-ins. - This section explains the Wic plug-in interface. + Wic plugins. + This section explains the Wic plugin interface. - Wic plug-ins consist of "source" and "imager" plug-ins. - Imager plug-ins are beyond the scope of this section. + Wic plugins consist of "source" and "imager" plugins. + Imager plugins are beyond the scope of this section. - Source plug-ins provide a mechanism to customize partition + Source plugins provide a mechanism to customize partition content during the Wic image generation process. - You can use source plug-ins to map values that you specify + You can use source plugins to map values that you specify using --source commands in kickstart - files (i.e. *.wks) to a plug-in + files (i.e. *.wks) to a plugin implementation used to populate a given partition. - If you use plug-ins that have build-time dependencies + If you use plugins that have build-time dependencies (e.g. native tools, bootloaders, and so forth) when building a Wic image, you need to specify those dependencies using the @@ -7823,43 +7824,43 @@ - Source plug-ins are subclasses defined in plug-in files. - As shipped, the Yocto Project provides several plug-in + Source plugins are subclasses defined in plugin files. + As shipped, the Yocto Project provides several plugin files. - You can see the source plug-in files that ship with the + You can see the source plugin files that ship with the Yocto Project here. - Each of these plug-in files contains source plug-ins that + Each of these plugin files contains source plugins that are designed to populate a specific Wic image partition. - Source plug-ins are subclasses of the + Source plugins are subclasses of the SourcePlugin class, which is defined in the poky/scripts/lib/wic/pluginbase.py file. For example, the BootimgEFIPlugin - source plug-in found in the + source plugin found in the bootimg-efi.py file is a subclass of the SourcePlugin class, which is found in the pluginbase.py file. - You can also implement source plug-ins in a layer outside + You can also implement source plugins in a layer outside of the Source Repositories (external layer). - To do so, be sure that your plug-in files are located in + To do so, be sure that your plugin files are located in a directory whose path is scripts/lib/wic/plugins/source/ within your external layer. - When the plug-in files are located there, the source - plug-ins they contain are made available to Wic. + When the plugin files are located there, the source + plugins they contain are made available to Wic. When the Wic implementation needs to invoke a - partition-specific implementation, it looks for the plug-in + partition-specific implementation, it looks for the plugin with the same name as the --source parameter used in the kickstart file given to that partition. @@ -7869,13 +7870,13 @@ part /boot --source bootimg-pcbios --ondisk sda --label boot --active --align 1024 The methods defined as class members of the matching - source plug-in (i.e. bootimg-pcbios) - in the bootimg-pcbios.py plug-in file + source plugin (i.e. bootimg-pcbios) + in the bootimg-pcbios.py plugin file are used. - To be more concrete, here is the corresponding plug-in + To be more concrete, here is the corresponding plugin definition from the bootimg-pcbios.py file for the previous command along with an example method called by the Wic implementation when it needs to @@ -7907,19 +7908,19 @@ . . - If a subclass (plug-in) itself does not implement a + If a subclass (plugin) itself does not implement a particular function, Wic locates and uses the default version in the superclass. - It is for this reason that all source plug-ins are derived + It is for this reason that all source plugins are derived from the SourcePlugin class. The SourcePlugin class defined in the pluginbase.py file defines - a set of methods that source plug-ins can implement or + a set of methods that source plugins can implement or override. - Any plug-ins (subclass of + Any plugins (subclass of SourcePlugin) that do not implement a particular method inherit the implementation of the method from the SourcePlugin class. @@ -7980,11 +7981,11 @@ - You can extend the source plug-in mechanism. - To add more hooks, create more source plug-in methods + You can extend the source plugin mechanism. + To add more hooks, create more source plugin methods within SourcePlugin and the corresponding derived subclasses. - The code that calls the plug-in methods uses the + The code that calls the plugin methods uses the plugin.get_source_plugin_methods() function to find the method or methods needed by the call. Retrieval of those methods is accomplished by filling up @@ -9404,7 +9405,7 @@ Many pieces of software split functionality into optional - modules (or plug-ins) and the plug-ins that are built + modules (or plugins) and the plugins that are built might depend on configuration options. To avoid having to duplicate the logic that determines what modules are available in your recipe or to avoid having @@ -12489,14 +12490,6 @@ - - For debugging information within the popular - Eclipse IDE, see the - "Working within Eclipse" - section in the Yocto Project Application Development and the - Extensible Software Development Kit (eSDK) manual. - -
Viewing Logs from Failed Tasks @@ -12533,6 +12526,16 @@
Viewing Variable Values + + Sometimes you need to know the value of a variable as a + result of BitBake's parsing step. + This could be because some unexpected behavior occurred + in your project. + Perhaps an attempt to + modify a variable + did not work out as expected. + + BitBake's -e option is used to display variable values after parsing. @@ -15059,12 +15062,12 @@ - Specifying audio and video plug-ins as part of the + Specifying audio and video plugins as part of the COMMERCIAL_AUDIO_PLUGINS and COMMERCIAL_VIDEO_PLUGINS statements (along with the enabling LICENSE_FLAGS_WHITELIST) includes the - plug-ins or components into built images, thus adding + plugins or components into built images, thus adding support for media formats or components.
diff --git a/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl b/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl deleted file mode 100644 index 6d7b5fbb6..000000000 --- a/poky/documentation/dev-manual/dev-manual-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/poky/documentation/dev-manual/dev-manual-start.xml b/poky/documentation/dev-manual/dev-manual-start.xml index 6ec5c3cf4..5625dfcdd 100644 --- a/poky/documentation/dev-manual/dev-manual-start.xml +++ b/poky/documentation/dev-manual/dev-manual-start.xml @@ -175,14 +175,6 @@ This method works well for small numbers of relatively isolated applications. - - When possible, use the Yocto Project plug-in for the - Eclipse IDE - and SDK development practices. - For more information, see the - Yocto Project Application Development and the Extensible Software Development Kit (eSDK) - manual. - Keep your cross-development toolchains updated. You can do this through provisioning either as new @@ -421,8 +413,7 @@ further steps are necessary depending on what you want to accomplish. See the following references for information on how to prepare for - Board Support Package (BSP) development, kernel development, and - development using the Eclipse IDE: + Board Support Package (BSP) development and kernel development: BSP Development: @@ -437,13 +428,6 @@ "Preparing the Build Host to Work on the Kernel" section in the Yocto Project Linux Kernel Development Manual. - - Eclipse Development: - See the - "Developing Applications Using Eclipse" - Chapter in the Yocto Project Application Development and the - Extensible Software Development Kit (eSDK) manual. - @@ -767,7 +751,7 @@ to access the Index of Releases. The list represents released components (e.g. - eclipse-plugin, + bitbake, sato, and so on). The yocto directory contains the @@ -864,8 +848,7 @@ Yocto Project maintains an area for nightly builds that contains tarball releases at . These builds include Yocto Project releases ("poky"), - toolchains, Yocto Project plugins for Eclipse, and builds for - supported machines. + toolchains, and builds for supported machines. @@ -1130,6 +1113,7 @@ yocto-2.5.3 yocto-2.6 yocto-2.6.1 + yocto-2.6.2 yocto-2.7 yocto_1.5_M5.rc8 diff --git a/poky/documentation/dev-manual/dev-manual.xml b/poky/documentation/dev-manual/dev-manual.xml index 5dda016d7..42deff102 100644 --- a/poky/documentation/dev-manual/dev-manual.xml +++ b/poky/documentation/dev-manual/dev-manual.xml @@ -113,9 +113,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + diff --git a/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl b/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl deleted file mode 100644 index 3c56a5a9e..000000000 --- a/poky/documentation/kernel-dev/kernel-dev-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - A - - - diff --git a/poky/documentation/kernel-dev/kernel-dev.xml b/poky/documentation/kernel-dev/kernel-dev.xml index 33553df06..c43330a31 100644 --- a/poky/documentation/kernel-dev/kernel-dev.xml +++ b/poky/documentation/kernel-dev/kernel-dev.xml @@ -98,9 +98,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + diff --git a/poky/documentation/mega-manual/figures/index-downloads.png b/poky/documentation/mega-manual/figures/index-downloads.png old mode 100644 new mode 100755 index 96303b878..d8d4475ce Binary files a/poky/documentation/mega-manual/figures/index-downloads.png and b/poky/documentation/mega-manual/figures/index-downloads.png differ diff --git a/poky/documentation/mega-manual/figures/lttngmain0.png b/poky/documentation/mega-manual/figures/lttngmain0.png deleted file mode 100644 index 5f60113cc..000000000 Binary files a/poky/documentation/mega-manual/figures/lttngmain0.png and /dev/null differ diff --git a/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png b/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png deleted file mode 100644 index 9f986e0d4..000000000 Binary files a/poky/documentation/mega-manual/figures/sdk-eclipse-dev-flow.png and /dev/null differ diff --git a/poky/documentation/mega-manual/mega-manual.xml b/poky/documentation/mega-manual/mega-manual.xml index 2c518f951..b66b9334f 100644 --- a/poky/documentation/mega-manual/mega-manual.xml +++ b/poky/documentation/mega-manual/mega-manual.xml @@ -84,9 +84,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + @@ -200,16 +205,12 @@ xmlns:xi="http://www.w3.org/2003/XInclude" href="../sdk-manual/sdk-using.xml"/> - - diff --git a/poky/documentation/overview-manual/figures/index-downloads.png b/poky/documentation/overview-manual/figures/index-downloads.png old mode 100644 new mode 100755 index 96303b878..d8d4475ce Binary files a/poky/documentation/overview-manual/figures/index-downloads.png and b/poky/documentation/overview-manual/figures/index-downloads.png differ diff --git a/poky/documentation/overview-manual/overview-manual-concepts.xml b/poky/documentation/overview-manual/overview-manual-concepts.xml index 5aca215a4..8a1b38c87 100644 --- a/poky/documentation/overview-manual/overview-manual-concepts.xml +++ b/poky/documentation/overview-manual/overview-manual-concepts.xml @@ -925,14 +925,16 @@ Another place the build system can get source files from is - through an SCM such as Git or Subversion. - In this case, a repository is cloned or checked out. + through a Source Control Manager (SCM) such as Git or + Subversion. + In such cases, a repository is cloned or checked out. The do_fetch task inside BitBake uses the SRC_URI variable and the argument's prefix to determine the correct - fetcher module. + fetcher + module. For information on how to have the OpenEmbedded build system generate tarballs for Git repositories and place @@ -940,7 +942,7 @@ DL_DIR directory, see the BB_GENERATE_MIRROR_TARBALLS - variable. + variable in the Yocto Project Reference Manual. diff --git a/poky/documentation/overview-manual/overview-manual-development-environment.xml b/poky/documentation/overview-manual/overview-manual-development-environment.xml index bba93ccef..2f1bd1610 100644 --- a/poky/documentation/overview-manual/overview-manual-development-environment.xml +++ b/poky/documentation/overview-manual/overview-manual-development-environment.xml @@ -165,22 +165,6 @@ "Preparing the Build Host to Work on the Kernel" section in the Yocto Project Linux Kernel Development Manual. - - Using the Eclipse IDE: - One of two Yocto Project development methods that involves an - interface that effectively puts the Yocto Project into the - background is the popular Eclipse IDE. - This method of development is advantageous if you are already - familiar with working within Eclipse. - Development is supported through a plugin that you install - onto your development host. - - For steps that show you how to set up your development - host to use the Eclipse Yocto Project plugin, see the - "Developing Applications Using Eclipse" - Chapter in the Yocto Project Application Development and the - Extensible Software Development Kit (eSDK) manual. - Using Toaster: The other Yocto Project development method that involves an @@ -276,11 +260,10 @@ Index of /releases: - This is an index of releases such as - the Eclipse - Yocto Plug-in, miscellaneous support, Poky, Pseudo, installers - for cross-development toolchains, and all released versions of - Yocto Project in the form of images or tarballs. + This is an index of releases such as Poky, Pseudo, installers + for cross-development toolchains, miscellaneous support + and all released versions of Yocto Project in the form of + images or tarballs. Downloading and extracting these files does not produce a local copy of the Git repository but rather a snapshot of a particular release or image. diff --git a/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl b/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl deleted file mode 100644 index aaf99ea1b..000000000 --- a/poky/documentation/overview-manual/overview-manual-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/poky/documentation/overview-manual/overview-manual-yp-intro.xml b/poky/documentation/overview-manual/overview-manual-yp-intro.xml index 254f191cc..dbf62cc16 100644 --- a/poky/documentation/overview-manual/overview-manual-yp-intro.xml +++ b/poky/documentation/overview-manual/overview-manual-yp-intro.xml @@ -501,35 +501,6 @@ Yocto Project Application Development and the Extensible Software Development Kit (eSDK) Manual. - - Eclipse IDE Plug-in: - This plug-in enables you to use the popular Eclipse - Integrated Development Environment (IDE), which allows - for development using the Yocto Project all within the - Eclipse IDE. - You can work within Eclipse to cross-compile, deploy, - and execute your output into a QEMU emulation session - as well as onto actual target hardware. - - The environment also supports performance - enhancing tools that allow you to perform remote - profiling, tracing, collection of power data, - collection of latency data, and collection of - performance data. - - Once you enable the plug-in, standard Eclipse - functions automatically use the cross-toolchain - and target system libraries. - You can build applications using any of these - libraries. - - For more information on the Eclipse plug-in, - see the - "Working Within Eclipse" - section in the Yocto Project Application Development - and the Extensible Software Development Kit (eSDK) - manual. - Toaster: Toaster is a web interface to the Yocto Project @@ -953,20 +924,6 @@ see the Toaster User Manual. - - Eclipse IDE: - If your Build Host supports and runs the popular - Eclipse IDE, you can install the Yocto Project Eclipse - plug-in and use the Yocto Project to develop software. - The plug-in integrates the Yocto Project functionality - into Eclipse development practices. - - For information about how to install and use the - Yocto Project Eclipse plug-in, see the - "Developing Applications Using Eclipse" - chapter in the Yocto Project Application Development and - the Extensible Software Development Kit (eSDK) Manual. -
diff --git a/poky/documentation/overview-manual/overview-manual.xml b/poky/documentation/overview-manual/overview-manual.xml index b23c39497..e74ba8d5c 100644 --- a/poky/documentation/overview-manual/overview-manual.xml +++ b/poky/documentation/overview-manual/overview-manual.xml @@ -37,9 +37,14 @@ The initial document released with the Yocto Project 2.5 Release. - 2.6 + 2.7 + May 2019 + Released with the Yocto Project 2.7 Release. + + + 2.8 &REL_MONTH_YEAR; - Released with the Yocto Project 2.6 Release. + Released with the Yocto Project 2.8 Release. diff --git a/poky/documentation/poky.ent b/poky/documentation/poky.ent index 63260129c..b5f600969 100644 --- a/poky/documentation/poky.ent +++ b/poky/documentation/poky.ent @@ -1,12 +1,12 @@ - - - - - - - - - + + + + + + + + + @@ -27,15 +27,6 @@ - - - - - - - - - @@ -43,7 +34,6 @@ - diff --git a/poky/documentation/profile-manual/figures/lttngmain0.png b/poky/documentation/profile-manual/figures/lttngmain0.png deleted file mode 100644 index 5f60113cc..000000000 Binary files a/poky/documentation/profile-manual/figures/lttngmain0.png and /dev/null differ diff --git a/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl b/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl deleted file mode 100644 index a898281ff..000000000 --- a/poky/documentation/profile-manual/profile-manual-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - A - - - diff --git a/poky/documentation/profile-manual/profile-manual-usage.xml b/poky/documentation/profile-manual/profile-manual-usage.xml index a1b565157..5999b2960 100644 --- a/poky/documentation/profile-manual/profile-manual-usage.xml +++ b/poky/documentation/profile-manual/profile-manual-usage.xml @@ -2350,22 +2350,8 @@ For this section, we'll assume you've already performed the basic setup outlined in the General Setup section. - - - LTTng is run on the target system by ssh'ing to it. - However, if you want to see the traces graphically, - install Eclipse as described in section - "Manually copying a trace to the host and viewing it in Eclipse (i.e. using Eclipse without network support)" - and follow the directions to manually copy traces to the host and - view them in Eclipse (i.e. using Eclipse without network support). - - - Be sure to download and install/run the 'SR1' or later Juno release - of eclipse e.g.: - http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/juno/SR1/eclipse-cpp-juno-SR1-linux-gtk-x86_64.tar.gz -
@@ -2564,163 +2550,6 @@
-
- Manually copying a trace to the host and viewing it in Eclipse (i.e. using Eclipse without network support) - - - If you already have an LTTng trace on a remote target and - would like to view it in Eclipse on the host, you can easily - copy it from the target to the host and import it into - Eclipse to view it using the LTTng Eclipse plug-in already - bundled in the Eclipse (Juno SR1 or greater). - - - - Using the trace we created in the previous section, archive - it and copy it to your host system: - - root@crownbay:~/lttng-traces# tar zcvf auto-20121015-232120.tar.gz auto-20121015-232120 - auto-20121015-232120/ - auto-20121015-232120/kernel/ - auto-20121015-232120/kernel/metadata - auto-20121015-232120/kernel/channel0_1 - auto-20121015-232120/kernel/channel0_0 - - $ scp root@192.168.1.47:lttng-traces/auto-20121015-232120.tar.gz . - root@192.168.1.47's password: - auto-20121015-232120.tar.gz 100% 1566KB 1.5MB/s 00:01 - - Unarchive it on the host: - - $ gunzip -c auto-20121015-232120.tar.gz | tar xvf - - auto-20121015-232120/ - auto-20121015-232120/kernel/ - auto-20121015-232120/kernel/metadata - auto-20121015-232120/kernel/channel0_1 - auto-20121015-232120/kernel/channel0_0 - - We can now import the trace into Eclipse and view it: - - First, start eclipse and open the - 'LTTng Kernel' perspective by selecting the following - menu item: - - Window | Open Perspective | Other... - - In the dialog box that opens, select - 'LTTng Kernel' from the list. - Back at the main menu, select the - following menu item: - - File | New | Project... - - In the dialog box that opens, select - the 'Tracing | Tracing Project' wizard and press - 'Next>'. - Give the project a name and press - 'Finish'. - In the 'Project Explorer' pane under - the project you created, right click on the - 'Traces' item. - Select 'Import..." and in the dialog - that's displayed: - Browse the filesystem and find the - select the 'kernel' directory containing the trace - you copied from the target - e.g. auto-20121015-232120/kernel - 'Checkmark' the directory in the tree - that's displayed for the trace - Below that, select 'Common Trace Format: - Kernel Trace' for the 'Trace Type' - Press 'Finish' to close the dialog - - Back in the 'Project Explorer' pane, - double-click on the 'kernel' item for the - trace you just imported under 'Traces' - - - You should now see your trace data displayed graphically - in several different views in Eclipse: - - - - - - - - You can access extensive help information on how to use - the LTTng plug-in to search and analyze captured traces via - the Eclipse help system: - - Help | Help Contents | LTTng Plug-in User Guide - - -
- -
- Collecting and viewing a trace in Eclipse - - - This section on collecting traces remotely doesn't currently - work because of Eclipse 'RSE' connectivity problems. Manually - tracing on the target, copying the trace files to the host, - and viewing the trace in Eclipse on the host as outlined in - previous steps does work however - please use the manual - steps outlined above to view traces in Eclipse. - - - - In order to trace a remote target, you also need to add - a 'tracing' group on the target and connect as a user - who's part of that group e.g: - - # adduser tomz - # groupadd -r tracing - # usermod -a -G tracing tomz - - - First, start eclipse and open the - 'LTTng Kernel' perspective by selecting the following - menu item: - - Window | Open Perspective | Other... - - In the dialog box that opens, select - 'LTTng Kernel' from the list. - Back at the main menu, select the - following menu item: - - File | New | Project... - - In the dialog box that opens, select - the 'Tracing | Tracing Project' wizard and - press 'Next>'. - Give the project a name and press - 'Finish'. That should result in an entry in the - 'Project' subwindow. - In the 'Control' subwindow just below - it, press 'New Connection'. - Add a new connection, giving it the - hostname or IP address of the target system. - - Provide the username and password - of a qualified user (a member of the 'tracing' group) - or root account on the target system. - - Provide appropriate answers to whatever - else is asked for e.g. 'secure storage password' - can be anything you want. - If you get an 'RSE Error' it may be due to proxies. - It may be possible to get around the problem by - changing the following setting: - - Window | Preferences | Network Connections - - Switch 'Active Provider' to 'Direct' - - - -
@@ -2742,15 +2571,6 @@ You can find a "Getting Started" link on this site that takes you to an LTTng Quick Start. - - - Finally, you can access extensive help information on how to use - the LTTng plug-in to search and analyze captured traces via the - Eclipse help system: - - Help | Help Contents | LTTng Plug-in User Guide - -
diff --git a/poky/documentation/profile-manual/profile-manual.xml b/poky/documentation/profile-manual/profile-manual.xml index af2c7baf7..c6e8baf02 100644 --- a/poky/documentation/profile-manual/profile-manual.xml +++ b/poky/documentation/profile-manual/profile-manual.xml @@ -98,9 +98,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + diff --git a/poky/documentation/ref-manual/migration.xml b/poky/documentation/ref-manual/migration.xml index c648d8d44..1ecf5b999 100644 --- a/poky/documentation/ref-manual/migration.xml +++ b/poky/documentation/ref-manual/migration.xml @@ -4506,8 +4506,8 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. fsimage Plug-in Removed: - The Wic fsimage plug-in has been removed as it duplicates - functionality of the rawcopy plug-in. + The Wic fsimage plugin has been removed as it duplicates + functionality of the rawcopy plugin. @@ -6325,6 +6325,280 @@ id=f4d4f99cfbc2396e49c1613a7d237b9e57f06f81'>commit message. + +
+ Moving to the Yocto Project 2.7 Release + + + This section provides migration information for moving to the + Yocto Project 2.7 Release from the prior release. + + +
+ BitBake Changes + + + The following changes have been made to BitBake: + + + BitBake now checks anonymous Python functions and pure + Python functions (e.g. def funcname:) + in the metadata for tab indentation. + If found, BitBake produces a warning. + + + Bitbake now checks + BBFILE_COLLECTIONS + for duplicate entries and triggers an error if any are + found. + + + +
+ +
+ <trademark class='trade'>Eclipse</trademark> Support Removed + + + Support for the Eclipse IDE has been removed. + Support continues for those releases prior to 2.7 that did include + support. + The 2.7 release does not include the Eclipse Yocto plugin. + +
+ +
+ <filename>qemu-native</filename> Splits the System and User-Mode Parts + + + The system and user-mode parts of qemu-native + are now split. + qemu-native provides the user-mode components + and qemu-system-native provides the system + components. + If you have recipes that depend on QEMU's system emulation + functionality at build time, they should now depend upon + qemu-system-native instead of + qemu-native. + +
+ +
+ The <filename>upstream-tracking.inc</filename> File Has Been Removed + + + The previously deprecated upstream-tracking.inc + file is now removed. + Any UPSTREAM_TRACKING* variables are now set + in the corresponding recipes instead. + + + + Remove any references you have to the + upstream-tracking.inc file in your + configuration. + +
+ +
+ The <filename>DISTRO_FEATURES_LIBC</filename> Variable Has Been Removed + + + The DISTRO_FEATURES_LIBC variable is no + longer used. + The ability to configure glibc using kconfig has been removed + for quite some time making the libc-* features + set no longer effective. + + + + Remove any references you have to + DISTRO_FEATURES_LIBC in your own layers. + +
+ +
+ License Value Corrections + + + The following corrections have been made to the + LICENSE + values set by recipes: + + socat: Corrected LICENSE to be "GPLv2" rather than + "GPLv2+". + + libgfortran: Set license to "GPL-3.0-with-GCC-exception". + + elfutils: Removed "Elfutils-Exception" and set to "GPLv2" for shared + libraries + + +
+ +
+ Packaging Changes + + + This section provides information about packaging changes. + + + bind: The + nsupdate binary has been moved to + the bind-utils package. + + + Debug split: The default debug split has been changed to + create separate source packages (i.e. + package_name-dbg + and + package_name-src). + If you are currently using dbg-pkgs + in + IMAGE_FEATURES + to bring in debug symbols and you still need the sources, + you must now also add src-pkgs to + IMAGE_FEATURES. + Source packages remain in the target portion of the SDK + by default, unless you have set your own value for + SDKIMAGE_FEATURES + that does not include src-pkgs. + + + Mount all using util-linux: + /etc/default/mountall has + moved into the -mount sub-package. + + + Splitting binaries using util-linux: + util-linux now splits each binary into + its own package for fine-grained control. + The main util-linux package pulls in + the individual binary packages using the + RRECOMMENDS + and + RDEPENDS + variables. + As a result, existing images should not see any changes + assuming + NO_RECOMMENDATIONS + is not set. + + + netbase/base-files: + /etc/hosts has moved from + netbase to + base-files. + + + tzdata: The main package has been + converted to an empty meta package that pulls in all + tzdata packages by default. + + + lrzsz: This package has been removed + from packagegroup-self-hosted and + packagegroup-core-tools-testapps. + The X/Y/ZModem support is less likely to be needed on + modern systems. + If you are relying on these packagegroups to include the + lrzsz package in your image, you + now need to explicitly add the package. + + + +
+ +
+ Removed Recipes + + + The following recipes have been removed: + + gcc: Drop version 7.3 recipes. Version 8.3 now remains. + + linux-yocto: Drop versions 4.14 and 4.18 recipes. Versions 4.19 and 5.0 remain. + + go: Drop version 1.9 recipes. Versions 1.11 and 1.12 remain. + + xvideo-tests: Became obsolete. + + libart-lgpl: Became obsolete. + + gtk-icon-utils-native: These tools are now provided by gtk+3-native + + gcc-cross-initial: No longer needed. gcc-cross/gcc-crosssdk is now used instead. + + gcc-crosssdk-initial: No longer needed. gcc-cross/gcc-crosssdk is now used instead. + + glibc-initial: Removed because the benefits of having it for site_config are + currently outweighed by the cost of building the recipe. + + +
+ +
+ Removed Classes + + + The following classes have been removed: + + distutils-tools: This class was never used. + + bugzilla.bbclass: Became obsolete. + + distrodata: This functionally has been replaced by a more modern + tinfoil-based implementation. + + +
+ +
+ Miscellaneous Changes + + + The following miscellaneous changes occurred: + + + The distro subdirectory of the Poky + repository has been removed from the top-level + scripts directory. + + + Perl now builds for the target using + perl-cross + for better maintainability and improved build performance. + This change should not present any problems unless you have + heavily customized your Perl recipe. + + + arm-tunes: Removed the "-march" + option if mcpu is already added. + + + update-alternatives: Convert file + renames to + PACKAGE_PREPROCESS_FUNCS + + + base/pixbufcache: Obsolete + sstatecompletions code has been + removed. + + + native + class: + RDEPENDS + handling has been enabled. + + + inetutils: This recipe has rsh + disabled. + + + +
+
- - - - - - - - - - - - - - - A - - - diff --git a/poky/documentation/ref-manual/ref-manual.xml b/poky/documentation/ref-manual/ref-manual.xml index 26295f02f..fc4319773 100644 --- a/poky/documentation/ref-manual/ref-manual.xml +++ b/poky/documentation/ref-manual/ref-manual.xml @@ -129,9 +129,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + diff --git a/poky/documentation/ref-manual/ref-system-requirements.xml b/poky/documentation/ref-manual/ref-system-requirements.xml index 5f2b9f6ce..239dd84bb 100644 --- a/poky/documentation/ref-manual/ref-system-requirements.xml +++ b/poky/documentation/ref-manual/ref-system-requirements.xml @@ -91,6 +91,7 @@ Ubuntu 16.04 (LTS) Ubuntu 18.04 Fedora 28 + Fedora 29 CentOS 7.x Debian GNU/Linux 8.x (Jessie) Debian GNU/Linux 9.x (Stretch) diff --git a/poky/documentation/ref-manual/ref-terms.xml b/poky/documentation/ref-manual/ref-terms.xml index c573a521a..f98546826 100644 --- a/poky/documentation/ref-manual/ref-terms.xml +++ b/poky/documentation/ref-manual/ref-terms.xml @@ -183,16 +183,11 @@ Container Layer: Layers that hold other layers. - An example of a container layer is the - meta-intel layer. - This layer contains BSP layers for the Intel-core2-32 - Intel Common Core - (Intel-core2-32) and the Intel-corei7-64 - Intel Common Core - (Intel-corei7-64). - the meta-intel layer also contains - the common/ directory, which contains - common content across those layers. + An example of a container layer is OpenEmbedded's + meta-openembedded + layer. + The meta-openembedded layer contains + many meta-* layers. Cross-Development Toolchain: diff --git a/poky/documentation/ref-manual/ref-variables.xml b/poky/documentation/ref-manual/ref-variables.xml index 536bd15ea..0d01c16dd 100644 --- a/poky/documentation/ref-manual/ref-variables.xml +++ b/poky/documentation/ref-manual/ref-variables.xml @@ -11309,7 +11309,7 @@ Here are two examples: PREFERRED_VERSION_python = "3.4.0" - PREFERRED_VERSION_linux-yocto = "4.12%" + PREFERRED_VERSION_linux-yocto = "5.0%" Important The use of the "%" character @@ -11355,14 +11355,14 @@ to set a machine-specific override. Here is an example: - PREFERRED_VERSION_linux-yocto_qemux86 = "4.12%" + PREFERRED_VERSION_linux-yocto_qemux86 = "5.0%" Although not recommended, worst case, you can also use the "forcevariable" override, which is the strongest override possible. Here is an example: - PREFERRED_VERSION_linux-yocto_forcevariable = "4.12%" + PREFERRED_VERSION_linux-yocto_forcevariable = "5.0%" The _forcevariable override is @@ -12609,7 +12609,7 @@ is set to "minimal" to keep the SDK reasonably small but you still want to provide a usable toolchain. For example, suppose you want to use the toolchain from an - IDE (e.g. Eclipse) or from other tools and you do not + IDE or from other tools and you do not want to perform additional steps to install the toolchain. @@ -13722,6 +13722,9 @@ a secure shell. svn:// - Fetches files from a Subversion (svn) revision control repository. + npm:// - Fetches JavaScript + modules from a registry. + diff --git a/poky/documentation/ref-manual/resources.xml b/poky/documentation/ref-manual/resources.xml index 6a0cee8a5..afe8e288d 100644 --- a/poky/documentation/ref-manual/resources.xml +++ b/poky/documentation/ref-manual/resources.xml @@ -245,14 +245,6 @@ OpenEmbedded Build System, which uses BitBake, that reports build information. - - - Eclipse IDE Yocto Plug-in: - - Instructions that demonstrate how an application developer - uses the Eclipse Yocto Project Plug-in feature within - the Eclipse IDE. - FAQ: diff --git a/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png b/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png deleted file mode 100644 index 9f986e0d4..000000000 Binary files a/poky/documentation/sdk-manual/figures/sdk-eclipse-dev-flow.png and /dev/null differ diff --git a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml index 7454c90be..911658f91 100644 --- a/poky/documentation/sdk-manual/sdk-appendix-customizing.xml +++ b/poky/documentation/sdk-manual/sdk-appendix-customizing.xml @@ -503,7 +503,7 @@ have set SDK_EXT_TYPE to "minimal", which by default, excludes the toolchain. Also, it is helpful if you are building a small SDK for use with - an IDE, such as Eclipse, or some + an IDE or some other tool where you do not want to take extra steps to install a toolchain. diff --git a/poky/documentation/sdk-manual/sdk-appendix-neon.xml b/poky/documentation/sdk-manual/sdk-appendix-neon.xml deleted file mode 100644 index 0fb92985a..000000000 --- a/poky/documentation/sdk-manual/sdk-appendix-neon.xml +++ /dev/null @@ -1,956 +0,0 @@ - %poky; ] > - - - Using <trademark class='trade'>Eclipse</trademark> Neon - - - This release of the Yocto Project supports both the Oxygen and Neon - versions of the Eclipse IDE. - This appendix presents information that describes how to obtain and - configure the Neon version of Eclipse. - It also provides a basic project example that you can work through - from start to finish. - For general information on using the Eclipse IDE and the Yocto - Project Eclipse Plug-In, see the - "Application Development Workflow Using Eclipse" - section. - - -
- Setting Up the Neon Version of the Eclipse IDE - - - To develop within the Eclipse IDE, you need to do the following: - - Install the Neon version of the Eclipse - IDE. - Configure the Eclipse IDE. - - Install the Eclipse Yocto Plug-in. - - Configure the Eclipse Yocto Plug-in. - - - - Do not install Eclipse from your distribution's package - repository. - Be sure to install Eclipse from the official Eclipse - download site as directed in the next section. - - - -
- Installing the Neon Eclipse IDE - - - Follow these steps to locate, install, and configure - Neon Eclipse: - - Locate the Neon Download: - Open a browser and go to - http://www.eclipse.org/neon/. - - Download the Tarball: - Click the "Download" button and look for the - "Eclipse IDE for C/C++ Developers" Neon 3 Package. - Select the correct platform download link listed at - the right. - For example, click on "64-bit" next to Linux if your - build host is running a 64-bit Linux distribution. - Click through the process to save the file. - - Unpack the Tarball: - Move to a directory and unpack the tarball. - The following commands unpack the tarball into the - home directory: - - $ cd ~ - $ tar -xzvf ~/Downloads/eclipse-cpp-neon-3-linux-gtk-x86_64.tar.gz - - Everything unpacks into a folder named "Eclipse". - - Launch Eclipse: - The following commands launch Eclipse assuming you - unpacked it in your home directory: - - $ cd ~/eclipse - $ ./eclipse - - Accept the default "workspace" once Eclipse launches. - - - -
- -
- Configuring the Neon Eclipse IDE - - - Follow these steps to configure the Neon Eclipse IDE. - Notes - - - Depending on how you installed Eclipse and what - you have already done, some of the options do - not appear. - If you cannot find an option as directed by the - manual, it has already been installed. - - - If you want to see all options regardless of - whether they are installed or not, deselect the - "Hide items that are already installed" - check box. - - - - - Be sure Eclipse is running and - you are in your workbench. - - Select "Install New Software" from - the "Help" pull-down menu. - - Select - "Neon - http://download.eclipse.org/releases/neon" - from the "Work with:" pull-down menu. - - Expand the box next to - "Linux Tools" and select the following - - C/C++ Remote (Over TCF/TE) Run/Debug Launcher - TM Terminal - - - Expand the box next to "Mobile and - Device Development" and select the following - boxes: - - C/C++ Remote (Over TCF/TE) Run/Debug Launcher - Remote System Explorer User Actions - TM Terminal - TCF Remote System Explorer add-in - TCF Target Explorer - - - Expand the box next to - "Programming Languages" and select the - following box: - - C/C++ Development Tools SDK - - - - Complete the installation by clicking through - appropriate "Next" and "Finish" buttons. - - - -
- -
- Installing or Accessing the Neon Eclipse Yocto Plug-in - - - You can install the Eclipse Yocto Plug-in into the Eclipse - IDE one of two ways: use the Yocto Project's Eclipse - Update site to install the pre-built plug-in or build and - install the plug-in from the latest source code. - - -
- Installing the Pre-built Plug-in from the Yocto Project Eclipse Update Site - - - To install the Neon Eclipse Yocto Plug-in from the update - site, follow these steps: - - Start up the Eclipse IDE. - - In Eclipse, select "Install New - Software" from the "Help" menu. - - Click "Add..." in the "Work with:" - area. - - Enter - &ECLIPSE_DL_PLUGIN_URL;/neon - in the URL field and provide a meaningful name - in the "Name" field. - - - Click "OK" to have the entry automatically - populate the "Work with:" field and to have - the items for installation appear in the window - below. - - Check the boxes next to the following: - - Yocto Project SDK Plug-in - Yocto Project Documentation plug-in - - - Complete the remaining software - installation steps and then restart the Eclipse - IDE to finish the installation of the plug-in. - - You can click "OK" when prompted about - installing software that contains unsigned - content. - - - - -
- -
- Installing the Plug-in Using the Latest Source Code - - - To install the Neon Eclipse Yocto Plug-in from the latest - source code, follow these steps: - - - Be sure your build host has JDK version 1.8 - or greater. - On a Linux build host you can determine the - version using the following command: - - $ java -version - - - install X11-related packages: - - $ sudo apt-get install xauth - - - In a new terminal shell, create a Git - repository with: - - $ cd ~ - $ git clone git://git.yoctoproject.org/eclipse-yocto - - - - Use Git to create the correct tag: - - $ cd ~/eclipse-yocto - $ git checkout -b neon/&DISTRO_NAME_NO_CAP; remotes/origin/neon/&DISTRO_NAME_NO_CAP; - - This creates a local tag named - neon/&DISTRO_NAME_NO_CAP; - based on the branch - origin/neon/&DISTRO_NAME_NO_CAP;. - You are put into a detached HEAD state, - which is fine since you are only going to - be building and not developing. - - Change to the - scripts - directory within the Git repository: - - $ cd scripts - - - Set up the local build environment - by running the setup script: - - $ ./setup.sh - - When the script finishes execution, - it prompts you with instructions on how to run - the build.sh script, which - is also in the scripts - directory of the Git repository created - earlier. - - - Run the build.sh - script as directed. - Be sure to provide the tag name, - documentation branch, and a release name. - - Following is an example: - - $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l neon/&DISTRO_NAME_NO_CAP; master yocto-&DISTRO; 2>&1 | tee build.log - - The previous example command adds the tag - you need for - neon/&DISTRO_NAME_NO_CAP; - to HEAD, then tells - the build script to use the local (-l) Git - checkout for the build. - After running the script, the file - org.yocto.sdk-release-date-archive.zip - is in the current directory. - - If necessary, start the Eclipse IDE - and be sure you are in the Workbench. - - Select "Install New Software" from - the "Help" pull-down menu. - - Click "Add". - - Provide anything you want in the - "Name" field. - - Click "Archive" and browse to the - ZIP file you built earlier. - This ZIP file should not be "unzipped", and must - be the *archive.zip file - created by running the - build.sh script. - - Click the "OK" button. - - Check the boxes that appear in - the installation window to install the - following: - - Yocto Project SDK Plug-in - Yocto Project Documentation plug-in - - - Finish the installation by clicking - through the appropriate buttons. - You can click "OK" when prompted about - installing software that contains unsigned - content. - - Restart the Eclipse IDE if - necessary. - - - - - - At this point you should be able to configure the - Eclipse Yocto Plug-in as described in the - "Configuring the Neon Eclipse Yocto Plug-in" - section. -
-
- -
- Configuring the Neon Eclipse Yocto Plug-In - - - Configuring the Neon Eclipse Yocto Plug-in involves setting the - Cross Compiler options and the Target options. - The configurations you choose become the default settings - for all projects. - You do have opportunities to change them later when - you configure the project (see the following section). - - - - To start, you need to do the following from within the - Eclipse IDE: - - - Choose "Preferences" from the - "Window" menu to display the Preferences Dialog. - - - Click "Yocto Project SDK" to display - the configuration screen. - - - The following sub-sections describe how to configure the - the plug-in. - - Throughout the descriptions, a start-to-finish example for - preparing a QEMU image for use with Eclipse is referenced - as the "wiki" and is linked to the example on the - Cookbook guide to Making an Eclipse Debug Capable Image - wiki page. - - - -
- Configuring the Cross-Compiler Options - - - Cross Compiler options enable Eclipse to use your specific - cross compiler toolchain. - To configure these options, you must select - the type of toolchain, point to the toolchain, specify - the sysroot location, and select the target - architecture. - - - Selecting the Toolchain Type: - Choose between "Standalone pre-built toolchain" - and - "Build system derived toolchain" for Cross Compiler - Options. - - - Standalone Pre-built Toolchain: - Select this type when you are using - a stand-alone cross-toolchain. - For example, suppose you are an - application developer and do not - need to build a target image. - Instead, you just want to use an - architecture-specific toolchain on - an existing kernel and target root - filesystem. - In other words, you have downloaded - and installed a pre-built toolchain - for an existing image. - - - Build System Derived Toolchain: - Select this type if you built the - toolchain as part of the - Build Directory. - When you select "Build system derived - toolchain", you are using the toolchain - built and bundled inside the Build - Directory. - For example, suppose you created a - suitable image using the steps in the - wiki. - In this situation, you would select - "Build system derived toolchain". - - - - - Specify the Toolchain Root Location: - If you are using a stand-alone pre-built - toolchain, you should be pointing to where it is - installed (e.g. - /opt/poky/&DISTRO;). - See the - "Installing the SDK" - section for information about how the SDK is - installed. - - If you are using a build system derived - toolchain, the path you provide for the - "Toolchain Root Location" field is the - Build Directory - from which you run the - bitbake command (e.g - /home/scottrif/poky/build). - For more information, see the - "Building an SDK Installer" - section. - - - Specify Sysroot Location: - This location is where the root filesystem for - the target hardware resides. - - - This location depends on where you - separately extracted and installed the - target filesystem when you either built - it or downloaded it. - - If you downloaded the root filesystem - for the target hardware rather than - built it, you must download the - sato-sdk image - in order to build any c/c++ projects. - - As an example, suppose you prepared an image - using the steps in the - wiki. - If so, the MY_QEMU_ROOTFS - directory is found in the - Build Directory - and you would browse to and select that directory - (e.g. /home/scottrif/build/MY_QEMU_ROOTFS). - - - For more information on how to install the - toolchain and on how to extract and install the - sysroot filesystem, see the - "Building an SDK Installer" - section. - - - Select the Target Architecture: - The target architecture is the type of hardware - you are going to use or emulate. - Use the pull-down "Target Architecture" menu - to make your selection. - The pull-down menu should have the supported - architectures. - If the architecture you need is not listed in - the menu, you will need to build the image. - See the - "Building a Simple Image" - section of the Yocto Project Development Tasks - Manual for more information. - You can also see the - wiki. - - - -
- -
- Configuring the Target Options - - - You can choose to emulate hardware using the QEMU - emulator, or you can choose to run your image on actual - hardware. - - - QEMU: - Select this option if you will be using the - QEMU emulator. - If you are using the emulator, you also need to - locate the kernel and specify any custom - options. - - If you selected the Build system derived - toolchain, the target kernel you built will be - located in the - Build Directory - in - tmp/deploy/images/machine - directory. - As an example, suppose you performed the steps in - the - wiki. - In this case, you specify your Build Directory path - followed by the image (e.g. - /home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin). - - - If you selected the standalone pre-built - toolchain, the pre-built image you downloaded is - located in the directory you specified when you - downloaded the image. - - Most custom options are for advanced QEMU - users to further customize their QEMU instance. - These options are specified between paired - angled brackets. - Some options must be specified outside the - brackets. - In particular, the options - serial, - nographic, and - kvm must all be outside the - brackets. - Use the man qemu command - to get help on all the options and their use. - The following is an example: - - serial ‘<-m 256 -full-screen>’ - - Regardless of the mode, Sysroot is already - defined as part of the Cross-Compiler Options - configuration in the "Sysroot Location:" field. - - - External HW: - Select this option if you will be using actual - hardware. - - - - - - Click the "Apply" and "OK" to save your plug-in - configurations. - -
-
-
- -
- Creating the Project - - - You can create two types of projects: Autotools-based, or - Makefile-based. - This section describes how to create Autotools-based projects - from within the Eclipse IDE. - For information on creating Makefile-based projects in a - terminal window, see the - "Makefile-Based Projects" - section. - - Do not use special characters in project names - (e.g. spaces, underscores, etc.). Doing so can - cause the configuration to fail. - - - - - To create a project based on a Yocto template and then display - the source code, follow these steps: - - - Select "C Project" from the "File -> New" menu. - - - Expand "Yocto Project SDK Autotools Project". - - - Select "Hello World ANSI C Autotools Projects". - This is an Autotools-based project based on a Yocto - template. - - - Put a name in the "Project name:" field. - Do not use hyphens as part of the name - (e.g. "hello"). - - - Click "Next". - - - Add appropriate information in the various fields. - - - Click "Finish". - - - If the "open perspective" prompt appears, - click "Yes" so that you are in the C/C++ perspective. - - - The left-hand navigation pane shows your project. - You can display your source by double clicking the - project's source file. - - - -
- -
- Configuring the Cross-Toolchains - - - The earlier section, - "Configuring the Neon Eclipse Yocto Plug-in", - sets up the default project configurations. - You can override these settings for a given project by following - these steps: - - - Select "Yocto Project Settings" from - the "Project -> Properties" menu. - This selection brings up the Yocto Project Settings - Dialog and allows you to make changes specific to an - individual project. - By default, the Cross Compiler Options and Target - Options for a project are inherited from settings you - provided using the Preferences Dialog as described - earlier in the - "Configuring the Neon Eclipse Yocto Plug-in" section. - The Yocto Project Settings Dialog allows you to override - those default settings for a given project. - - - Make or verify your configurations for the project and - click "OK". - - - Right-click in the navigation pane and select - "Reconfigure Project" from the pop-up menu. - This selection reconfigures the project by running - Autotools GNU utility programs - such as Autoconf, Automake, and so forth in the - workspace for your project. - Click on the "Console" tab beneath your source code - to see the results of reconfiguring your project. - - - -
- -
- Building the Project - - - To build the project select "Build All" from the - "Project" menu. - The console should update and you can note the cross-compiler - you are using. - - When building "Yocto Project SDK Autotools" projects, the - Eclipse IDE might display error messages for - Functions/Symbols/Types that cannot be "resolved", even when - the related include file is listed at the project navigator and - when the project is able to build. - For these cases only, it is recommended to add a new linked - folder to the appropriate sysroot. - Use these steps to add the linked folder: - - - Select the project. - - - Select "Folder" from the "File > New" menu. - - - In the "New Folder" Dialog, select "Link to alternate - location (linked folder)". - - - Click "Browse" to navigate to the include folder inside - the same sysroot location selected in the Yocto Project - configuration preferences. - - - Click "OK". - - - Click "Finish" to save the linked folder. - - - - -
- -
- Starting QEMU in User-Space NFS Mode - - - To start the QEMU emulator from within Eclipse, follow these - steps: - - See the - "Using the Quick EMUlator (QEMU)" - chapter in the Yocto Project Development Tasks Manual - for more information on using QEMU. - - - Expose and select "External Tools - Configurations ..." from the "Run -> External Tools" menu. - - - Locate and select your image in the navigation panel to - the left (e.g. qemu_i586-poky-linux). - - - Click "Run" to launch QEMU. - - The host on which you are running QEMU must have - the rpcbind utility running to be - able to make RPC calls on a server on that machine. - If QEMU does not invoke and you receive error messages - involving rpcbind, follow the - suggestions to get the service running. - As an example, on a new Ubuntu 16.04 LTS installation, - you must do the following in order to get QEMU to - launch: - - $ sudo apt-get install rpcbind - - After installing rpcbind, you - need to edit the - /etc/init.d/rpcbind file to - include the following line: - - OPTIONS="-i -w" - - After modifying the file, you need to start the - service: - - $ sudo service portmap restart - - - - If needed, enter your host root password in - the shell window at the prompt. - This sets up a Tap 0 connection - needed for running in user-space NFS mode. - - Wait for QEMU to launch. - - Once QEMU launches, you can begin operating - within that environment. - One useful task at this point would be to determine the - IP Address for the user-space NFS by using the - ifconfig command. - The IP address of the QEMU machine appears in the - xterm window. - You can use this address to help you see which particular - IP address the instance of QEMU is using. - - - -
- -
- Deploying and Debugging the Application - - - Once the QEMU emulator is running the image, you can deploy - your application using the Eclipse IDE and then use - the emulator to perform debugging. - Follow these steps to deploy the application. - - Currently, Eclipse does not support SSH port forwarding. - Consequently, if you need to run or debug a remote - application using the host display, you must create a - tunneling connection from outside Eclipse and keep - that connection alive during your work. - For example, in a new terminal, run the following: - - $ ssh -XY user_name@remote_host_ip - - Using the above form, here is an example: - - $ ssh -XY root@192.168.7.2 - - After running the command, add the command to be executed - in Eclipse's run configuration before the application - as follows: - - export DISPLAY=:10.0 - - Be sure to not destroy the connection during your QEMU - session (i.e. do not - exit out of or close that shell). - - - - Select "Debug Configurations..." from the - "Run" menu. - - In the left area, expand - "C/C++Remote Application". - - - Locate your project and select it to bring - up a new tabbed view in the Debug Configurations Dialog. - - - Click on the "Debugger" tab to see the - cross-tool debugger you are using. - Be sure to change to the debugger perspective in Eclipse. - - - Click on the "Main" tab. - - Create a new connection to the QEMU instance - by clicking on "new". - - Select "SSH", which means - Secure Socket Shell. - Optionally, you can select a TCF connection instead. - - - Click "Next". - - - Clear out the "Connection name" field and - enter any name you want for the connection. - - - Put the IP address for the connection in - the "Host" field. - For QEMU, the default is "192.168.7.2". - However, if a previous QEMU session did not exit - cleanly, the IP address increments (e.g. - "192.168.7.3"). - - You can find the IP address for the current QEMU - session by looking in the xterm that opens when - you launch QEMU. - - - - Enter "root", which - is the default for QEMU, for the "User" field. - Be sure to leave the password field empty. - - Click "Finish" to close the - New Connections Dialog. - - - If necessary, use the drop-down menu now in the - "Connection" field and pick the IP Address you entered. - - - Assuming you are connecting as the root user, - which is the default for QEMU x86-64 SDK images provided by - the Yocto Project, in the "Remote Absolute File Path for - C/C++ Application" field, browse to - /home/root/ProjectName - (e.g. /home/root/hello). - You could also browse to any other path you have write - access to on the target such as - /usr/bin. - This location is where your application will be located on - the QEMU system. - If you fail to browse to and specify an appropriate - location, QEMU will not understand what to remotely - launch. - Eclipse is helpful in that it auto fills your application - name for you assuming you browsed to a directory. - Tips - - - If you are prompted to provide a username - and to optionally set a password, be sure - you provide "root" as the username and you - leave the password field blank. - - - If browsing to a directory fails or times - out, but you can - ssh into your QEMU - or target from the command line and you - have proxies set up, it is likely that - Eclipse is sending the SSH traffic to a - proxy. - In this case, either use TCF , or click on - "Configure proxy settings" in the - connection dialog and add the target IP - address to the "bypass proxy" section. - You might also need to change - "Active Provider" from Native to Manual. - - - - - - Be sure you change to the "Debug" perspective in Eclipse. - - - Click "Debug" - - - Accept the debug perspective. - - - -
- -
- Using Linuxtools - - - As mentioned earlier in the manual, performance tools exist - (Linuxtools) that enhance your development experience. - These tools are aids in developing and debugging applications and - images. - You can run these tools from within the Eclipse IDE through the - "Linuxtools" menu. - - - - For information on how to configure and use these tools, see - http://www.eclipse.org/linuxtools/. - -
-
- diff --git a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml index 2cadcc1e9..765c0f218 100644 --- a/poky/documentation/sdk-manual/sdk-appendix-obtain.xml +++ b/poky/documentation/sdk-manual/sdk-appendix-obtain.xml @@ -216,12 +216,6 @@ TOOLCHAIN_TARGET_TASK_append = " libc-staticdev"
- - For additional information on building the - installer, see the - Cookbook guide to Making an Eclipse Debug Capable Image - wiki page. - @@ -259,9 +253,6 @@ You want to use the root filesystem as the target sysroot. - For example, the Eclipse IDE environment with the Eclipse - Yocto Plug-in installed allows you to use QEMU to boot - under NFS. You want to develop your target application diff --git a/poky/documentation/sdk-manual/sdk-eclipse-project.xml b/poky/documentation/sdk-manual/sdk-eclipse-project.xml deleted file mode 100644 index 15a9ae753..000000000 --- a/poky/documentation/sdk-manual/sdk-eclipse-project.xml +++ /dev/null @@ -1,1248 +0,0 @@ - %poky; ] > - - - - Developing Applications Using <trademark class='trade'>Eclipse</trademark> - - - If you are familiar with the popular Eclipse IDE, you can use an - Eclipse Yocto Plug-in to allow you to develop, deploy, and test your - application all from within Eclipse. - This chapter describes general workflow using the SDK and Eclipse - and how to configure and set up Eclipse. - Notes - - - This chapter assumes development of applications on top of - an image prepared using the Yocto Project. - As such, inclusion of a pre-built image or the building of - an image is included in the workflow. - - - The chapter also assumes development on a build host that - is set up to use the Yocto Project. - Realize that you can easily use Eclipse and the Yocto - Project plug-in to develop an application for any number - of images developed and tested on different machines. - - - - - -
- Application Development Workflow Using <trademark class='trade'>Eclipse</trademark> - - - The following figure and supporting list summarize a - general workflow for application development that uses the - SDK within the Eclipse IDE. - The application developed runs on top of an image created using - the Yocto Project. - - - - - - - - - - Prepare the Host System for the Yocto Project: - Because this example workflow assumes development on a - system set up to use the Yocto Project, you need to be - sure your - build host - can use the Yocto Project. - See the - "Preparing the Build Host" - section in the Yocto Project Development Tasks Manual for - information on how to set up your build host. - - Be sure you install the "xterm" package, which is a - graphical and Eclipse plug-in extra - needed by Eclipse. - - - - Secure the Yocto Project Kernel Target Image: - This example workflow assumes application development on - top of an image built using the Yocto Project. - Depending on whether you are using a pre-built image - that matches your target architecture or you are using an - image you build using the - OpenEmbedded Build System - and where you are going to run the image while you - develop your application (QEMU or real hardware), the - area from which you get the image differs. - - - Download the image from - machines - if your target architecture is supported and - you are going to develop and test your - application on actual hardware. - - - Download the image from - - machines/qemu if - your target architecture is supported and you - are going to develop and test your application - using the - QEMU Emulator. - - - Build your image if you cannot find a pre-built - image that matches your target architecture. - If your target architecture is similar to a - supported architecture, you can modify the - kernel image before you build it. - See the - "Using devtool to Patch the Kernel" - section in the Yocto Project Linux Kernel - Development Manual for an example. - You can also see the - "Making a Suitable Qemux86 Image" - wiki for steps needed to build an image suitable - for QEMU and for debugging within the Eclipse IDE. - - - - - Install the SDK: - The SDK provides a target-specific cross-development - toolchain, the root filesystem, the QEMU emulator, and - other tools that can help you develop your application. - For information on how to install the SDK, see the - "Installing the SDK" - section. - - - Secure the Target Root Filesystem and the Cross-Development Toolchain: - You need to find and download the appropriate root - filesystem and the cross-development toolchain. - - You can find the tarballs for the root filesystem - in the same area used for the kernel image. - Depending on the type of image you are running, the - root filesystem you need differs. - For example, if you are developing an application that - runs on an image that supports Sato, you need to get a - root filesystem that supports Sato. - - You can find the cross-development toolchains at - toolchains. - Be sure to get the correct toolchain for your - development host and your target architecture. - See the "Locating Pre-Built SDK Installers" - section for information and the - "Installing the SDK" - section for installation information. - - As an alternative to downloading an SDK, you can - build the SDK installer. - For information on building the installer, see the - "Building an SDK Installer" - section. - Another helpful resource for building an installer - is the - "Cookbook guide to Making an Eclipse Debug Capable Image" - wiki page. - - - - Create and Build Your Application: - You need to have source files for your application. - Once you have the files, you can use the Eclipse IDE - to import them and build the project. - - - Deploy the Image With the Application: - Using the Eclipse IDE, you can deploy your image to the - hardware or to QEMU through the project's preferences. - You can also use Eclipse to load and test your image - under QEMU. - See the - "Using the Quick EMUlator (QEMU)" - chapter in the Yocto Project Development Tasks Manual - for information on using QEMU. - - - Test and Debug the Application: - Once your application is deployed, you need to test it. - Within the Eclipse IDE, you can use the debugging - environment along with supported performance enhancing - Linux Tools. - - - -
- -
- Working Within Eclipse - - - The Eclipse IDE is a popular development environment and it - fully supports development using the Yocto Project. - - - - When you install and configure the Eclipse Yocto Project - Plug-in into the Eclipse IDE, you maximize your Yocto - Project experience. - Installing and configuring the Plug-in results in an - environment that has extensions specifically designed to let - you more easily develop software. - These extensions allow for cross-compilation, deployment, and - execution of your output into a QEMU emulation session as well - as actual target hardware. - You can also perform cross-debugging and profiling. - The environment also supports performance enhancing - tools - that allow you to perform remote profiling, tracing, - collection of power data, collection of latency data, and - collection of performance data. - - This release of the Yocto Project supports both the Oxygen - and Neon versions of the Eclipse IDE. - This section provides information on how to use the Oxygen - release with the Yocto Project. - For information on how to use the Neon version of Eclipse - with the Yocto Project, see - "Appendix D". - - - -
- Setting Up the Oxygen Version of the Eclipse IDE - - - To develop within the Eclipse IDE, you need to do the - following: - - - Install the Oxygen version of the Eclipse IDE. - - - Configure the Eclipse IDE. - - - Install the Eclipse Yocto Plug-in. - - - Configure the Eclipse Yocto Plug-in. - - - - Do not install Eclipse from your distribution's package - repository. - Be sure to install Eclipse from the official Eclipse - download site as directed in the next section. - - - -
- Installing the Oxygen Eclipse IDE - - - Follow these steps to locate, install, and configure - Oxygen Eclipse: - - - Locate the Oxygen Download: - Open a browser and go to - http://www.eclipse.org/oxygen/. - - - Download the Tarball: - Click through the "Download" buttons to - download the file. - - - Unpack the Tarball: - Move to a clean directory and unpack the - tarball. - Here is an example: - - $ cd ~ - $ tar -xzvf ~/Downloads/eclipse-inst-linux64.tar.gz - - Everything unpacks into a folder named - "eclipse-installer". - - - Launch the Installer: - Use the following commands to launch the - installer: - - $ cd ~/eclipse-installer - $ ./eclipse-inst - - - - Select Your IDE: - From the list, select the "Eclipse IDE for - C/C++ Developers". - - - Install the Software: - Click "Install" to begin the installation. - Accept all the certificates and any license - agreements. - Click "Install" again to finish the installation. - - - Launch Oxygen: - Accept the default "workspace" and click the - "Launch" button. - You should see the Eclipse welcome page from which - can click "workbench" to enter your workspace. - - The executable for Eclipse is located in the - eclipse/cpp-oxygen/eclipse - folder. - To launch Eclipse outside of the installation - process, simply execute that binary. - Here is an example: - - $ ~/eclipse/cpp-oxygen/eclipse/eclipse - - - - - -
- -
- Configuring the Oxygen Eclipse IDE - - - Follow these steps to configure the Oxygen Eclipse IDE. - Notes - - - Depending on how you installed Eclipse and what - you have already done, some of the options do - not appear. - If you cannot find an option as directed by the - manual, it has already been installed. - - - If you want to see all options regardless of - whether they are installed or not, deselect the - "Hide items that are already installed" - check box. - - - - - - Be sure Eclipse is running and you are in your - workbench. - Just click "workbench" if you are not in your - default workspace. - - - Select "Install New Software" from the "Help" - pull-down menu. - - - Select - "Oxygen - http://download.eclipse.org/releases/oxygen" - from the "Work with:" pull-down menu. - - - Expand the box next to "Linux Tools" and select - the following: - - C/C++ Remote (Over TCF/TE) Run/Debug Launcher - TM Terminal - - - - Expand the box next to "Mobile and Device - Development" and select the following - boxes: - - C/C++ Remote (Over TCF/TE) Run/Debug Launcher - Remote System Explorer User Actions - TM Terminal - TCF Remote System Explorer add-in - TCF Target Explorer - - - - Expand the box next to "Programming Languages" - and select the following box: - - C/C++ Development Tools SDK - - - - Complete the installation by clicking through - appropriate "Next" and "Finish" buttons and then - restart the Eclipse IDE. - - - -
- -
- Installing or Accessing the Oxygen Eclipse Yocto Plug-in - - - You can install the Eclipse Yocto Plug-in into the - Eclipse IDE one of two ways: use the Yocto Project's - Eclipse Update site to install the pre-built plug-in, - or build and install the plug-in from the latest - source code. - - -
- Installing the Pre-built Plug-in from the Yocto Project Eclipse Update Site - - - To install the Oxygen Eclipse Yocto Plug-in from the - update site, follow these steps: - - - Start up the Eclipse IDE. - - - In Eclipse, select "Install New - Software" from the "Help" menu. - - - Click "Add..." in the "Work with:" area. - - - Enter - &ECLIPSE_DL_PLUGIN_URL;/oxygen - in the URL field and provide a meaningful - name in the "Name" field. - - - Click "OK" to have the entry automatically - populate the "Work with:" field and to have - the items for installation appear in the window - below. - - - Check the boxes next to the following: - - Yocto Project SDK Plug-in - Yocto Project Documentation plug-in - - - - Complete the remaining software - installation steps and then restart the - Eclipse IDE to finish the installation of - the plug-in. - - You can click "OK" when prompted about - installing software that contains - unsigned content. - - - - -
- -
- Installing the Plug-in Using the Latest Source Code - - - To install the Oxygen Eclipse Yocto Plug-in from the - latest source code, follow these steps: - - - Be sure your build host has JDK version 1.8 - or greater. - On a Linux build host you can determine the - version using the following command: - - $ java -version - - - - Install X11-related packages: - - $ sudo apt-get install xauth - - - - In a new terminal shell, create a - Git repository with: - - $ cd ~ - $ git clone git://git.yoctoproject.org/eclipse-yocto - - - - Use Git to create the correct tag: - - $ cd ~/eclipse-yocto - $ git checkout -b oxygen/&DISTRO_NAME_NO_CAP; remotes/origin/oxygen/&DISTRO_NAME_NO_CAP; - - This creates a local tag named - oxygen/&DISTRO_NAME_NO_CAP; - based on the branch - origin/oxygen/&DISTRO_NAME_NO_CAP;. - You are put into a detached HEAD state, - which is fine since you are only going to - be building and not developing. - - - Change to the scripts - directory within the Git repository: - - $ cd scripts - - - - Set up the local build environment - by running the setup script: - - $ ./setup.sh - - When the script finishes execution, - it prompts you with instructions on how to - run the build.sh - script, which is also in the - scripts directory of - the Git repository created earlier. - - - Run the build.sh - script as directed. - Be sure to provide the tag name, - documentation branch, and a release name. - - - Following is an example: - - $ ECLIPSE_HOME=/home/scottrif/eclipse-yocto/scripts/eclipse ./build.sh -l oxygen/&DISTRO_NAME_NO_CAP; master yocto-&DISTRO; 2>&1 | tee build.log - - The previous example command adds the tag - you need for - oxygen/&DISTRO_NAME_NO_CAP; - to HEAD, then tells - the build script to use the local (-l) Git - checkout for the build. - After running the script, the file - org.yocto.sdk-release-date-archive.zip - is in the current directory. - - - If necessary, start the Eclipse IDE - and be sure you are in the Workbench. - - - Select "Install New Software" from - the "Help" pull-down menu. - - - Click "Add". - - - Provide anything you want in the - "Name" field. - - - Click "Archive" and browse to the - ZIP file you built earlier. - This ZIP file should not be "unzipped", and - must be the - *archive.zip file - created by running the - build.sh script. - - - Click the "OK" button. - - - Check the boxes that appear in - the installation window to install the - following: - - Yocto Project SDK Plug-in - Yocto Project Documentation plug-in - - - - Finish the installation by clicking - through the appropriate buttons. - You can click "OK" when prompted about - installing software that contains unsigned - content. - - - Restart the Eclipse IDE if necessary. - - - - - - At this point you should be able to configure the - Eclipse Yocto Plug-in as described in the - "Configuring the Oxygen Eclipse Yocto Plug-in" - section. - -
-
- -
- Configuring the Oxygen Eclipse Yocto Plug-In - - - Configuring the Oxygen Eclipse Yocto Plug-in involves - setting the Cross Compiler options and the Target - options. - The configurations you choose become the default - settings for all projects. - You do have opportunities to change them later when - you configure the project (see the following section). - - - - To start, you need to do the following from within the - Eclipse IDE: - - - Choose "Preferences" from the "Window" menu to - display the Preferences Dialog. - - - Click "Yocto Project SDK" to display - the configuration screen. - - - The following sub-sections describe how to configure - the plug-in. - - Throughout the descriptions, a start-to-finish - example for preparing a QEMU image for use with - Eclipse is referenced as the "wiki" and is linked - to the example on the - " Cookbook guide to Making an Eclipse Debug Capable Image" - wiki page. - - - -
- Configuring the Cross-Compiler Options - - - Cross Compiler options enable Eclipse to use your - specific cross compiler toolchain. - To configure these options, you must select - the type of toolchain, point to the toolchain, - specify the sysroot location, and select the target - architecture. - - - Selecting the Toolchain Type: - Choose between "Standalone pre-built toolchain" - and "Build system derived toolchain" for - Cross Compiler Options. - - - Standalone Pre-built Toolchain: - Select this type when you are using - a stand-alone cross-toolchain. - For example, suppose you are an - application developer and do not - need to build a target image. - Instead, you just want to use an - architecture-specific toolchain on - an existing kernel and target root - filesystem. - In other words, you have downloaded - and installed a pre-built toolchain - for an existing image. - - - Build System Derived Toolchain: - Select this type if you built the - toolchain as part of the - Build Directory. - When you select "Build system derived - toolchain", you are using the toolchain - built and bundled inside the Build - Directory. - For example, suppose you created a - suitable image using the steps in the - wiki. - In this situation, you would select - "Build system derived toolchain". - - - - - Specify the Toolchain Root Location: - If you are using a stand-alone pre-built - toolchain, you should be pointing to where - it is installed (e.g. - /opt/poky/&DISTRO;). - See the - "Installing the SDK" - section for information about how the SDK is - installed. - - If you are using a build system - derived toolchain, the path you provide for - the "Toolchain Root Location" field is the - Build Directory - from which you run the - bitbake command (e.g - /home/scottrif/poky/build). - - For more information, see the - "Building an SDK Installer" - section. - - - Specify Sysroot Location: - This location is where the root filesystem - for the target hardware resides. - - - This location depends on where you - separately extracted and installed the - target filesystem when you either built - it or downloaded it. - - If you downloaded the root filesystem - for the target hardware rather than - built it, you must download the - sato-sdk image - in order to build any c/c++ projects. - - As an example, suppose you prepared an - image using the steps in the - wiki. - If so, the - MY_QEMU_ROOTFS - directory is found in the Build Directory - and you would browse to and select that - directory (e.g. - /home/scottrif/poky/build/MY_QEMU_ROOTFS). - - - For more information on how to - install the toolchain and on how to extract - and install the sysroot filesystem, see the - "Building an SDK Installer" - section. - - - Select the Target Architecture: - The target architecture is the type of - hardware you are going to use or emulate. - Use the pull-down "Target Architecture" - menu to make your selection. - The pull-down menu should have the - supported architectures. - If the architecture you need is not listed - in the menu, you will need to build the - image. - See the - "Building a Simple Image" - section of the Yocto Project Development Tasks - Manual for more information. - You can also see the - wiki. - - - -
- -
- Configuring the Target Options - - - You can choose to emulate hardware using the QEMU - emulator, or you can choose to run your image on - actual hardware. - - - QEMU: - Select this option if you will be using the - QEMU emulator. - If you are using the emulator, you also - need to locate the kernel and specify any - custom options. - - If you selected the Build system derived - toolchain, the target kernel you built will be - located in the - Build Directory - in - tmp/deploy/images/machine - directory. - As an example, suppose you performed the - steps in the - wiki. - In this case, you specify your Build - Directory path followed by the image (e.g. - /home/scottrif/poky/build/tmp/deploy/images/qemux86/bzImage-qemux86.bin). - - - If you selected the standalone - pre-built toolchain, the pre-built image - you downloaded is located in the directory - you specified when you downloaded the - image. - - Most custom options are for advanced - QEMU users to further customize their QEMU - instance. - These options are specified between paired - angled brackets. - Some options must be specified outside the - brackets. - In particular, the options - serial, - nographic, and - kvm must all be - outside the brackets. - Use the man qemu - command to get help on all the options and - their use. - The following is an example: - - serial ‘<-m 256 -full-screen>’ - - Regardless of the mode, Sysroot is already - defined as part of the Cross-Compiler - Options configuration in the "Sysroot - Location:" field. - - - External HW: - Select this option if you will be using - actual hardware. - - - - - - Click "Apply and Close" to save your plug-in - configurations. - -
-
-
- -
- Creating the Project - - - You can create two types of projects: Autotools-based, or - Makefile-based. - This section describes how to create Autotools-based - projects from within the Eclipse IDE. - For information on creating Makefile-based projects in a - terminal window, see the - "Makefile-Based Projects" - section. - - Do not use special characters in project names - (e.g. spaces, underscores, etc.). Doing so can - cause configuration to fail. - - - - - To create a project based on a Yocto template and then - display the source code, follow these steps: - - - Select "C/C++ Project" from the "File -> New" menu. - - - Select "C Managed Build" from the available options and - click "Next". - - - Expand "Yocto Project SDK Autotools Project". - - - Select "Hello World ANSI C Autotools Projects". - This is an Autotools-based project based on a Yocto - template. - - - Put a name in the "Project name:" field. - Do not use hyphens as part of the name - (e.g. "hello"). - - - Click "Next". - - - Add appropriate information in the various fields. - - - Click "Finish". - - - If the "open perspective" prompt appears, - click "Yes" so that you in the C/C++ perspective. - - The left-hand navigation pane shows - your project. - You can display your source by double clicking the - project's source file. - - - -
- -
- Configuring the Cross-Toolchains - - - The earlier section, - "Configuring the Oxygen Eclipse Yocto Plug-in", - sets up the default project configurations. - You can override these settings for a given project by - following these steps: - - - Select "Yocto Project Settings" from - the "Project -> Properties" menu. - This selection brings up the Yocto Project Settings - Dialog and allows you to make changes specific to - an individual project. - By default, the Cross Compiler Options and - Target Options for a project are inherited from - settings you provided using the Preferences Dialog - as described earlier in the - "Configuring the Oxygen Eclipse Yocto Plug-in" - section. - The Yocto Project Settings Dialog allows you to - override those default settings for a given - project. - - - Make or verify your configurations for the - project and click "Apply and Close". - - - Right-click in the navigation pane and select - "Reconfigure Project" from the pop-up menu. - This selection reconfigures the project by running - Autotools GNU utility programs - such as Autoconf, Automake, and so forth in the - workspace for your project. - Click on the "Console" tab beneath your source code - to see the results of reconfiguring your project. - - - -
- -
- Building the Project - - To build the project select "Build All" from the - "Project" menu. - The console should update and you can note the - cross-compiler you are using (i.e. - i586-poky-linux-gcc in this example). - - When building "Yocto Project SDK Autotools" projects, - the Eclipse IDE might display error messages for - Functions/Symbols/Types that cannot be "resolved", - even when the related include file is listed at the - project navigator and when the project is able to - build. - For these cases only, it is recommended to add a new - linked folder to the appropriate sysroot. - Use these steps to add the linked folder: - - - Select the project. - - - Select "Folder" from the "File -> New" menu. - - - In the "New Folder" Dialog, click the "Advanced" - button and then activate "Link to - alternate location (linked folder)" button. - - - Click "Browse" to navigate to the include - folder inside the same sysroot location - selected in the Yocto Project - configuration preferences. - - - Click "Finish" to save the linked folder. - - - - -
- -
- Starting QEMU in User-Space NFS Mode - - - To start the QEMU emulator from within Eclipse, follow - these steps: - - See the - "Using the Quick EMUlator (QEMU)" - chapter in the Yocto Project Development Tasks Manual - for more information on using QEMU. - - - Expose and select "External Tools - Configurations ..." from the "Run -> External - Tools" menu. - - - Locate and select your image in the navigation - panel to the left - (e.g. qemu_i586-poky-linux). - - - Click "Run" to launch QEMU. - - The host on which you are running QEMU must - have the rpcbind utility - running to be able to make RPC calls on a - server on that machine. - If QEMU does not invoke and you receive error - messages involving - rpcbind, follow the - suggestions to get the service running. - As an example, on a new Ubuntu 16.04 LTS - installation, you must do the following in a new - shell in order to get QEMU to launch: - - $ sudo apt-get install rpcbind - - After installing rpcbind, - you need to edit the - /etc/init.d/rpcbind file - to include the following line: - - OPTIONS="-i -w" - - After modifying the file, you need to start the - service: - - $ sudo service portmap restart - - - - - If needed, enter your host root password in - the shell window at the prompt. - This sets up a Tap 0 - connection needed for running in user-space NFS - mode. - - - Wait for QEMU to launch. - - - Once QEMU launches, you can begin operating - within that environment. - One useful task at this point would be to determine - the IP Address for the user-space NFS by using the - ifconfig command. - The IP address of the QEMU machine appears in the - xterm window. - You can use this address to help you see which - particular - IP address the instance of QEMU is using. - - - -
- -
- Deploying and Debugging the Application - - - Once the QEMU emulator is running the image, you can deploy - your application using the Eclipse IDE and then use - the emulator to perform debugging. - Follow these steps to deploy the application. - - Currently, Eclipse does not support SSH port - forwarding. - Consequently, if you need to run or debug a remote - application using the host display, you must create a - tunneling connection from outside Eclipse and keep - that connection alive during your work. - For example, in a new terminal, run the following: - - $ ssh -XY user_name@remote_host_ip - - Using the above form, here is an example: - - $ ssh -XY root@192.168.7.2 - - After running the command, add the command to be - executed in Eclipse's run configuration before the - application as follows: - - export DISPLAY=:10.0 - - Be sure to not destroy the connection during your QEMU - session (i.e. do not - exit out of or close that shell). - - - - Select "Debug Configurations..." from the - "Run" menu. - - - In the left area, expand - "C/C++Remote Application". - - - Locate your project and select it to bring - up a new tabbed view in the Debug Configurations - Dialog. - - - Click on the "Debugger" tab to see the - cross-tool debugger you are using. - Be sure to change to the debugger perspective in - Eclipse. - - - Click on the "Main" tab. - - - Create a new connection to the QEMU instance - by clicking on "new". - Select "SSH", which - means Secure Socket Shell and then click "OK". - Optionally, you can select a TCF connection - instead. - - - Clear out the "Connection name" field and - enter any name you want for the connection. - - - Put the IP address for the connection in - the "Host" field. - For QEMU, the default is "192.168.7.2". - However, if a previous QEMU session did not exit - cleanly, the IP address increments (e.g. - "192.168.7.3"). - - You can find the IP address for the current - QEMU session by looking in the xterm that - opens when you launch QEMU. - - - - Enter "root", which - is the default for QEMU, for the "User" field. - Be sure to leave the password field empty. - - - Click "Finish" to close the New Connections Dialog. - - - If necessary, use the drop-down menu now in the - "Connection" field and pick the IP Address you - entered. - - - Assuming you are connecting as the root - user, which is the default for QEMU x86-64 SDK - images provided by the Yocto Project, in the - "Remote Absolute File Path for C/C++ Application" - field, browse to - /home/root/ProjectName - (e.g. /home/root/hello). - You could also browse to any other path you have - write access to on the target such as - /usr/bin. - This location is where your application will be - located on the QEMU system. - If you fail to browse to and specify an appropriate - location, QEMU will not understand what to remotely - launch. - Eclipse is helpful in that it auto fills your - application name for you assuming you browsed to a - directory. - Tips - - - If you are prompted to provide a username - and to optionally set a password, be sure - you provide "root" as the username and you - leave the password field blank. - - - If browsing to a directory fails or times - out, but you can - ssh into your QEMU - or target from the command line and you - have proxies set up, it is likely that - Eclipse is sending the SSH traffic to a - proxy. - In this case, either use TCF , or click on - "Configure proxy settings" in the - connection dialog and add the target IP - address to the "bypass proxy" section. - You might also need to change - "Active Provider" from Native to Manual. - - - - - - Be sure you change to the "Debug" perspective in - Eclipse. - - - Click "Debug" - - - Accept the debug perspective. - - - -
- -
- Using Linuxtools - - - As mentioned earlier in the manual, performance tools exist - (Linuxtools) that enhance your development experience. - These tools are aids in developing and debugging - applications and images. - You can run these tools from within the Eclipse IDE through - the "Linuxtools" menu. - - - - For information on how to configure and use these tools, - see - http://www.eclipse.org/linuxtools/. - -
-
-
- diff --git a/poky/documentation/sdk-manual/sdk-extensible.xml b/poky/documentation/sdk-manual/sdk-extensible.xml index 9be082d8b..f7c5c00b8 100644 --- a/poky/documentation/sdk-manual/sdk-extensible.xml +++ b/poky/documentation/sdk-manual/sdk-extensible.xml @@ -27,8 +27,7 @@ In addition to the functionality available through devtool, you can alternatively make use of the - toolchain directly, for example from Makefile, Autotools, and - Eclipse-based projects. + toolchain directly, for example from Makefile and Autotools. See the "Using the SDK Toolchain Directly" chapter for more information. @@ -119,11 +118,6 @@ For information on building the installer, see the "Building an SDK Installer" section. - Another helpful resource for building an installer is the - Cookbook guide to Making an Eclipse Debug Capable Image - wiki page. - This wiki page focuses on development when using the Eclipse - IDE. diff --git a/poky/documentation/sdk-manual/sdk-intro.xml b/poky/documentation/sdk-manual/sdk-intro.xml index 8642be61a..9169fe9c0 100644 --- a/poky/documentation/sdk-manual/sdk-intro.xml +++ b/poky/documentation/sdk-manual/sdk-intro.xml @@ -14,9 +14,6 @@ This manual provides information that explains how to use both the Yocto Project extensible and standard SDKs to develop applications and images. - Additionally, the manual also provides information on how to use - the popular Eclipse IDE as part - of your application development workflow within the SDK environment. Prior to the 2.0 Release of the Yocto Project, application development was primarily accomplished through the use of the @@ -112,21 +109,6 @@ However, QEMU plays an important role in the development process that revolves around use of the SDK.
- - The Eclipse IDE Yocto Plug-in. - This plug-in is available for you if you are an Eclipse - user. - In the same manner as QEMU, the plug-in is not literally part - of the SDK but is rather available for use as part of the - development process. - - - Various performance-related - tools - that can enhance your development experience. - These tools are also separate from the actual SDK but can be - independently obtained and used in the development process. - @@ -271,53 +253,6 @@ - -
- <trademark class='trade'>Eclipse</trademark> Yocto Plug-in - - - The Eclipse IDE is a popular development environment and it fully - supports development using the Yocto Project. - When you install and configure the Eclipse Yocto Project Plug-in - into the Eclipse IDE, you maximize your Yocto Project experience. - Installing and configuring the Plug-in results in an environment - that has extensions specifically designed to let you more easily - develop software. - These extensions allow for cross-compilation, deployment, and - execution of your output into a QEMU emulation session. - You can also perform cross-debugging and profiling. - The environment also supports many performance-related - tools - that enhance your development experience. - - Previous releases of the Eclipse Yocto Plug-in supported - "user-space tools" (i.e. LatencyTOP, PowerTOP, Perf, SystemTap, - and Lttng-ust) that also added to the development experience. - These tools have been deprecated with the release of the - Eclipse Yocto Plug-in. - - - - - For information about the application development workflow that - uses the Eclipse IDE and for a detailed example of how to install - and configure the Eclipse Yocto Project Plug-in, see the - "Developing Applications Using Eclipse" - Chapter. - -
- -
- Performance Enhancing Tools - - - Supported performance enhancing tools are available that let you - profile, debug, and perform tracing on your projects developed - using Eclipse. - For information on these tools see - http://www.eclipse.org/linuxtools/. - -
diff --git a/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl b/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl deleted file mode 100644 index 77ba5f571..000000000 --- a/poky/documentation/sdk-manual/sdk-manual-eclipse-customization.xsl +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/poky/documentation/sdk-manual/sdk-manual.xml b/poky/documentation/sdk-manual/sdk-manual.xml index 1828119df..7edd2c46a 100644 --- a/poky/documentation/sdk-manual/sdk-manual.xml +++ b/poky/documentation/sdk-manual/sdk-manual.xml @@ -63,9 +63,14 @@ 2.7 - &REL_MONTH_YEAR; + May 2019 Released with the Yocto Project 2.7 Release. + + 2.8 + &REL_MONTH_YEAR; + Released with the Yocto Project 2.8 Release. + @@ -130,16 +135,12 @@ - - - - ' presents `include') +... +"virtfs-proxy-helper.c" --> +... +"virtfs-proxy-helper.c" --> "qemu-common.h" --> --> + --> --> --> + --> --> +... + +3, The bug is found on SLED 11.2 x86. In libcap header file +/usr/include/sys/capability.h, it does evil stuff like this: +... + 25 /* + 26 * Make sure we can be included from userland by preventing + 27 * capability.h from including other kernel headers + 28 */ + 29 #define _LINUX_TYPES_H + 30 #define _LINUX_FS_H + 31 #define __LINUX_COMPILER_H + 32 #define __user + 33 + 34 typedef unsigned int __u32; + 35 typedef __u32 __le32; +... +This completely prevents including /usr/include/linux/types.h. +The above ` --> ' is prevented, +and '__u64' is defined in . + +4, Modify virtfs-proxy-helper.c to include +last to workaround the issue. + +http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html +http://patchwork.linuxtv.org/patch/12748/ + +Upstream-Status: Pending +Signed-off-by: Hongxu Jia + +--- + fsdev/virtfs-proxy-helper.c | 7 +++++-- + 1 file changed, 5 insertions(+), 2 deletions(-) + +diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c +index 6f132c5f..8329950c 100644 +--- a/fsdev/virtfs-proxy-helper.c ++++ b/fsdev/virtfs-proxy-helper.c +@@ -13,7 +13,6 @@ + #include + #include + #include +-#include + #include + #include + #include +@@ -27,7 +26,11 @@ + #include "9p-iov-marshal.h" + #include "hw/9pfs/9p-proxy.h" + #include "fsdev/9p-iov-marshal.h" +- ++/* ++ * Include this one last due to some versions of it being buggy: ++ * http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html ++ */ ++#include + #define PROGNAME "virtfs-proxy-helper" + + #ifndef XFS_SUPER_MAGIC diff --git a/poky/meta/recipes-devtools/qemu/qemu/0012-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch b/poky/meta/recipes-devtools/qemu/qemu/0012-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch new file mode 100644 index 000000000..04664195d --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu/0012-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch @@ -0,0 +1,74 @@ +From 0a53e906510cce1f32bc04a11e81ea40f834dac4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= +Date: Wed, 12 Aug 2015 15:11:30 -0500 +Subject: [PATCH] cpus.c: Add error messages when qemi_cpu_kick_thread fails. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Add custom_debug.h with function for print backtrace information. +When pthread_kill fails in qemu_cpu_kick_thread display backtrace and +current cpu information. + +Upstream-Status: Inappropriate +Signed-off-by: Aníbal Limón + +--- + cpus.c | 5 +++++ + custom_debug.h | 24 ++++++++++++++++++++++++ + 2 files changed, 29 insertions(+) + create mode 100644 custom_debug.h + +diff --git a/cpus.c b/cpus.c +index e83f72b4..e6e2576e 100644 +--- a/cpus.c ++++ b/cpus.c +@@ -1769,6 +1769,8 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) + return NULL; + } + ++#include "custom_debug.h" ++ + static void qemu_cpu_kick_thread(CPUState *cpu) + { + #ifndef _WIN32 +@@ -1781,6 +1783,9 @@ static void qemu_cpu_kick_thread(CPUState *cpu) + err = pthread_kill(cpu->thread->thread, SIG_IPI); + if (err && err != ESRCH) { + fprintf(stderr, "qemu:%s: %s", __func__, strerror(err)); ++ fprintf(stderr, "CPU #%d:\n", cpu->cpu_index); ++ cpu_dump_state(cpu, stderr, fprintf, 0); ++ backtrace_print(); + exit(1); + } + #else /* _WIN32 */ +diff --git a/custom_debug.h b/custom_debug.h +new file mode 100644 +index 00000000..f029e455 +--- /dev/null ++++ b/custom_debug.h +@@ -0,0 +1,24 @@ ++#include ++#include ++#define BACKTRACE_MAX 128 ++static void backtrace_print(void) ++{ ++ int nfuncs = 0; ++ void *buf[BACKTRACE_MAX]; ++ char **symbols; ++ int i; ++ ++ nfuncs = backtrace(buf, BACKTRACE_MAX); ++ ++ symbols = backtrace_symbols(buf, nfuncs); ++ if (symbols == NULL) { ++ fprintf(stderr, "backtrace_print failed to get symbols"); ++ return; ++ } ++ ++ fprintf(stderr, "Backtrace ...\n"); ++ for (i = 0; i < nfuncs; i++) ++ fprintf(stderr, "%s\n", symbols[i]); ++ ++ free(symbols); ++} diff --git a/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch b/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch deleted file mode 100644 index 9cbe83881..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0012-fix-libcap-header-issue-on-some-distro.patch +++ /dev/null @@ -1,86 +0,0 @@ -From d3e0b8dac7c2eb20d7fcff747bc98b981f4398ef Mon Sep 17 00:00:00 2001 -From: Hongxu Jia -Date: Tue, 12 Mar 2013 09:54:06 +0800 -Subject: [PATCH] fix libcap header issue on some distro - -1, When build qemu-native on SLED 11.2, there is an error: -... -| In file included from /usr/include/bits/sigcontext.h:28, -| from /usr/include/signal.h:339, -| from /buildarea2/tmp/work/i686-linux/qemu-native/1.4.0-r0/ -qemu-1.4.0/include/qemu-common.h:42, -| from fsdev/virtfs-proxy-helper.c:23: -| /usr/include/asm/sigcontext.h:28: error: expected specifier- -qualifier-list before '__u64' -| /usr/include/asm/sigcontext.h:191: error: expected specifier- -qualifier-list before '__u64' -... - -2, The virtfs-proxy-helper.c includes and -qemu-common.h in sequence. The header include map is: -(`-->' presents `include') -... -"virtfs-proxy-helper.c" --> -... -"virtfs-proxy-helper.c" --> "qemu-common.h" --> --> - --> --> --> - --> --> -... - -3, The bug is found on SLED 11.2 x86. In libcap header file -/usr/include/sys/capability.h, it does evil stuff like this: -... - 25 /* - 26 * Make sure we can be included from userland by preventing - 27 * capability.h from including other kernel headers - 28 */ - 29 #define _LINUX_TYPES_H - 30 #define _LINUX_FS_H - 31 #define __LINUX_COMPILER_H - 32 #define __user - 33 - 34 typedef unsigned int __u32; - 35 typedef __u32 __le32; -... -This completely prevents including /usr/include/linux/types.h. -The above ` --> ' is prevented, -and '__u64' is defined in . - -4, Modify virtfs-proxy-helper.c to include -last to workaround the issue. - -http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html -http://patchwork.linuxtv.org/patch/12748/ - -Upstream-Status: Pending -Signed-off-by: Hongxu Jia - ---- - fsdev/virtfs-proxy-helper.c | 7 +++++-- - 1 file changed, 5 insertions(+), 2 deletions(-) - -diff --git a/fsdev/virtfs-proxy-helper.c b/fsdev/virtfs-proxy-helper.c -index 6f132c5f..8329950c 100644 ---- a/fsdev/virtfs-proxy-helper.c -+++ b/fsdev/virtfs-proxy-helper.c -@@ -13,7 +13,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -27,7 +26,11 @@ - #include "9p-iov-marshal.h" - #include "hw/9pfs/9p-proxy.h" - #include "fsdev/9p-iov-marshal.h" -- -+/* -+ * Include this one last due to some versions of it being buggy: -+ * http://www.linuxtv.org/pipermail/vdr/2009-August/021194.html -+ */ -+#include - #define PROGNAME "virtfs-proxy-helper" - - #ifndef XFS_SUPER_MAGIC diff --git a/poky/meta/recipes-devtools/qemu/qemu/0013-Revert-target-arm-Use-vector-operations-for-saturati.patch b/poky/meta/recipes-devtools/qemu/qemu/0013-Revert-target-arm-Use-vector-operations-for-saturati.patch new file mode 100644 index 000000000..3d018a74d --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu/0013-Revert-target-arm-Use-vector-operations-for-saturati.patch @@ -0,0 +1,493 @@ +From b46cdcdeb762c1f0eef68dc4a7d90f8176152e07 Mon Sep 17 00:00:00 2001 +From: Alistair Francis +Date: Wed, 1 May 2019 19:51:27 -0700 +Subject: [PATCH] Revert "target/arm: Use vector operations for saturation" + +This reverts commit 89e68b575e138d0af1435f11a8ffcd8779c237bd. + +This fixes QEMU aborts when running the qemuarm machine. + +Signed-off-by: Alistair Francis +Upstream-Status: Pending +--- + target/arm/helper.h | 33 ------- + target/arm/translate-a64.c | 36 ++++---- + target/arm/translate.c | 172 ++++++------------------------------- + target/arm/translate.h | 4 - + target/arm/vec_helper.c | 130 ---------------------------- + 5 files changed, 44 insertions(+), 331 deletions(-) + +diff --git a/target/arm/helper.h b/target/arm/helper.h +index 50cb036378..b2669f140f 100644 +--- a/target/arm/helper.h ++++ b/target/arm/helper.h +@@ -646,39 +646,6 @@ DEF_HELPER_FLAGS_6(gvec_fmla_idx_s, TCG_CALL_NO_RWG, + DEF_HELPER_FLAGS_6(gvec_fmla_idx_d, TCG_CALL_NO_RWG, + void, ptr, ptr, ptr, ptr, ptr, i32) + +-DEF_HELPER_FLAGS_5(gvec_uqadd_b, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqadd_h, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqadd_s, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqadd_d, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqadd_b, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqadd_h, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqadd_s, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqadd_d, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqsub_b, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqsub_h, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqsub_s, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_uqsub_d, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqsub_b, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqsub_h, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqsub_s, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +-DEF_HELPER_FLAGS_5(gvec_sqsub_d, TCG_CALL_NO_RWG, +- void, ptr, ptr, ptr, ptr, i32) +- + DEF_HELPER_FLAGS_5(gvec_fmlal_a32, TCG_CALL_NO_RWG, + void, ptr, ptr, ptr, ptr, i32) + DEF_HELPER_FLAGS_5(gvec_fmlal_a64, TCG_CALL_NO_RWG, +diff --git a/target/arm/translate-a64.c b/target/arm/translate-a64.c +index 9dcc5ff3a3..428211f92f 100644 +--- a/target/arm/translate-a64.c ++++ b/target/arm/translate-a64.c +@@ -11230,22 +11230,6 @@ static void disas_simd_3same_int(DisasContext *s, uint32_t insn) + } + + switch (opcode) { +- case 0x01: /* SQADD, UQADD */ +- tcg_gen_gvec_4(vec_full_reg_offset(s, rd), +- offsetof(CPUARMState, vfp.qc), +- vec_full_reg_offset(s, rn), +- vec_full_reg_offset(s, rm), +- is_q ? 16 : 8, vec_full_reg_size(s), +- (u ? uqadd_op : sqadd_op) + size); +- return; +- case 0x05: /* SQSUB, UQSUB */ +- tcg_gen_gvec_4(vec_full_reg_offset(s, rd), +- offsetof(CPUARMState, vfp.qc), +- vec_full_reg_offset(s, rn), +- vec_full_reg_offset(s, rm), +- is_q ? 16 : 8, vec_full_reg_size(s), +- (u ? uqsub_op : sqsub_op) + size); +- return; + case 0x0c: /* SMAX, UMAX */ + if (u) { + gen_gvec_fn3(s, is_q, rd, rn, rm, tcg_gen_gvec_umax, size); +@@ -11341,6 +11325,16 @@ static void disas_simd_3same_int(DisasContext *s, uint32_t insn) + genfn = fns[size][u]; + break; + } ++ case 0x1: /* SQADD, UQADD */ ++ { ++ static NeonGenTwoOpEnvFn * const fns[3][2] = { ++ { gen_helper_neon_qadd_s8, gen_helper_neon_qadd_u8 }, ++ { gen_helper_neon_qadd_s16, gen_helper_neon_qadd_u16 }, ++ { gen_helper_neon_qadd_s32, gen_helper_neon_qadd_u32 }, ++ }; ++ genenvfn = fns[size][u]; ++ break; ++ } + case 0x2: /* SRHADD, URHADD */ + { + static NeonGenTwoOpFn * const fns[3][2] = { +@@ -11361,6 +11355,16 @@ static void disas_simd_3same_int(DisasContext *s, uint32_t insn) + genfn = fns[size][u]; + break; + } ++ case 0x5: /* SQSUB, UQSUB */ ++ { ++ static NeonGenTwoOpEnvFn * const fns[3][2] = { ++ { gen_helper_neon_qsub_s8, gen_helper_neon_qsub_u8 }, ++ { gen_helper_neon_qsub_s16, gen_helper_neon_qsub_u16 }, ++ { gen_helper_neon_qsub_s32, gen_helper_neon_qsub_u32 }, ++ }; ++ genenvfn = fns[size][u]; ++ break; ++ } + case 0x8: /* SSHL, USHL */ + { + static NeonGenTwoOpFn * const fns[3][2] = { +diff --git a/target/arm/translate.c b/target/arm/translate.c +index 10bc53f91c..cf675cef3f 100644 +--- a/target/arm/translate.c ++++ b/target/arm/translate.c +@@ -6242,142 +6242,6 @@ const GVecGen3 cmtst_op[4] = { + .vece = MO_64 }, + }; + +-static void gen_uqadd_vec(unsigned vece, TCGv_vec t, TCGv_vec sat, +- TCGv_vec a, TCGv_vec b) +-{ +- TCGv_vec x = tcg_temp_new_vec_matching(t); +- tcg_gen_add_vec(vece, x, a, b); +- tcg_gen_usadd_vec(vece, t, a, b); +- tcg_gen_cmp_vec(TCG_COND_NE, vece, x, x, t); +- tcg_gen_or_vec(vece, sat, sat, x); +- tcg_temp_free_vec(x); +-} +- +-const GVecGen4 uqadd_op[4] = { +- { .fniv = gen_uqadd_vec, +- .fno = gen_helper_gvec_uqadd_b, +- .opc = INDEX_op_usadd_vec, +- .write_aofs = true, +- .vece = MO_8 }, +- { .fniv = gen_uqadd_vec, +- .fno = gen_helper_gvec_uqadd_h, +- .opc = INDEX_op_usadd_vec, +- .write_aofs = true, +- .vece = MO_16 }, +- { .fniv = gen_uqadd_vec, +- .fno = gen_helper_gvec_uqadd_s, +- .opc = INDEX_op_usadd_vec, +- .write_aofs = true, +- .vece = MO_32 }, +- { .fniv = gen_uqadd_vec, +- .fno = gen_helper_gvec_uqadd_d, +- .opc = INDEX_op_usadd_vec, +- .write_aofs = true, +- .vece = MO_64 }, +-}; +- +-static void gen_sqadd_vec(unsigned vece, TCGv_vec t, TCGv_vec sat, +- TCGv_vec a, TCGv_vec b) +-{ +- TCGv_vec x = tcg_temp_new_vec_matching(t); +- tcg_gen_add_vec(vece, x, a, b); +- tcg_gen_ssadd_vec(vece, t, a, b); +- tcg_gen_cmp_vec(TCG_COND_NE, vece, x, x, t); +- tcg_gen_or_vec(vece, sat, sat, x); +- tcg_temp_free_vec(x); +-} +- +-const GVecGen4 sqadd_op[4] = { +- { .fniv = gen_sqadd_vec, +- .fno = gen_helper_gvec_sqadd_b, +- .opc = INDEX_op_ssadd_vec, +- .write_aofs = true, +- .vece = MO_8 }, +- { .fniv = gen_sqadd_vec, +- .fno = gen_helper_gvec_sqadd_h, +- .opc = INDEX_op_ssadd_vec, +- .write_aofs = true, +- .vece = MO_16 }, +- { .fniv = gen_sqadd_vec, +- .fno = gen_helper_gvec_sqadd_s, +- .opc = INDEX_op_ssadd_vec, +- .write_aofs = true, +- .vece = MO_32 }, +- { .fniv = gen_sqadd_vec, +- .fno = gen_helper_gvec_sqadd_d, +- .opc = INDEX_op_ssadd_vec, +- .write_aofs = true, +- .vece = MO_64 }, +-}; +- +-static void gen_uqsub_vec(unsigned vece, TCGv_vec t, TCGv_vec sat, +- TCGv_vec a, TCGv_vec b) +-{ +- TCGv_vec x = tcg_temp_new_vec_matching(t); +- tcg_gen_sub_vec(vece, x, a, b); +- tcg_gen_ussub_vec(vece, t, a, b); +- tcg_gen_cmp_vec(TCG_COND_NE, vece, x, x, t); +- tcg_gen_or_vec(vece, sat, sat, x); +- tcg_temp_free_vec(x); +-} +- +-const GVecGen4 uqsub_op[4] = { +- { .fniv = gen_uqsub_vec, +- .fno = gen_helper_gvec_uqsub_b, +- .opc = INDEX_op_ussub_vec, +- .write_aofs = true, +- .vece = MO_8 }, +- { .fniv = gen_uqsub_vec, +- .fno = gen_helper_gvec_uqsub_h, +- .opc = INDEX_op_ussub_vec, +- .write_aofs = true, +- .vece = MO_16 }, +- { .fniv = gen_uqsub_vec, +- .fno = gen_helper_gvec_uqsub_s, +- .opc = INDEX_op_ussub_vec, +- .write_aofs = true, +- .vece = MO_32 }, +- { .fniv = gen_uqsub_vec, +- .fno = gen_helper_gvec_uqsub_d, +- .opc = INDEX_op_ussub_vec, +- .write_aofs = true, +- .vece = MO_64 }, +-}; +- +-static void gen_sqsub_vec(unsigned vece, TCGv_vec t, TCGv_vec sat, +- TCGv_vec a, TCGv_vec b) +-{ +- TCGv_vec x = tcg_temp_new_vec_matching(t); +- tcg_gen_sub_vec(vece, x, a, b); +- tcg_gen_sssub_vec(vece, t, a, b); +- tcg_gen_cmp_vec(TCG_COND_NE, vece, x, x, t); +- tcg_gen_or_vec(vece, sat, sat, x); +- tcg_temp_free_vec(x); +-} +- +-const GVecGen4 sqsub_op[4] = { +- { .fniv = gen_sqsub_vec, +- .fno = gen_helper_gvec_sqsub_b, +- .opc = INDEX_op_sssub_vec, +- .write_aofs = true, +- .vece = MO_8 }, +- { .fniv = gen_sqsub_vec, +- .fno = gen_helper_gvec_sqsub_h, +- .opc = INDEX_op_sssub_vec, +- .write_aofs = true, +- .vece = MO_16 }, +- { .fniv = gen_sqsub_vec, +- .fno = gen_helper_gvec_sqsub_s, +- .opc = INDEX_op_sssub_vec, +- .write_aofs = true, +- .vece = MO_32 }, +- { .fniv = gen_sqsub_vec, +- .fno = gen_helper_gvec_sqsub_d, +- .opc = INDEX_op_sssub_vec, +- .write_aofs = true, +- .vece = MO_64 }, +-}; +- + /* Translate a NEON data processing instruction. Return nonzero if the + instruction is invalid. + We process data in a mixture of 32-bit and 64-bit chunks. +@@ -6561,18 +6425,6 @@ static int disas_neon_data_insn(DisasContext *s, uint32_t insn) + } + return 0; + +- case NEON_3R_VQADD: +- tcg_gen_gvec_4(rd_ofs, offsetof(CPUARMState, vfp.qc), +- rn_ofs, rm_ofs, vec_size, vec_size, +- (u ? uqadd_op : sqadd_op) + size); +- break; +- +- case NEON_3R_VQSUB: +- tcg_gen_gvec_4(rd_ofs, offsetof(CPUARMState, vfp.qc), +- rn_ofs, rm_ofs, vec_size, vec_size, +- (u ? uqsub_op : sqsub_op) + size); +- break; +- + case NEON_3R_VMUL: /* VMUL */ + if (u) { + /* Polynomial case allows only P8 and is handled below. */ +@@ -6637,6 +6489,24 @@ static int disas_neon_data_insn(DisasContext *s, uint32_t insn) + neon_load_reg64(cpu_V0, rn + pass); + neon_load_reg64(cpu_V1, rm + pass); + switch (op) { ++ case NEON_3R_VQADD: ++ if (u) { ++ gen_helper_neon_qadd_u64(cpu_V0, cpu_env, ++ cpu_V0, cpu_V1); ++ } else { ++ gen_helper_neon_qadd_s64(cpu_V0, cpu_env, ++ cpu_V0, cpu_V1); ++ } ++ break; ++ case NEON_3R_VQSUB: ++ if (u) { ++ gen_helper_neon_qsub_u64(cpu_V0, cpu_env, ++ cpu_V0, cpu_V1); ++ } else { ++ gen_helper_neon_qsub_s64(cpu_V0, cpu_env, ++ cpu_V0, cpu_V1); ++ } ++ break; + case NEON_3R_VSHL: + if (u) { + gen_helper_neon_shl_u64(cpu_V0, cpu_V1, cpu_V0); +@@ -6752,12 +6622,18 @@ static int disas_neon_data_insn(DisasContext *s, uint32_t insn) + case NEON_3R_VHADD: + GEN_NEON_INTEGER_OP(hadd); + break; ++ case NEON_3R_VQADD: ++ GEN_NEON_INTEGER_OP_ENV(qadd); ++ break; + case NEON_3R_VRHADD: + GEN_NEON_INTEGER_OP(rhadd); + break; + case NEON_3R_VHSUB: + GEN_NEON_INTEGER_OP(hsub); + break; ++ case NEON_3R_VQSUB: ++ GEN_NEON_INTEGER_OP_ENV(qsub); ++ break; + case NEON_3R_VSHL: + GEN_NEON_INTEGER_OP(shl); + break; +diff --git a/target/arm/translate.h b/target/arm/translate.h +index c2348def0d..07055c9449 100644 +--- a/target/arm/translate.h ++++ b/target/arm/translate.h +@@ -248,10 +248,6 @@ extern const GVecGen2i ssra_op[4]; + extern const GVecGen2i usra_op[4]; + extern const GVecGen2i sri_op[4]; + extern const GVecGen2i sli_op[4]; +-extern const GVecGen4 uqadd_op[4]; +-extern const GVecGen4 sqadd_op[4]; +-extern const GVecGen4 uqsub_op[4]; +-extern const GVecGen4 sqsub_op[4]; + void gen_cmtst_i64(TCGv_i64 d, TCGv_i64 a, TCGv_i64 b); + + /* +diff --git a/target/arm/vec_helper.c b/target/arm/vec_helper.c +index dedef62403..be3271659f 100644 +--- a/target/arm/vec_helper.c ++++ b/target/arm/vec_helper.c +@@ -769,136 +769,6 @@ DO_FMLA_IDX(gvec_fmla_idx_d, float64, ) + + #undef DO_FMLA_IDX + +-#define DO_SAT(NAME, WTYPE, TYPEN, TYPEM, OP, MIN, MAX) \ +-void HELPER(NAME)(void *vd, void *vq, void *vn, void *vm, uint32_t desc) \ +-{ \ +- intptr_t i, oprsz = simd_oprsz(desc); \ +- TYPEN *d = vd, *n = vn; TYPEM *m = vm; \ +- bool q = false; \ +- for (i = 0; i < oprsz / sizeof(TYPEN); i++) { \ +- WTYPE dd = (WTYPE)n[i] OP m[i]; \ +- if (dd < MIN) { \ +- dd = MIN; \ +- q = true; \ +- } else if (dd > MAX) { \ +- dd = MAX; \ +- q = true; \ +- } \ +- d[i] = dd; \ +- } \ +- if (q) { \ +- uint32_t *qc = vq; \ +- qc[0] = 1; \ +- } \ +- clear_tail(d, oprsz, simd_maxsz(desc)); \ +-} +- +-DO_SAT(gvec_uqadd_b, int, uint8_t, uint8_t, +, 0, UINT8_MAX) +-DO_SAT(gvec_uqadd_h, int, uint16_t, uint16_t, +, 0, UINT16_MAX) +-DO_SAT(gvec_uqadd_s, int64_t, uint32_t, uint32_t, +, 0, UINT32_MAX) +- +-DO_SAT(gvec_sqadd_b, int, int8_t, int8_t, +, INT8_MIN, INT8_MAX) +-DO_SAT(gvec_sqadd_h, int, int16_t, int16_t, +, INT16_MIN, INT16_MAX) +-DO_SAT(gvec_sqadd_s, int64_t, int32_t, int32_t, +, INT32_MIN, INT32_MAX) +- +-DO_SAT(gvec_uqsub_b, int, uint8_t, uint8_t, -, 0, UINT8_MAX) +-DO_SAT(gvec_uqsub_h, int, uint16_t, uint16_t, -, 0, UINT16_MAX) +-DO_SAT(gvec_uqsub_s, int64_t, uint32_t, uint32_t, -, 0, UINT32_MAX) +- +-DO_SAT(gvec_sqsub_b, int, int8_t, int8_t, -, INT8_MIN, INT8_MAX) +-DO_SAT(gvec_sqsub_h, int, int16_t, int16_t, -, INT16_MIN, INT16_MAX) +-DO_SAT(gvec_sqsub_s, int64_t, int32_t, int32_t, -, INT32_MIN, INT32_MAX) +- +-#undef DO_SAT +- +-void HELPER(gvec_uqadd_d)(void *vd, void *vq, void *vn, +- void *vm, uint32_t desc) +-{ +- intptr_t i, oprsz = simd_oprsz(desc); +- uint64_t *d = vd, *n = vn, *m = vm; +- bool q = false; +- +- for (i = 0; i < oprsz / 8; i++) { +- uint64_t nn = n[i], mm = m[i], dd = nn + mm; +- if (dd < nn) { +- dd = UINT64_MAX; +- q = true; +- } +- d[i] = dd; +- } +- if (q) { +- uint32_t *qc = vq; +- qc[0] = 1; +- } +- clear_tail(d, oprsz, simd_maxsz(desc)); +-} +- +-void HELPER(gvec_uqsub_d)(void *vd, void *vq, void *vn, +- void *vm, uint32_t desc) +-{ +- intptr_t i, oprsz = simd_oprsz(desc); +- uint64_t *d = vd, *n = vn, *m = vm; +- bool q = false; +- +- for (i = 0; i < oprsz / 8; i++) { +- uint64_t nn = n[i], mm = m[i], dd = nn - mm; +- if (nn < mm) { +- dd = 0; +- q = true; +- } +- d[i] = dd; +- } +- if (q) { +- uint32_t *qc = vq; +- qc[0] = 1; +- } +- clear_tail(d, oprsz, simd_maxsz(desc)); +-} +- +-void HELPER(gvec_sqadd_d)(void *vd, void *vq, void *vn, +- void *vm, uint32_t desc) +-{ +- intptr_t i, oprsz = simd_oprsz(desc); +- int64_t *d = vd, *n = vn, *m = vm; +- bool q = false; +- +- for (i = 0; i < oprsz / 8; i++) { +- int64_t nn = n[i], mm = m[i], dd = nn + mm; +- if (((dd ^ nn) & ~(nn ^ mm)) & INT64_MIN) { +- dd = (nn >> 63) ^ ~INT64_MIN; +- q = true; +- } +- d[i] = dd; +- } +- if (q) { +- uint32_t *qc = vq; +- qc[0] = 1; +- } +- clear_tail(d, oprsz, simd_maxsz(desc)); +-} +- +-void HELPER(gvec_sqsub_d)(void *vd, void *vq, void *vn, +- void *vm, uint32_t desc) +-{ +- intptr_t i, oprsz = simd_oprsz(desc); +- int64_t *d = vd, *n = vn, *m = vm; +- bool q = false; +- +- for (i = 0; i < oprsz / 8; i++) { +- int64_t nn = n[i], mm = m[i], dd = nn - mm; +- if (((dd ^ nn) & (nn ^ mm)) & INT64_MIN) { +- dd = (nn >> 63) ^ ~INT64_MIN; +- q = true; +- } +- d[i] = dd; +- } +- if (q) { +- uint32_t *qc = vq; +- qc[0] = 1; +- } +- clear_tail(d, oprsz, simd_maxsz(desc)); +-} +- + /* + * Convert float16 to float32, raising no exceptions and + * preserving exceptional values, including SNaN. +-- +2.21.0 + diff --git a/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch b/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch deleted file mode 100644 index 27e508c5a..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0013-cpus.c-Add-error-messages-when-qemi_cpu_kick_thread-.patch +++ /dev/null @@ -1,74 +0,0 @@ -From 861c522df7791d7e93743d5641f3ef2a5a3c4632 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Wed, 12 Aug 2015 15:11:30 -0500 -Subject: [PATCH] cpus.c: Add error messages when qemi_cpu_kick_thread fails. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Add custom_debug.h with function for print backtrace information. -When pthread_kill fails in qemu_cpu_kick_thread display backtrace and -current cpu information. - -Upstream-Status: Inappropriate -Signed-off-by: Aníbal Limón - ---- - cpus.c | 5 +++++ - custom_debug.h | 24 ++++++++++++++++++++++++ - 2 files changed, 29 insertions(+) - create mode 100644 custom_debug.h - -diff --git a/cpus.c b/cpus.c -index 0ddeeefc..4f3a5624 100644 ---- a/cpus.c -+++ b/cpus.c -@@ -1768,6 +1768,8 @@ static void *qemu_tcg_cpu_thread_fn(void *arg) - return NULL; - } - -+#include "custom_debug.h" -+ - static void qemu_cpu_kick_thread(CPUState *cpu) - { - #ifndef _WIN32 -@@ -1780,6 +1782,9 @@ static void qemu_cpu_kick_thread(CPUState *cpu) - err = pthread_kill(cpu->thread->thread, SIG_IPI); - if (err) { - fprintf(stderr, "qemu:%s: %s", __func__, strerror(err)); -+ fprintf(stderr, "CPU #%d:\n", cpu->cpu_index); -+ cpu_dump_state(cpu, stderr, fprintf, 0); -+ backtrace_print(); - exit(1); - } - #else /* _WIN32 */ -diff --git a/custom_debug.h b/custom_debug.h -new file mode 100644 -index 00000000..f029e455 ---- /dev/null -+++ b/custom_debug.h -@@ -0,0 +1,24 @@ -+#include -+#include -+#define BACKTRACE_MAX 128 -+static void backtrace_print(void) -+{ -+ int nfuncs = 0; -+ void *buf[BACKTRACE_MAX]; -+ char **symbols; -+ int i; -+ -+ nfuncs = backtrace(buf, BACKTRACE_MAX); -+ -+ symbols = backtrace_symbols(buf, nfuncs); -+ if (symbols == NULL) { -+ fprintf(stderr, "backtrace_print failed to get symbols"); -+ return; -+ } -+ -+ fprintf(stderr, "Backtrace ...\n"); -+ for (i = 0; i < nfuncs; i++) -+ fprintf(stderr, "%s\n", symbols[i]); -+ -+ free(symbols); -+} diff --git a/poky/meta/recipes-devtools/qemu/qemu/0014-fix-CVE-2018-16872.patch b/poky/meta/recipes-devtools/qemu/qemu/0014-fix-CVE-2018-16872.patch deleted file mode 100644 index 412aa1604..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0014-fix-CVE-2018-16872.patch +++ /dev/null @@ -1,85 +0,0 @@ -CVE: CVE-2018-16872 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=bab9df35] - -Signed-off-by: Kai Kang - -From bab9df35ce73d1c8e19a37e2737717ea1c984dc1 Mon Sep 17 00:00:00 2001 -From: Gerd Hoffmann -Date: Thu, 13 Dec 2018 13:25:11 +0100 -Subject: [PATCH] usb-mtp: use O_NOFOLLOW and O_CLOEXEC. - -Open files and directories with O_NOFOLLOW to avoid symlinks attacks. -While being at it also add O_CLOEXEC. - -usb-mtp only handles regular files and directories and ignores -everything else, so users should not see a difference. - -Because qemu ignores symlinks, carrying out a successful symlink attack -requires swapping an existing file or directory below rootdir for a -symlink and winning the race against the inotify notification to qemu. - -Fixes: CVE-2018-16872 -Cc: Prasad J Pandit -Cc: Bandan Das -Reported-by: Michael Hanselmann -Signed-off-by: Gerd Hoffmann -Reviewed-by: Michael Hanselmann -Message-id: 20181213122511.13853-1-kraxel@redhat.com ---- - hw/usb/dev-mtp.c | 13 +++++++++---- - 1 file changed, 9 insertions(+), 4 deletions(-) - -diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c -index 100b7171f4..36c43b8c20 100644 ---- a/hw/usb/dev-mtp.c -+++ b/hw/usb/dev-mtp.c -@@ -653,13 +653,18 @@ static void usb_mtp_object_readdir(MTPState *s, MTPObject *o) - { - struct dirent *entry; - DIR *dir; -+ int fd; - - if (o->have_children) { - return; - } - o->have_children = true; - -- dir = opendir(o->path); -+ fd = open(o->path, O_DIRECTORY | O_CLOEXEC | O_NOFOLLOW); -+ if (fd < 0) { -+ return; -+ } -+ dir = fdopendir(fd); - if (!dir) { - return; - } -@@ -1007,7 +1012,7 @@ static MTPData *usb_mtp_get_object(MTPState *s, MTPControl *c, - - trace_usb_mtp_op_get_object(s->dev.addr, o->handle, o->path); - -- d->fd = open(o->path, O_RDONLY); -+ d->fd = open(o->path, O_RDONLY | O_CLOEXEC | O_NOFOLLOW); - if (d->fd == -1) { - usb_mtp_data_free(d); - return NULL; -@@ -1031,7 +1036,7 @@ static MTPData *usb_mtp_get_partial_object(MTPState *s, MTPControl *c, - c->argv[1], c->argv[2]); - - d = usb_mtp_data_alloc(c); -- d->fd = open(o->path, O_RDONLY); -+ d->fd = open(o->path, O_RDONLY | O_CLOEXEC | O_NOFOLLOW); - if (d->fd == -1) { - usb_mtp_data_free(d); - return NULL; -@@ -1658,7 +1663,7 @@ static void usb_mtp_write_data(MTPState *s) - 0, 0, 0, 0); - goto done; - } -- d->fd = open(path, O_CREAT | O_WRONLY, mask); -+ d->fd = open(path, O_CREAT | O_WRONLY | O_CLOEXEC | O_NOFOLLOW, mask); - if (d->fd == -1) { - usb_mtp_queue_result(s, RES_STORE_FULL, d->trans, - 0, 0, 0, 0); --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/0015-fix-CVE-2018-20124.patch b/poky/meta/recipes-devtools/qemu/qemu/0015-fix-CVE-2018-20124.patch deleted file mode 100644 index 985b81940..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0015-fix-CVE-2018-20124.patch +++ /dev/null @@ -1,60 +0,0 @@ -CVE: CVE-2018-20124 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=0e68373] - -Backport patch to fix CVE-2018-20124. Update context and stay with current -function comp_handler() which has been replaced with complete_work() in latest -git repo. - -Signed-off-by: Kai Kang - -From 0e68373cc2b3a063ce067bc0cc3edaf370752890 Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Thu, 13 Dec 2018 01:00:34 +0530 -Subject: [PATCH] rdma: check num_sge does not exceed MAX_SGE - -rdma back-end has scatter/gather array ibv_sge[MAX_SGE=4] set -to have 4 elements. A guest could send a 'PvrdmaSqWqe' ring element -with 'num_sge' set to > MAX_SGE, which may lead to OOB access issue. -Add check to avoid it. - -Reported-by: Saar Amar -Signed-off-by: Prasad J Pandit -Reviewed-by: Yuval Shaia -Signed-off-by: Marcel Apfelbaum ---- - hw/rdma/rdma_backend.c | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/hw/rdma/rdma_backend.c b/hw/rdma/rdma_backend.c -index d7a4bbd9..7f8028f8 100644 ---- a/hw/rdma/rdma_backend.c -+++ b/hw/rdma/rdma_backend.c -@@ -311,9 +311,9 @@ void rdma_backend_post_send(RdmaBackendDev *backend_dev, - } - - pr_dbg("num_sge=%d\n", num_sge); -- if (!num_sge) { -- pr_dbg("num_sge=0\n"); -- comp_handler(IBV_WC_GENERAL_ERR, VENDOR_ERR_NO_SGE, ctx); -+ if (!num_sge || num_sge > MAX_SGE) { -+ pr_dbg("invalid num_sge=%d\n", num_sge); -+ comp_handler(IBV_WC_GENERAL_ERR, VENDOR_ERR_NO_SGE, ctx); - return; - } - -@@ -390,9 +390,9 @@ void rdma_backend_post_recv(RdmaBackendDev *backend_dev, - } - - pr_dbg("num_sge=%d\n", num_sge); -- if (!num_sge) { -- pr_dbg("num_sge=0\n"); -- comp_handler(IBV_WC_GENERAL_ERR, VENDOR_ERR_NO_SGE, ctx); -+ if (!num_sge || num_sge > MAX_SGE) { -+ pr_dbg("invalid num_sge=%d\n", num_sge); -+ comp_handler(IBV_WC_GENERAL_ERR, VENDOR_ERR_NO_SGE, ctx); - return; - } - --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/0016-fix-CVE-2018-20125.patch b/poky/meta/recipes-devtools/qemu/qemu/0016-fix-CVE-2018-20125.patch deleted file mode 100644 index 56559c838..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0016-fix-CVE-2018-20125.patch +++ /dev/null @@ -1,54 +0,0 @@ -CVE: CVE-2018-20125 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=2c858ce] - -Signed-off-by: Kai Kang - -From 2c858ce5da8ae6689c75182b73bc455a291cad41 Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Thu, 13 Dec 2018 01:00:36 +0530 -Subject: [PATCH] pvrdma: check number of pages when creating rings - -When creating CQ/QP rings, an object can have up to -PVRDMA_MAX_FAST_REG_PAGES 8 pages. Check 'npages' parameter -to avoid excessive memory allocation or a null dereference. - -Reported-by: Li Qiang -Signed-off-by: Prasad J Pandit -Reviewed-by: Yuval Shaia -Signed-off-by: Marcel Apfelbaum ---- - hw/rdma/vmw/pvrdma_cmd.c | 11 +++++++++++ - 1 file changed, 11 insertions(+) - -diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c -index 3b94545761..f236ac4795 100644 ---- a/hw/rdma/vmw/pvrdma_cmd.c -+++ b/hw/rdma/vmw/pvrdma_cmd.c -@@ -259,6 +259,11 @@ static int create_cq_ring(PCIDevice *pci_dev , PvrdmaRing **ring, - int rc = -EINVAL; - char ring_name[MAX_RING_NAME_SZ]; - -+ if (!nchunks || nchunks > PVRDMA_MAX_FAST_REG_PAGES) { -+ pr_dbg("invalid nchunks: %d\n", nchunks); -+ return rc; -+ } -+ - pr_dbg("pdir_dma=0x%llx\n", (long long unsigned int)pdir_dma); - dir = rdma_pci_dma_map(pci_dev, pdir_dma, TARGET_PAGE_SIZE); - if (!dir) { -@@ -372,6 +377,12 @@ static int create_qp_rings(PCIDevice *pci_dev, uint64_t pdir_dma, - char ring_name[MAX_RING_NAME_SZ]; - uint32_t wqe_sz; - -+ if (!spages || spages > PVRDMA_MAX_FAST_REG_PAGES -+ || !rpages || rpages > PVRDMA_MAX_FAST_REG_PAGES) { -+ pr_dbg("invalid pages: %d, %d\n", spages, rpages); -+ return rc; -+ } -+ - pr_dbg("pdir_dma=0x%llx\n", (long long unsigned int)pdir_dma); - dir = rdma_pci_dma_map(pci_dev, pdir_dma, TARGET_PAGE_SIZE); - if (!dir) { --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/0017-fix-CVE-2018-20126.patch b/poky/meta/recipes-devtools/qemu/qemu/0017-fix-CVE-2018-20126.patch deleted file mode 100644 index 8329f2cfd..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0017-fix-CVE-2018-20126.patch +++ /dev/null @@ -1,113 +0,0 @@ -CVE: CVE-2018-20126 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=509f57c] - -Backport and rebase patch to fix CVE-2018-20126. - -Signed-off-by: Kai Kang - -From 509f57c98e7536905bb4902363d0cba66ce7e089 Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Thu, 13 Dec 2018 01:00:37 +0530 -Subject: [PATCH] pvrdma: release ring object in case of an error - -create_cq and create_qp routines allocate ring object, but it's -not released in case of an error, leading to memory leakage. - -Reported-by: Li Qiang -Signed-off-by: Prasad J Pandit -Reviewed-by: Yuval Shaia -Signed-off-by: Marcel Apfelbaum ---- - hw/rdma/vmw/pvrdma_cmd.c | 41 ++++++++++++++++++++++++++++++----------- - 1 file changed, 30 insertions(+), 11 deletions(-) - -diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c -index 4faeb21..9b6796f 100644 ---- a/hw/rdma/vmw/pvrdma_cmd.c -+++ b/hw/rdma/vmw/pvrdma_cmd.c -@@ -310,6 +310,14 @@ out: - return rc; - } - -+static void destroy_cq_ring(PvrdmaRing *ring) -+{ -+ pvrdma_ring_free(ring); -+ /* ring_state was in slot 1, not 0 so need to jump back */ -+ rdma_pci_dma_unmap(ring->dev, --ring->ring_state, TARGET_PAGE_SIZE); -+ g_free(ring); -+} -+ - static int create_cq(PVRDMADev *dev, union pvrdma_cmd_req *req, - union pvrdma_cmd_resp *rsp) - { -@@ -333,6 +341,10 @@ static int create_cq(PVRDMADev *dev, union pvrdma_cmd_req *req, - - resp->hdr.err = rdma_rm_alloc_cq(&dev->rdma_dev_res, &dev->backend_dev, - cmd->cqe, &resp->cq_handle, ring); -+ if (resp->hdr.err) { -+ destroy_cq_ring(ring); -+ } -+ - resp->cqe = cmd->cqe; - - out: -@@ -356,10 +368,7 @@ static int destroy_cq(PVRDMADev *dev, union pvrdma_cmd_req *req, - } - - ring = (PvrdmaRing *)cq->opaque; -- pvrdma_ring_free(ring); -- /* ring_state was in slot 1, not 0 so need to jump back */ -- rdma_pci_dma_unmap(PCI_DEVICE(dev), --ring->ring_state, TARGET_PAGE_SIZE); -- g_free(ring); -+ destroy_cq_ring(ring); - - rdma_rm_dealloc_cq(&dev->rdma_dev_res, cmd->cq_handle); - -@@ -451,6 +460,17 @@ out: - return rc; - } - -+static void destroy_qp_rings(PvrdmaRing *ring) -+{ -+ pr_dbg("sring=%p\n", &ring[0]); -+ pvrdma_ring_free(&ring[0]); -+ pr_dbg("rring=%p\n", &ring[1]); -+ pvrdma_ring_free(&ring[1]); -+ -+ rdma_pci_dma_unmap(ring->dev, ring->ring_state, TARGET_PAGE_SIZE); -+ g_free(ring); -+} -+ - static int create_qp(PVRDMADev *dev, union pvrdma_cmd_req *req, - union pvrdma_cmd_resp *rsp) - { -@@ -482,6 +502,11 @@ static int create_qp(PVRDMADev *dev, union pvrdma_cmd_req *req, - cmd->max_recv_wr, cmd->max_recv_sge, - cmd->recv_cq_handle, rings, &resp->qpn); - -+ if (resp->hdr.err) { -+ destroy_qp_rings(rings); -+ return resp->hdr.err; -+ } -+ - resp->max_send_wr = cmd->max_send_wr; - resp->max_recv_wr = cmd->max_recv_wr; - resp->max_send_sge = cmd->max_send_sge; -@@ -555,13 +580,7 @@ static int destroy_qp(PVRDMADev *dev, union pvrdma_cmd_req *req, - rdma_rm_dealloc_qp(&dev->rdma_dev_res, cmd->qp_handle); - - ring = (PvrdmaRing *)qp->opaque; -- pr_dbg("sring=%p\n", &ring[0]); -- pvrdma_ring_free(&ring[0]); -- pr_dbg("rring=%p\n", &ring[1]); -- pvrdma_ring_free(&ring[1]); -- -- rdma_pci_dma_unmap(PCI_DEVICE(dev), ring->ring_state, TARGET_PAGE_SIZE); -- g_free(ring); -+ destroy_qp_rings(ring); - - return 0; - } --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/0018-fix-CVE-2018-20191.patch b/poky/meta/recipes-devtools/qemu/qemu/0018-fix-CVE-2018-20191.patch deleted file mode 100644 index 8f8ff0567..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0018-fix-CVE-2018-20191.patch +++ /dev/null @@ -1,47 +0,0 @@ -CVE: CVE-2018-20191 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=2aa8645] - -Signed-off-by: Kai Kang - -From 2aa86456fb938a11f2b7bd57c8643c213218681c Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Thu, 13 Dec 2018 01:00:35 +0530 -Subject: [PATCH] pvrdma: add uar_read routine - -Define skeleton 'uar_read' routine. Avoid NULL dereference. - -Reported-by: Li Qiang -Signed-off-by: Prasad J Pandit -Reviewed-by: Marcel Apfelbaum -Signed-off-by: Marcel Apfelbaum ---- - hw/rdma/vmw/pvrdma_main.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/hw/rdma/vmw/pvrdma_main.c b/hw/rdma/vmw/pvrdma_main.c -index 64de16fb52..838ad8a949 100644 ---- a/hw/rdma/vmw/pvrdma_main.c -+++ b/hw/rdma/vmw/pvrdma_main.c -@@ -448,6 +448,11 @@ static const MemoryRegionOps regs_ops = { - }, - }; - -+static uint64_t uar_read(void *opaque, hwaddr addr, unsigned size) -+{ -+ return 0xffffffff; -+} -+ - static void uar_write(void *opaque, hwaddr addr, uint64_t val, unsigned size) - { - PVRDMADev *dev = opaque; -@@ -489,6 +494,7 @@ static void uar_write(void *opaque, hwaddr addr, uint64_t val, unsigned size) - } - - static const MemoryRegionOps uar_ops = { -+ .read = uar_read, - .write = uar_write, - .endianness = DEVICE_LITTLE_ENDIAN, - .impl = { --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/0019-fix-CVE-2018-20216.patch b/poky/meta/recipes-devtools/qemu/qemu/0019-fix-CVE-2018-20216.patch deleted file mode 100644 index c02bad3bb..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/0019-fix-CVE-2018-20216.patch +++ /dev/null @@ -1,85 +0,0 @@ -CVE: CVE-2018-20216 -Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=f1e2e38] - -Signed-off-by: Kai Kang - -From f1e2e38ee0136b7710a2caa347049818afd57a1b Mon Sep 17 00:00:00 2001 -From: Prasad J Pandit -Date: Thu, 13 Dec 2018 01:00:39 +0530 -Subject: [PATCH] pvrdma: check return value from pvrdma_idx_ring_has_ routines - -pvrdma_idx_ring_has_[data/space] routines also return invalid -index PVRDMA_INVALID_IDX[=-1], if ring has no data/space. Check -return value from these routines to avoid plausible infinite loops. - -Reported-by: Li Qiang -Signed-off-by: Prasad J Pandit -Reviewed-by: Yuval Shaia -Signed-off-by: Marcel Apfelbaum ---- - hw/rdma/vmw/pvrdma_dev_ring.c | 29 +++++++++++------------------ - 1 file changed, 11 insertions(+), 18 deletions(-) - -diff --git a/hw/rdma/vmw/pvrdma_dev_ring.c b/hw/rdma/vmw/pvrdma_dev_ring.c -index 01247fc041..e8e5b502f6 100644 ---- a/hw/rdma/vmw/pvrdma_dev_ring.c -+++ b/hw/rdma/vmw/pvrdma_dev_ring.c -@@ -73,23 +73,16 @@ out: - - void *pvrdma_ring_next_elem_read(PvrdmaRing *ring) - { -+ int e; - unsigned int idx = 0, offset; - -- /* -- pr_dbg("%s: t=%d, h=%d\n", ring->name, ring->ring_state->prod_tail, -- ring->ring_state->cons_head); -- */ -- -- if (!pvrdma_idx_ring_has_data(ring->ring_state, ring->max_elems, &idx)) { -+ e = pvrdma_idx_ring_has_data(ring->ring_state, ring->max_elems, &idx); -+ if (e <= 0) { - pr_dbg("No more data in ring\n"); - return NULL; - } - - offset = idx * ring->elem_sz; -- /* -- pr_dbg("idx=%d\n", idx); -- pr_dbg("offset=%d\n", offset); -- */ - return ring->pages[offset / TARGET_PAGE_SIZE] + (offset % TARGET_PAGE_SIZE); - } - -@@ -105,20 +98,20 @@ void pvrdma_ring_read_inc(PvrdmaRing *ring) - - void *pvrdma_ring_next_elem_write(PvrdmaRing *ring) - { -- unsigned int idx, offset, tail; -+ int idx; -+ unsigned int offset, tail; - -- /* -- pr_dbg("%s: t=%d, h=%d\n", ring->name, ring->ring_state->prod_tail, -- ring->ring_state->cons_head); -- */ -- -- if (!pvrdma_idx_ring_has_space(ring->ring_state, ring->max_elems, &tail)) { -+ idx = pvrdma_idx_ring_has_space(ring->ring_state, ring->max_elems, &tail); -+ if (idx <= 0) { - pr_dbg("CQ is full\n"); - return NULL; - } - - idx = pvrdma_idx(&ring->ring_state->prod_tail, ring->max_elems); -- /* TODO: tail == idx */ -+ if (idx < 0 || tail != idx) { -+ pr_dbg("invalid idx\n"); -+ return NULL; -+ } - - offset = idx * ring->elem_sz; - return ring->pages[offset / TARGET_PAGE_SIZE] + (offset % TARGET_PAGE_SIZE); --- -2.20.1 - diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-3812.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-3812.patch deleted file mode 100644 index 7de5882b3..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu/CVE-2019-3812.patch +++ /dev/null @@ -1,39 +0,0 @@ -QEMU, through version 2.10 and through version 3.1.0, is vulnerable to an -out-of-bounds read of up to 128 bytes in the hw/i2c/i2c-ddc.c:i2c_ddc() -function. A local attacker with permission to execute i2c commands could exploit -this to read stack memory of the qemu process on the host. - -CVE: CVE-2019-3812 -Upstream-Status: Backport -Signed-off-by: Ross Burton - -From b05b267840515730dbf6753495d5b7bd8b04ad1c Mon Sep 17 00:00:00 2001 -From: Gerd Hoffmann -Date: Tue, 8 Jan 2019 11:23:01 +0100 -Subject: [PATCH] i2c-ddc: fix oob read -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Suggested-by: Michael Hanselmann -Signed-off-by: Gerd Hoffmann -Reviewed-by: Michael Hanselmann -Reviewed-by: Philippe Mathieu-Daudé -Message-id: 20190108102301.1957-1-kraxel@redhat.com ---- - hw/i2c/i2c-ddc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/hw/i2c/i2c-ddc.c b/hw/i2c/i2c-ddc.c -index be34fe072cf..0a0367ff38f 100644 ---- a/hw/i2c/i2c-ddc.c -+++ b/hw/i2c/i2c-ddc.c -@@ -56,7 +56,7 @@ static int i2c_ddc_rx(I2CSlave *i2c) - I2CDDCState *s = I2CDDC(i2c); - - int value; -- value = s->edid_blob[s->reg]; -+ value = s->edid_blob[s->reg % sizeof(s->edid_blob)]; - s->reg++; - return value; - } diff --git a/poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb b/poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb deleted file mode 100644 index 04d8bee99..000000000 --- a/poky/meta/recipes-devtools/qemu/qemu_3.1.0.bb +++ /dev/null @@ -1,22 +0,0 @@ -BBCLASSEXTEND = "nativesdk" - -require qemu.inc - -DEPENDS = "glib-2.0 zlib pixman" - -RDEPENDS_${PN}_class-target += "bash" - -EXTRA_OECONF_append_class-target = " --target-list=${@get_qemu_target_list(d)}" -EXTRA_OECONF_append_class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" - -do_install_append_class-nativesdk() { - ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)} -} - -PACKAGECONFIG ??= " \ - fdt sdl kvm \ - ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \ -" -PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm" - - diff --git a/poky/meta/recipes-devtools/qemu/qemu_4.0.0.bb b/poky/meta/recipes-devtools/qemu/qemu_4.0.0.bb new file mode 100644 index 000000000..247e0311e --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu_4.0.0.bb @@ -0,0 +1,20 @@ +BBCLASSEXTEND = "nativesdk" + +require qemu.inc + +DEPENDS = "glib-2.0 zlib pixman" + +RDEPENDS_${PN}_class-target += "bash" + +EXTRA_OECONF_append_class-target = " --target-list=${@get_qemu_target_list(d)}" +EXTRA_OECONF_append_class-nativesdk = " --target-list=${@get_qemu_target_list(d)}" + +do_install_append_class-nativesdk() { + ${@bb.utils.contains('PACKAGECONFIG', 'gtk+', 'make_qemu_wrapper', '', d)} +} + +PACKAGECONFIG ??= " \ + fdt sdl kvm \ + ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \ +" +PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm" diff --git a/poky/meta/recipes-devtools/ruby/ruby.inc b/poky/meta/recipes-devtools/ruby/ruby.inc index eaf5d13ac..1ecd087d7 100644 --- a/poky/meta/recipes-devtools/ruby/ruby.inc +++ b/poky/meta/recipes-devtools/ruby/ruby.inc @@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "\ file://LEGAL;md5=23a79bb4c1a40f6cc9bcb6f4e7c39799 \ " -DEPENDS = "ruby-native zlib openssl tcl libyaml gdbm readline" +DEPENDS = "ruby-native zlib openssl tcl libyaml gdbm readline libffi" DEPENDS_class-native = "openssl-native libyaml-native readline-native" SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" @@ -24,7 +24,7 @@ SRC_URI = "http://cache.ruby-lang.org/pub/ruby/${SHRT_VER}/ruby-${PV}.tar.gz \ " UPSTREAM_CHECK_URI = "https://www.ruby-lang.org/en/downloads/" -inherit autotools +inherit autotools ptest # This snippet lets compiled extensions which rely on external libraries, diff --git a/poky/meta/recipes-devtools/ruby/ruby/run-ptest b/poky/meta/recipes-devtools/ruby/ruby/run-ptest new file mode 100644 index 000000000..de7c415ab --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby/run-ptest @@ -0,0 +1,13 @@ +#!/bin/sh + +test_fullname=`find test -name test_*.rb` + +for i in ${test_fullname}; do + ruby ./test/runner.rb ${i} 2>&1 > /dev/null + ret=$? + if [ $ret != 0 ]; then + echo "FAIL: ${i}" + else + echo "PASS: ${i}" + fi +done diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.5.3.bb b/poky/meta/recipes-devtools/ruby/ruby_2.5.3.bb index 3fb427e90..519daf294 100644 --- a/poky/meta/recipes-devtools/ruby/ruby_2.5.3.bb +++ b/poky/meta/recipes-devtools/ruby/ruby_2.5.3.bb @@ -3,6 +3,7 @@ require ruby.inc SRC_URI += " \ file://ruby-CVE-2017-9226.patch \ file://ruby-CVE-2017-9228.patch \ + file://run-ptest \ " SRC_URI[md5sum] = "20c85b67846d49622ef3b24230803fef" @@ -28,6 +29,7 @@ EXTRA_OECONF = "\ --disable-dtrace \ --enable-shared \ --enable-load-relative \ + --with-pkg-config=pkg-config \ " do_install() { @@ -54,6 +56,13 @@ do_install_append_class-target () { } +do_install_ptest () { + cp -rf ${S}/test ${D}${PTEST_PATH}/ + cp -r ${S}/include ${D}/${libdir}/ruby/ + test_case_rb=`grep rubygems/test_case.rb ${B}/.installed.list` + sed -i -e 's:../../../test/:../../../ptest/test/:g' ${D}/$test_case_rb +} + PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc" SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library" @@ -66,4 +75,6 @@ FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc" FILES_${PN} += "${datadir}/rubygems" +FILES_${PN}-ptest_append_class-target += "${libdir}/ruby/include" + BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts index 95eff04e1..f84a7e18c 100755 --- a/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts +++ b/poky/meta/recipes-devtools/run-postinsts/run-postinsts/run-postinsts @@ -67,7 +67,7 @@ exec_postinst_scriptlets() { echo "Running postinst $i..." [ "$POSTINST_LOGGING" = "1" ] && eval echo "Running postinst $i..." $append_log if [ -x $i ]; then - eval sh -c $i $append_log + (sh -c $i $append_log) rm $i else echo "ERROR: postinst $i failed." diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb index e871f1cbf..5a8b5f77b 100644 --- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb +++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb @@ -44,3 +44,5 @@ ARM_INSTRUCTION_SET_armv5 = "arm" ARM_INSTRUCTION_SET_armv6 = "arm" BBCLASSEXTEND = "native nativesdk" + +CVE_PRODUCT = "squashfs" diff --git a/poky/meta/recipes-devtools/subversion/subversion/disable_macos.patch b/poky/meta/recipes-devtools/subversion/subversion/disable_macos.patch index ec3be496f..8d2d63599 100644 --- a/poky/meta/recipes-devtools/subversion/subversion/disable_macos.patch +++ b/poky/meta/recipes-devtools/subversion/subversion/disable_macos.patch @@ -1,15 +1,25 @@ -These tests don't work in cross compiling, just disable them for now, we don't -build subversion on OS-X at this time. +From 9c350c037ca3489dbeece6ecc2d7e2e5dbb177e9 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Sat, 11 May 2019 15:21:46 +0800 +Subject: [PATCH] These tests don't work in cross compiling, just disable them + for now, we don't build subversion on OS-X at this time. RP 1014/7/16 Upstream-Status: Pending [needs a rewrite to support a cache value] -Index: subversion-1.8.9/build/ac-macros/macosx.m4 -=================================================================== ---- subversion-1.8.9.orig/build/ac-macros/macosx.m4 2012-11-26 03:04:27.000000000 +0000 -+++ subversion-1.8.9/build/ac-macros/macosx.m4 2014-07-16 12:28:58.357300403 +0000 -@@ -24,21 +24,7 @@ +Rebase to 1.12.0 + +Signed-off-by: Hongxu Jia +--- + build/ac-macros/macosx.m4 | 31 +------------------------------ + 1 file changed, 1 insertion(+), 30 deletions(-) + +diff --git a/build/ac-macros/macosx.m4 b/build/ac-macros/macosx.m4 +index 92fa58e..a568e1c 100644 +--- a/build/ac-macros/macosx.m4 ++++ b/build/ac-macros/macosx.m4 +@@ -24,21 +24,7 @@ dnl Check for _dyld_image_name and _dyld_image_header availability AC_DEFUN(SVN_LIB_MACHO_ITERATE, [ AC_MSG_CHECKING([for Mach-O dynamic module iteration functions]) @@ -31,7 +41,7 @@ Index: subversion-1.8.9/build/ac-macros/macosx.m4 ]) dnl SVN_LIB_MACOS_PLIST -@@ -46,34 +32,7 @@ +@@ -46,23 +32,8 @@ dnl Assign variables for Mac OS property list support AC_DEFUN(SVN_LIB_MACOS_PLIST, [ AC_MSG_CHECKING([for Mac OS property list utilities]) @@ -44,25 +54,18 @@ Index: subversion-1.8.9/build/ac-macros/macosx.m4 - #error ProperyList API unavailable. - #endif - ]],[[]])],[ -- dnl ### Hack. We should only need to pass the -framework options when -- dnl linking libsvn_subr, since it is the only library that uses Keychain. -- dnl -- dnl Unfortunately, libtool 1.5.x doesn't track transitive dependencies for -- dnl OS X frameworks like it does for normal libraries, so we need to -- dnl explicitly pass the option to all the users of libsvn_subr to allow -- dnl static builds to link successfully. -- dnl -- dnl This does mean that all executables we link will be linked directly -- dnl to these frameworks - even when building shared libraries - but that -- dnl shouldn't cause any problems. -- -- LIBS="$LIBS -framework CoreFoundation" +- SVN_MACOS_PLIST_LIBS="-framework CoreFoundation" +- AC_SUBST(SVN_MACOS_PLIST_LIBS) - AC_DEFINE([SVN_HAVE_MACOS_PLIST], [1], - [Is Mac OS property list API available?]) - AC_MSG_RESULT([yes]) - ],[ ++ AC_SUBST([SVN_MACOS_PLIST_LIBS], [""]) AC_MSG_RESULT([no]) - ]) ]) dnl SVN_LIB_MACOS_KEYCHAIN +-- +2.7.4 + diff --git a/poky/meta/recipes-devtools/subversion/subversion/serfmacro.patch b/poky/meta/recipes-devtools/subversion/subversion/serfmacro.patch index 9a45cb9a0..507de0f08 100644 --- a/poky/meta/recipes-devtools/subversion/subversion/serfmacro.patch +++ b/poky/meta/recipes-devtools/subversion/subversion/serfmacro.patch @@ -1,22 +1,31 @@ -The existing sed expression can match expressions like ---sysroot=/some/path/xxx-linux/ which clearly isn't intended and -injects incorrect paths into LDFLAGS. +The existing sed expression can match expressions like +--sysroot=/some/path/xxx-linux/ which clearly isn't intended and injects +incorrect paths into LDFLAGS. Fix this in the same way we address the problem in CFLAGS. RP 2016/12/7 Upstream-Status: Pending -Index: subversion-1.9.4/build/ac-macros/serf.m4 -=================================================================== ---- subversion-1.9.4.orig/build/ac-macros/serf.m4 -+++ subversion-1.9.4/build/ac-macros/serf.m4 +Rebase 1.12.0 +Signed-off-by: Hongxu Jia +--- + build/ac-macros/serf.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/build/ac-macros/serf.m4 b/build/ac-macros/serf.m4 +index 0a549b3..3a069ac 100644 +--- a/build/ac-macros/serf.m4 ++++ b/build/ac-macros/serf.m4 @@ -171,7 +171,7 @@ AC_DEFUN(SVN_SERF_PKG_CONFIG, - SVN_SERF_INCLUDES=[`$PKG_CONFIG $serf_pc_arg --cflags | $SED -e 's/ -D[^ ]*//g' -e 's/^-D[^ ]*//g'`] - SVN_SERF_LIBS=`$PKG_CONFIG $serf_pc_arg --libs-only-l` + SVN_SERF_INCLUDES=[`$PKG_CONFIG $serf_pc_arg --cflags-only-I`] + SVN_SERF_LIBS=[`$PKG_CONFIG $serf_pc_arg --libs-only-l`] dnl don't use --libs-only-L because then we might miss some options - LDFLAGS=["$LDFLAGS `$PKG_CONFIG $serf_pc_arg --libs | $SED -e 's/-l[^ ]*//g'`"] + LDFLAGS=["$LDFLAGS `$PKG_CONFIG $serf_pc_arg --libs | $SED -e 's/ -l[^ ]*//g' -e 's/^-l[^ ]*//g'`"] break else AC_MSG_RESULT([no]) +-- +2.7.4 + diff --git a/poky/meta/recipes-devtools/subversion/subversion/subversion-1.12.0-apr_1.7.0_fix-1.patch b/poky/meta/recipes-devtools/subversion/subversion/subversion-1.12.0-apr_1.7.0_fix-1.patch new file mode 100644 index 000000000..f0edd5fe8 --- /dev/null +++ b/poky/meta/recipes-devtools/subversion/subversion/subversion-1.12.0-apr_1.7.0_fix-1.patch @@ -0,0 +1,107 @@ +From b147803553237654f8268e831dee8fed4989ad3b Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Sat, 11 May 2019 14:46:39 +0800 +Subject: [PATCH] Submitted By: Pierre Labastie (pierre dot labastie at neuf + dot fr) Date: 2019-04-17 Initial Package Version: 1.11.1 Origin: Upstream + revision 1857391 Upstream Status: Committed Description: Get rid of + apr_int64_t format string check in swig py configure. + +This check relied on APR implementation details and broke with APR 1.7.0. +Rather than trying to guess a perfect format string to use, just use the +largest possible format and cast the argument accordingly. + +Should fix build against APR 1.7.0 and later. + +Suggested by: brane + +* build/ac-macros/swig.m4: Remove code related to SVN_APR_INT64_T_PYCFMT. + +* subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c + (svn_swig_py_client_blame_receiver_func): Stop relying on the + SVN_APR_INT64_T_PYCFMT constant from configure. Use "L" and + acast to PY_LONG_LONG instead. + +Upstream-Status: Backport [www.linuxfromscratch.org/patches/blfs/svn/subversion-1.12.0-apr_1.7.0_fix-1.patch] + +Signed-off-by: Hongxu Jia +--- + build/ac-macros/swig.m4 | 35 ---------------------- + .../swig/python/libsvn_swig_py/swigutil_py.c | 9 +++--- + 2 files changed, 4 insertions(+), 40 deletions(-) + +diff --git a/build/ac-macros/swig.m4 b/build/ac-macros/swig.m4 +index 55501fb..2963872 100644 +--- a/build/ac-macros/swig.m4 ++++ b/build/ac-macros/swig.m4 +@@ -128,41 +128,6 @@ AC_DEFUN(SVN_FIND_SWIG, + ac_cv_python_libs="`$PYTHON ${abs_srcdir}/build/get-py-info.py --libs`" + ]) + SWIG_PY_LIBS="`SVN_REMOVE_STANDARD_LIB_DIRS($ac_cv_python_libs)`" +- +- dnl Sun Forte adds an extra space before substituting APR_INT64_T_FMT +- dnl gcc-2.95 adds an extra space after substituting APR_INT64_T_FMT +- dnl thus the egrep patterns have a + in them. +- SVN_PYCFMT_SAVE_CPPFLAGS="$CPPFLAGS" +- CPPFLAGS="$CPPFLAGS $SVN_APR_INCLUDES" +- AC_CACHE_CHECK([for apr_int64_t Python/C API format string], +- [svn_cv_pycfmt_apr_int64_t], [ +- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_EGREP_CPP([MaTcHtHiS +\"lld\" +EnDeNd], +- [#include +- MaTcHtHiS APR_INT64_T_FMT EnDeNd], +- [svn_cv_pycfmt_apr_int64_t="L"]) +- fi +- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_EGREP_CPP([MaTcHtHiS +\"ld\" +EnDeNd],r +- [#include +- MaTcHtHiS APR_INT64_T_FMT EnDeNd], +- [svn_cv_pycfmt_apr_int64_t="l"]) +- fi +- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_EGREP_CPP([MaTcHtHiS +\"d\" +EnDeNd], +- [#include +- MaTcHtHiS APR_INT64_T_FMT EnDeNd], +- [svn_cv_pycfmt_apr_int64_t="i"]) +- fi +- ]) +- CPPFLAGS="$SVN_PYCFMT_SAVE_CPPFLAGS" +- if test "x$svn_cv_pycfmt_apr_int64_t" = "x"; then +- AC_MSG_ERROR([failed to recognize APR_INT64_T_FMT on this platform]) +- fi +- AC_DEFINE_UNQUOTED([SVN_APR_INT64_T_PYCFMT], +- ["$svn_cv_pycfmt_apr_int64_t"], +- [Define to the Python/C API format character suitable] +- [ for apr_int64_t]) + fi + + if test "$PERL" != "none"; then +diff --git a/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c b/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c +index 2c90a6a..abe5a2a 100644 +--- a/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c ++++ b/subversion/bindings/swig/python/libsvn_swig_py/swigutil_py.c +@@ -46,7 +46,7 @@ + #include "svn_mergeinfo.h" + #include "svn_types.h" + +-#include "svn_private_config.h" /* for SVN_APR_INT64_T_PYCFMT */ ++#include "svn_private_config.h" + + #include "swig_python_external_runtime.swg" + #include "swigutil_py.h" +@@ -3394,10 +3394,9 @@ svn_error_t *svn_swig_py_client_blame_receiver_func(void *baton, + svn_swig_py_acquire_py_lock(); + + if ((result = PyObject_CallFunction(receiver, +- (char *) +- (SVN_APR_INT64_T_PYCFMT "lsssO&"), +- line_no, revision, author, date, line, +- make_ob_pool, pool)) == NULL) ++ (char *)"LlsssO&", ++ (PY_LONG_LONG)line_no, revision, author, ++ date, line, make_ob_pool, pool)) == NULL) + { + err = callback_exception_error(); + } +-- +2.7.4 + diff --git a/poky/meta/recipes-devtools/subversion/subversion_1.11.1.bb b/poky/meta/recipes-devtools/subversion/subversion_1.11.1.bb deleted file mode 100644 index 8abac7408..000000000 --- a/poky/meta/recipes-devtools/subversion/subversion_1.11.1.bb +++ /dev/null @@ -1,58 +0,0 @@ -SUMMARY = "Subversion (svn) version control system client" -HOMEPAGE = "http://subversion.apache.org" -SECTION = "console/network" -LICENSE = "Apache-2 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=83206f39819e7a4dfca2ff7c190f6ce0" - -DEPENDS = "apr-util serf sqlite3 file lz4" -DEPENDS_append_class-native = " file-replacement-native" - -SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://disable_macos.patch \ - file://0001-Fix-libtool-name-in-configure.ac.patch \ - file://serfmacro.patch \ - " - -SRC_URI[md5sum] = "5797bf701d2d868fa964c7bbc4931267" -SRC_URI[sha256sum] = "9efd2750ca4d72ec903431a24b9c732b6cbb84aad9b7563f59dd96dea5be60bb" - -inherit autotools pkgconfig gettext - -PACKAGECONFIG ?= "" - -PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl" -PACKAGECONFIG[gnome-keyring] = "--with-gnome-keyring,--without-gnome-keyring,glib-2.0 gnome-keyring" - -EXTRA_OECONF = " \ - --with-apr=${STAGING_BINDIR_CROSS} \ - --with-apr-util=${STAGING_BINDIR_CROSS} \ - --without-apxs \ - --without-berkeley-db \ - --without-swig \ - --disable-keychain \ - --with-utf8proc=internal \ - ac_cv_path_RUBY=none \ -" - -acpaths = "-I build/ -I build/ac-macros/" - -CPPFLAGS += "-P" -BUILD_CPPFLAGS += "-P" - -do_configure_prepend () { - rm -f ${S}/libtool - rm -f ${S}/build/libtool.m4 ${S}/build/ltmain.sh ${S}/build/ltoptions.m4 ${S}/build/ltsugar.m4 ${S}/build/ltversion.m4 ${S}/build/lt~obsolete.m4 - rm -f ${S}/aclocal.m4 - sed -i -e 's:with_sasl="/usr/local":with_sasl="${STAGING_DIR}":' ${S}/build/ac-macros/sasl.m4 -} - -#| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_local/libsvn_ra_local-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_repos/libsvn_repos-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| /usr/bin/ld: cannot find -lsvn_delta-1| collect2: ld returned 1 exit status| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_svn/libsvn_ra_svn-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_serf/libsvn_ra_serf-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib' -#| x86_64-linux-libtool: install: error: relink `libsvn_ra_serf-1.la' with the above command before installing it -#| x86_64-linux-libtool: install: warning: `../../subversion/libsvn_repos/libsvn_repos-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib' -#| /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/subversion-1.8.9/build-outputs.mk:1090: recipe for target 'install-serf-lib' failed -#| make: *** [install-serf-lib] Error 1 -PARALLEL_MAKEINST = "" - -RDEPENDS_${PN} = "serf" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/subversion/subversion_1.12.0.bb b/poky/meta/recipes-devtools/subversion/subversion_1.12.0.bb new file mode 100644 index 000000000..f059ff9ff --- /dev/null +++ b/poky/meta/recipes-devtools/subversion/subversion_1.12.0.bb @@ -0,0 +1,59 @@ +SUMMARY = "Subversion (svn) version control system client" +HOMEPAGE = "http://subversion.apache.org" +SECTION = "console/network" +LICENSE = "Apache-2 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=6487ae7094d359fa90fb9c4096e52e2b" + +DEPENDS = "apr-util serf sqlite3 file lz4" +DEPENDS_append_class-native = " file-replacement-native" + +SRC_URI = "${APACHE_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://disable_macos.patch \ + file://0001-Fix-libtool-name-in-configure.ac.patch \ + file://serfmacro.patch \ + file://subversion-1.12.0-apr_1.7.0_fix-1.patch \ + " + +SRC_URI[md5sum] = "be4f5c0b1b38a5d82bd6d16a16ff1346" +SRC_URI[sha256sum] = "7fae7c73d8a007c107c0ae5eb372bc0bb013dbfe966fcd5c59cd5a195a5e2edf" + +inherit autotools pkgconfig gettext + +PACKAGECONFIG ?= "" + +PACKAGECONFIG[sasl] = "--with-sasl,--without-sasl,cyrus-sasl" +PACKAGECONFIG[gnome-keyring] = "--with-gnome-keyring,--without-gnome-keyring,glib-2.0 gnome-keyring" + +EXTRA_OECONF = " \ + --with-apr=${STAGING_BINDIR_CROSS} \ + --with-apr-util=${STAGING_BINDIR_CROSS} \ + --without-apxs \ + --without-berkeley-db \ + --without-swig \ + --disable-keychain \ + --with-utf8proc=internal \ + ac_cv_path_RUBY=none \ +" + +acpaths = "-I build/ -I build/ac-macros/" + +CPPFLAGS += "-P" +BUILD_CPPFLAGS += "-P" + +do_configure_prepend () { + rm -f ${S}/libtool + rm -f ${S}/build/libtool.m4 ${S}/build/ltmain.sh ${S}/build/ltoptions.m4 ${S}/build/ltsugar.m4 ${S}/build/ltversion.m4 ${S}/build/lt~obsolete.m4 + rm -f ${S}/aclocal.m4 + sed -i -e 's:with_sasl="/usr/local":with_sasl="${STAGING_DIR}":' ${S}/build/ac-macros/sasl.m4 +} + +#| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_local/libsvn_ra_local-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_repos/libsvn_repos-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| /usr/bin/ld: cannot find -lsvn_delta-1| collect2: ld returned 1 exit status| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_svn/libsvn_ra_svn-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib'| x86_64-linux-libtool: install: warning: `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/build/subversion/libsvn_ra_serf/libsvn_ra_serf-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib' +#| x86_64-linux-libtool: install: error: relink `libsvn_ra_serf-1.la' with the above command before installing it +#| x86_64-linux-libtool: install: warning: `../../subversion/libsvn_repos/libsvn_repos-1.la' has not been installed in `/home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/sysroots/x86_64-linux/usr/lib' +#| /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-qa-logrotate/build/build/tmp/work/x86_64-linux/subversion-native/1.8.9-r0/subversion-1.8.9/build-outputs.mk:1090: recipe for target 'install-serf-lib' failed +#| make: *** [install-serf-lib] Error 1 +PARALLEL_MAKEINST = "" + +RDEPENDS_${PN} = "serf" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/vala/vala.inc b/poky/meta/recipes-devtools/vala/vala.inc index f680640ca..703ed1aa8 100644 --- a/poky/meta/recipes-devtools/vala/vala.inc +++ b/poky/meta/recipes-devtools/vala/vala.inc @@ -37,7 +37,7 @@ EOF chmod +x ${B}/vapigen-wrapper } -EXTRA_OECONF += " --disable-graphviz" +EXTRA_OECONF += " --disable-valadoc" # Vapigen wrapper needs to be available system-wide, because it will be used # to build vapi files from all other packages with vala support diff --git a/poky/meta/recipes-devtools/vala/vala/0001-Disable-valadoc.patch b/poky/meta/recipes-devtools/vala/vala/0001-Disable-valadoc.patch deleted file mode 100644 index 9b27b7fd1..000000000 --- a/poky/meta/recipes-devtools/vala/vala/0001-Disable-valadoc.patch +++ /dev/null @@ -1,32 +0,0 @@ -From b6ca3876e233c724fd460c1579abc4ab63c8d01e Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Wed, 4 Oct 2017 15:23:08 +0300 -Subject: [PATCH] Disable valadoc - -Valadoc is a documentation generator for Vala sources, which was -recently merged into the main vala source tree. Unsurprisingly, -it's broken in cross-compile environment in multiple ways, -so let's fix it some other time. - -Upstream-Status: Inappropriate [oe-core specific] -Signed-off-by: Alexander Kanavin ---- - Makefile.am | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/Makefile.am b/Makefile.am -index e5dc0cc..813b3fc 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -13,8 +13,6 @@ SUBDIRS = \ - doc \ - gobject-introspection \ - vapigen \ -- libvaladoc \ -- valadoc \ - $(NULL) - - if ENABLE_UNVERSIONED --- -2.14.1 - diff --git a/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch b/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch deleted file mode 100644 index e521bc854..000000000 --- a/poky/meta/recipes-devtools/vala/vala/disable-graphviz.patch +++ /dev/null @@ -1,226 +0,0 @@ -From b2723ff18b70c67c8a7fab5375a7f3c442d49790 Mon Sep 17 00:00:00 2001 -From: Rico Tzschichholz -Date: Wed, 6 Sep 2017 18:52:55 +0200 -Subject: [PATCH] libvaladoc: Allow disabling the graphviz dependency of - - valadoc - -https://bugzilla.gnome.org/show_bug.cgi?id=787375 -Signed-off-by: Alexander Kanavin -Upstream-Status: Submitted [bugzilla link above] - ---- - configure.ac | 60 ++++++++++++++------------- - libvaladoc/Makefile.am | 25 ++++++++--- - libvaladoc/html/basicdoclet.vala | 8 ++++ - libvaladoc/html/htmlmarkupwriter.vala | 4 ++ - 4 files changed, 63 insertions(+), 34 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 730c72d..af81986 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -119,34 +119,38 @@ PKG_CHECK_MODULES(GMODULE, gmodule-2.0 >= $GLIB_REQUIRED) - AC_SUBST(GMODULE_CFLAGS) - AC_SUBST(GMODULE_LIBS) - --PKG_CHECK_MODULES(LIBGVC, libgvc >= $LIBGVC_REQUIRED) --AC_MSG_CHECKING([for CGRAPH]) --cgraph_tmp_LIBADD="$LIBADD" --cgraph_tmp_CFLAGS="$CFLAGS" --LIBADD="$LIBADD $LIBGVC_LIBS" --CFLAGS="$CFLAGS $LIBGVC_CFLAGS" --AC_RUN_IFELSE( -- [AC_LANG_SOURCE([ -- #include -- -- int main(void) { -- #ifdef WITH_CGRAPH -- return 0; -- #else -- return -1; -- #endif -- } -- ])], [ -- AC_MSG_RESULT([yes]) -- VALAFLAGS="$VALAFLAGS -D WITH_CGRAPH" -- have_cgraph=yes -- ], [ -- AC_MSG_RESULT([no]) -- have_cgraph=no -- ] --) --LIBADD="$cgraph_tmp_LIBADD" --CFLAGS="$cgraph_tmp_CFLAGS" -+AC_ARG_ENABLE(graphviz, AS_HELP_STRING([--disable-graphviz], [Disable graphviz usage for valadoc]), enable_graphviz=$enableval, enable_graphviz=yes) -+if test x$enable_graphviz = xyes; then -+ PKG_CHECK_MODULES(LIBGVC, libgvc >= $LIBGVC_REQUIRED) -+ AC_MSG_CHECKING([for CGRAPH]) -+ VALAFLAGS="$VALAFLAGS -D HAVE_GRAPHVIZ" -+ cgraph_tmp_LIBADD="$LIBADD" -+ cgraph_tmp_CFLAGS="$CFLAGS" -+ LIBADD="$LIBADD $LIBGVC_LIBS" -+ CFLAGS="$CFLAGS $LIBGVC_CFLAGS" -+ AC_RUN_IFELSE( -+ [AC_LANG_SOURCE([ -+ #include -+ int main(void) { -+ #ifdef WITH_CGRAPH -+ return 0; -+ #else -+ return -1; -+ #endif -+ } -+ ])], [ -+ AC_MSG_RESULT([yes]) -+ VALAFLAGS="$VALAFLAGS -D WITH_CGRAPH" -+ have_cgraph=yes -+ ], [ -+ AC_MSG_RESULT([no]) -+ have_cgraph=no -+ ] -+ ) -+ LIBADD="$cgraph_tmp_LIBADD" -+ CFLAGS="$cgraph_tmp_CFLAGS" -+fi -+AM_CONDITIONAL(ENABLE_GRAPHVIZ, test x$enable_graphviz = xyes) - AM_CONDITIONAL(HAVE_CGRAPH, test "$have_cgraph" = "yes") - - AC_PATH_PROG([XSLTPROC], [xsltproc], :) -diff --git a/libvaladoc/Makefile.am b/libvaladoc/Makefile.am -index f3f790e..3c5dc4c 100644 ---- a/libvaladoc/Makefile.am -+++ b/libvaladoc/Makefile.am -@@ -128,10 +128,6 @@ libvaladoc_la_VALASOURCES = \ - content/tablerow.vala \ - content/taglet.vala \ - content/text.vala \ -- charts/chart.vala \ -- charts/chartfactory.vala \ -- charts/hierarchychart.vala \ -- charts/simplechartfactory.vala \ - parser/manyrule.vala \ - parser/oneofrule.vala \ - parser/optionalrule.vala \ -@@ -158,13 +154,24 @@ libvaladoc_la_VALASOURCES = \ - highlighter/codetoken.vala \ - highlighter/highlighter.vala \ - html/basicdoclet.vala \ -- html/htmlchartfactory.vala \ - html/linkhelper.vala \ - html/cssclassresolver.vala \ - html/htmlmarkupwriter.vala \ - html/htmlrenderer.vala \ - $(NULL) - -+if ENABLE_GRAPHVIZ -+libvaladoc_la_VALASOURCES += \ -+ charts/chart.vala \ -+ charts/chartfactory.vala \ -+ charts/hierarchychart.vala \ -+ charts/simplechartfactory.vala \ -+ html/htmlchartfactory.vala \ -+ $(NULL) -+ -+LIBGVC_PKG = --vapidir $(top_srcdir)/vapi --pkg libgvc -+endif -+ - libvaladoc@PACKAGE_SUFFIX@_la_SOURCES = \ - libvaladoc.vala.stamp \ - $(libvaladoc_la_VALASOURCES:.vala=.c) \ -@@ -184,11 +191,11 @@ libvaladoc.vala.stamp: $(libvaladoc_la_VALASOURCES) - --library valadoc \ - --vapi valadoc@PACKAGE_SUFFIX@.vapi \ - --vapidir $(top_srcdir)/vapi --pkg gmodule-2.0 \ -- --vapidir $(top_srcdir)/vapi --pkg libgvc \ - --vapidir $(top_srcdir)/gee --pkg gee \ - --vapidir $(top_srcdir)/vala --pkg vala \ - --vapidir $(top_srcdir)/ccode --pkg ccode \ - --vapidir $(top_srcdir)/codegen --pkg codegen \ -+ $(LIBGVC_PKG) \ - --pkg config \ - $(filter %.vala %.c,$^) - touch $@ -@@ -217,6 +224,9 @@ nodist_pkgconfig_DATA = valadoc@PACKAGE_SUFFIX@.pc - - valadoc@PACKAGE_SUFFIX@.pc: valadoc.pc - cp $< $@ -+if !ENABLE_GRAPHVIZ -+ sed -i "s/libgvc //g" $@ -+endif - - vapidir = $(datadir)/vala/vapi - dist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.vapi -@@ -224,6 +234,9 @@ nodist_vapi_DATA = valadoc@PACKAGE_SUFFIX@.deps - - valadoc@PACKAGE_SUFFIX@.deps: valadoc.deps - cp $< $@ -+if !ENABLE_GRAPHVIZ -+ sed -i "s/libgvc//g" $@ -+endif - - EXTRA_DIST = \ - $(libvaladoc_la_VALASOURCES) \ -diff --git a/libvaladoc/html/basicdoclet.vala b/libvaladoc/html/basicdoclet.vala -index 192e488..ec09602 100644 ---- a/libvaladoc/html/basicdoclet.vala -+++ b/libvaladoc/html/basicdoclet.vala -@@ -46,7 +46,11 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet { - protected HtmlRenderer _renderer; - protected Html.MarkupWriter writer; - protected Html.CssClassResolver cssresolver; -+#if HAVE_GRAPHVIZ - protected Charts.Factory image_factory; -+#else -+ protected void* image_factory; -+#endif - protected ErrorReporter reporter; - protected string package_list_link = "../index.html"; - -@@ -120,7 +124,9 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet { - this.linker = new LinkHelper (); - - _renderer = new HtmlRenderer (settings, this.linker, this.cssresolver); -+#if HAVE_GRAPHVIZ - this.image_factory = new SimpleChartFactory (settings, linker); -+#endif - } - - -@@ -1026,6 +1032,7 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet { - } - - protected void write_image_block (Api.Node element) { -+#if HAVE_GRAPHVIZ - if (element is Class || element is Interface || element is Struct) { - unowned string format = (settings.use_svg_images ? "svg" : "png"); - var chart = new Charts.Hierarchy (image_factory, element); -@@ -1045,6 +1052,7 @@ public abstract class Valadoc.Html.BasicDoclet : Api.Visitor, Doclet { - this.get_img_path_html (element, format)}); - writer.add_usemap (chart); - } -+#endif - } - - public void write_namespace_content (Namespace node, Api.Node? parent) { -diff --git a/libvaladoc/html/htmlmarkupwriter.vala b/libvaladoc/html/htmlmarkupwriter.vala -index 5aa4afd..e79b0b8 100644 ---- a/libvaladoc/html/htmlmarkupwriter.vala -+++ b/libvaladoc/html/htmlmarkupwriter.vala -@@ -51,12 +51,16 @@ public class Valadoc.Html.MarkupWriter : Valadoc.MarkupWriter { - } - } - -+#if HAVE_GRAPHVIZ - public unowned MarkupWriter add_usemap (Charts.Chart chart) { - string? buf = (string?) chart.write_buffer ("cmapx"); - if (buf != null) { - raw_text ("\n"); - raw_text ((!) buf); - } -+#else -+ public unowned MarkupWriter add_usemap (void* chart) { -+#endif - - return this; - } diff --git a/poky/meta/recipes-devtools/vala/vala_0.42.5.bb b/poky/meta/recipes-devtools/vala/vala_0.42.5.bb deleted file mode 100644 index eea176616..000000000 --- a/poky/meta/recipes-devtools/vala/vala_0.42.5.bb +++ /dev/null @@ -1,10 +0,0 @@ -require ${BPN}.inc - -SRC_URI += " file://0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch \ - file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch \ - file://disable-graphviz.patch \ - file://0001-Disable-valadoc.patch \ -" - -SRC_URI[md5sum] = "d204eb4fa210995e731e2a9a01c8c772" -SRC_URI[sha256sum] = "8c33b4abc0573d364781bbfe54a1668ed34956902e471191a31cf05dc87c6e12" diff --git a/poky/meta/recipes-devtools/vala/vala_0.44.3.bb b/poky/meta/recipes-devtools/vala/vala_0.44.3.bb new file mode 100644 index 000000000..fe6a5fcdc --- /dev/null +++ b/poky/meta/recipes-devtools/vala/vala_0.44.3.bb @@ -0,0 +1,8 @@ +require ${BPN}.inc + +SRC_URI += "file://0001-git-version-gen-don-t-append-dirty-if-we-re-not-in-g.patch \ + file://0001-vapigen.m4-use-PKG_CONFIG_SYSROOT_DIR.patch \ + " + +SRC_URI[md5sum] = "25f97c1b46ae0b60b5cc49cbc044eca2" +SRC_URI[sha256sum] = "8553b422484af88be1685d8b47f7b0df36ae4477c3e77e89ab22276ffed1eae9" diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-dependencies-between-libcoregrind-.a-and-m_main..patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-dependencies-between-libcoregrind-.a-and-m_main..patch deleted file mode 100644 index bedf1c127..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Fix-dependencies-between-libcoregrind-.a-and-m_main..patch +++ /dev/null @@ -1,45 +0,0 @@ -From 7820fc268fae4353118b6355f1d4b9e1b7eeebec Mon Sep 17 00:00:00 2001 -From: Philippe Waroquiers -Date: Sun, 28 Oct 2018 18:35:11 +0100 -Subject: [PATCH] Fix dependencies between libcoregrind*.a and - *m_main.o/*m_libcsetjmp.o - -The primary and secondary coregrind libraries must be updated -when m_main.c or m_libcsetjmp.c are changed. - -A dependency was missing between libcoregrind*.a and libnolto_coregrind*.a, -and so tools were not relinked when m_main.c or m_libcsetjmp.c were -changed. - -Upstream-Status: Backport[git://sourceware.org/git/valgrind.git 7820fc268fae4353118b6355f1d4b9e1b7eeebec] - -Signed-off-by: Robert Yang ---- - coregrind/Makefile.am | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/coregrind/Makefile.am b/coregrind/Makefile.am -index 914a270..8de1996 100644 ---- a/coregrind/Makefile.am -+++ b/coregrind/Makefile.am -@@ -511,6 +511,8 @@ libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS += \ - endif - libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_LIBADD = \ - $(libnolto_coregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_OBJECTS) -+libcoregrind_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_DEPENDENCIES = \ -+ libnolto_coregrind-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a - - if VGCONF_HAVE_PLATFORM_SEC - libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \ -@@ -531,6 +533,8 @@ libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS += \ - endif - libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_LIBADD = \ - $(libnolto_coregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_OBJECTS) -+libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_DEPENDENCIES = \ -+ libnolto_coregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a - endif - - #---------------------------------------------------------------------------- --- -2.10.2 - diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch new file mode 100644 index 000000000..e7af5efec --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-Return-a-valid-exit_code-from-vg_regtest.patch @@ -0,0 +1,27 @@ +From 5eebdefd2251803e7d21081745018fcb16b2ba71 Mon Sep 17 00:00:00 2001 +From: Randy MacLeod +Date: Wed, 8 May 2019 20:16:52 -0400 +Subject: [PATCH] Return a valid exit_code from vg_regtest + +Upstream-Status: Pending + +Signed-off-by: Randy MacLeod +--- + tests/vg_regtest.in | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/vg_regtest.in b/tests/vg_regtest.in +index 909af3be8..f2799c4e3 100755 +--- a/tests/vg_regtest.in ++++ b/tests/vg_regtest.in +@@ -403,6 +403,7 @@ sub mysystem($) + exit 1; + } + } ++ return $exit_code; + } + # if $keepunfiltered, copies $1 to $1.unfiltered.out + # renames $0 tp $1 +-- +2.17.0 + diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-amd64-Do-not-clobber-rsp-register.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-amd64-Do-not-clobber-rsp-register.patch deleted file mode 100644 index 657f80335..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind/0001-tests-amd64-Do-not-clobber-rsp-register.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 8c1ebb564f5eca2baeedc27a703200786d1abb0b Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 22 Dec 2018 15:28:40 -0800 -Subject: [PATCH] tests/amd64: Do not clobber %rsp register - -This is seen with gcc-9.0 compiler now which is fix that gcc community -did recently -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813 - -Upstream-Status: Submitted [https://bugs.kde.org/show_bug.cgi?id=402480] - -Signed-off-by: Khem Raj ---- - none/tests/amd64-linux/bug345887.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/none/tests/amd64-linux/bug345887.c b/none/tests/amd64-linux/bug345887.c -index 0f9237d..4b07fe1 100644 ---- a/none/tests/amd64-linux/bug345887.c -+++ b/none/tests/amd64-linux/bug345887.c -@@ -20,13 +20,14 @@ static void inner(void) - "movq $0x10d, %%r14\n" - "movq $0x10e, %%r15\n" - // not %rbp as mdb is then not able to reconstruct stack trace -- "movq $0x10f, %%rsp\n" -+ // not %rsp since gcc ignores it and since gcc >= 9.0 errors about it -+ // see https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52813 - "movq $0x1234, (%%rax)\n" // should cause SEGV here - "ud2" // should never get here - : // no output registers - : // no input registers - : "memory", "%rax", "%rbx", "%rcx", "%rdx", "%rsi", "%rdi", -- "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15", "%rsp"); -+ "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15"); - } - - __attribute__((noinline)) diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch new file mode 100644 index 000000000..bf0f0ded2 --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-valgrind-filter_xml_frames-do-not-filter-usr.patch @@ -0,0 +1,39 @@ +From d1dea3c2bcf1e22baab39e2c0b8ca59db8a5bc37 Mon Sep 17 00:00:00 2001 +From: Randy MacLeod +Date: Mon, 13 May 2019 17:12:21 -0400 +Subject: [PATCH 1/2] valgrind: filter_xml_frames: do not filter /usr + +filter_xml_frames is intended to filter system paths under +'/usr' that vary from platform to platform. In the ptest case +for Yocto's valgrind, the ptest executables are placed under: + /usr/lib/valgrind/ptest +and if these frames are filtered out, then the 'drd' tests fail +the comparision between exepected and actual output. + +Changing this filter allows the comparison to succeed without +any negative impact. + +Upstream-Status: Inappropriate [Yocto specific] + +Signed-off-by: Randy MacLeod +--- + tests/filter_xml_frames | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/tests/filter_xml_frames b/tests/filter_xml_frames +index f1fa3f070..04fbc82de 100755 +--- a/tests/filter_xml_frames ++++ b/tests/filter_xml_frames +@@ -47,7 +47,8 @@ while (my $line = <>) + $has_function_name = 1 if ($line =~ //); + # This may require tweaking; currently /lib and /usr/lib are matched + $has_system_obj = 1 if ($line =~ /\/lib/); +- $has_system_obj = 1 if ($line =~ /\/usr\/lib/); ++# for Yocto, skip /usr since tests are under /usr/lib/... ++# $has_system_obj = 1 if ($line =~ /\/usr\/lib/); + } + } + +-- +2.17.0 + diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch new file mode 100644 index 000000000..a82972ec1 --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0002-valgrind-adjust-std_list-expected-output.patch @@ -0,0 +1,32 @@ +From 6e1e9265b03cf51d09c028d657fe826d7156a783 Mon Sep 17 00:00:00 2001 +From: Randy MacLeod +Date: Mon, 13 May 2019 17:26:26 -0400 +Subject: [PATCH 2/2] valgrind: adjust std_list expected output + +The run-ptest script uses a custom --yocto-ptest option +to change the summary statistics that valgrind issues +to a format that matches what ptest-runner expects. + +Only this std_list test which checks that strcpy() works +properly on Ubuntu-12.04 and later is affected by this change. +It's normal output when called with --yocto-ptest is a blank +line so adjust the expected output. + +Upstream-Status: Inappropriate [Yocto specific] + +Signed-off-by: Randy MacLeod +--- + drd/tests/std_list.stderr.exp | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/drd/tests/std_list.stderr.exp b/drd/tests/std_list.stderr.exp +index d18786f80..8b1378917 100644 +--- a/drd/tests/std_list.stderr.exp ++++ b/drd/tests/std_list.stderr.exp +@@ -1,3 +1 @@ + +- +-ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 0 from 0) +-- +2.17.0 + diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb deleted file mode 100644 index db1bd9fc5..000000000 --- a/poky/meta/recipes-devtools/valgrind/valgrind_3.14.0.bb +++ /dev/null @@ -1,162 +0,0 @@ -SUMMARY = "Valgrind memory debugger and instrumentation framework" -HOMEPAGE = "http://valgrind.org/" -BUGTRACKER = "http://valgrind.org/support/bug_reports.html" -LICENSE = "GPLv2 & GPLv2+ & BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://include/pub_tool_basics.h;beginline=6;endline=29;md5=d4de0407239381463cf01dd276d7c22e \ - file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \ - file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56" - -X11DEPENDS = "virtual/libx11" -DEPENDS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'boost', '', d)} \ - " - -SRC_URI = "http://www.valgrind.org/downloads/valgrind-${PV}.tar.bz2 \ - file://fixed-perl-path.patch \ - file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \ - file://run-ptest \ - file://0004-Fix-out-of-tree-builds.patch \ - file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \ - file://0001-Remove-tests-that-fail-to-build-on-some-PPC32-config.patch \ - file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \ - file://avoid-neon-for-targets-which-don-t-support-it.patch \ - file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \ - file://0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch \ - file://0001-str_tester.c-Limit-rawmemchr-test-to-glibc.patch \ - file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \ - file://0002-context-APIs-are-not-available-on-musl.patch \ - file://0003-correct-include-directive-path-for-config.h.patch \ - file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \ - file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \ - file://0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch \ - file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \ - file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \ - file://0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch \ - file://0001-fix-opcode-not-supported-on-mips32-linux.patch \ - file://0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch \ - file://0001-Make-local-functions-static-to-avoid-assembler-error.patch \ - file://0001-tests-amd64-Do-not-clobber-rsp-register.patch \ - file://0001-Fix-dependencies-between-libcoregrind-.a-and-m_main..patch \ - " -SRC_URI[md5sum] = "74175426afa280184b62591b58c671b3" -SRC_URI[sha256sum] = "037c11bfefd477cc6e9ebe8f193bb237fe397f7ce791b4a4ce3fa1c6a520baa5" -UPSTREAM_CHECK_REGEX = "valgrind-(?P\d+(\.\d+)+)\.tar" - -COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux' - -# valgrind supports armv7 and above -COMPATIBLE_HOST_armv4 = 'null' -COMPATIBLE_HOST_armv5 = 'null' -COMPATIBLE_HOST_armv6 = 'null' - -# X32 isn't supported by valgrind at this time -COMPATIBLE_HOST_linux-gnux32 = 'null' -COMPATIBLE_HOST_linux-muslx32 = 'null' - -# Disable for some MIPS variants -COMPATIBLE_HOST_mipsarchr6 = 'null' -COMPATIBLE_HOST_linux-gnun32 = 'null' - -# Disable for powerpc64 with musl -COMPATIBLE_HOST_libc-musl_powerpc64 = 'null' - -inherit autotools ptest multilib_header - -EXTRA_OECONF = "--enable-tls --without-mpicc" -EXTRA_OECONF += "${@['--enable-only32bit','--enable-only64bit'][d.getVar('SITEINFO_BITS') != '32']}" - -# valgrind checks host_cpu "armv7*)", so we need to over-ride the autotools.bbclass default --host option -EXTRA_OECONF_append_arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}" - -EXTRA_OEMAKE = "-w" - -CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" - -# valgrind likes to control its own optimisation flags. It generally defaults -# to -O2 but uses -O0 for some specific test apps etc. Passing our own flags -# (via CFLAGS) means we interfere with that. Only pass DEBUG_FLAGS to it -# which fixes build path issue in DWARF. -SELECTED_OPTIMIZATION = "${DEBUG_FLAGS}" - -do_configure_prepend () { - rm -rf ${S}/config.h - sed -i -e 's:$(abs_top_builddir):$(pkglibdir)/ptest:g' ${S}/none/tests/Makefile.am - sed -i -e 's:$(top_builddir):$(pkglibdir)/ptest:g' ${S}/memcheck/tests/Makefile.am -} - -do_install_append () { - install -m 644 ${B}/default.supp ${D}/${libdir}/valgrind/ - oe_multilib_header valgrind/config.h -} - -VALGRINDARCH ?= "${TARGET_ARCH}" -VALGRINDARCH_aarch64 = "arm64" -VALGRINDARCH_x86-64 = "amd64" -VALGRINDARCH_x86 = "x86" -VALGRINDARCH_mips = "mips32" -VALGRINDARCH_mipsel = "mips32" -VALGRINDARCH_mips64el = "mips64" -VALGRINDARCH_powerpc = "ppc" -VALGRINDARCH_powerpc64 = "ppc64" -VALGRINDARCH_powerpc64el = "ppc64le" - -INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${libdir}/valgrind/vgpreload_memcheck-${VALGRINDARCH}-linux.so" - -RDEPENDS_${PN} += "perl" - -# valgrind needs debug information for ld.so at runtime in order to -# redirect functions like strlen. -RRECOMMENDS_${PN} += "${TCLIBC}-dbg" - -RDEPENDS_${PN}-ptest += " sed perl perl-module-file-glob" -RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" - -# One of the tests contains a bogus interpreter path on purpose. -# Skip file dependency check -SKIP_FILEDEPS_${PN}-ptest = '1' - -do_compile_ptest() { - oe_runmake check -} - -do_install_ptest() { - chmod +x ${B}/tests/vg_regtest - - # The test application binaries are not automatically installed. - # Grab them from the build directory. - # - # The regression tests require scripts and data files that are not - # copied to the build directory. They must be copied from the - # source directory. - saved_dir=$PWD - for parent_dir in ${S} ${B} ; do - cd $parent_dir - - # exclude shell or the package won't install - rm -rf none/tests/shell* 2>/dev/null - - subdirs="tests cachegrind/tests callgrind/tests drd/tests helgrind/tests massif/tests memcheck/tests none/tests" - - # Get the vg test scripts, filters, and expected files - for dir in $subdirs ; do - find $dir | cpio -pvdu ${D}${PTEST_PATH} - done - cd $saved_dir - done - - # clean out build artifacts before building the rpm - find ${D}${PTEST_PATH} \ - \( -name "Makefile*" \ - -o -name "*.o" \ - -o -name "*.c" \ - -o -name "*.S" \ - -o -name "*.h" \) \ - -exec rm {} \; - - # needed by massif tests - cp ${B}/massif/ms_print ${D}${PTEST_PATH}/massif/ms_print - - # handle multilib - sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest -} diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb new file mode 100644 index 000000000..ae3498f55 --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb @@ -0,0 +1,184 @@ +SUMMARY = "Valgrind memory debugger and instrumentation framework" +HOMEPAGE = "http://valgrind.org/" +BUGTRACKER = "http://valgrind.org/support/bug_reports.html" +LICENSE = "GPLv2 & GPLv2+ & BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://include/pub_tool_basics.h;beginline=6;endline=29;md5=d4de0407239381463cf01dd276d7c22e \ + file://include/valgrind.h;beginline=1;endline=56;md5=ad3b317f3286b6b704575d9efe6ca5df \ + file://COPYING.DOCS;md5=24ea4c7092233849b4394699333b5c56" + +X11DEPENDS = "virtual/libx11" +DEPENDS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', '${X11DEPENDS}', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'ptest', 'boost', '', d)} \ + " + +SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \ + file://fixed-perl-path.patch \ + file://Added-support-for-PPC-instructions-mfatbu-mfatbl.patch \ + file://run-ptest \ + file://0004-Fix-out-of-tree-builds.patch \ + file://0005-Modify-vg_test-wrapper-to-support-PTEST-formats.patch \ + file://0001-Remove-tests-that-fail-to-build-on-some-PPC32-config.patch \ + file://use-appropriate-march-mcpu-mfpu-for-ARM-test-apps.patch \ + file://avoid-neon-for-targets-which-don-t-support-it.patch \ + file://valgrind-make-ld-XXX.so-strlen-intercept-optional.patch \ + file://0001-makefiles-Drop-setting-mcpu-to-cortex-a8-on-arm-arch.patch \ + file://0001-str_tester.c-Limit-rawmemchr-test-to-glibc.patch \ + file://0001-sigqueue-Rename-_sifields-to-__si_fields-on-musl.patch \ + file://0002-context-APIs-are-not-available-on-musl.patch \ + file://0003-correct-include-directive-path-for-config.h.patch \ + file://0004-pth_atfork1.c-Define-error-API-for-musl.patch \ + file://0005-tc20_verifywrap.c-Fake-__GLIBC_PREREQ-with-musl.patch \ + file://0006-pth_detached3.c-Dereference-pthread_t-before-adding-.patch \ + file://0001-memcheck-arm64-Define-__THROW-if-not-already-defined.patch \ + file://0002-memcheck-x86-Define-__THROW-if-not-defined.patch \ + file://0003-tests-seg_override-Replace-__modify_ldt-with-syscall.patch \ + file://0001-fix-opcode-not-supported-on-mips32-linux.patch \ + file://0001-Guard-against-__GLIBC_PREREQ-for-musl-libc.patch \ + file://0001-Make-local-functions-static-to-avoid-assembler-error.patch \ + file://0001-Return-a-valid-exit_code-from-vg_regtest.patch \ + file://0001-valgrind-filter_xml_frames-do-not-filter-usr.patch \ + file://0002-valgrind-adjust-std_list-expected-output.patch \ + " +SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975" +SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1" +UPSTREAM_CHECK_REGEX = "valgrind-(?P\d+(\.\d+)+)\.tar" + +COMPATIBLE_HOST = '(i.86|x86_64|arm|aarch64|mips|powerpc|powerpc64).*-linux' + +# valgrind supports armv7 and above +COMPATIBLE_HOST_armv4 = 'null' +COMPATIBLE_HOST_armv5 = 'null' +COMPATIBLE_HOST_armv6 = 'null' + +# X32 isn't supported by valgrind at this time +COMPATIBLE_HOST_linux-gnux32 = 'null' +COMPATIBLE_HOST_linux-muslx32 = 'null' + +# Disable for some MIPS variants +COMPATIBLE_HOST_mipsarchr6 = 'null' +COMPATIBLE_HOST_linux-gnun32 = 'null' + +# Disable for powerpc64 with musl +COMPATIBLE_HOST_libc-musl_powerpc64 = 'null' + +inherit autotools ptest multilib_header + +EXTRA_OECONF = "--enable-tls --without-mpicc" +EXTRA_OECONF += "${@['--enable-only32bit','--enable-only64bit'][d.getVar('SITEINFO_BITS') != '32']}" + +# valgrind checks host_cpu "armv7*)", so we need to over-ride the autotools.bbclass default --host option +EXTRA_OECONF_append_arm = " --host=armv7${HOST_VENDOR}-${HOST_OS}" + +EXTRA_OEMAKE = "-w" + +CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" + +# valgrind likes to control its own optimisation flags. It generally defaults +# to -O2 but uses -O0 for some specific test apps etc. Passing our own flags +# (via CFLAGS) means we interfere with that. Only pass DEBUG_FLAGS to it +# which fixes build path issue in DWARF. +SELECTED_OPTIMIZATION = "${DEBUG_FLAGS}" + +do_configure_prepend () { + rm -rf ${S}/config.h + sed -i -e 's:$(abs_top_builddir):$(pkglibdir)/ptest:g' ${S}/none/tests/Makefile.am + sed -i -e 's:$(top_builddir):$(pkglibdir)/ptest:g' ${S}/memcheck/tests/Makefile.am +} + +do_install_append () { + install -m 644 ${B}/default.supp ${D}/${libdir}/valgrind/ + oe_multilib_header valgrind/config.h +} + +VALGRINDARCH ?= "${TARGET_ARCH}" +VALGRINDARCH_aarch64 = "arm64" +VALGRINDARCH_x86-64 = "amd64" +VALGRINDARCH_x86 = "x86" +VALGRINDARCH_mips = "mips32" +VALGRINDARCH_mipsel = "mips32" +VALGRINDARCH_mips64el = "mips64" +VALGRINDARCH_powerpc = "ppc" +VALGRINDARCH_powerpc64 = "ppc64" +VALGRINDARCH_powerpc64el = "ppc64le" + +INHIBIT_PACKAGE_STRIP_FILES = "${PKGD}${libdir}/valgrind/vgpreload_memcheck-${VALGRINDARCH}-linux.so" + +RDEPENDS_${PN} += "perl" + +# valgrind needs debug information for ld.so at runtime in order to +# redirect functions like strlen. +RRECOMMENDS_${PN} += "${TCLIBC}-dbg" + +RDEPENDS_${PN}-ptest += " sed perl perl-module-file-glob ${PN}-dbg" +RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" + +# One of the tests contains a bogus interpreter path on purpose. +# Skip file dependency check +SKIP_FILEDEPS_${PN}-ptest = '1' +INSANE_SKIP_${PN}-ptest = "debug-deps" + +do_compile_ptest() { + oe_runmake check +} + +do_install_ptest() { + chmod +x ${B}/tests/vg_regtest + + # The test application binaries are not automatically installed. + # Grab them from the build directory. + # + # The regression tests require scripts and data files that are not + # copied to the build directory. They must be copied from the + # source directory. + saved_dir=$PWD + for parent_dir in ${S} ${B} ; do + cd $parent_dir + + # exclude shell or the package won't install + rm -rf none/tests/shell* 2>/dev/null + + subdirs=" \ + cachegrind/tests \ + callgrind/tests \ + drd/tests \ + gdbserver_tests \ + helgrind/tests \ + massif/tests \ + memcheck/tests \ + none/tests \ + tests \ + " + + # Get the vg test scripts, filters, and expected files + for dir in $subdirs ; do + find $dir | cpio -pvdu ${D}${PTEST_PATH} + done + cd $saved_dir + done + + # Hide then restore a.c that is used by ann[12].vgtest in call/cachegrind + mv ${D}${PTEST_PATH}/cachegrind/tests/a.c ${D}${PTEST_PATH}/cachegrind/tests/a_c + # clean out build artifacts before building the rpm + find ${D}${PTEST_PATH} \ + \( -name "Makefile*" \ + -o -name "*.o" \ + -o -name "*.c" \ + -o -name "*.S" \ + -o -name "*.h" \) \ + -exec rm {} \; + mv ${D}${PTEST_PATH}/cachegrind/tests/a_c ${D}${PTEST_PATH}/cachegrind/tests/a.c + + # find *_annotate in ${bindir} for yocto build + sed -i s:\.\./\.\./cachegrind/cg_annotate:${bindir}/cg_annotate: ${D}${PTEST_PATH}/cachegrind/tests/ann1.vgtest + sed -i s:\.\./\.\./cachegrind/cg_annotate:${bindir}/cg_annotate: ${D}${PTEST_PATH}/cachegrind/tests/ann2.vgtest + + sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann1.vgtest + sed -i s:\.\./\.\./callgrind/callgrind_annotate:${bindir}/callgrind_annotate: ${D}${PTEST_PATH}/callgrind/tests/ann2.vgtest + + # needed by massif tests + cp ${B}/massif/ms_print ${D}${PTEST_PATH}/massif/ms_print + + # handle multilib + sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest +} diff --git a/poky/meta/recipes-extended/acpica/acpica_20180508.bb b/poky/meta/recipes-extended/acpica/acpica_20180508.bb deleted file mode 100644 index b5c89fafc..000000000 --- a/poky/meta/recipes-extended/acpica/acpica_20180508.bb +++ /dev/null @@ -1,52 +0,0 @@ -SUMMARY = "ACPICA tools for the development and debug of ACPI tables" -DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ -OS-independent reference implementation of the Advanced Configuration and \ -Power Interface Specification (ACPI). ACPICA code contains those portions of \ -ACPI meant to be directly integrated into the host OS as a kernel-resident \ -subsystem, and a small set of tools to assist in developing and debugging \ -ACPI tables." - -HOMEPAGE = "http://www.acpica.org/" -SECTION = "console/tools" - -LICENSE = "BSD | GPLv2" -LIC_FILES_CHKSUM = "file://generate/unix/readme.txt;md5=204407e197c1a01154a48f6c6280c3aa" - -COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" - -DEPENDS = "bison flex bison-native" - -SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz \ - file://rename-yy_scan_string-manually.patch \ - file://manipulate-fds-instead-of-FILE.patch \ - " -SRC_URI[md5sum] = "31691e2eb82b2064f78536a3423c18d6" -SRC_URI[sha256sum] = "5d8fc9d9db9e04830d40bec9add04b21c05d466e0187d354815006fdd823cf15" -UPSTREAM_CHECK_URI = "https://acpica.org/downloads" - -S = "${WORKDIR}/acpica-unix2-${PV}" - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "acpixtract" - -EXTRA_OEMAKE = "CC='${CC}' 'OPT_CFLAGS=-Wall'" - -do_install() { - install -D -p -m0755 generate/unix/bin*/iasl ${D}${bindir}/iasl - install -D -p -m0755 generate/unix/bin*/acpibin ${D}${bindir}/acpibin - install -D -p -m0755 generate/unix/bin*/acpiexec ${D}${bindir}/acpiexec - install -D -p -m0755 generate/unix/bin*/acpihelp ${D}${bindir}/acpihelp - install -D -p -m0755 generate/unix/bin*/acpinames ${D}${bindir}/acpinames - install -D -p -m0755 generate/unix/bin*/acpisrc ${D}${bindir}/acpisrc - install -D -p -m0755 generate/unix/bin*/acpixtract ${D}${bindir}/acpixtract -} - -# iasl*.bb is a subset of this recipe, so RREPLACE it -PROVIDES = "iasl" -RPROVIDES_${PN} += "iasl" -RREPLACES_${PN} += "iasl" -RCONFLICTS_${PN} += "iasl" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/acpica/acpica_20190405.bb b/poky/meta/recipes-extended/acpica/acpica_20190405.bb new file mode 100644 index 000000000..25ad7ce31 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/acpica_20190405.bb @@ -0,0 +1,49 @@ +SUMMARY = "ACPICA tools for the development and debug of ACPI tables" +DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ +OS-independent reference implementation of the Advanced Configuration and \ +Power Interface Specification (ACPI). ACPICA code contains those portions of \ +ACPI meant to be directly integrated into the host OS as a kernel-resident \ +subsystem, and a small set of tools to assist in developing and debugging \ +ACPI tables." + +HOMEPAGE = "http://www.acpica.org/" +SECTION = "console/tools" + +LICENSE = "BSD | GPLv2" +LIC_FILES_CHKSUM = "file://generate/unix/readme.txt;md5=204407e197c1a01154a48f6c6280c3aa" + +COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" + +DEPENDS = "bison flex bison-native" + +SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix2-${PV}.tar.gz" +SRC_URI[md5sum] = "9ee30c8ff3012e213bc3b21a9d632215" +SRC_URI[sha256sum] = "7e144fd011c23a0a10be0b0d7448c527a4c0f621f1f835a271636e448bc96643" +UPSTREAM_CHECK_URI = "https://acpica.org/downloads" + +S = "${WORKDIR}/acpica-unix2-${PV}" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "acpixtract acpidump" + +EXTRA_OEMAKE = "CC='${CC}' \ + OPT_CFLAGS=-Wall \ + DESTDIR=${D} \ + PREFIX=${prefix} \ + INSTALLDIR=${bindir} \ + INSTALLFLAGS= \ + " + +do_install() { + oe_runmake install +} + +# iasl*.bb is a subset of this recipe, so RREPLACE it +PROVIDES = "iasl" +RPROVIDES_${PN} += "iasl" +RREPLACES_${PN} += "iasl" +RCONFLICTS_${PN} += "iasl" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch b/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch deleted file mode 100644 index d8b5f9aa8..000000000 --- a/poky/meta/recipes-extended/acpica/files/manipulate-fds-instead-of-FILE.patch +++ /dev/null @@ -1,71 +0,0 @@ -From 540d80469e6a7dce6baf7214df90e86daffc5175 Mon Sep 17 00:00:00 2001 -From: Fan Xin -Date: Mon, 5 Jun 2017 13:26:38 +0900 -Subject: [PATCH] aslfiles.c: manipulate fds instead of FILE - -Copying what stdout/stderr point to is not portable and fails with -musl because FILE is an undefined struct. - -Instead, use lower-level Unix functions to modify the file that stderr -writes into. This works on the platforms that Yocto targets. - -Upstream-Status: Inappropriate [embedded specific] - -Signed-off-by: Patrick Ohly - -Rebase on acpica 20170303 - -Signed-off-by: Fan Xin - ---- - source/compiler/aslfiles.c | 15 ++++++++++++--- - 1 file changed, 12 insertions(+), 3 deletions(-) - -diff --git a/source/compiler/aslfiles.c b/source/compiler/aslfiles.c -index 82865db..cc072dc 100644 ---- a/source/compiler/aslfiles.c -+++ b/source/compiler/aslfiles.c -@@ -43,6 +43,11 @@ - - #include "aslcompiler.h" - #include "acapps.h" -+#include "dtcompiler.h" -+#include -+#include -+#include -+#include - - #define _COMPONENT ACPI_COMPILER - ACPI_MODULE_NAME ("aslfiles") -@@ -606,6 +611,8 @@ FlOpenMiscOutputFiles ( - - if (Gbl_DebugFlag) - { -+ int fd; -+ - Filename = FlGenerateFilename (FilenamePrefix, FILE_SUFFIX_DEBUG); - if (!Filename) - { -@@ -617,10 +624,10 @@ FlOpenMiscOutputFiles ( - /* Open the debug file as STDERR, text mode */ - - Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Filename = Filename; -- Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle = -- freopen (Filename, "w+t", stderr); - -- if (!Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle) -+ fd = open(Filename, O_CREAT|O_TRUNC, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH); -+ if (fd < 0 || -+ dup2(fd, fileno(stderr))) - { - /* - * A problem with freopen is that on error, we no longer -@@ -634,6 +641,8 @@ FlOpenMiscOutputFiles ( - exit (1); - } - -+ Gbl_Files[ASL_FILE_DEBUG_OUTPUT].Handle = stderr; -+ - AslCompilerSignon (ASL_FILE_DEBUG_OUTPUT); - AslCompilerFileHeader (ASL_FILE_DEBUG_OUTPUT); - } diff --git a/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch b/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch deleted file mode 100644 index b62ca25ba..000000000 --- a/poky/meta/recipes-extended/acpica/files/rename-yy_scan_string-manually.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 2ab61e6ad5a9cfcde838379bc36babfaaa61afb8 Mon Sep 17 00:00:00 2001 -From: Patrick Ohly -Date: Fri, 20 Jan 2017 13:50:17 +0100 -Subject: [PATCH] rename yy_scan_string manually - -flex 2.6.0 used to generate code where yy_scan_string was mapped -to _scan_string directly in the generated .c code. - -For example, generate/unix/iasl/obj/prparserlex.c: - -int -PrInitLexer ( - char *String) -{ - - LexBuffer = PrParser_scan_string (String); - return (LexBuffer == NULL); -} - -flex 2.6.3 no longer does that, leading to a compiler warning -and link error about yy_scan_string(). - -Both versions generate a preamble in the beginning of prparserlex.c -that maps several yy_* names, but yy_scan_string is not among those: - -... -... - -Upstream-Status: Inappropriate [workaround for https://github.com/westes/flex/issues/164] -Signed-off-by: Patrick Ohly ---- - source/compiler/dtparser.l | 2 +- - source/compiler/prparser.l | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/source/compiler/dtparser.l b/source/compiler/dtparser.l -index 3f4c2f3..eaa43ff 100644 ---- a/source/compiler/dtparser.l -+++ b/source/compiler/dtparser.l -@@ -120,7 +120,7 @@ DtInitLexer ( - char *String) - { - -- LexBuffer = yy_scan_string (String); -+ LexBuffer = DtParser_scan_string (String); - return (LexBuffer == NULL); - } - -diff --git a/source/compiler/prparser.l b/source/compiler/prparser.l -index 10bd130..9cb3573 100644 ---- a/source/compiler/prparser.l -+++ b/source/compiler/prparser.l -@@ -127,7 +127,7 @@ PrInitLexer ( - char *String) - { - -- LexBuffer = yy_scan_string (String); -+ LexBuffer = PrParser_scan_string (String); - return (LexBuffer == NULL); - } - --- -2.11.0 - diff --git a/poky/meta/recipes-extended/bash/bash/0001-help-fix-printf-format-security-warning.patch b/poky/meta/recipes-extended/bash/bash/0001-help-fix-printf-format-security-warning.patch deleted file mode 100644 index 5405c84c7..000000000 --- a/poky/meta/recipes-extended/bash/bash/0001-help-fix-printf-format-security-warning.patch +++ /dev/null @@ -1,35 +0,0 @@ -From e5837a42f8f48a6a721805ff8f7fcd32861d09ca Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Andr=C3=A9=20Draszik?= -Date: Tue, 26 Jul 2016 13:09:47 +0100 -Subject: [PATCH] help: fix printf() format security warning -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -| ../../bash-4.3.30/builtins/../../bash-4.3.30/builtins/help.def: In function 'help_builtin': -| ../../bash-4.3.30/builtins/../../bash-4.3.30/builtins/help.def:130:7: error: format not a string literal and no format arguments [-Werror=format-security] -| printf (ngettext ("Shell commands matching keyword `", "Shell commands matching keywords `", (list->next ? 2 : 1))); -| ^~~~~~ - -Signed-off-by: André Draszik ---- -Upstream-Status: Pending - builtins/help.def | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/builtins/help.def b/builtins/help.def -index 1894f17..cf624c6 100644 ---- a/builtins/help.def -+++ b/builtins/help.def -@@ -127,7 +127,7 @@ help_builtin (list) - - if (glob_pattern_p (list->word->word)) - { -- printf (ngettext ("Shell commands matching keyword `", "Shell commands matching keywords `", (list->next ? 2 : 1))); -+ printf ("%s", ngettext ("Shell commands matching keyword `", "Shell commands matching keywords `", (list->next ? 2 : 1))); - print_word_list (list, ", "); - printf ("'\n\n"); - } --- -2.8.1 - diff --git a/poky/meta/recipes-extended/bash/bash/build-tests.patch b/poky/meta/recipes-extended/bash/bash/build-tests.patch index 73a81b60d..5f2dae94a 100644 --- a/poky/meta/recipes-extended/bash/bash/build-tests.patch +++ b/poky/meta/recipes-extended/bash/bash/build-tests.patch @@ -2,15 +2,18 @@ Add 'ptest' target to Makefile, to run tests without checking dependencies. Upstream-Status: Pending Signed-off-by: Anders Roxell + +Rebase to 5.0 Signed-off-by: Hongxu Jia --- Makefile.in | 24 +++++++++++++++++++----- 1 file changed, 19 insertions(+), 5 deletions(-) diff --git a/Makefile.in b/Makefile.in +index 5fcb44b..de1c255 100644 --- a/Makefile.in +++ b/Makefile.in -@@ -848,20 +848,34 @@ maybe-clean: +@@ -932,20 +932,34 @@ maybe-clean: fi recho$(EXEEXT): $(SUPPORT_SRC)recho.c @@ -51,5 +54,5 @@ diff --git a/Makefile.in b/Makefile.in PATH=$(BUILD_DIR)/tests:$$PATH THIS_SH=$(THIS_SH) $(SHELL) ${TESTSCRIPT} ) -- -1.8.1.2 +2.7.4 diff --git a/poky/meta/recipes-extended/bash/bash/execute_cmd.patch b/poky/meta/recipes-extended/bash/bash/execute_cmd.patch index 9970b4d8f..7a9e9a902 100644 --- a/poky/meta/recipes-extended/bash/bash/execute_cmd.patch +++ b/poky/meta/recipes-extended/bash/bash/execute_cmd.patch @@ -1,10 +1,16 @@ Upstream-Status: Inappropriate [embedded specific] -Index: execute_cmd.c -=================================================================== ---- execute_cmd.c.orig -+++ execute_cmd.c -@@ -2459,7 +2459,11 @@ execute_pipeline (command, asynchronous, +Rebase to 5.0 +Signed-off-by: Hongxu Jia +--- + execute_cmd.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/execute_cmd.c b/execute_cmd.c +index f1d74bf..31674b4 100644 +--- a/execute_cmd.c ++++ b/execute_cmd.c +@@ -2567,7 +2567,11 @@ execute_pipeline (command, asynchronous, pipe_in, pipe_out, fds_to_close) /* If the `lastpipe' option is set with shopt, and job control is not enabled, execute the last element of non-async pipelines in the current shell environment. */ @@ -17,3 +23,6 @@ Index: execute_cmd.c { lstdin = move_to_high_fd (0, 1, -1); if (lstdin > 0) +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/bash/bash/pathexp-dep.patch b/poky/meta/recipes-extended/bash/bash/pathexp-dep.patch deleted file mode 100644 index e05bbda31..000000000 --- a/poky/meta/recipes-extended/bash/bash/pathexp-dep.patch +++ /dev/null @@ -1,13 +0,0 @@ -pathexp includes libintl.h but doesn't depend on it, thus a build race can occur. - -Upstream-Status: Submitted (https://savannah.gnu.org/patch/index.php?9503) -Signed-off-by: Ross Burton - -diff --git a/Makefile.in b/Makefile.in -index c7b62bc0..241cbf12 100644 ---- a/Makefile.in -+++ b/Makefile.in -@@ -1281,2 +1281,3 @@ nojobs.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h - y.tab.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h -+pathexp.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h - pcomplete.o: bashintl.h ${LIBINTL_H} $(BASHINCDIR)/gettext.h diff --git a/poky/meta/recipes-extended/bash/bash_4.4.18.bb b/poky/meta/recipes-extended/bash/bash_4.4.18.bb deleted file mode 100644 index 8fa0978d4..000000000 --- a/poky/meta/recipes-extended/bash/bash_4.4.18.bb +++ /dev/null @@ -1,41 +0,0 @@ -require bash.inc - -# GPLv2+ (< 4.0), GPLv3+ (>= 4.0) -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \ - ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-019;apply=yes;striplevel=0;name=patch019 \ - ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-020;apply=yes;striplevel=0;name=patch020 \ - ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-021;apply=yes;striplevel=0;name=patch021 \ - ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-022;apply=yes;striplevel=0;name=patch022 \ - ${GNU_MIRROR}/bash/bash-4.4-patches/bash44-023;apply=yes;striplevel=0;name=patch023 \ - file://execute_cmd.patch;striplevel=0 \ - file://mkbuiltins_have_stringize.patch \ - file://build-tests.patch \ - file://test-output.patch \ - file://fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch \ - file://run-ptest \ - file://fix-run-builtins.patch \ - file://0001-help-fix-printf-format-security-warning.patch \ - file://pathexp-dep.patch \ - " - -SRC_URI[tarball.md5sum] = "518e2c187cc11a17040f0915dddce54e" -SRC_URI[tarball.sha256sum] = "604d9eec5e4ed5fd2180ee44dd756ddca92e0b6aa4217bbab2b6227380317f23" - -SRC_URI[patch019.md5sum] = "8f43e1d277b02f3319a34c1cd4a4ff3e" -SRC_URI[patch019.sha256sum] = "27170d6edfe8819835407fdc08b401d2e161b1400fe9d0c5317a51104c89c11e" -SRC_URI[patch020.md5sum] = "5217ff08c444446ec306dce60437c288" -SRC_URI[patch020.sha256sum] = "1840e2cbf26ba822913662f74037594ed562361485390c52813b38156c99522c" -SRC_URI[patch021.md5sum] = "282c7d9b38da8005d25b4f816328a2f4" -SRC_URI[patch021.sha256sum] = "bd8f59054a763ec1c64179ad5cb607f558708a317c2bdb22b814e3da456374c1" -SRC_URI[patch022.md5sum] = "0b709c9d7f8e6cf267a8b863efb899f7" -SRC_URI[patch022.sha256sum] = "45331f0936e36ab91bfe44b936e33ed8a1b1848fa896e8a1d0f2ef74f297cb79" -SRC_URI[patch023.md5sum] = "fe2e0ca4cf9409ff0e9428e1236f983e" -SRC_URI[patch023.sha256sum] = "4fec236f3fbd3d0c47b893fdfa9122142a474f6ef66c20ffb6c0f4864dd591b6" - -DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" -DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" - -BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-extended/bash/bash_5.0.bb b/poky/meta/recipes-extended/bash/bash_5.0.bb new file mode 100644 index 000000000..e60e5304a --- /dev/null +++ b/poky/meta/recipes-extended/bash/bash_5.0.bb @@ -0,0 +1,45 @@ +require bash.inc + +# GPLv2+ (< 4.0), GPLv3+ (>= 4.0) +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "${GNU_MIRROR}/bash/${BP}.tar.gz;name=tarball \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-001;apply=yes;striplevel=0;name=patch001 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-002;apply=yes;striplevel=0;name=patch002 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-003;apply=yes;striplevel=0;name=patch003 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-004;apply=yes;striplevel=0;name=patch004 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-005;apply=yes;striplevel=0;name=patch005 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-006;apply=yes;striplevel=0;name=patch006 \ + ${GNU_MIRROR}/bash/bash-${PV}-patches/bash50-007;apply=yes;striplevel=0;name=patch007 \ + file://execute_cmd.patch \ + file://mkbuiltins_have_stringize.patch \ + file://build-tests.patch \ + file://test-output.patch \ + file://fix-run-coproc-run-heredoc-run-execscript-run-test-f.patch \ + file://run-ptest \ + file://fix-run-builtins.patch \ + " + +SRC_URI[tarball.md5sum] = "2b44b47b905be16f45709648f671820b" +SRC_URI[tarball.sha256sum] = "b4a80f2ac66170b2913efbfb9f2594f1f76c7b1afd11f799e22035d63077fb4d" + +SRC_URI[patch001.md5sum] = "b026862ab596a5883bb4f0d1077a3819" +SRC_URI[patch001.sha256sum] = "f2fe9e1f0faddf14ab9bfa88d450a75e5d028fedafad23b88716bd657c737289" +SRC_URI[patch002.md5sum] = "2f4a7787365790ae57f36b311701ea7e" +SRC_URI[patch002.sha256sum] = "87e87d3542e598799adb3e7e01c8165bc743e136a400ed0de015845f7ff68707" +SRC_URI[patch003.md5sum] = "af7f2dd93fd5429fb5e9a642ff74f87d" +SRC_URI[patch003.sha256sum] = "4eebcdc37b13793a232c5f2f498a5fcbf7da0ecb3da2059391c096db620ec85b" +SRC_URI[patch004.md5sum] = "b60545b273bfa4e00a760f2c648bed9c" +SRC_URI[patch004.sha256sum] = "14447ad832add8ecfafdce5384badd933697b559c4688d6b9e3d36ff36c62f08" +SRC_URI[patch005.md5sum] = "875a0bedf48b74e453e3997c84b5d8a4" +SRC_URI[patch005.sha256sum] = "5bf54dd9bd2c211d2bfb34a49e2c741f2ed5e338767e9ce9f4d41254bf9f8276" +SRC_URI[patch006.md5sum] = "4a8ee95adb72c3aba03d9e8c9f96ece6" +SRC_URI[patch006.sha256sum] = "d68529a6ff201b6ff5915318ab12fc16b8a0ebb77fda3308303fcc1e13398420" +SRC_URI[patch007.md5sum] = "411560d81fde2dc5b17b83c3f3b58c6f" +SRC_URI[patch007.sha256sum] = "17b41e7ee3673d8887dd25992417a398677533ab8827938aa41fad70df19af9b" + +DEBUG_OPTIMIZATION_append_armv4 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" +DEBUG_OPTIMIZATION_append_armv5 = " ${@bb.utils.contains('TUNE_CCARGS', '-mthumb', '-fomit-frame-pointer', '', d)}" + +BBCLASSEXTEND = "nativesdk" diff --git a/poky/meta/recipes-extended/cpio/cpio_2.12.bb b/poky/meta/recipes-extended/cpio/cpio_2.12.bb index cb845c307..3713bf0b1 100644 --- a/poky/meta/recipes-extended/cpio/cpio_2.12.bb +++ b/poky/meta/recipes-extended/cpio/cpio_2.12.bb @@ -18,7 +18,7 @@ SRC_URI[sha256sum] = "08a35e92deb3c85d269a0059a27d4140a9667a6369459299d08c17f713 inherit autotools gettext texinfo -EXTRA_OECONF += "DEFAULT_RMT_DIR=${base_sbindir}" +EXTRA_OECONF += "DEFAULT_RMT_DIR=${sbindir}" do_install () { autotools_do_install @@ -34,7 +34,7 @@ do_install () { PACKAGES =+ "${PN}-rmt" -FILES_${PN}-rmt = "${base_sbindir}/rmt*" +FILES_${PN}-rmt = "${sbindir}/rmt*" inherit update-alternatives @@ -46,6 +46,6 @@ ALTERNATIVE_${PN}-rmt = "rmt" ALTERNATIVE_LINK_NAME[cpio] = "${base_bindir}/cpio" ALTERNATIVE_PRIORITY[rmt] = "50" -ALTERNATIVE_LINK_NAME[rmt] = "${base_sbindir}/rmt" +ALTERNATIVE_LINK_NAME[rmt] = "${sbindir}/rmt" BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/cronie/cronie/crond_pam_config.patch b/poky/meta/recipes-extended/cronie/cronie/crond_pam_config.patch index 6c928165c..c374790d1 100644 --- a/poky/meta/recipes-extended/cronie/cronie/crond_pam_config.patch +++ b/poky/meta/recipes-extended/cronie/cronie/crond_pam_config.patch @@ -4,19 +4,19 @@ configure files instead. Upstream-Status: Pending Signed-off-by: Wenzong Fan -Index: cronie-1.5.1/pam/crond -=================================================================== ---- cronie-1.5.1.orig/pam/crond -+++ cronie-1.5.1/pam/crond +diff --git a/pam/crond b/pam/crond +index 560529d..95a6457 100644 +--- a/pam/crond ++++ b/pam/crond @@ -4,8 +4,8 @@ # # Although no PAM authentication is called, auth modules # are used for credential setting --auth include password-auth +-auth include system-auth +auth include common-auth account required pam_access.so --account include password-auth -+account include common-account +-account include system-auth ++account include common-auth session required pam_loginuid.so --session include password-auth +-session include system-auth +session include common-session-noninteractive diff --git a/poky/meta/recipes-extended/cronie/cronie_1.5.2.bb b/poky/meta/recipes-extended/cronie/cronie_1.5.2.bb deleted file mode 100644 index 3abca7f92..000000000 --- a/poky/meta/recipes-extended/cronie/cronie_1.5.2.bb +++ /dev/null @@ -1,83 +0,0 @@ -SUMMARY = "Cron daemon for executing programs at set times" -DESCRIPTION = "Cronie contains the standard UNIX daemon crond that runs \ -specified programs at scheduled times and related tools. It is based on the \ -original cron and has security and configuration enhancements like the \ -ability to use pam and SELinux." -HOMEPAGE = "https://github.com/cronie-crond/cronie/" -BUGTRACKER = "https://bugzilla.redhat.com" - -# Internet Systems Consortium License -LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=dd2a592170760e1386c769e1043b3722 \ - file://src/cron.c;endline=20;md5=b425c334265026177128353a142633b4 \ - file://src/popen.c;beginline=3;endline=31;md5=edd50742d8def712e9472dba353668a9" - -SECTION = "utils" - -UPSTREAM_CHECK_URI = "https://github.com/cronie-crond/${BPN}/releases/" - -SRC_URI = "https://github.com/cronie-crond/cronie/releases/download/cronie-${PV}/cronie-${PV}.tar.gz \ - file://crond.init \ - file://crontab \ - file://crond.service \ - ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" - -PAM_SRC_URI = "file://crond_pam_config.patch" -PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid" - -SRC_URI[md5sum] = "703314f58a49ea136e9966d3937d9bf4" -SRC_URI[sha256sum] = "370bf34641691489330e708bd4cdbd779267296a030668a12f77b7e36872fd75" - -inherit autotools update-rc.d useradd systemd - -PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" - -PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit," -PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,${PAM_DEPS}" - -INITSCRIPT_NAME = "crond" -INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ." - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "--system crontab" - -SYSTEMD_SERVICE_${PN} = "crond.service" - -do_install_append () { - install -d ${D}${sysconfdir}/sysconfig/ - install -d ${D}${sysconfdir}/init.d/ - install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond - install -m 0755 ${WORKDIR}/crond.init ${D}${sysconfdir}/init.d/crond - - # install systemd unit files - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/crond.service ${D}${systemd_unitdir}/system - sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ - -e 's,@SBINDIR@,${sbindir},g' \ - ${D}${systemd_unitdir}/system/crond.service - - # below are necessary for a complete cron environment - install -d ${D}${localstatedir}/spool/cron - install -m 0755 ${WORKDIR}/crontab ${D}${sysconfdir}/ - mkdir -p ${D}${sysconfdir}/cron.d - mkdir -p ${D}${sysconfdir}/cron.hourly - mkdir -p ${D}${sysconfdir}/cron.daily - mkdir -p ${D}${sysconfdir}/cron.weekly - mkdir -p ${D}${sysconfdir}/cron.monthly - touch ${D}${sysconfdir}/cron.deny - - # below setting is necessary to allow normal user using crontab - - # setgid for crontab binary - chown root:crontab ${D}${bindir}/crontab - chmod 2755 ${D}${bindir}/crontab - - # allow 'crontab' group write to /var/spool/cron - chown root:crontab ${D}${localstatedir}/spool/cron - chmod 770 ${D}${localstatedir}/spool/cron - - chmod 600 ${D}${sysconfdir}/crontab -} - -FILES_${PN} += "${sysconfdir}/cron*" -CONFFILES_${PN} += "${sysconfdir}/crontab" diff --git a/poky/meta/recipes-extended/cronie/cronie_1.5.4.bb b/poky/meta/recipes-extended/cronie/cronie_1.5.4.bb new file mode 100644 index 000000000..d35c6672c --- /dev/null +++ b/poky/meta/recipes-extended/cronie/cronie_1.5.4.bb @@ -0,0 +1,83 @@ +SUMMARY = "Cron daemon for executing programs at set times" +DESCRIPTION = "Cronie contains the standard UNIX daemon crond that runs \ +specified programs at scheduled times and related tools. It is based on the \ +original cron and has security and configuration enhancements like the \ +ability to use pam and SELinux." +HOMEPAGE = "https://github.com/cronie-crond/cronie/" +BUGTRACKER = "https://bugzilla.redhat.com" + +# Internet Systems Consortium License +LICENSE = "ISC & BSD-3-Clause & BSD-2-Clause & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=dd2a592170760e1386c769e1043b3722 \ + file://src/cron.c;endline=20;md5=b425c334265026177128353a142633b4 \ + file://src/popen.c;beginline=3;endline=31;md5=edd50742d8def712e9472dba353668a9" + +SECTION = "utils" + +UPSTREAM_CHECK_URI = "https://github.com/cronie-crond/${BPN}/releases/" + +SRC_URI = "https://github.com/cronie-crond/cronie/releases/download/cronie-${PV}-final/cronie-${PV}.tar.gz \ + file://crond.init \ + file://crontab \ + file://crond.service \ + ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', '', d)}" + +PAM_SRC_URI = "file://crond_pam_config.patch" +PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid" + +SRC_URI[md5sum] = "20233b96997e17a142e1fbe0d7ce8223" +SRC_URI[sha256sum] = "af8970559cad4262f8ffd7ec72abf682d2dcce04fdfb8f206a71d96566aba882" + +inherit autotools update-rc.d useradd systemd + +PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" + +PACKAGECONFIG[audit] = "--with-audit,--without-audit,audit," +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam,${PAM_DEPS}" + +INITSCRIPT_NAME = "crond" +INITSCRIPT_PARAMS = "start 90 2 3 4 5 . stop 60 0 1 6 ." + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system crontab" + +SYSTEMD_SERVICE_${PN} = "crond.service" + +do_install_append () { + install -d ${D}${sysconfdir}/sysconfig/ + install -d ${D}${sysconfdir}/init.d/ + install -m 0644 ${S}/crond.sysconfig ${D}${sysconfdir}/sysconfig/crond + install -m 0755 ${WORKDIR}/crond.init ${D}${sysconfdir}/init.d/crond + + # install systemd unit files + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/crond.service ${D}${systemd_unitdir}/system + sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \ + -e 's,@SBINDIR@,${sbindir},g' \ + ${D}${systemd_unitdir}/system/crond.service + + # below are necessary for a complete cron environment + install -d ${D}${localstatedir}/spool/cron + install -m 0755 ${WORKDIR}/crontab ${D}${sysconfdir}/ + mkdir -p ${D}${sysconfdir}/cron.d + mkdir -p ${D}${sysconfdir}/cron.hourly + mkdir -p ${D}${sysconfdir}/cron.daily + mkdir -p ${D}${sysconfdir}/cron.weekly + mkdir -p ${D}${sysconfdir}/cron.monthly + touch ${D}${sysconfdir}/cron.deny + + # below setting is necessary to allow normal user using crontab + + # setgid for crontab binary + chown root:crontab ${D}${bindir}/crontab + chmod 2755 ${D}${bindir}/crontab + + # allow 'crontab' group write to /var/spool/cron + chown root:crontab ${D}${localstatedir}/spool/cron + chmod 770 ${D}${localstatedir}/spool/cron + + chmod 600 ${D}${sysconfdir}/crontab +} + +FILES_${PN} += "${sysconfdir}/cron*" +CONFFILES_${PN} += "${sysconfdir}/crontab" diff --git a/poky/meta/recipes-extended/cups/cups_2.2.10.bb b/poky/meta/recipes-extended/cups/cups_2.2.10.bb deleted file mode 100644 index 490c84e2f..000000000 --- a/poky/meta/recipes-extended/cups/cups_2.2.10.bb +++ /dev/null @@ -1,6 +0,0 @@ -require cups.inc - -LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f212b4338db0da8cb892e94bf2949460" - -SRC_URI[md5sum] = "3d22d747403ec5dcd0b66d1332564816" -SRC_URI[sha256sum] = "77c8b2b3bb7fe8b5fbfffc307f2c817b2d7ec67b657f261a1dd1c61ab81205bb" diff --git a/poky/meta/recipes-extended/cups/cups_2.2.11.bb b/poky/meta/recipes-extended/cups/cups_2.2.11.bb new file mode 100644 index 000000000..aeb2e14e3 --- /dev/null +++ b/poky/meta/recipes-extended/cups/cups_2.2.11.bb @@ -0,0 +1,6 @@ +require cups.inc + +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f212b4338db0da8cb892e94bf2949460" + +SRC_URI[md5sum] = "7afbbcd2497e7d742583c492f6de40cd" +SRC_URI[sha256sum] = "f58010813fd6903f690cdb0c0b91e4d1bc9e5b9570c28734229ba3ed2908b76c" diff --git a/poky/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch b/poky/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch index beae5f98c..b145188d7 100644 --- a/poky/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch +++ b/poky/meta/recipes-extended/ethtool/ethtool/avoid_parallel_tests.patch @@ -19,7 +19,7 @@ index e891d91..600f8a8 100644 --- a/configure.ac +++ b/configure.ac @@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script. - AC_INIT(ethtool, 4.19, netdev@vger.kernel.org) + AC_INIT(ethtool, 5.0, netdev@vger.kernel.org) AC_PREREQ(2.52) AC_CONFIG_SRCDIR([ethtool.c]) -AM_INIT_AUTOMAKE([gnu]) diff --git a/poky/meta/recipes-extended/ethtool/ethtool_4.19.bb b/poky/meta/recipes-extended/ethtool/ethtool_4.19.bb deleted file mode 100644 index 74e255c24..000000000 --- a/poky/meta/recipes-extended/ethtool/ethtool_4.19.bb +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "Display or change ethernet card settings" -DESCRIPTION = "A small utility for examining and tuning the settings of your ethernet-based network interfaces." -HOMEPAGE = "http://www.kernel.org/pub/software/network/ethtool/" -SECTION = "console/network" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://ethtool.c;beginline=4;endline=17;md5=c19b30548c582577fc6b443626fc1216" - -SRC_URI = "${KERNELORG_MIRROR}/software/network/ethtool/ethtool-${PV}.tar.gz \ - file://run-ptest \ - file://avoid_parallel_tests.patch \ - " - -SRC_URI[md5sum] = "a533db1d202724822c4ef297643fac12" -SRC_URI[sha256sum] = "e8e88f5a79c78e542cd84fee60b67dbf29cee63e4760e8d61544fea74c761ad1" - -inherit autotools ptest -RDEPENDS_${PN}-ptest += "make" - -do_compile_ptest() { - oe_runmake buildtest-TESTS -} - -do_install_ptest () { - cp ${B}/Makefile ${D}${PTEST_PATH} - install ${B}/test-cmdline ${D}${PTEST_PATH} - install ${B}/test-features ${D}${PTEST_PATH} - install ${B}/ethtool ${D}${PTEST_PATH}/ethtool - sed -i 's/^Makefile/_Makefile/' ${D}${PTEST_PATH}/Makefile -} diff --git a/poky/meta/recipes-extended/ethtool/ethtool_5.0.bb b/poky/meta/recipes-extended/ethtool/ethtool_5.0.bb new file mode 100644 index 000000000..76cdf9c4e --- /dev/null +++ b/poky/meta/recipes-extended/ethtool/ethtool_5.0.bb @@ -0,0 +1,30 @@ +SUMMARY = "Display or change ethernet card settings" +DESCRIPTION = "A small utility for examining and tuning the settings of your ethernet-based network interfaces." +HOMEPAGE = "http://www.kernel.org/pub/software/network/ethtool/" +SECTION = "console/network" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://ethtool.c;beginline=4;endline=17;md5=c19b30548c582577fc6b443626fc1216" + +SRC_URI = "${KERNELORG_MIRROR}/software/network/ethtool/ethtool-${PV}.tar.gz \ + file://run-ptest \ + file://avoid_parallel_tests.patch \ + " + +SRC_URI[md5sum] = "8998c9eb7e491b0aec420a807ce52ba6" +SRC_URI[sha256sum] = "cc53a6d4d5643f8993ef20d6b638f88d9035529a9e777e222073c3a5b9237178" + +inherit autotools ptest +RDEPENDS_${PN}-ptest += "make" + +do_compile_ptest() { + oe_runmake buildtest-TESTS +} + +do_install_ptest () { + cp ${B}/Makefile ${D}${PTEST_PATH} + install ${B}/test-cmdline ${D}${PTEST_PATH} + install ${B}/test-features ${D}${PTEST_PATH} + install ${B}/ethtool ${D}${PTEST_PATH}/ethtool + sed -i 's/^Makefile/_Makefile/' ${D}${PTEST_PATH}/Makefile +} diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0001.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0001.patch deleted file mode 100644 index 30ce04a7b..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0001.patch +++ /dev/null @@ -1,99 +0,0 @@ -From ad3ad6b389653722507e588c5cb34d8731e49e89 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Mon, 26 Nov 2018 18:01:25 +0000 -Subject: [PATCH] Have gs_cet.ps run from gs_init.ps - -Previously gs_cet.ps was run on the command line, to set up the interpreter -state so our output more closely matches the example output for the QL CET -tests. - -Allow a -dCETMODE command line switch, which will cause gs_init.ps to run the -file directly. - -This works better for gpdl as it means the changes are made in the intial -interpreter state, rather than after initialisation is complete. - -This also means adding a definition of the default procedure for black -generation and under color removal (rather it being defined in-line in -.setdefaultbgucr - -Also, add a check so gs_cet.ps only runs once - if we try to run it a second -time, we'll just skip over the file, flushing through to the end. - -CVE: CVE-2019-3835 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_cet.ps | 11 ++++++++++- - Resource/Init/gs_init.ps | 13 ++++++++++++- - 2 files changed, 22 insertions(+), 2 deletions(-) - -diff --git a/Resource/Init/gs_cet.ps b/Resource/Init/gs_cet.ps -index d3e1686..75534bb 100644 ---- a/Resource/Init/gs_cet.ps -+++ b/Resource/Init/gs_cet.ps -@@ -1,6 +1,11 @@ - %!PS - % Set defaults for Ghostscript to match Adobe CPSI behaviour for CET - -+systemdict /product get (PhotoPRINT SE 5.0v2) readonly eq -+{ -+ (%END GS_CET) .skipeof -+} if -+ - % do this in the server level so it is persistent across jobs - //true 0 startjob not { - (*** Warning: CET startup is not in server default) = flush -@@ -25,7 +30,9 @@ currentglobal //true setglobal - - /UNROLLFORMS true def - --{ } bind dup -+(%.defaultbgrucrproc) cvn { } bind def -+ -+(%.defaultbgrucrproc) cvn load dup - setblackgeneration - setundercolorremoval - 0 array cvx readonly dup dup dup setcolortransfer -@@ -109,3 +116,5 @@ userdict /.smoothness currentsmoothness put - % end of slightly nasty hack to give consistent cluster results - - //false 0 startjob pop % re-enter encapsulated mode -+ -+%END GS_CET -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index 45bebf4..e6b9cd2 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -1538,10 +1538,18 @@ setpacking - % any-part-of-pixel rule. - 0.5 .setfilladjust - } bind def -+ - % Set the default screen and BG/UCR. -+% We define the proc here, rather than inline in .setdefaultbgucr -+% for the benefit of gs_cet.ps so jobs that do anything that causes -+% .setdefaultbgucr to be called will still get the redefined proc -+% in gs_cet.ps -+(%.defaultbgrucrproc) cvn { pop 0 } def -+ - /.setdefaultbgucr { - systemdict /setblackgeneration known { -- { pop 0 } dup setblackgeneration setundercolorremoval -+ (%.defaultbgrucrproc) cvn load dup -+ setblackgeneration setundercolorremoval - } if - } bind def - /.useloresscreen { % - .useloresscreen -@@ -2491,4 +2499,7 @@ WRITESYSTEMDICT { - % be 'true' in some cases. - userdict /AGM_preserve_spots //false put - -+systemdict /CETMODE .knownget -+{ { (gs_cet.ps) runlibfile } if } if -+ - % The interpreter will run the initial procedure (start). --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0002.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0002.patch deleted file mode 100644 index 590b92e18..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0002.patch +++ /dev/null @@ -1,71 +0,0 @@ -From ba6dbd6e61dbb3cc6ee6db9dd3a4f70cc18f706e Mon Sep 17 00:00:00 2001 -From: Nancy Durgin -Date: Thu, 14 Feb 2019 10:09:00 -0800 -Subject: [PATCH] Undef /odef in gs_init.ps - -Made a new temporary utility function in gs_cet.ps (.odef) to use instead -of /odef. This makes it fine to undef odef with all the other operators in -gs_init.ps - -This punts the bigger question of what to do with .makeoperator, but it -doesn't make the situation any worse than it already was. - -CVE: CVE-2019-3835 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_cet.ps | 10 ++++++++-- - Resource/Init/gs_init.ps | 1 + - 2 files changed, 9 insertions(+), 2 deletions(-) - -diff --git a/Resource/Init/gs_cet.ps b/Resource/Init/gs_cet.ps -index 75534bb..dbc5c4e 100644 ---- a/Resource/Init/gs_cet.ps -+++ b/Resource/Init/gs_cet.ps -@@ -1,6 +1,10 @@ - %!PS - % Set defaults for Ghostscript to match Adobe CPSI behaviour for CET - -+/.odef { % odef - -+ 1 index exch .makeoperator def -+} bind def -+ - systemdict /product get (PhotoPRINT SE 5.0v2) readonly eq - { - (%END GS_CET) .skipeof -@@ -93,8 +97,8 @@ userdict /.smoothness currentsmoothness put - } { - /setsmoothness .systemvar /typecheck signalerror - } ifelse --} bind odef --/currentsmoothness { userdict /.smoothness get } bind odef % for 09-55.PS, 09-57.PS . -+} bind //.odef exec -+/currentsmoothness { userdict /.smoothness get } bind //.odef exec % for 09-55.PS, 09-57.PS . - - % slightly nasty hack to give consistent cluster results - /ofnfa systemdict /filenameforall get def -@@ -113,6 +117,8 @@ userdict /.smoothness currentsmoothness put - } ifelse - ofnfa - } bind def -+ -+currentdict /.odef undef - % end of slightly nasty hack to give consistent cluster results - - //false 0 startjob pop % re-enter encapsulated mode -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index e6b9cd2..80d9585 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -2257,6 +2257,7 @@ SAFER { .setsafeglobal } if - /.systemvmSFD /.settrapparams /.currentsystemparams /.currentuserparams /.getsystemparam /.getuserparam /.setsystemparams /.setuserparams - /.checkpassword /.locale_to_utf8 /.currentglobal /.gcheck /.imagepath /.currentoutputdevice - /.type /.writecvs /.setSMask /.currentSMask /.needinput /.countexecstack /.execstack /.applypolicies -+ /odef - - % Used by a free user in the Library of Congress. Apparently this is used to - % draw a partial page, which is then filled in by the results of a barcode --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0003.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0003.patch deleted file mode 100644 index a339fa2f3..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0003.patch +++ /dev/null @@ -1,295 +0,0 @@ -From 4203e04ef9e6ca22ed68a1ab10a878aa9ceaeedc Mon Sep 17 00:00:00 2001 -From: Ray Johnston -Date: Thu, 14 Feb 2019 10:20:03 -0800 -Subject: [PATCH] Fix bug 700585: Restrict superexec and remove it from - internals and gs_cet.ps - -Also while changing things, restructure the CETMODE so that it will -work with -dSAFER. The gs_cet.ps is now run when we are still at save -level 0 with systemdict writeable. Allows us to undefine .makeoperator -and .setCPSImode internal operators after CETMODE is handled. - -Change previous uses of superexec to using .forceput (with the usual -.bind executeonly to hide it). - -CVE: CVE-2019-3835 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_cet.ps | 38 ++++++++++++++------------------------ - Resource/Init/gs_dps1.ps | 2 +- - Resource/Init/gs_fonts.ps | 8 ++++---- - Resource/Init/gs_init.ps | 38 +++++++++++++++++++++++++++----------- - Resource/Init/gs_ttf.ps | 8 ++++---- - Resource/Init/gs_type1.ps | 6 +++--- - 6 files changed, 53 insertions(+), 47 deletions(-) - -diff --git a/Resource/Init/gs_cet.ps b/Resource/Init/gs_cet.ps -index dbc5c4e..3cc6883 100644 ---- a/Resource/Init/gs_cet.ps -+++ b/Resource/Init/gs_cet.ps -@@ -1,37 +1,29 @@ - %!PS - % Set defaults for Ghostscript to match Adobe CPSI behaviour for CET - --/.odef { % odef - -- 1 index exch .makeoperator def --} bind def -- -+% skip if we've already run this -- based on fake "product" - systemdict /product get (PhotoPRINT SE 5.0v2) readonly eq - { - (%END GS_CET) .skipeof - } if - --% do this in the server level so it is persistent across jobs --//true 0 startjob not { -- (*** Warning: CET startup is not in server default) = flush --} if -+% Note: this must be run at save level 0 and when systemdict is writeable -+currentglobal //true setglobal -+systemdict dup dup dup -+/version (3017.102) readonly .forceput % match CPSI 3017.102 -+/product (PhotoPRINT SE 5.0v2) readonly .forceput % match CPSI 3017.102 -+/revision 0 put % match CPSI 3017.103 Tek shows revision 5 -+/serialnumber dup {233640} readonly .makeoperator .forceput % match CPSI 3017.102 Tek shows serialnumber 1401788461 -+ -+systemdict /.odef { % odef - -+ 1 index exch //.makeoperator def -+} .bind .forceput % this will be undefined at the end - - 300 .sethiresscreen % needed for language switch build since it - % processes gs_init.ps BEFORE setting the resolution - - 0 array 0 setdash % CET 09-08 wants local setdash - --currentglobal //true setglobal -- --{ -- systemdict dup dup dup -- /version (3017.102) readonly put % match CPSI 3017.102 -- /product (PhotoPRINT SE 5.0v2) readonly put % match CPSI 3017.102 -- /revision 0 put % match CPSI 3017.103 Tek shows revision 5 -- /serialnumber dup {233640} readonly .makeoperator put % match CPSI 3017.102 Tek shows serialnumber 1401788461 -- systemdict /deviceinfo undef % for CET 20-23-1 --% /UNROLLFORMS true put % CET files do unreasonable things inside forms --} 1183615869 internaldict /superexec get exec -- - /UNROLLFORMS true def - - (%.defaultbgrucrproc) cvn { } bind def -@@ -118,9 +110,7 @@ userdict /.smoothness currentsmoothness put - ofnfa - } bind def - --currentdict /.odef undef --% end of slightly nasty hack to give consistent cluster results -- --//false 0 startjob pop % re-enter encapsulated mode -+systemdict /.odef .undef - -+% end of slightly nasty hack to give consistent cluster results - %END GS_CET -diff --git a/Resource/Init/gs_dps1.ps b/Resource/Init/gs_dps1.ps -index 3d2cf7a..c4fd839 100644 ---- a/Resource/Init/gs_dps1.ps -+++ b/Resource/Init/gs_dps1.ps -@@ -89,7 +89,7 @@ level2dict begin - % definition, copy it into the local directory. - //systemdict /SharedFontDirectory .knownget - { 1 index .knownget -- { //.FontDirectory 2 index 3 -1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse } % readonly -+ { //.FontDirectory 2 index 3 -1 roll .forceput } % readonly - if - } - if -diff --git a/Resource/Init/gs_fonts.ps b/Resource/Init/gs_fonts.ps -index 0562235..f2b4e19 100644 ---- a/Resource/Init/gs_fonts.ps -+++ b/Resource/Init/gs_fonts.ps -@@ -519,11 +519,11 @@ buildfontdict 3 /.buildfont3 cvx put - % the font in LocalFontDirectory. - .currentglobal - { //systemdict /LocalFontDirectory .knownget -- { 2 index 2 index { .growput } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse } % readonly -+ { 2 index 2 index .forceput } % readonly - if - } - if -- dup //.FontDirectory 4 -2 roll { .growput } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly -+ dup //.FontDirectory 4 -2 roll .forceput % readonly - % If the font originated as a resource, register it. - currentfile .currentresourcefile eq { dup .registerfont } if - readonly -@@ -1191,13 +1191,13 @@ $error /SubstituteFont { } put - //.FontDirectory 1 index known not { - 2 dict dup /FontName 3 index put - dup /FontType 1 put -- //.FontDirectory 3 1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly -+ //.FontDirectory 3 1 roll //.forceput exec % readonly - } { - pop - } ifelse - } forall - } forall -- } -+ } executeonly % hide .forceput - FAKEFONTS { exch } if pop def % don't bind, .current/setglobal get redefined - - % Install initial fonts from Fontmap. -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index 80d9585..0d5c4f7 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -2188,9 +2188,6 @@ SAFER { .setsafeglobal } if - /.endtransparencygroup % transparency-example.ps - /.setdotlength % Bug687720.ps - /.sort /.setdebug /.mementolistnewblocks /getenv -- -- /.makeoperator /.setCPSImode % gs_cet.ps, this won't work on cluster with -dSAFER -- - /unread - ] - {systemdict exch .forceundef} forall -@@ -2270,7 +2267,6 @@ SAFER { .setsafeglobal } if - - % Used by our own test suite files - %/.fileposition %image-qa.ps -- %/.makeoperator /.setCPSImode % gs_cet.ps - - % Either our code uses these in ways which mean they can't be undefined, or they are used directly by - % test files/utilities, or engineers expressed a desire to keep them visible. -@@ -2457,6 +2453,16 @@ end - /vmreclaim where - { pop NOGC not { 2 .vmreclaim 0 vmreclaim } if - } if -+ -+% Do this before systemdict is locked (see below for additional CETMODE setup using gs_cet.ps) -+systemdict /CETMODE .knownget { -+ { -+ (gs_cet.ps) runlibfile -+ } if -+} if -+systemdict /.makeoperator .undef % must be after gs_cet.ps -+systemdict /.setCPSImode .undef % must be after gs_cet.ps -+ - DELAYBIND not { - systemdict /.bindnow .undef % We only need this for DELAYBIND - systemdict /.forcecopynew .undef % remove temptation -@@ -2464,16 +2470,29 @@ DELAYBIND not { - systemdict /.forceundef .undef % ditto - } if - --% Move superexec to internaldict if superexec is defined. --systemdict /superexec .knownget { -- 1183615869 internaldict /superexec 3 -1 roll put -- systemdict /superexec .undef -+% Move superexec to internaldict if superexec is defined. (Level 2 or later) -+systemdict /superexec known { -+ % restrict superexec to single known use by PScript5.dll -+ % We could do this only for SAFER mode, but internaldict and superexec are -+ % not very well documented, and we don't want them to be used. -+ 1183615869 internaldict /superexec { -+ 2 index /Private eq % first check for typical use in PScript5.dll -+ 1 index length 1 eq and % expected usage is: dict /Private {put} superexec -+ 1 index 0 get systemdict /put get eq and -+ { -+ //superexec exec % the only usage we allow -+ } { -+ /superexec load /invalidaccess signalerror -+ } ifelse -+ } bind cvx executeonly put -+ systemdict /superexec .undef % get rid of the dangerous (unrestricted) operator - } if - - % Can't remove this one until the last minute :-) - DELAYBIND not { - systemdict /.undef .undef - } if -+ - WRITESYSTEMDICT { - SAFER { - (\n *** WARNING - you have selected SAFER, indicating you want Ghostscript\n) print -@@ -2500,7 +2519,4 @@ WRITESYSTEMDICT { - % be 'true' in some cases. - userdict /AGM_preserve_spots //false put - --systemdict /CETMODE .knownget --{ { (gs_cet.ps) runlibfile } if } if -- - % The interpreter will run the initial procedure (start). -diff --git a/Resource/Init/gs_ttf.ps b/Resource/Init/gs_ttf.ps -index 05943c5..da97afa 100644 ---- a/Resource/Init/gs_ttf.ps -+++ b/Resource/Init/gs_ttf.ps -@@ -1421,7 +1421,7 @@ mark - TTFDEBUG { (\n1 setting alias: ) print dup ==only - ( to be the same as ) print 2 index //== exec } if - -- 7 index 2 index 3 -1 roll exch //.growput systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse -+ 7 index 2 index 3 -1 roll exch .forceput - } forall - pop pop pop - } -@@ -1439,7 +1439,7 @@ mark - exch pop - TTFDEBUG { (\n2 setting alias: ) print 1 index ==only - ( to use glyph index: ) print dup //== exec } if -- 5 index 3 1 roll //.growput systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse -+ 5 index 3 1 roll .forceput - //false - } - { -@@ -1456,7 +1456,7 @@ mark - { % CharStrings(dict) isunicode(boolean) cmap(dict) RAGL(dict) gname(name) codep(integer) gindex(integer) - TTFDEBUG { (\3 nsetting alias: ) print 1 index ==only - ( to be index: ) print dup //== exec } if -- exch pop 5 index 3 1 roll //.growput systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse -+ exch pop 5 index 3 1 roll .forceput - } - { - pop pop -@@ -1486,7 +1486,7 @@ mark - } ifelse - ] - TTFDEBUG { (Encoding: ) print dup === flush } if --} bind def -+} .bind executeonly odef % hides .forceput - - % to be removed 9.09...... - currentdict /postalias undef -diff --git a/Resource/Init/gs_type1.ps b/Resource/Init/gs_type1.ps -index 96e1ced..61f5269 100644 ---- a/Resource/Init/gs_type1.ps -+++ b/Resource/Init/gs_type1.ps -@@ -116,7 +116,7 @@ - { % scratch(string) RAGL(dict) AGL(dict) CharStrings(dict) cstring gname aglname - CFFDEBUG { (\nsetting alias: ) print dup ==only - ( to be the same as glyph: ) print 1 index //== exec } if -- 3 index exch 3 index //.growput systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse -+ 3 index exch 3 index .forceput - % scratch(string) RAGL(dict) AGL(dict) CharStrings(dict) cstring gname - } - {pop} ifelse -@@ -135,7 +135,7 @@ - 3 1 roll pop pop - } if - pop -- dup /.AGLprocessed~GS //true //.growput systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse -+ dup /.AGLprocessed~GS //true .forceput - } if - - %% We need to excute the C .buildfont1 in a stopped context so that, if there -@@ -148,7 +148,7 @@ - {//.buildfont1} stopped - 4 3 roll .setglobal - {//.buildfont1 $error /errorname get signalerror} if -- } bind def -+ } .bind executeonly def % hide .forceput - - % If the diskfont feature isn't included, define a dummy .loadfontdict. - /.loadfontdict where --- -2.20.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0004.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0004.patch deleted file mode 100644 index 5228cace2..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3835-0004.patch +++ /dev/null @@ -1,167 +0,0 @@ -From 5845e667dda3c945ee793fbe6af021533cb4fbec Mon Sep 17 00:00:00 2001 -From: Ray Johnston -Date: Sun, 24 Feb 2019 22:01:04 -0800 -Subject: [PATCH] Bug 700585: Obliterate "superexec". We don't need it, nor - do any known apps. - -We were under the impression that the Windows driver 'PScript5.dll' used -superexec, but after testing with our extensive suite of PostScript file, -and analysis of the PScript5 "Adobe CoolType ProcSet, it does not appear -that this operator is needed anymore. Get rid of superexec and all of the -references to it, since it is a potential security hole. - -CVE: CVE-2019-3835 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_init.ps | 18 ------------------ - psi/icontext.c | 1 - - psi/icstate.h | 1 - - psi/zcontrol.c | 30 ------------------------------ - psi/zdict.c | 6 ++---- - psi/zgeneric.c | 3 +-- - 6 files changed, 3 insertions(+), 56 deletions(-) - -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index 0d5c4f7..c5ac82a 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -2470,24 +2470,6 @@ DELAYBIND not { - systemdict /.forceundef .undef % ditto - } if - --% Move superexec to internaldict if superexec is defined. (Level 2 or later) --systemdict /superexec known { -- % restrict superexec to single known use by PScript5.dll -- % We could do this only for SAFER mode, but internaldict and superexec are -- % not very well documented, and we don't want them to be used. -- 1183615869 internaldict /superexec { -- 2 index /Private eq % first check for typical use in PScript5.dll -- 1 index length 1 eq and % expected usage is: dict /Private {put} superexec -- 1 index 0 get systemdict /put get eq and -- { -- //superexec exec % the only usage we allow -- } { -- /superexec load /invalidaccess signalerror -- } ifelse -- } bind cvx executeonly put -- systemdict /superexec .undef % get rid of the dangerous (unrestricted) operator --} if -- - % Can't remove this one until the last minute :-) - DELAYBIND not { - systemdict /.undef .undef -diff --git a/psi/icontext.c b/psi/icontext.c -index 1fbe486..7462ea3 100644 ---- a/psi/icontext.c -+++ b/psi/icontext.c -@@ -151,7 +151,6 @@ context_state_alloc(gs_context_state_t ** ppcst, - pcst->rand_state = rand_state_initial; - pcst->usertime_total = 0; - pcst->keep_usertime = false; -- pcst->in_superexec = 0; - pcst->plugin_list = 0; - make_t(&pcst->error_object, t__invalid); - { /* -diff --git a/psi/icstate.h b/psi/icstate.h -index 4c6a14d..1009d85 100644 ---- a/psi/icstate.h -+++ b/psi/icstate.h -@@ -54,7 +54,6 @@ struct gs_context_state_s { - long usertime_total; /* total accumulated usertime, */ - /* not counting current time if running */ - bool keep_usertime; /* true if context ever executed usertime */ -- int in_superexec; /* # of levels of superexec */ - /* View clipping is handled in the graphics state. */ - ref error_object; /* t__invalid or error object from operator */ - ref userparams; /* t_dictionary */ -diff --git a/psi/zcontrol.c b/psi/zcontrol.c -index 0362cf4..dc813e8 100644 ---- a/psi/zcontrol.c -+++ b/psi/zcontrol.c -@@ -158,34 +158,6 @@ zexecn(i_ctx_t *i_ctx_p) - return o_push_estack; - } - --/* superexec - */ --static int end_superexec(i_ctx_t *); --static int --zsuperexec(i_ctx_t *i_ctx_p) --{ -- os_ptr op = osp; -- es_ptr ep; -- -- check_op(1); -- if (!r_has_attr(op, a_executable)) -- return 0; /* literal object just gets pushed back */ -- check_estack(2); -- ep = esp += 3; -- make_mark_estack(ep - 2, es_other, end_superexec); /* error case */ -- make_op_estack(ep - 1, end_superexec); /* normal case */ -- ref_assign(ep, op); -- esfile_check_cache(); -- pop(1); -- i_ctx_p->in_superexec++; -- return o_push_estack; --} --static int --end_superexec(i_ctx_t *i_ctx_p) --{ -- i_ctx_p->in_superexec--; -- return 0; --} -- - /* .runandhide */ - /* before executing , is been removed from */ - /* the operand stack and placed on the execstack with attributes */ -@@ -971,8 +943,6 @@ const op_def zcontrol3_op_defs[] = { - {"0%loop_continue", loop_continue}, - {"0%repeat_continue", repeat_continue}, - {"0%stopped_push", stopped_push}, -- {"1superexec", zsuperexec}, -- {"0%end_superexec", end_superexec}, - {"2.runandhide", zrunandhide}, - {"0%end_runandhide", end_runandhide}, - op_def_end(0) -diff --git a/psi/zdict.c b/psi/zdict.c -index b0deaaa..e2e525d 100644 ---- a/psi/zdict.c -+++ b/psi/zdict.c -@@ -212,8 +212,7 @@ zundef(i_ctx_t *i_ctx_p) - int code; - - check_type(*op1, t_dictionary); -- if (i_ctx_p->in_superexec == 0) -- check_dict_write(*op1); -+ check_dict_write(*op1); - code = idict_undef(op1, op); - if (code < 0 && code != gs_error_undefined) /* ignore undefined error */ - return code; -@@ -504,8 +503,7 @@ zsetmaxlength(i_ctx_t *i_ctx_p) - int code; - - check_type(*op1, t_dictionary); -- if (i_ctx_p->in_superexec == 0) -- check_dict_write(*op1); -+ check_dict_write(*op1); - check_type(*op, t_integer); - if (op->value.intval < 0) - return_error(gs_error_rangecheck); -diff --git a/psi/zgeneric.c b/psi/zgeneric.c -index 8048e28..d4edddb 100644 ---- a/psi/zgeneric.c -+++ b/psi/zgeneric.c -@@ -204,8 +204,7 @@ zput(i_ctx_t *i_ctx_p) - - switch (r_type(op2)) { - case t_dictionary: -- if (i_ctx_p->in_superexec == 0) -- check_dict_write(*op2); -+ check_dict_write(*op2); - { - int code = idict_put(op2, op1, op); - --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0001.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0001.patch deleted file mode 100644 index 593109fb9..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0001.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 53f0cb4c54ac951697704cb87d24154ae08aecce Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Wed, 20 Feb 2019 09:54:28 +0000 -Subject: [PATCH] Bug 700576: Make a transient proc executeonly (in - DefineResource). - -This prevents access to .forceput - -Solution originally suggested by cbuissar@redhat.com. - -CVE: CVE-2019-3838 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_res.ps | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index 89c0ed6..a163541 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -426,7 +426,7 @@ status { - % so we have to use .forceput here. - currentdict /.Instances 2 index .forceput % Category dict is read-only - } executeonly if -- } -+ } executeonly - { .LocalInstances dup //.emptydict eq - { pop 3 dict localinstancedict Category 2 index put - } --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0002.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0002.patch deleted file mode 100644 index 921e5b687..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-3838-0002.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 0cb5e967c0200559f946291b5b54f8da30c32cd6 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Fri, 22 Feb 2019 12:28:23 +0000 -Subject: [PATCH] Bug 700576(redux): an extra transient proc needs - executeonly'ed. - -CVE: CVE-2019-3838 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_res.ps | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index a163541..8ce4ae3 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -438,7 +438,7 @@ status { - % Now make the resource value read-only. - 0 2 copy get { readonly } .internalstopped pop - dup 4 1 roll put exch pop exch pop -- } -+ } executeonly - { /defineresource cvx /typecheck signaloperror - } - ifelse --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0001.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0001.patch deleted file mode 100644 index b2c1ade4b..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0001.patch +++ /dev/null @@ -1,177 +0,0 @@ -From c8c77690199b677f70093824382f0881e643e17b Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Wed, 5 Dec 2018 12:22:13 +0000 -Subject: [PATCH 1/7] Sanitize op stack for error conditions - -We save the stacks to an array and store the array for the error handler to -access. - -For SAFER, we traverse the array, and deep copy any op arrays (procedures). As -we make these copies, we check for operators that do *not* exist in systemdict, -when we find one, we replace the operator with a name object (of the form -"/--opname--"). - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - psi/int.mak | 3 +- - psi/interp.c | 8 ++++++ - psi/istack.c | 78 ++++++++++++++++++++++++++++++++++++++++++++++++++++ - psi/istack.h | 3 ++ - 4 files changed, 91 insertions(+), 1 deletion(-) - -diff --git a/psi/int.mak b/psi/int.mak -index 6ab5bf0..6b349cb 100644 ---- a/psi/int.mak -+++ b/psi/int.mak -@@ -204,7 +204,8 @@ $(PSOBJ)iparam.$(OBJ) : $(PSSRC)iparam.c $(GH)\ - $(PSOBJ)istack.$(OBJ) : $(PSSRC)istack.c $(GH) $(memory__h)\ - $(ierrors_h) $(gsstruct_h) $(gsutil_h)\ - $(ialloc_h) $(istack_h) $(istkparm_h) $(istruct_h) $(iutil_h) $(ivmspace_h)\ -- $(store_h) $(INT_MAK) $(MAKEDIRS) -+ $(store_h) $(icstate_h) $(iname_h) $(dstack_h) $(idict_h) \ -+ $(INT_MAK) $(MAKEDIRS) - $(PSCC) $(PSO_)istack.$(OBJ) $(C_) $(PSSRC)istack.c - - $(PSOBJ)iutil.$(OBJ) : $(PSSRC)iutil.c $(GH) $(math__h) $(memory__h) $(string__h)\ -diff --git a/psi/interp.c b/psi/interp.c -index 6dc0dda..aa5779c 100644 ---- a/psi/interp.c -+++ b/psi/interp.c -@@ -761,6 +761,7 @@ copy_stack(i_ctx_t *i_ctx_p, const ref_stack_t * pstack, int skip, ref * arr) - uint size = ref_stack_count(pstack) - skip; - uint save_space = ialloc_space(idmemory); - int code, i; -+ ref *safety, *safe; - - if (size > 65535) - size = 65535; -@@ -778,6 +779,13 @@ copy_stack(i_ctx_t *i_ctx_p, const ref_stack_t * pstack, int skip, ref * arr) - make_null(&arr->value.refs[i]); - } - } -+ if (pstack == &o_stack && dict_find_string(systemdict, "SAFETY", &safety) > 0 && -+ dict_find_string(safety, "safe", &safe) > 0 && r_has_type(safe, t_boolean) && -+ safe->value.boolval == true) { -+ code = ref_stack_array_sanitize(i_ctx_p, arr, arr); -+ if (code < 0) -+ return code; -+ } - ialloc_set_space(idmemory, save_space); - return code; - } -diff --git a/psi/istack.c b/psi/istack.c -index 8fe151f..f1a3e51 100644 ---- a/psi/istack.c -+++ b/psi/istack.c -@@ -27,6 +27,10 @@ - #include "iutil.h" - #include "ivmspace.h" /* for local/global test */ - #include "store.h" -+#include "icstate.h" -+#include "iname.h" -+#include "dstack.h" -+#include "idict.h" - - /* Forward references */ - static void init_block(ref_stack_t *pstack, const ref *pblock_array, -@@ -294,6 +298,80 @@ ref_stack_store_check(const ref_stack_t *pstack, ref *parray, uint count, - return 0; - } - -+int -+ref_stack_array_sanitize(i_ctx_t *i_ctx_p, ref *sarr, ref *darr) -+{ -+ int i, code; -+ ref obj, arr2; -+ ref *pobj2; -+ gs_memory_t *mem = (gs_memory_t *)idmemory->current; -+ -+ if (!r_is_array(sarr) || !r_has_type(darr, t_array)) -+ return_error(gs_error_typecheck); -+ -+ for (i = 0; i < r_size(sarr); i++) { -+ code = array_get(mem, sarr, i, &obj); -+ if (code < 0) -+ make_null(&obj); -+ switch(r_type(&obj)) { -+ case t_operator: -+ { -+ int index = op_index(&obj); -+ -+ if (index > 0 && index < op_def_count) { -+ const byte *data = (const byte *)(op_index_def(index)->oname + 1); -+ if (dict_find_string(systemdict, (const char *)data, &pobj2) <= 0) { -+ byte *s = gs_alloc_bytes(mem, strlen((char *)data) + 5, "ref_stack_array_sanitize"); -+ if (s) { -+ s[0] = '\0'; -+ strcpy((char *)s, "--"); -+ strcpy((char *)s + 2, (char *)data); -+ strcpy((char *)s + strlen((char *)data) + 2, "--"); -+ } -+ else { -+ s = (byte *)data; -+ } -+ code = name_ref(imemory, s, strlen((char *)s), &obj, 1); -+ if (code < 0) make_null(&obj); -+ if (s != data) -+ gs_free_object(mem, s, "ref_stack_array_sanitize"); -+ } -+ } -+ else { -+ make_null(&obj); -+ } -+ ref_assign(darr->value.refs + i, &obj); -+ break; -+ } -+ case t_array: -+ case t_shortarray: -+ case t_mixedarray: -+ { -+ int attrs = r_type_attrs(&obj) & (a_write | a_read | a_execute | a_executable); -+ /* We only want to copy executable arrays */ -+ if (attrs & (a_execute | a_executable)) { -+ code = ialloc_ref_array(&arr2, attrs, r_size(&obj), "ref_stack_array_sanitize"); -+ if (code < 0) { -+ make_null(&arr2); -+ } -+ else { -+ code = ref_stack_array_sanitize(i_ctx_p, &obj, &arr2); -+ } -+ ref_assign(darr->value.refs + i, &arr2); -+ } -+ else { -+ ref_assign(darr->value.refs + i, &obj); -+ } -+ break; -+ } -+ default: -+ ref_assign(darr->value.refs + i, &obj); -+ } -+ } -+ return 0; -+} -+ -+ - /* - * Store the top 'count' elements of a stack, starting 'skip' elements below - * the top, into an array, with or without store/undo checking. age=-1 for -diff --git a/psi/istack.h b/psi/istack.h -index 051dcbe..54be405 100644 ---- a/psi/istack.h -+++ b/psi/istack.h -@@ -129,6 +129,9 @@ int ref_stack_store(const ref_stack_t *pstack, ref *parray, uint count, - uint skip, int age, bool check, - gs_dual_memory_t *idmem, client_name_t cname); - -+int -+ref_stack_array_sanitize(i_ctx_t *i_ctx_p, ref *sarr, ref *darr); -+ - /* - * Pop the top N elements off a stack. - * The number must not exceed the number of elements in use. --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0002.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0002.patch deleted file mode 100644 index 97c74e7e3..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0002.patch +++ /dev/null @@ -1,442 +0,0 @@ -From 20001d2bdf3cc60e76241a6ae72b1df01c5424c5 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Thu, 13 Dec 2018 15:28:34 +0000 -Subject: [PATCH 2/7] Any transient procedures that call .force* operators - -(i.e. for conditionals or loops) make them executeonly. - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_diskn.ps | 2 +- - Resource/Init/gs_dps1.ps | 4 ++-- - Resource/Init/gs_fntem.ps | 4 ++-- - Resource/Init/gs_fonts.ps | 12 ++++++------ - Resource/Init/gs_init.ps | 4 ++-- - Resource/Init/gs_lev2.ps | 11 ++++++----- - Resource/Init/gs_pdfwr.ps | 2 +- - Resource/Init/gs_res.ps | 4 ++-- - Resource/Init/gs_setpd.ps | 2 +- - Resource/Init/pdf_base.ps | 13 ++++++++----- - Resource/Init/pdf_draw.ps | 16 +++++++++------- - Resource/Init/pdf_font.ps | 6 +++--- - Resource/Init/pdf_main.ps | 4 ++-- - Resource/Init/pdf_ops.ps | 7 ++++--- - 14 files changed, 49 insertions(+), 42 deletions(-) - -diff --git a/Resource/Init/gs_diskn.ps b/Resource/Init/gs_diskn.ps -index fd694bc..8bf2054 100644 ---- a/Resource/Init/gs_diskn.ps -+++ b/Resource/Init/gs_diskn.ps -@@ -51,7 +51,7 @@ systemdict begin - mark 5 1 roll ] mark exch { { } forall } forall ] - //systemdict /.searchabledevs 2 index .forceput - exch .setglobal -- } -+ } executeonly - if - } .bind executeonly odef % must be bound and hidden for .forceput - -diff --git a/Resource/Init/gs_dps1.ps b/Resource/Init/gs_dps1.ps -index ec5db61..4fae283 100644 ---- a/Resource/Init/gs_dps1.ps -+++ b/Resource/Init/gs_dps1.ps -@@ -78,7 +78,7 @@ level2dict begin - .currentglobal - { % Current mode is global; delete from local directory too. - //systemdict /LocalFontDirectory .knownget -- { 1 index .forceundef } % LocalFontDirectory is readonly -+ { 1 index .forceundef } executeonly % LocalFontDirectory is readonly - if - } - { % Current mode is local; if there was a shadowed global -@@ -126,7 +126,7 @@ level2dict begin - } - ifelse - } forall -- pop counttomark 2 idiv { .forceundef } repeat pop % readonly -+ pop counttomark 2 idiv { .forceundef } executeonly repeat pop % readonly - } - if - //SharedFontDirectory exch .forcecopynew pop -diff --git a/Resource/Init/gs_fntem.ps b/Resource/Init/gs_fntem.ps -index c1f7651..6eb672a 100644 ---- a/Resource/Init/gs_fntem.ps -+++ b/Resource/Init/gs_fntem.ps -@@ -401,12 +401,12 @@ currentdict end def - .forceput % FontInfo can be read-only. - pop % bool - exit -- } if -+ } executeonly if - dup /FontInfo get % bool - /GlyphNames2Unicode /Unicode /Decoding findresource - .forceput % FontInfo can be read-only. - exit -- } loop -+ } executeonly loop - exch setglobal - } .bind executeonly odef % must be bound and hidden for .forceput - -diff --git a/Resource/Init/gs_fonts.ps b/Resource/Init/gs_fonts.ps -index 803faca..290da0c 100644 ---- a/Resource/Init/gs_fonts.ps -+++ b/Resource/Init/gs_fonts.ps -@@ -374,7 +374,7 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - /.setnativefontmapbuilt { % set whether we've been run - dup type /booleantype eq { - systemdict exch /.nativefontmapbuilt exch .forceput -- } -+ } executeonly - {pop} - ifelse - } .bind executeonly odef -@@ -1007,11 +1007,11 @@ $error /SubstituteFont { } put - { 2 index gcheck currentglobal - 2 copy eq { - pop pop .forceput -- } { -+ } executeonly { - 5 1 roll setglobal - dup length string copy - .forceput setglobal -- } ifelse -+ } executeonly ifelse - } .bind executeonly odef % must be bound and hidden for .forceput - - % Attempt to load a font from a file. -@@ -1084,7 +1084,7 @@ $error /SubstituteFont { } put - .FontDirectory 3 index .forceundef % readonly - 1 index (r) file .loadfont .FontDirectory exch - /.setglobal .systemvar exec -- } -+ } executeonly - { .loadfont .FontDirectory - } - ifelse -@@ -1105,7 +1105,7 @@ $error /SubstituteFont { } put - dup 3 index .fontknownget - { dup /PathLoad 4 index .putgstringcopy - 4 1 roll pop pop pop //true exit -- } if -+ } executeonly if - - % Maybe the file had a different FontName. - % See if we can get a FontName from the file, and if so, -@@ -1134,7 +1134,7 @@ $error /SubstituteFont { } put - ifelse % Stack: origfontname fontdict - exch pop //true exit - % Stack: fontdict -- } -+ } executeonly - if pop % Stack: origfontname fontdirectory path - } - if pop pop % Stack: origfontname -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index d733124..56c0bd2 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -2357,7 +2357,7 @@ SAFER { .setsafeglobal } if - % Update the copy of the user parameters. - mark .currentuserparams counttomark 2 idiv { - userparams 3 1 roll .forceput % userparams is read-only -- } repeat pop -+ } executeonly repeat pop - % Turn on idiom recognition, if available. - currentuserparams /IdiomRecognition known { - /IdiomRecognition //true .definepsuserparam -@@ -2376,7 +2376,7 @@ SAFER { .setsafeglobal } if - % Remove real system params from pssystemparams. - mark .currentsystemparams counttomark 2 idiv { - pop pssystemparams exch .forceundef -- } repeat pop -+ } executeonly repeat pop - } if - - % Set up AlignToPixels : -diff --git a/Resource/Init/gs_lev2.ps b/Resource/Init/gs_lev2.ps -index 44fe619..0f0d573 100644 ---- a/Resource/Init/gs_lev2.ps -+++ b/Resource/Init/gs_lev2.ps -@@ -154,7 +154,8 @@ end - % protect top level of parameters that we copied - dup type dup /arraytype eq exch /stringtype eq or { readonly } if - /userparams .systemvar 3 1 roll .forceput % userparams is read-only -- } { -+ } executeonly -+ { - pop pop - } ifelse - } forall -@@ -224,7 +225,7 @@ end - % protect top level parameters that we copied - dup type dup /arraytype eq exch /stringtype eq or { readonly } if - //pssystemparams 3 1 roll .forceput % pssystemparams is read-only -- } -+ } executeonly - { pop pop - } - ifelse -@@ -934,7 +935,7 @@ mark - dup /PaintProc get - 1 index /Implementation known not { - 1 index dup /Implementation //null .forceput readonly pop -- } if -+ } executeonly if - exec - }.bind odef - -@@ -958,7 +959,7 @@ mark - dup /PaintProc get - 1 index /Implementation known not { - 1 index dup /Implementation //null .forceput readonly pop -- } if -+ } executeonly if - /UNROLLFORMS where {/UNROLLFORMS get}{false}ifelse not - %% [CTM] <
> PaintProc .beginform - - { -@@ -1005,7 +1006,7 @@ mark - %% Form dictioanry using the /Implementation key). - 1 dict dup /FormID 4 -1 roll put - 1 index exch /Implementation exch .forceput readonly pop -- } -+ } executeonly - ifelse - } - { -diff --git a/Resource/Init/gs_pdfwr.ps b/Resource/Init/gs_pdfwr.ps -index 58e75d3..b425103 100644 ---- a/Resource/Init/gs_pdfwr.ps -+++ b/Resource/Init/gs_pdfwr.ps -@@ -650,7 +650,7 @@ currentdict /.pdfmarkparams .undef - } ifelse - } bind .makeoperator .forceput - systemdict /.pdf_hooked_DSC_Creator //true .forceput -- } if -+ } executeonly if - pop - } if - } { -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index 8eb8bb0..d9b3459 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -152,7 +152,7 @@ setglobal - % use .forceput / .forcedef later to replace the dummy, - % empty .Instances dictionary with the real one later. - readonly -- } { -+ }{ - /defineresource cvx /typecheck signaloperror - } ifelse - } bind executeonly odef -@@ -424,7 +424,7 @@ status { - % As noted above, Category dictionaries are read-only, - % so we have to use .forcedef here. - /.Instances 1 index .forcedef % Category dict is read-only -- } if -+ } executeonly if - } - { .LocalInstances dup //.emptydict eq - { pop 3 dict localinstancedict Category 2 index put -diff --git a/Resource/Init/gs_setpd.ps b/Resource/Init/gs_setpd.ps -index e22597e..7875d1f 100644 ---- a/Resource/Init/gs_setpd.ps -+++ b/Resource/Init/gs_setpd.ps -@@ -634,7 +634,7 @@ NOMEDIAATTRS { - SETPDDEBUG { (Rolling back.) = pstack flush } if - 3 index 2 index 3 -1 roll .forceput - 4 index 1 index .knownget -- { 4 index 3 1 roll .forceput } -+ { 4 index 3 1 roll .forceput } executeonly - { 3 index exch .undef } - ifelse - } bind executeonly odef -diff --git a/Resource/Init/pdf_base.ps b/Resource/Init/pdf_base.ps -index b45e980..7312729 100644 ---- a/Resource/Init/pdf_base.ps -+++ b/Resource/Init/pdf_base.ps -@@ -130,26 +130,29 @@ currentdict /num-chars-dict .undef - - /.pdfexectoken { % .pdfexectoken ? - PDFDEBUG { -- pdfdict /PDFSTEPcount known not { pdfdict /PDFSTEPcount 1 .forceput } if -+ pdfdict /PDFSTEPcount known not { pdfdict /PDFSTEPcount 1 .forceput } executeonly if - PDFSTEP { - pdfdict /PDFtokencount 2 copy .knownget { 1 add } { 1 } ifelse .forceput - PDFSTEPcount 1 gt { - pdfdict /PDFSTEPcount PDFSTEPcount 1 sub .forceput -- } { -+ } executeonly -+ { - dup ==only - ( step # ) print PDFtokencount =only - ( ? ) print flush 1 //false .outputpage - (%stdin) (r) file 255 string readline { - token { - exch pop pdfdict /PDFSTEPcount 3 -1 roll .forceput -- } { -+ } executeonly -+ { - pdfdict /PDFSTEPcount 1 .forceput -- } ifelse % token -+ } executeonly ifelse % token - } { - pop /PDFSTEP //false def % EOF on stdin - } ifelse % readline - } ifelse % PDFSTEPcount > 1 -- } { -+ } executeonly -+ { - dup ==only () = flush - } ifelse % PDFSTEP - } if % PDFDEBUG -diff --git a/Resource/Init/pdf_draw.ps b/Resource/Init/pdf_draw.ps -index 6b0ba93..40c6ac8 100644 ---- a/Resource/Init/pdf_draw.ps -+++ b/Resource/Init/pdf_draw.ps -@@ -1118,14 +1118,14 @@ currentdict end readonly def - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } - { - currentglobal pdfdict gcheck .setglobal - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - end - } ifelse - } loop -@@ -1141,14 +1141,14 @@ currentdict end readonly def - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } - { - currentglobal pdfdict gcheck .setglobal - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } if - pop - -@@ -2350,9 +2350,10 @@ currentdict /last-ditch-bpc-csp undef - /IncrementAppearanceNumber { - pdfdict /AppearanceNumber .knownget { - 1 add pdfdict /AppearanceNumber 3 -1 roll .forceput -- }{ -+ } executeonly -+ { - pdfdict /AppearanceNumber 0 .forceput -- } ifelse -+ } executeonly ifelse - }bind executeonly odef - - /MakeAppearanceName { -@@ -2510,7 +2511,8 @@ currentdict /last-ditch-bpc-csp undef - %% want to preserve it. - pdfdict /.PreservePDFForm false .forceput - /q cvx /execform cvx 5 -2 roll -- }{ -+ } executeonly -+ { - /q cvx /PDFexecform cvx 5 -2 roll - } ifelse - -diff --git a/Resource/Init/pdf_font.ps b/Resource/Init/pdf_font.ps -index bea9ea9..4cd62b9 100644 ---- a/Resource/Init/pdf_font.ps -+++ b/Resource/Init/pdf_font.ps -@@ -714,7 +714,7 @@ currentdict end readonly def - pop pop pop - currentdict /.stackdepth .forceundef - currentdict /.dstackdepth .forceundef -- } -+ } executeonly - {pop pop pop} - ifelse - -@@ -1232,7 +1232,7 @@ currentdict /eexec_pdf_param_dict .undef - (\n **** Warning: Type 3 glyph has unbalanced q/Q operators \(too many q's\)\n Output may be incorrect.\n) - pdfformatwarning - pdfdict /.Qqwarning_issued //true .forceput -- } if -+ } executeonly if - Q - } repeat - Q -@@ -2016,7 +2016,7 @@ currentdict /CMap_read_dict undef - /CIDFallBack /CIDFont findresource - } if - exit -- } if -+ } executeonly if - } if - } if - -diff --git a/Resource/Init/pdf_main.ps b/Resource/Init/pdf_main.ps -index 00da47a..37e69b3 100644 ---- a/Resource/Init/pdf_main.ps -+++ b/Resource/Init/pdf_main.ps -@@ -2701,14 +2701,14 @@ currentdict /PDF2PS_matrix_key undef - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } - { - currentglobal pdfdict gcheck .setglobal - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } if - } if - pop -diff --git a/Resource/Init/pdf_ops.ps b/Resource/Init/pdf_ops.ps -index 8672d61..aa09641 100644 ---- a/Resource/Init/pdf_ops.ps -+++ b/Resource/Init/pdf_ops.ps -@@ -184,14 +184,14 @@ currentdict /gput_always_allow .undef - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } - { - currentglobal pdfdict gcheck .setglobal - pdfdict /.Qqwarning_issued //true .forceput - .setglobal - pdfformaterror -- } ifelse -+ } executeonly ifelse - } if - } bind executeonly odef - -@@ -439,7 +439,8 @@ currentdict /gput_always_allow .undef - dup type /booleantype eq { - .currentSMask type /dicttype eq { - .currentSMask /Processed 2 index .forceput -- } { -+ } executeonly -+ { - .setSMask - }ifelse - }{ --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0003.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0003.patch deleted file mode 100644 index 02b1dc962..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0003.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 60b77b8bf8b6e4d30519c47724631012b530cf0e Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Sat, 15 Dec 2018 09:08:32 +0000 -Subject: [PATCH 3/7] Bug700317: Fix logic for an older change - -Unlike almost every other function in gs, dict_find_string() returns 1 on -success 0 or <0 on failure. The logic for this case was wrong. - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - psi/interp.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/psi/interp.c b/psi/interp.c -index aa5779c..f6c45bb 100644 ---- a/psi/interp.c -+++ b/psi/interp.c -@@ -703,7 +703,7 @@ again: - * i.e. it's an internal operator we have hidden - */ - code = dict_find_string(systemdict, (const char *)bufptr, &tobj); -- if (code < 0) { -+ if (code <= 0) { - buf[0] = buf[1] = buf[rlen + 2] = buf[rlen + 3] = '-'; - rlen += 4; - bufptr = buf; --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0004.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0004.patch deleted file mode 100644 index cc15453f0..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0004.patch +++ /dev/null @@ -1,136 +0,0 @@ -From d739565534e955c4336731e4ea4eebc895c09c5c Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Tue, 18 Dec 2018 10:42:10 +0000 -Subject: [PATCH 4/7] Harden some uses of .force* operators - -by adding a few immediate evalutions - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_dps1.ps | 4 ++-- - Resource/Init/gs_fonts.ps | 20 ++++++++++---------- - Resource/Init/gs_init.ps | 6 +++--- - 3 files changed, 15 insertions(+), 15 deletions(-) - -diff --git a/Resource/Init/gs_dps1.ps b/Resource/Init/gs_dps1.ps -index 4fae283..b75ea14 100644 ---- a/Resource/Init/gs_dps1.ps -+++ b/Resource/Init/gs_dps1.ps -@@ -74,7 +74,7 @@ level2dict begin - } odef - % undefinefont has to take local/global VM into account. - /undefinefont % undefinefont - -- { .FontDirectory 1 .argindex .forceundef % FontDirectory is readonly -+ { //.FontDirectory 1 .argindex .forceundef % FontDirectory is readonly - .currentglobal - { % Current mode is global; delete from local directory too. - //systemdict /LocalFontDirectory .knownget -@@ -85,7 +85,7 @@ level2dict begin - % definition, copy it into the local directory. - //systemdict /SharedFontDirectory .knownget - { 1 index .knownget -- { .FontDirectory 2 index 3 -1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse } % readonly -+ { //.FontDirectory 2 index 3 -1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse } % readonly - if - } - if -diff --git a/Resource/Init/gs_fonts.ps b/Resource/Init/gs_fonts.ps -index 290da0c..c13a2fc 100644 ---- a/Resource/Init/gs_fonts.ps -+++ b/Resource/Init/gs_fonts.ps -@@ -516,7 +516,7 @@ buildfontdict 3 /.buildfont3 cvx put - if - } - if -- dup .FontDirectory 4 -2 roll { .growput } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly -+ dup //.FontDirectory 4 -2 roll { .growput } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly - % If the font originated as a resource, register it. - currentfile .currentresourcefile eq { dup .registerfont } if - readonly -@@ -943,7 +943,7 @@ $error /SubstituteFont { } put - % Try to find a font using only the present contents of Fontmap. - /.tryfindfont { % .tryfindfont true - % .tryfindfont false -- .FontDirectory 1 index .fontknownget -+ //.FontDirectory 1 index .fontknownget - { % Already loaded - exch pop //true - } -@@ -975,7 +975,7 @@ $error /SubstituteFont { } put - { % Font with a procedural definition - exec % The procedure will load the font. - % Check to make sure this really happened. -- .FontDirectory 1 index .knownget -+ //.FontDirectory 1 index .knownget - { exch pop //true exit } - if - } -@@ -1081,11 +1081,11 @@ $error /SubstituteFont { } put - % because it's different depending on language level. - .currentglobal exch /.setglobal .systemvar exec - % Remove the fake definition, if any. -- .FontDirectory 3 index .forceundef % readonly -- 1 index (r) file .loadfont .FontDirectory exch -+ //.FontDirectory 3 index .forceundef % readonly -+ 1 index (r) file .loadfont //.FontDirectory exch - /.setglobal .systemvar exec - } executeonly -- { .loadfont .FontDirectory -+ { .loadfont //.FontDirectory - } - ifelse - % Stack: fontname fontfilename fontdirectory -@@ -1119,8 +1119,8 @@ $error /SubstituteFont { } put - % Stack: origfontname fontdirectory filefontname fontdict - 3 -1 roll pop - % Stack: origfontname filefontname fontdict -- dup /FontName get dup FontDirectory exch .forceundef -- GlobalFontDirectory exch .forceundef -+ dup /FontName get dup //.FontDirectory exch .forceundef -+ /GlobalFontDirectory .systemvar exch .forceundef - dup length dict .copydict dup 3 index /FontName exch put - 2 index exch definefont - exch -@@ -1176,10 +1176,10 @@ currentdict /.putgstringcopy .undef - { - { - pop dup type /stringtype eq { cvn } if -- .FontDirectory 1 index known not { -+ //.FontDirectory 1 index known not { - 2 dict dup /FontName 3 index put - dup /FontType 1 put -- .FontDirectory 3 1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly -+ //.FontDirectory 3 1 roll { put } systemdict /superexec known {//superexec}{1183615869 internaldict /superexec get exec} ifelse % readonly - } { - pop - } ifelse -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index 56c0bd2..d9a0829 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -1168,8 +1168,8 @@ errordict /unknownerror .undef - }ifelse - }forall - noaccess pop -- systemdict /.setsafeerrors .forceundef -- systemdict /.SAFERERRORLIST .forceundef -+ //systemdict /.setsafeerrors .forceundef -+ //systemdict /.SAFERERRORLIST .forceundef - } bind executeonly odef - - SAFERERRORS {.setsafererrors} if -@@ -2114,7 +2114,7 @@ currentdict /tempfilepaths undef - - /.locksafe { - .locksafe_userparams -- systemdict /getenv {pop //false} .forceput -+ //systemdict /getenv {pop //false} .forceput - % setpagedevice has the side effect of clearing the page, but - % we will just document that. Using setpagedevice keeps the device - % properties and pagedevice .LockSafetyParams in agreement even --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0005.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0005.patch deleted file mode 100644 index db70bba21..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0005.patch +++ /dev/null @@ -1,250 +0,0 @@ -From 1e830cafa56c6e3e1b08d246eaf5496fe81a0032 Mon Sep 17 00:00:00 2001 -From: Nancy Durgin -Date: Tue, 27 Nov 2018 12:36:14 -0800 -Subject: [PATCH 5/7] Undef a bunch of internal things in gs_res.ps - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_res.ps | 72 +++++++++++++++++++++++++-------------- - Resource/Init/gs_resmp.ps | 4 +-- - 2 files changed, 49 insertions(+), 27 deletions(-) - -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index d9b3459..18d5452 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -197,7 +197,7 @@ setglobal - /.findresource { % findresource - 2 copy dup /Category eq - { pop //Category 0 get begin } { .findcategory } ifelse -- /FindResource .resourceexec exch pop exch pop -+ /FindResource //.resourceexec exec exch pop exch pop - } bind - end % .Instances of Category - def -@@ -223,7 +223,7 @@ def - not { /defineresource cvx /typecheck signaloperror } if - } if - } if -- /DefineResource .resourceexec -+ /DefineResource //.resourceexec exec - 4 1 roll pop pop pop - } .errorexec - } bind executeonly odef -@@ -252,7 +252,7 @@ def - % without the check. - /resourcestatus cvx /typecheck signalerror - } if -- 2 copy .findcategory /ResourceStatus .resourceexec -+ 2 copy .findcategory /ResourceStatus //.resourceexec exec - { 4 2 roll pop pop //true } { pop pop //false } ifelse - } stopped { - % Although resourcestatus is an operator, Adobe uses executable name -@@ -266,7 +266,7 @@ def - } if - 1 .argindex 1 index % catch stackunderflow - -- { .findcategory /UndefineResource .resourceexec pop pop -+ { .findcategory /UndefineResource //.resourceexec exec pop pop - } stopped { - % Although undefineresource is an operator, Adobe uses executable name - % here but uses operator for the errors above. CET 23-33 -@@ -315,10 +315,10 @@ currentdict /pssystemparams known not { - /pssystemparams 10 dict readonly def - } if - pssystemparams begin -- .default_resource_dir -- /FontResourceDir (Font) .resource_dir_name -+ //.default_resource_dir exec -+ /FontResourceDir (Font) //.resource_dir_name exec - readonly .forcedef % pssys'params is r-o -- /GenericResourceDir () .resource_dir_name -+ /GenericResourceDir () //.resource_dir_name exec - readonly .forcedef % pssys'params is r-o - pop % .default_resource_dir - /GenericResourcePathSep -@@ -387,13 +387,13 @@ status { - } bind def - /.localresourceforall { % .localr'forall - - exch pop -- 2 copy 0 get .stringmatch { .enumerateresource } { pop pop } ifelse -+ 2 copy 0 get .stringmatch { //.enumerateresource exec } { pop pop } ifelse - } bind def - /.globalresourceforall { % .globalr'forall - - exch pop - 2 copy 0 get .stringmatch { - dup 3 get begin .LocalInstances end 2 index known not { -- .enumerateresource -+ //.enumerateresource exec - } { - pop pop - } ifelse -@@ -408,7 +408,7 @@ status { - 3 index known { - pop pop pop - } { -- 2 index known { pop pop } { .enumerateresource } ifelse -+ 2 index known { pop pop } { //.enumerateresource exec } ifelse - } ifelse - } bind def - -@@ -468,19 +468,19 @@ status { - % .knownget doesn't fail on null - /findresource cvx /typecheck signaloperror - } if -- dup .getvminstance { -+ dup //.getvminstance exec { - exch pop 0 get - } { - dup ResourceStatus { - pop 1 gt { -- .DoLoadResource .getvminstance not { -- /findresource cvx .undefinedresource -+ .DoLoadResource //.getvminstance exec not { -+ /findresource cvx //.undefinedresource exec - } if 0 get - } { - .GetInstance pop 0 get - } ifelse - } { -- /findresource cvx .undefinedresource -+ /findresource cvx //.undefinedresource exec - } ifelse - } ifelse - } bind executeonly -@@ -621,7 +621,7 @@ status { - .currentglobal not .setglobal - vmstatus pop exch pop add - } repeat --} bind def -+} bind executeonly odef - /.DoLoadResource { - % .LoadResource may push entries on the operand stack. - % It is an undocumented feature of Adobe implementations, -@@ -633,8 +633,8 @@ status { - {.LoadResource} 4 1 roll 4 .execn - % Stack: ... count key memused - .vmused exch sub -- 1 index .getvminstance not { -- pop dup .undefinedresource % didn't load -+ 1 index //.getvminstance exec not { -+ pop dup //.undefinedresource exec % didn't load - } if - dup 1 1 put - 2 3 -1 roll put -@@ -648,7 +648,7 @@ status { - { //true setglobal { .runresource } stopped //false setglobal { stop } if } - ifelse - } -- { dup .undefinedresource -+ { dup //.undefinedresource exec - } - ifelse - } bind -@@ -758,7 +758,7 @@ counttomark 2 idiv - /FindResource - { .Instances 1 index .knownget - { exch pop } -- { /findresource cvx .undefinedresource } -+ { /findresource cvx //.undefinedresource exec } - ifelse - } bind executeonly - /ResourceStatus -@@ -862,7 +862,7 @@ userdict /.localcsdefaults //false put - 2 copy /Generic /Category findresource /DefineResource get exec - exch pop - exch //.defaultcsnames exch .knownget { -- 1 index .definedefaultcs -+ 1 index //.definedefaultcs exec - currentglobal not { .userdict /.localcsdefaults //true put } if - } if - } bind executeonly -@@ -872,13 +872,13 @@ userdict /.localcsdefaults //false put - //.defaultcsnames 1 index .knownget { - % Stack: resname index - currentglobal { -- .undefinedefaultcs pop -+ //.undefinedefaultcs exec pop - } { - % We removed the local definition, but there might be a global one. - exch .GetInstance { -- 0 get .definedefaultcs -+ 0 get //.definedefaultcs exec - } { -- .undefinedefaultcs -+ //.undefinedefaultcs exec - } ifelse - % Recompute .localcsdefaults by scanning. This is rarely needed. - .userdict /.localcsdefaults //false //.defaultcsnames { -@@ -997,7 +997,7 @@ currentdict /.fontstatusaux .undef - /Generic /Category findresource /UndefineResource get exec - } bind executeonly - /FindResource { -- dup .getvminstance { -+ dup //.getvminstance exec { - exch pop 0 get - } { - dup ResourceStatus { -@@ -1024,7 +1024,7 @@ currentdict /.fontstatusaux .undef - % stack: name font vmused - % findfont has the prerogative of not calling definefont - % in certain obscure cases of font substitution. -- 2 index .getvminstance { -+ 2 index //.getvminstance exec { - dup 1 1 put - 2 3 -1 roll put - } { -@@ -1159,3 +1159,25 @@ end % level2dict - - %% Replace 1 (gs_resmp.ps) - (gs_resmp.ps) dup runlibfile VMDEBUG -+ -+[ -+ /.default_resource_dir -+ /.resource_dir_name -+] -+{systemdict exch .forceundef} forall -+ -+[ -+ /.definedefaultcs -+ /.undefinedefaultcs -+ /.defaultcsnames -+ /.enumerateresource -+ /.externalresourceforall -+ /.getvminstance -+ /.globalresourceforall -+ /.localresourceforall -+ /resourceforall1 -+ /.resourceexec -+ /.undefinedresource -+ /.vmused -+] -+{level2dict exch .forceundef} forall -diff --git a/Resource/Init/gs_resmp.ps b/Resource/Init/gs_resmp.ps -index 9bb4263..cb948d1 100644 ---- a/Resource/Init/gs_resmp.ps -+++ b/Resource/Init/gs_resmp.ps -@@ -230,7 +230,7 @@ currentpacking //false setpacking - } { - dup dup .map exch .knownget { % /Name /Name <> - dup dup /RecordVirtualMethods get /IsActive get exec { -- 1 index .getvminstance { % /Name /Name <> holder -+ 1 index //.getvminstance exec { % /Name /Name <> holder - 1 get 1 eq - } { - //true -@@ -242,7 +242,7 @@ currentpacking //false setpacking - DefineResource exec % size bStatusIs1 /Name Instance - % Make ResourceStatus to return correct values for this instance : - % Hack: we replace status values in the instance holder : -- exch .getvminstance pop % size bStatusIs1 Instance holder -+ exch //.getvminstance exec pop % size bStatusIs1 Instance holder - dup 5 -1 roll 2 exch put % bStatusIs1 Instance holder - 3 2 roll { % Instance holder - 1 1 put % Instance --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0006.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0006.patch deleted file mode 100644 index 79e640b18..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0006.patch +++ /dev/null @@ -1,596 +0,0 @@ -From 97f9052ce49e6844b06a49ff9e4b8fc1eaf6bd10 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Wed, 9 Jan 2019 14:24:07 +0000 -Subject: [PATCH 6/7] Undefine a bunch of gs_fonts.ps specific procs - -Also reorder and add some immediate evaluation, so it still works with the -undefining. - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_dps1.ps | 3 +- - Resource/Init/gs_fonts.ps | 275 +++++++++++++++++++++----------------- - Resource/Init/gs_res.ps | 7 +- - 3 files changed, 157 insertions(+), 128 deletions(-) - -diff --git a/Resource/Init/gs_dps1.ps b/Resource/Init/gs_dps1.ps -index b75ea14..8700c8c 100644 ---- a/Resource/Init/gs_dps1.ps -+++ b/Resource/Init/gs_dps1.ps -@@ -67,7 +67,8 @@ level2dict begin - - /selectfont % selectfont - - { -- { 1 .argindex findfont -+ { -+ 1 .argindex findfont - 1 index dup type /arraytype eq { makefont } { scalefont } ifelse - setfont pop pop - } stopped { /selectfont .systemvar $error /errorname get signalerror } if -diff --git a/Resource/Init/gs_fonts.ps b/Resource/Init/gs_fonts.ps -index c13a2fc..0562235 100644 ---- a/Resource/Init/gs_fonts.ps -+++ b/Resource/Init/gs_fonts.ps -@@ -100,7 +100,7 @@ userdict /.nativeFontmap .FontDirectory maxlength dict put - { 2 index token not - { (Fontmap entry for ) print 1 index =only - ( ends prematurely! Giving up.) = flush -- {.loadFontmap} 0 get 1 .quit -+ {//.loadFontmap exec} 0 get 1 .quit - } if - dup /; eq { pop 3 index 3 1 roll .growput exit } if - pop -@@ -202,6 +202,14 @@ NOFONTPATH { /FONTPATH () def } if - { pop } - { /FONTPATH (GS_FONTPATH) getenv not { () } if def } - ifelse -+ -+% The following are dummy definitions that, if we have a FONTPATH, will -+% be replaced in the following section. -+% They are here so immediately evaulation will work, and allow them to -+% undefined at the bottom of the file. -+/.scanfontbegin{} bind def -+/.scanfontdir {} bind def -+ - FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - /FONTPATH [ FONTPATH .pathlist ] def - -@@ -242,12 +250,12 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - /.scanfontbegin - { % Construct the table of all file names already in Fontmap. - currentglobal //true setglobal -- .scanfontdict dup maxlength Fontmap length 2 add .max .setmaxlength -+ //.scanfontdict dup maxlength Fontmap length 2 add .max .setmaxlength - Fontmap - { exch pop - { dup type /stringtype eq -- { .splitfilename pop .fonttempstring copy .lowerstring cvn -- .scanfontdict exch //true put -+ { //.splitfilename exec pop //.fonttempstring copy //.lowerstring exec cvn -+ //.scanfontdict exch //true put - } - { pop - } -@@ -280,9 +288,9 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - /txt //true - .dicttomark def - /.scan1fontstring 8192 string def --% %%BeginFont: is not per Adobe documentation, but a few fonts have it. -+% BeginFont: is not per Adobe documentation, but a few fonts have it. - /.scanfontheaders [(%!PS-Adobe*) (%!FontType*) (%%BeginFont:*)] def --0 .scanfontheaders { length .max } forall 6 add % extra for PFB header -+0 //.scanfontheaders { length .max } forall 6 add % extra for PFB header - /.scan1fontfirst exch string def - /.scanfontdir % .scanfontdir - - { currentglobal exch //true setglobal -@@ -291,10 +299,10 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - 0 0 0 4 -1 roll % found scanned files - { % stack: - exch 1 add exch % increment filecount -- dup .splitfilename .fonttempstring copy .lowerstring -+ dup //.splitfilename exec //.fonttempstring copy //.lowerstring exec - % stack: - % -- .scanfontskip exch known exch .scanfontdict exch known or -+ //.scanfontskip exch known exch //.scanfontdict exch known or - { pop - % stack: - } -@@ -309,7 +317,7 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - % On some platforms, the file operator will open directories, - % but an error will occur if we try to read from one. - % Handle this possibility here. -- dup .scan1fontfirst { readstring } .internalstopped -+ dup //.scan1fontfirst { readstring } .internalstopped - { pop pop () } - { pop } - ifelse -@@ -322,7 +330,7 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - { dup length 6 sub 6 exch getinterval } - if - % Check for font file headers. -- //false .scanfontheaders -+ //false //.scanfontheaders - { 2 index exch .stringmatch or - } - forall exch pop -@@ -335,7 +343,7 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - { exch copystring exch - DEBUG { ( ) print dup =only flush } if - 1 index .definenativefontmap -- .splitfilename pop //true .scanfontdict 3 1 roll .growput -+ //.splitfilename exec pop //true //.scanfontdict 3 1 roll .growput - % Increment fontcount. - 3 -1 roll 1 add 3 1 roll - } -@@ -352,7 +360,7 @@ FONTPATH length 0 eq { (%END FONTPATH) .skipeof } if - } - ifelse - } -- .scan1fontstring filenameforall -+ //.scan1fontstring filenameforall - QUIET - { pop pop pop } - { ( ) print =only ( files, ) print =only ( scanned, ) print -@@ -422,7 +430,6 @@ systemdict /NONATIVEFONTMAP known .setnativefontmapbuilt - //true .setnativefontmapbuilt - } ifelse - } bind def --currentdict /.setnativefontmapbuilt .forceundef - - % Create the dictionary that registers the .buildfont procedure - % (called by definefont) for each FontType. -@@ -526,7 +533,8 @@ buildfontdict 3 /.buildfont3 cvx put - % We use this only for explicitly aliased fonts, not substituted fonts: - % we think this matches the observed behavior of Adobe interpreters. - /.aliasfont % .aliasfont -- { .currentglobal 3 1 roll dup .gcheck .setglobal -+ { -+ currentglobal 3 1 roll dup gcheck setglobal - % - dup length 2 add dict % - dup 3 -1 roll % -@@ -541,7 +549,7 @@ buildfontdict 3 /.buildfont3 cvx put - % whose FontName is a local non-string, if someone passed a - % garbage value to findfont. In this case, just don't - % call definefont at all. -- 2 index dup type /stringtype eq exch .gcheck or 1 index .gcheck not or -+ 2 index dup type /stringtype eq exch gcheck or 1 index gcheck not or - { pop % - 1 index dup type /stringtype eq { cvn } if - % -@@ -566,10 +574,11 @@ buildfontdict 3 /.buildfont3 cvx put - % Don't bind in definefont, since Level 2 redefines it. - /definefont .systemvar exec - } -- { /findfont cvx {.completefont} .errorexec pop exch pop -+ { -+ /findfont cvx {.completefont} //.errorexec exec pop exch pop - } - ifelse -- exch .setglobal -+ exch setglobal - } odef % so findfont will bind it - - % Define .loadfontfile for loading a font. If we recognize Type 1 and/or -@@ -669,10 +678,19 @@ buildfontdict 3 /.buildfont3 cvx put - [(Cn) 4] [(Cond) 4] [(Narrow) 4] [(Pkg) 4] [(Compr) 4] - [(Serif) 8] [(Sans) -8] - ] readonly def -+ -+/.fontnamestring { % .fontnamestring -+ dup type dup /nametype eq { -+ pop .namestring -+ } { -+ /stringtype ne { pop () } if -+ } ifelse -+} bind def -+ - /.fontnameproperties { % .fontnameproperties - % -- .fontnamestring -- .substituteproperties { -+ //.fontnamestring exec -+ //.substituteproperties { - 2 copy 0 get search { - pop pop pop dup length 1 sub 1 exch getinterval 3 -1 roll exch { - dup 0 ge { or } { neg not and } ifelse -@@ -710,13 +728,7 @@ buildfontdict 3 /.buildfont3 cvx put - % .nametostring - dup type /nametype eq { .namestring } if - } bind def --/.fontnamestring { % .fontnamestring -- dup type dup /nametype eq { -- pop .namestring -- } { -- /stringtype ne { pop () } if -- } ifelse --} bind def -+ - /.substitutefontname { % .substitutefontname - % - % Look for properties and/or a face name in the font name. -@@ -724,7 +736,7 @@ buildfontdict 3 /.buildfont3 cvx put - % base font; otherwise, use the default font. - % Note that the "substituted" font name may be the same as - % the requested one; the caller must check this. -- exch .fontnamestring { -+ exch //.fontnamestring exec { - defaultfontname /Helvetica-Oblique /Helvetica-Bold /Helvetica-BoldOblique - /Helvetica-Narrow /Helvetica-Narrow-Oblique - /Helvetica-Narrow-Bold /Helvetica-Narrow-BoldOblique -@@ -734,12 +746,12 @@ buildfontdict 3 /.buildfont3 cvx put - } 3 1 roll - % Stack: facelist properties fontname - % Look for a face name. -- .substitutefaces { -+ //.substitutefaces { - 2 copy 0 get search { - pop pop pop - % Stack: facelist properties fontname [(pattern) family properties] - dup 2 get 4 -1 roll or 3 1 roll -- 1 get .substitutefamilies exch get -+ 1 get //.substitutefamilies exch get - 4 -1 roll pop 3 1 roll - } { - pop pop -@@ -748,7 +760,7 @@ buildfontdict 3 /.buildfont3 cvx put - 1 index length mod get exec - } bind def - /.substitutefont { % .substitutefont -- dup 0 exch .fontnameproperties .substitutefontname -+ dup 0 exch //.fontnameproperties exec .substitutefontname - % Only accept fonts known in the Fontmap. - Fontmap 1 index known not - { -@@ -814,7 +826,7 @@ FAKEFONTS not { (%END FAKEFONTS) .skipeof } if - counttomark 1 sub { .aliasfont } repeat end - % mark - exch pop exch pop --} odef -+} bind odef - /findfont { - .findfont - } bind def -@@ -860,7 +872,7 @@ FAKEFONTS not { (%END FAKEFONTS) .skipeof } if - } { - dup .substitutefont - 2 copy eq { pop defaultfontname } if -- .checkalias -+ //.checkalias exec - QUIET not { - SHORTERRORS { - (%%[) print 1 index =only -@@ -886,8 +898,8 @@ $error /SubstituteFont { } put - //null 0 1 FONTPATH length 1 sub { - FONTPATH 1 index get //null ne { exch pop exit } if pop - } for dup //null ne { -- dup 0 eq { .scanfontbegin } if -- FONTPATH 1 index get .scanfontdir -+ dup 0 eq { //.scanfontbegin exec} if -+ FONTPATH 1 index get //.scanfontdir exec - FONTPATH exch //null put //true - } { - pop //false -@@ -897,11 +909,10 @@ $error /SubstituteFont { } put - % scanning of FONTPATH. - /.dofindfont { % mark .dofindfont % mark ... - .tryfindfont not { -- - % We didn't find the font. If we haven't scanned - % all the directories in FONTPATH, scan the next one - % now and look for the font again. -- .scannextfontdir { -+ //.scannextfontdir exec { - % Start over with an empty alias list. - counttomark 1 sub { pop } repeat % mark - .dofindfont -@@ -927,6 +938,7 @@ $error /SubstituteFont { } put - } if - % Substitute for the font. Don't alias. - % Same stack as at the beginning of .dofindfont. -+ - $error /SubstituteFont get exec - % - % igorm: I guess the surrounding code assumes that .stdsubstfont -@@ -935,72 +947,11 @@ $error /SubstituteFont { } put - % used in .dofindfont and through .stdsubstfont - % just to represent a simple iteration, - % which accumulates the aliases after the mark. -- .stdsubstfont -+ //.stdsubstfont exec - } ifelse - } ifelse - } if - } bind def --% Try to find a font using only the present contents of Fontmap. --/.tryfindfont { % .tryfindfont true -- % .tryfindfont false -- //.FontDirectory 1 index .fontknownget -- { % Already loaded -- exch pop //true -- } -- { -- dup Fontmap exch .knownget -- { //true //true } -- { % Unknown font name. Look for a file with the -- % same name as the requested font. -- dup .tryloadfont -- { exch pop //true //false } -- { -- % if we can't load by name check the native font map -- dup .nativeFontmap exch .knownget -- { //true //true } -- { //false //false } ifelse -- } ifelse -- } ifelse -- -- { % Try each element of the Fontmap in turn. -- pop -- //false exch % (in case we exhaust the list) -- % Stack: fontname false fontmaplist -- { exch pop -- dup type /nametype eq -- { % Font alias -- .checkalias .tryfindfont exit -- } -- { dup dup type dup /arraytype eq exch /packedarraytype eq or exch xcheck and -- { % Font with a procedural definition -- exec % The procedure will load the font. -- % Check to make sure this really happened. -- //.FontDirectory 1 index .knownget -- { exch pop //true exit } -- if -- } -- { % Font file name -- //true .loadfontloop { //true exit } if -- } -- ifelse -- } -- ifelse //false -- } -- forall -- % Stack: font true -or- fontname false -- { //true -- } -- { % None of the Fontmap entries worked. -- % Try loading a file with the same name -- % as the requested font. -- .tryloadfont -- } -- ifelse -- } -- if -- } -- ifelse -- } bind def - - % any user of .putgstringcopy must use bind and executeonly - /.putgstringcopy % .putgstringcopy - -@@ -1014,25 +965,6 @@ $error /SubstituteFont { } put - } executeonly ifelse - } .bind executeonly odef % must be bound and hidden for .forceput - --% Attempt to load a font from a file. --/.tryloadfont { % .tryloadfont true -- % .tryloadfont false -- dup .nametostring -- % Hack: check for the presence of the resource machinery. -- /.genericrfn where { -- pop -- pop dup .fonttempstring /FontResourceDir getsystemparam .genericrfn -- {//false .loadfontloop} .internalstopped {//false} if { -- //true -- } { -- dup .nametostring -- {//true .loadfontloop} .internalstopped {//false} if -- } ifelse -- } { -- {//true .loadfontloop} .internalstopped {//false} if -- } ifelse --} bind def -- - /.loadfontloop { % .loadfontloop - % true - % -or- -@@ -1102,7 +1034,7 @@ $error /SubstituteFont { } put - } if - - % Check to make sure the font was actually loaded. -- dup 3 index .fontknownget -+ dup 3 index //.fontknownget exec - { dup /PathLoad 4 index .putgstringcopy - 4 1 roll pop pop pop //true exit - } executeonly if -@@ -1113,7 +1045,7 @@ $error /SubstituteFont { } put - exch dup % Stack: origfontname fontdirectory path path - (r) file .findfontname - { % Stack: origfontname fontdirectory path filefontname -- 2 index 1 index .fontknownget -+ 2 index 1 index //.fontknownget exec - { % Yes. Stack: origfontname fontdirectory path filefontname fontdict - dup 4 -1 roll /PathLoad exch .putgstringcopy - % Stack: origfontname fontdirectory filefontname fontdict -@@ -1136,7 +1068,7 @@ $error /SubstituteFont { } put - % Stack: fontdict - } executeonly - if pop % Stack: origfontname fontdirectory path -- } -+ } executeonly - if pop pop % Stack: origfontname - - % The font definitely did not load correctly. -@@ -1150,7 +1082,87 @@ $error /SubstituteFont { } put - - } bind executeonly odef % must be bound and hidden for .putgstringcopy - --currentdict /.putgstringcopy .undef -+% Attempt to load a font from a file. -+/.tryloadfont { % .tryloadfont true -+ % .tryloadfont false -+ dup //.nametostring exec -+ % Hack: check for the presence of the resource machinery. -+ /.genericrfn where { -+ pop -+ pop dup //.fonttempstring /FontResourceDir getsystemparam .genericrfn -+ {//false .loadfontloop} .internalstopped {//false} if { -+ //true -+ } { -+ dup //.nametostring exec -+ {//true .loadfontloop} .internalstopped {//false} if -+ } ifelse -+ } { -+ {//true .loadfontloop} .internalstopped {//false} if -+ } ifelse -+} bind def -+ -+% Try to find a font using only the present contents of Fontmap. -+/.tryfindfont { % .tryfindfont true -+ % .tryfindfont false -+ //.FontDirectory 1 index //.fontknownget exec -+ { % Already loaded -+ exch pop //true -+ } -+ { -+ dup Fontmap exch .knownget -+ { //true //true } -+ { % Unknown font name. Look for a file with the -+ % same name as the requested font. -+ dup //.tryloadfont exec -+ { exch pop //true //false } -+ { -+ % if we can't load by name check the native font map -+ dup .nativeFontmap exch .knownget -+ { //true //true } -+ { //false //false } ifelse -+ } ifelse -+ } ifelse -+ -+ { % Try each element of the Fontmap in turn. -+ pop -+ //false exch % (in case we exhaust the list) -+ % Stack: fontname false fontmaplist -+ { exch pop -+ dup type /nametype eq -+ { % Font alias -+ //.checkalias exec -+ .tryfindfont exit -+ } -+ { dup dup type dup /arraytype eq exch /packedarraytype eq or exch xcheck and -+ { % Font with a procedural definition -+ exec % The procedure will load the font. -+ % Check to make sure this really happened. -+ //.FontDirectory 1 index .knownget -+ { exch pop //true exit } -+ if -+ } -+ { % Font file name -+ //true .loadfontloop { //true exit } if -+ } -+ ifelse -+ } -+ ifelse //false -+ } -+ forall -+ % Stack: font true -or- fontname false -+ { //true -+ } -+ { % None of the Fontmap entries worked. -+ % Try loading a file with the same name -+ % as the requested font. -+ //.tryloadfont exec -+ } -+ ifelse -+ } -+ if -+ } -+ ifelse -+ } bind def - - % Define a procedure to load all known fonts. - % This isn't likely to be very useful. -@@ -1192,9 +1204,9 @@ FAKEFONTS { exch } if pop def % don't bind, .current/setglobal get redefined - /.loadinitialfonts - { NOFONTMAP not - { /FONTMAP where -- { pop [ FONTMAP .pathlist ] -+ { pop [ FONTMAP //.pathlist exec] - { dup VMDEBUG findlibfile -- { exch pop .loadFontmap } -+ { exch pop //.loadFontmap exec } - { /undefinedfilename signalerror } - ifelse - } -@@ -1208,7 +1220,7 @@ FAKEFONTS { exch } if pop def % don't bind, .current/setglobal get redefined - pop pop - defaultfontmap_content { .definefontmap } forall - } { -- .loadFontmap -+ //.loadFontmap exec - } ifelse - } { - pop pop -@@ -1272,3 +1284,18 @@ FAKEFONTS { exch } if pop def % don't bind, .current/setglobal get redefined - { .makemodifiedfont - dup /FontName get exch definefont pop - } bind def -+ -+% Undef these, not needed outside this file -+[ -+ % /.fonttempstring /.scannextfontdir - are also used in gs_res.ps, so are undefined there -+ % /.fontnameproperties - is used in pdf_font.ps -+ % /.scanfontheaders - used in gs_cff.ps, gs_ttf.ps -+ /.loadfontloop /.tryloadfont /.findfont /.pathlist /.loadFontmap /.lowerstring -+ /.splitfilename /.scanfontdict /.scanfontbegin -+ /.scanfontskip /.scan1fontstring -+ /.scan1fontfirst /.scanfontdir -+ /.setnativefontmapbuilt /.aliasfont -+ /.setloadingfont /.substitutefaces /.substituteproperties /.substitutefamilies -+ /.nametostring /.fontnamestring /.checkalias /.fontknownget /.stdsubstfont -+ /.putgstringcopy -+] {systemdict exch .forceundef} forall -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index 18d5452..b016113 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -961,7 +961,7 @@ userdict /.localcsdefaults //false put - dup type /nametype eq { .namestring } if - dup type /stringtype ne { //false exit } if - % Check the resource directory. -- dup .fonttempstring /FontResourceDir getsystemparam .genericrfn -+ dup //.fonttempstring /FontResourceDir getsystemparam .genericrfn - status { - pop pop pop pop //true exit - } if -@@ -969,7 +969,7 @@ userdict /.localcsdefaults //false put - % as the font. - findlibfile { closefile //true exit } if - % Scan a FONTPATH directory and try again. -- .scannextfontdir not { //false exit } if -+ //.scannextfontdir exec not { //false exit } if - } loop - } bind def - -@@ -1008,7 +1008,7 @@ currentdict /.fontstatusaux .undef - } ifelse - } bind executeonly - /ResourceForAll { -- { .scannextfontdir not { exit } if } loop -+ { //.scannextfontdir exec not { exit } if } loop - /Generic /Category findresource /ResourceForAll get exec - } bind executeonly - /.ResourceFileStatus { -@@ -1163,6 +1163,7 @@ end % level2dict - [ - /.default_resource_dir - /.resource_dir_name -+ /.fonttempstring /.scannextfontdir % from gs_fonts.ps - ] - {systemdict exch .forceundef} forall - --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0007.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0007.patch deleted file mode 100644 index 5c1f83959..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/CVE-2019-6116-0007.patch +++ /dev/null @@ -1,346 +0,0 @@ -From 5c49efe24dda0f2dbd2a09b9159e683cce99b6d8 Mon Sep 17 00:00:00 2001 -From: Chris Liddell -Date: Fri, 11 Jan 2019 13:36:36 +0000 -Subject: [PATCH 7/7] Remove .forcedef, and harden .force* ops more - -Remove .forcedef and replace all uses with a direct call to .forceput instead. - -Ensure every procedure (named and trasient) that calls .forceput is -executeonly. - -CVE: CVE-2019-6116 -Upstream-Status: Backport [git://git.ghostscript.com/ghostpdl.git] - -Signed-off-by: Ovidiu Panait ---- - Resource/Init/gs_dps1.ps | 15 +++++++----- - Resource/Init/gs_init.ps | 28 ++++++++------------- - Resource/Init/gs_lev2.ps | 51 +++++++++++++++++++-------------------- - Resource/Init/gs_ll3.ps | 5 ++-- - Resource/Init/gs_res.ps | 29 +++++++++++----------- - Resource/Init/gs_statd.ps | 4 +-- - 6 files changed, 63 insertions(+), 69 deletions(-) - -diff --git a/Resource/Init/gs_dps1.ps b/Resource/Init/gs_dps1.ps -index 8700c8c..3d2cf7a 100644 ---- a/Resource/Init/gs_dps1.ps -+++ b/Resource/Init/gs_dps1.ps -@@ -33,14 +33,17 @@ systemdict begin - - /SharedFontDirectory .FontDirectory .gcheck - { .currentglobal //false .setglobal -+ currentdict - /LocalFontDirectory .FontDirectory dup maxlength dict copy -- .forcedef % LocalFontDirectory is local, systemdict is global -+ .forceput % LocalFontDirectory is local, systemdict is global - .setglobal .FontDirectory -- } -- { /LocalFontDirectory .FontDirectory -- .forcedef % LocalFontDirectory is local, systemdict is global -+ } executeonly -+ { -+ currentdict -+ /LocalFontDirectory .FontDirectory -+ .forceput % LocalFontDirectory is local, systemdict is global - 50 dict -- } -+ }executeonly - ifelse def - - end % systemdict -@@ -55,7 +58,7 @@ level2dict begin - { //SharedFontDirectory } - { /LocalFontDirectory .systemvar } % can't embed ref to local VM - ifelse .forceput pop % LocalFontDirectory is local, systemdict is global -- } .bind odef -+ } .bind executeonly odef - % Don't just copy (load) the definition of .setglobal: - % it gets redefined for LL3. - /setshared { /.setglobal .systemvar exec } odef -diff --git a/Resource/Init/gs_init.ps b/Resource/Init/gs_init.ps -index d9a0829..45bebf4 100644 ---- a/Resource/Init/gs_init.ps -+++ b/Resource/Init/gs_init.ps -@@ -54,7 +54,7 @@ systemdict exch - dup /userdict - currentdict dup 200 .setmaxlength % userdict - .forceput % userdict is local, systemdict is global -- } -+ } executeonly - if begin - - % Define dummy local/global operators if needed. -@@ -299,13 +299,6 @@ QUIET not { printgreeting flush } if - 1 index exch .makeoperator def - } .bind def - --% Define a special version of def for storing local objects into global --% dictionaries. Like .forceput, this exists only during initialization. --/.forcedef { % .forcedef - -- 1 .argindex pop % check # of args -- currentdict 3 1 roll .forceput --} .bind odef -- - % Define procedures for accessing variables in systemdict and userdict - % regardless of the contents of the dictionary stack. - /.systemvar { % .systemvar -@@ -347,7 +340,7 @@ DELAYBIND - } - ifelse - } .bind def --} if -+} executeonly if - - %**************** BACKWARD COMPATIBILITY **************** - /hwsizedict mark /HWSize //null .dicttomark readonly def -@@ -655,7 +648,7 @@ currentdict /.typenames .undef - /ifelse .systemvar - ] cvx executeonly - exch .setglobal --} odef -+} executeonly odef - systemdict /internaldict dup .makeinternaldict .makeoperator - .forceput % proc is local, systemdict is global - -@@ -1093,7 +1086,7 @@ def - - % Define $error. This must be in local VM. - .currentglobal //false .setglobal --/$error 40 dict .forcedef % $error is local, systemdict is global -+currentdict /$error 40 dict .forceput % $error is local, systemdict is global - % newerror, errorname, command, errorinfo, - % ostack, estack, dstack, recordstacks, - % binary, globalmode, -@@ -1112,8 +1105,8 @@ end - % Define errordict similarly. It has one entry per error name, - % plus handleerror. However, some astonishingly badly written PostScript - % files require it to have at least one empty slot. --/errordict ErrorNames length 3 add dict --.forcedef % errordict is local, systemdict is global -+currentdict /errordict ErrorNames length 3 add dict -+.forceput % errordict is local, systemdict is global - .setglobal % back to global VM - % gserrordict contains all the default error handling methods, but unlike - % errordict it is noaccess after creation (also it is in global VM). -@@ -1273,8 +1266,9 @@ end - (END PROCS) VMDEBUG - - % Define the font directory. -+currentdict - /FontDirectory //false .setglobal 100 dict //true .setglobal --.forcedef % FontDirectory is local, systemdict is global -+.forceput % FontDirectory is local, systemdict is global - - % Define the encoding dictionary. - /EncodingDirectory 16 dict def % enough for Level 2 + PDF standard encodings -@@ -2333,7 +2327,6 @@ SAFER { .setsafeglobal } if - //systemdict /UndefinePostScriptOperators get exec - //systemdict /UndefinePDFOperators get exec - //systemdict /.forcecopynew .forceundef % remove temptation -- //systemdict /.forcedef .forceundef % ditto - //systemdict /.forceput .forceundef % ditto - //systemdict /.undef .forceundef % ditto - //systemdict /.forceundef .forceundef % ditto -@@ -2368,9 +2361,9 @@ SAFER { .setsafeglobal } if - % (and, if implemented, context switching). - .currentglobal //false .setglobal - mark userparams { } forall .dicttomark readonly -- /userparams exch .forcedef % systemdict is read-only -+ currentdict exch /userparams exch .forceput % systemdict is read-only - .setglobal --} if -+} executeonly if - /.currentsystemparams where { - pop - % Remove real system params from pssystemparams. -@@ -2458,7 +2451,6 @@ end - DELAYBIND not { - systemdict /.bindnow .undef % We only need this for DELAYBIND - systemdict /.forcecopynew .undef % remove temptation -- systemdict /.forcedef .undef % ditto - systemdict /.forceput .undef % ditto - systemdict /.forceundef .undef % ditto - } if -diff --git a/Resource/Init/gs_lev2.ps b/Resource/Init/gs_lev2.ps -index 0f0d573..9c0c3a6 100644 ---- a/Resource/Init/gs_lev2.ps -+++ b/Resource/Init/gs_lev2.ps -@@ -304,31 +304,30 @@ end - psuserparams exch /.checkFilePermitparams load put - .setglobal - --pssystemparams begin -- /CurDisplayList 0 .forcedef -- /CurFormCache 0 .forcedef -- /CurInputDevice () .forcedef -- /CurOutlineCache 0 .forcedef -- /CurOutputDevice () .forcedef -- /CurPatternCache 0 .forcedef -- /CurUPathCache 0 .forcedef -- /CurScreenStorage 0 .forcedef -- /CurSourceList 0 .forcedef -- /DoPrintErrors //false .forcedef -- /JobTimeout 0 .forcedef -- /LicenseID (LN-001) .forcedef % bogus -- /MaxDisplayList 140000 .forcedef -- /MaxFormCache 100000 .forcedef -- /MaxImageBuffer 524288 .forcedef -- /MaxOutlineCache 65000 .forcedef -- /MaxPatternCache 100000 .forcedef -- /MaxUPathCache 300000 .forcedef -- /MaxScreenStorage 84000 .forcedef -- /MaxSourceList 25000 .forcedef -- /PrinterName product .forcedef -- /RamSize 4194304 .forcedef -- /WaitTimeout 40 .forcedef --end -+pssystemparams -+dup /CurDisplayList 0 .forceput -+dup /CurFormCache 0 .forceput -+dup /CurInputDevice () .forceput -+dup /CurOutlineCache 0 .forceput -+dup /CurOutputDevice () .forceput -+dup /CurPatternCache 0 .forceput -+dup /CurUPathCache 0 .forceput -+dup /CurScreenStorage 0 .forceput -+dup /CurSourceList 0 .forceput -+dup /DoPrintErrors //false .forceput -+dup /JobTimeout 0 .forceput -+dup /LicenseID (LN-001) .forceput % bogus -+dup /MaxDisplayList 140000 .forceput -+dup /MaxFormCache 100000 .forceput -+dup /MaxImageBuffer 524288 .forceput -+dup /MaxOutlineCache 65000 .forceput -+dup /MaxPatternCache 100000 .forceput -+dup /MaxUPathCache 300000 .forceput -+dup /MaxScreenStorage 84000 .forceput -+dup /MaxSourceList 25000 .forceput -+dup /PrinterName product .forceput -+dup /RamSize 4194304 .forceput -+ /WaitTimeout 40 .forceput - - % Define the procedures for handling comment scanning. The names - % %ProcessComment and %ProcessDSCComment are known to the interpreter. -@@ -710,7 +709,7 @@ pop % currentsystemparams - /statusdict currentdict def - - currentdict end --/statusdict exch .forcedef % statusdict is local, systemdict is global -+currentdict exch /statusdict exch .forceput % statusdict is local, systemdict is global - - % The following compatibility operators are in systemdict. They are - % defined here, rather than in gs_init.ps, because they require the -diff --git a/Resource/Init/gs_ll3.ps b/Resource/Init/gs_ll3.ps -index c86721f..881af44 100644 ---- a/Resource/Init/gs_ll3.ps -+++ b/Resource/Init/gs_ll3.ps -@@ -521,9 +521,8 @@ end - % Define additional user and system parameters. - /HalftoneMode 0 .definepsuserparam - /MaxSuperScreen 1016 .definepsuserparam --pssystemparams begin % read-only, so use .forcedef -- /MaxDisplayAndSourceList 160000 .forcedef --end -+% read-only, so use .forceput -+pssystemparams /MaxDisplayAndSourceList 160000 .forceput - - % Define the IdiomSet resource category. - { /IdiomSet } { -diff --git a/Resource/Init/gs_res.ps b/Resource/Init/gs_res.ps -index b016113..89c0ed6 100644 ---- a/Resource/Init/gs_res.ps -+++ b/Resource/Init/gs_res.ps -@@ -41,10 +41,10 @@ level2dict begin - % However, Ed Taft of Adobe says their interpreters don't implement this - % either, so we aren't going to worry about it for a while. - --currentglobal //false setglobal systemdict begin -- /localinstancedict 5 dict -- .forcedef % localinstancedict is local, systemdict is global --end //true setglobal -+currentglobal //false setglobal -+ systemdict /localinstancedict 5 dict -+ .forceput % localinstancedict is local, systemdict is global -+//true setglobal - /.emptydict 0 dict readonly def - setglobal - -@@ -149,7 +149,7 @@ setglobal - dup [ exch 0 -1 ] exch - .Instances 4 2 roll put - % Make the Category dictionary read-only. We will have to -- % use .forceput / .forcedef later to replace the dummy, -+ % use .forceput / .forceput later to replace the dummy, - % empty .Instances dictionary with the real one later. - readonly - }{ -@@ -304,7 +304,8 @@ systemdict begin - dup () ne { - .file_name_directory_separator concatstrings - } if -- 2 index exch //false .file_name_combine not { -+ 2 index exch //false -+ .file_name_combine not { - (Error: .default_resource_dir returned ) print exch print ( that can't combine with ) print = - /.default_resource_dir cvx /configurationerror signalerror - } if -@@ -317,14 +318,14 @@ currentdict /pssystemparams known not { - pssystemparams begin - //.default_resource_dir exec - /FontResourceDir (Font) //.resource_dir_name exec -- readonly .forcedef % pssys'params is r-o -+ readonly currentdict 3 1 roll .forceput % pssys'params is r-o - /GenericResourceDir () //.resource_dir_name exec -- readonly .forcedef % pssys'params is r-o -+ readonly currentdict 3 1 roll .forceput % pssys'params is r-o - pop % .default_resource_dir - /GenericResourcePathSep -- .file_name_separator readonly .forcedef % pssys'params is r-o -- (%diskFontResourceDir) cvn (/Resource/Font/) readonly .forcedef % pssys'params is r-o -- (%diskGenericResourceDir) cvn (/Resource/) readonly .forcedef % pssys'params is r-o -+ .file_name_separator readonly currentdict 3 1 roll .forceput % pssys'params is r-o -+ currentdict (%diskFontResourceDir) cvn (/Resource/Font/) readonly .forceput % pssys'params is r-o -+ currentdict (%diskGenericResourceDir) cvn (/Resource/) readonly .forceput % pssys'params is r-o - end - end - -@@ -422,8 +423,8 @@ status { - .Instances dup //.emptydict eq { - pop 3 dict - % As noted above, Category dictionaries are read-only, -- % so we have to use .forcedef here. -- /.Instances 1 index .forcedef % Category dict is read-only -+ % so we have to use .forceput here. -+ currentdict /.Instances 2 index .forceput % Category dict is read-only - } executeonly if - } - { .LocalInstances dup //.emptydict eq -@@ -441,7 +442,7 @@ status { - { /defineresource cvx /typecheck signaloperror - } - ifelse --} .bind executeonly .makeoperator % executeonly to prevent access to .forcedef -+} .bind executeonly .makeoperator % executeonly to prevent access to .forceput - /UndefineResource - { { dup 2 index .knownget - { dup 1 get 1 ge -diff --git a/Resource/Init/gs_statd.ps b/Resource/Init/gs_statd.ps -index 20d4c96..b6a7659 100644 ---- a/Resource/Init/gs_statd.ps -+++ b/Resource/Init/gs_statd.ps -@@ -21,10 +21,10 @@ systemdict begin - % We make statusdict a little larger for Level 2 stuff. - % Note that it must be allocated in local VM. - .currentglobal //false .setglobal -- /statusdict 91 dict .forcedef % statusdict is local, sys'dict global -+ currentdict /statusdict 91 dict .forceput % statusdict is local, sys'dict global - % To support the Level 2 job control features, - % serverdict must also be in local VM. -- /serverdict 10 dict .forcedef % serverdict is local, sys'dict global -+ currentdict /serverdict 10 dict .forceput % serverdict is local, sys'dict global - .setglobal - end - --- -2.18.1 - diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch b/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch index fc144f625..7b70bb8e2 100644 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch +++ b/poky/meta/recipes-extended/ghostscript/ghostscript/ghostscript-9.02-genarch.patch @@ -1,7 +1,7 @@ -From 94850954b88440df6c41d2dd133c422ffc84d9aa Mon Sep 17 00:00:00 2001 +From c076d0fc970f190f723018258790c79b59daba2e Mon Sep 17 00:00:00 2001 From: Hongxu Jia -Date: Thu, 29 Mar 2018 16:12:48 +0800 -Subject: [PATCH 07/10] not generate objarch.h at compile time +Date: Sat, 11 May 2019 21:20:27 +0800 +Subject: [PATCH] not generate objarch.h at compile time Import patch from windriver linux for cross compilation, and split patches into oe way under different directories such as i586, powerpc etc @@ -12,19 +12,19 @@ Upstream-Status: Pending Signed-off-by: Kang Kai Signed-off-by: Wenzong Fan -Rebase to 9.23 +Rebase to 9.27 Signed-off-by: Hongxu Jia --- base/lib.mak | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/base/lib.mak b/base/lib.mak -index 0036d1e..302877e 100644 +index 3ed088a..5af2b43 100644 --- a/base/lib.mak +++ b/base/lib.mak @@ -87,8 +87,8 @@ arch_h=$(GLGEN)arch.h stdpre_h=$(GLSRC)stdpre.h - stdint__h=$(GLSRC)stdint_.h $(std_h) + stdint__h=$(GLSRC)stdint_.h -$(GLGEN)arch.h : $(GENARCH_XE) - $(EXP)$(GENARCH_XE) $(GLGEN)arch.h $(TARGET_ARCH_FILE) @@ -34,5 +34,5 @@ index 0036d1e..302877e 100644 # Platform interfaces -- -1.8.3.1 +2.7.4 diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript_9.26.bb b/poky/meta/recipes-extended/ghostscript/ghostscript_9.26.bb deleted file mode 100644 index bb3234788..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript_9.26.bb +++ /dev/null @@ -1,138 +0,0 @@ -SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" -DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ -a back-end to a program such as ghostview, it can display PostScript and PDF \ -documents in an X11 environment. \ -\ -Furthermore, it can render PostScript and PDF files as graphics to be printed \ -on non-PostScript printers. Supported printers include common \ -dot-matrix, inkjet and laser models. \ -" -HOMEPAGE = "http://www.ghostscript.com" -SECTION = "console/utils" - -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc" - -DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng" -DEPENDS_class-native = "libpng-native" - -UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" - -SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs926/${BPN}-${PV}.tar.gz \ - file://ghostscript-9.15-parallel-make.patch \ - file://ghostscript-9.16-Werror-return-type.patch \ - file://do-not-check-local-libpng-source.patch \ - file://avoid-host-contamination.patch \ - file://mkdir-p.patch \ -" - -SRC_URI = "${SRC_URI_BASE} \ - file://ghostscript-9.21-prevent_recompiling.patch \ - file://ghostscript-9.02-genarch.patch \ - file://objarch.h \ - file://cups-no-gcrypt.patch \ - file://CVE-2019-6116-0001.patch \ - file://CVE-2019-6116-0002.patch \ - file://CVE-2019-6116-0003.patch \ - file://CVE-2019-6116-0004.patch \ - file://CVE-2019-6116-0005.patch \ - file://CVE-2019-6116-0006.patch \ - file://CVE-2019-6116-0007.patch \ - file://CVE-2019-3835-0001.patch \ - file://CVE-2019-3835-0002.patch \ - file://CVE-2019-3835-0003.patch \ - file://CVE-2019-3835-0004.patch \ - file://CVE-2019-3838-0001.patch \ - file://CVE-2019-3838-0002.patch \ - " - -SRC_URI_class-native = "${SRC_URI_BASE} \ - file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \ - file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ - " - -SRC_URI[md5sum] = "806bc2dedbc7f69b003f536658e08d4a" -SRC_URI[sha256sum] = "831fc019bd477f7cc2d481dc5395ebfa4a593a95eb2fe1eb231a97e450d7540d" - -# Put something like -# -# PACKAGECONFIG_append_pn-ghostscript = " x11" -# -# in local.conf to enable building with X11. Be careful. The order -# of the overrides matters! -# -#PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" -PACKAGECONFIG_class-native = "" - -PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ - --without-x, virtual/libx11 libxext libxt gtk+3\ - " - -EXTRA_OECONF = "--with-system-libtiff --without-jbig2dec \ - --with-fontpath=${datadir}/fonts \ - --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ - --with-cups-datadir=${datadir}/cups \ - CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ - " - -EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0" - -# Explicity disable libtiff, fontconfig, -# freetype, cups for ghostscript-native -EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \ - --without-jbig2dec \ - --with-fontpath=${datadir}/fonts \ - --without-libidn --disable-fontconfig \ - --disable-freetype --disable-cups" - -# This has been fixed upstream but for now we need to subvert the check for time.h -# http://bugs.ghostscript.com/show_bug.cgi?id=692443 -# http://bugs.ghostscript.com/show_bug.cgi?id=692426 -CFLAGS += "-DHAVE_SYS_TIME_H=1" -BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1" - -inherit autotools - -do_configure_prepend () { - mkdir -p obj - mkdir -p soobj - if [ -e ${WORKDIR}/objarch.h ]; then - cp ${WORKDIR}/objarch.h obj/arch.h - fi -} - -do_configure_append () { - # copy tools from the native ghostscript build - if [ "${PN}" != "ghostscript-native" ]; then - mkdir -p obj/aux soobj - for i in genarch genconf mkromfs echogs gendev genht packps; do - cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i - done - fi -} - -do_install_append () { - mkdir -p ${D}${datadir}/ghostscript/${PV}/ - cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ - cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ -} - -do_compile_class-native () { - mkdir -p obj - for i in genarch genconf mkromfs echogs gendev genht packps; do - oe_runmake obj/aux/$i - done -} - -do_install_class-native () { - install -d ${D}${bindir}/ghostscript-${PV} - for i in genarch genconf mkromfs echogs gendev genht packps; do - install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i - done -} - -BBCLASSEXTEND = "native" - -# ghostscript does not supports "arc" -COMPATIBLE_HOST = "^(?!arc).*" diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript_9.27.bb b/poky/meta/recipes-extended/ghostscript/ghostscript_9.27.bb new file mode 100644 index 000000000..fcc9e0099 --- /dev/null +++ b/poky/meta/recipes-extended/ghostscript/ghostscript_9.27.bb @@ -0,0 +1,128 @@ +SUMMARY = "The GPL Ghostscript PostScript/PDF interpreter" +DESCRIPTION = "Ghostscript is used for PostScript/PDF preview and printing. Usually as \ +a back-end to a program such as ghostview, it can display PostScript and PDF \ +documents in an X11 environment. \ +\ +Furthermore, it can render PostScript and PDF files as graphics to be printed \ +on non-PostScript printers. Supported printers include common \ +dot-matrix, inkjet and laser models. \ +" +HOMEPAGE = "http://www.ghostscript.com" +SECTION = "console/utils" + +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://LICENSE;md5=70dc2bac4d0ce4448da873cd86b123fc" + +DEPENDS = "ghostscript-native tiff jpeg fontconfig cups libpng" +DEPENDS_class-native = "libpng-native" + +UPSTREAM_CHECK_URI = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases" +UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" + +SRC_URI_BASE = "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs927/${BPN}-${PV}.tar.gz \ + file://ghostscript-9.15-parallel-make.patch \ + file://ghostscript-9.16-Werror-return-type.patch \ + file://do-not-check-local-libpng-source.patch \ + file://avoid-host-contamination.patch \ + file://mkdir-p.patch \ +" + +SRC_URI = "${SRC_URI_BASE} \ + file://ghostscript-9.21-prevent_recompiling.patch \ + file://ghostscript-9.02-genarch.patch \ + file://objarch.h \ + file://cups-no-gcrypt.patch \ + " + +SRC_URI_class-native = "${SRC_URI_BASE} \ + file://ghostscript-9.21-native-fix-disable-system-libtiff.patch \ + file://base-genht.c-add-a-preprocessor-define-to-allow-fope.patch \ + " + +SRC_URI[md5sum] = "c3990a504a3a23b9babe9de00ed6597d" +SRC_URI[sha256sum] = "9760e8bdd07a08dbd445188a6557cb70e60ccb6a5601f7dbfba0d225e28ce285" + +# Put something like +# +# PACKAGECONFIG_append_pn-ghostscript = " x11" +# +# in local.conf to enable building with X11. Be careful. The order +# of the overrides matters! +# +#PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}" +PACKAGECONFIG_class-native = "" + +PACKAGECONFIG[x11] = "--with-x --x-includes=${STAGING_INCDIR} --x-libraries=${STAGING_LIBDIR}, \ + --without-x, virtual/libx11 libxext libxt gtk+3\ + " + +EXTRA_OECONF = "--with-system-libtiff --without-jbig2dec \ + --with-fontpath=${datadir}/fonts \ + --without-libidn --with-cups-serverbin=${exec_prefix}/lib/cups \ + --with-cups-datadir=${datadir}/cups \ + CUPSCONFIG="${STAGING_BINDIR_CROSS}/cups-config" \ + " + +EXTRA_OECONF_append_mipsarcho32 = " --with-large_color_index=0" + +# Explicity disable libtiff, fontconfig, +# freetype, cups for ghostscript-native +EXTRA_OECONF_class-native = "--without-x --with-system-libtiff=no \ + --without-jbig2dec \ + --with-fontpath=${datadir}/fonts \ + --without-libidn --disable-fontconfig \ + --disable-freetype --disable-cups" + +# This has been fixed upstream but for now we need to subvert the check for time.h +# http://bugs.ghostscript.com/show_bug.cgi?id=692443 +# http://bugs.ghostscript.com/show_bug.cgi?id=692426 +CFLAGS += "-DHAVE_SYS_TIME_H=1" +BUILD_CFLAGS += "-DHAVE_SYS_TIME_H=1" + +inherit autotools + +do_configure_prepend () { + mkdir -p obj + mkdir -p soobj + if [ -e ${WORKDIR}/objarch.h ]; then + cp ${WORKDIR}/objarch.h obj/arch.h + fi +} + +do_configure_append () { + # copy tools from the native ghostscript build + if [ "${PN}" != "ghostscript-native" ]; then + mkdir -p obj/aux soobj + for i in genarch genconf mkromfs echogs gendev genht packps; do + cp ${STAGING_BINDIR_NATIVE}/ghostscript-${PV}/$i obj/aux/$i + done + fi +} + +do_install_append () { + mkdir -p ${D}${datadir}/ghostscript/${PV}/ + cp -r ${S}/Resource ${D}${datadir}/ghostscript/${PV}/ + cp -r ${S}/iccprofiles ${D}${datadir}/ghostscript/${PV}/ +} + +do_compile_class-native () { + mkdir -p obj + for i in genarch genconf mkromfs echogs gendev genht packps; do + oe_runmake obj/aux/$i + done +} + +do_install_class-native () { + install -d ${D}${bindir}/ghostscript-${PV} + for i in genarch genconf mkromfs echogs gendev genht packps; do + install -m 755 obj/aux/$i ${D}${bindir}/ghostscript-${PV}/$i + done +} + +BBCLASSEXTEND = "native" + +# ghostscript does not supports "arc" +COMPATIBLE_HOST = "^(?!arc).*" + +# some entries in NVD uses gpl_ghostscript +CVE_PRODUCT = "ghostscript gpl_ghostscript" diff --git a/poky/meta/recipes-extended/groff/files/0001-fix-shebang-for-taget.patch b/poky/meta/recipes-extended/groff/files/0001-fix-shebang-for-taget.patch new file mode 100644 index 000000000..1b94e8a93 --- /dev/null +++ b/poky/meta/recipes-extended/groff/files/0001-fix-shebang-for-taget.patch @@ -0,0 +1,31 @@ +From 54c795c8a3c7356294007b5a4eed1dd47ed6411d Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Sat, 11 May 2019 19:19:27 +0800 +Subject: [PATCH] fix shebang for target + +... +|ERROR: groff-1.22.4-r0 do_package_qa: QA Issue: /usr/bin/gdiffmk contained in +package groff requires tmp-glibc/hosttools/bash, but no providers found in +RDEPENDS_groff? [file-rdeps] +... + +Upstream-Status: Inappropriate [oe-core specific] + +Signed-off-by: Hongxu Jia +--- + contrib/gdiffmk/gdiffmk.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/contrib/gdiffmk/gdiffmk.sh b/contrib/gdiffmk/gdiffmk.sh +index 5ce931e..10f2300 100644 +--- a/contrib/gdiffmk/gdiffmk.sh ++++ b/contrib/gdiffmk/gdiffmk.sh +@@ -1,4 +1,4 @@ +-#!@BASH_PROG@ ++#!/bin/sh + # Copyright (C) 2004-2018 Free Software Foundation, Inc. + # Written by Mike Bianchi > + # Thanks to Peter Bray for debugging. +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/groff/files/0001-replace-perl-w-with-use-warnings.patch b/poky/meta/recipes-extended/groff/files/0001-replace-perl-w-with-use-warnings.patch new file mode 100644 index 000000000..eda6a40f5 --- /dev/null +++ b/poky/meta/recipes-extended/groff/files/0001-replace-perl-w-with-use-warnings.patch @@ -0,0 +1,106 @@ +From 6821a23e6cf34df37c351b45be413a8da9115f9f Mon Sep 17 00:00:00 2001 +From: Robert Yang +Date: Sat, 11 May 2019 17:03:03 +0800 +Subject: [PATCH 1/2] replace "perl -w" with "use warnings" + +The shebang's max length is usually 128 as defined in +/usr/include/linux/binfmts.h: + #define BINPRM_BUF_SIZE 128 + +There would be errors when @PERL@ is longer than 128, use +'/usr/bin/env perl' can fix the problem, but '/usr/bin/env perl -w' +doesn't work: + +/usr/bin/env: perl -w: No such file or directory + +So replace "perl -w" with "use warnings" to make it work. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang + +Rebase to 1.22.4. + +Signed-off-by: Hongxu Jia +--- + font/devpdf/util/BuildFoundries.pl | 3 ++- + src/devices/gropdf/gropdf.pl | 3 ++- + src/devices/gropdf/pdfmom.pl | 3 ++- + src/utils/afmtodit/afmtodit.pl | 3 ++- + 4 files changed, 8 insertions(+), 4 deletions(-) + +diff --git a/font/devpdf/util/BuildFoundries.pl b/font/devpdf/util/BuildFoundries.pl +index f8af826..9584e28 100644 +--- a/font/devpdf/util/BuildFoundries.pl ++++ b/font/devpdf/util/BuildFoundries.pl +@@ -1,4 +1,4 @@ +-#!/usr/bin/perl -w ++#!/usr/bin/perl + # + # BuildFoundries : Given a Foundry file generate groff and download files + # Deri James : Monday 07 Feb 2011 +@@ -22,6 +22,7 @@ + # along with this program. If not, see . + + use strict; ++use warnings; + + (my $progname = $0) =~s @.*/@@; + my $where=shift||''; +diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl +index 2ec52d0..ce5a06f 100644 +--- a/src/devices/gropdf/gropdf.pl ++++ b/src/devices/gropdf/gropdf.pl +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!@PERL@ + # + # gropdf : PDF post processor for groff + # +@@ -21,6 +21,7 @@ + # along with this program. If not, see . + + use strict; ++use warnings; + use Getopt::Long qw(:config bundling); + + use constant +diff --git a/src/devices/gropdf/pdfmom.pl b/src/devices/gropdf/pdfmom.pl +index c9b08b2..61124f3 100644 +--- a/src/devices/gropdf/pdfmom.pl ++++ b/src/devices/gropdf/pdfmom.pl +@@ -1,4 +1,4 @@ +-#!@PERL@ -w ++#!@PERL@ + # + # pdfmom : Frontend to run groff -mom to produce PDFs + # Deri James : Friday 16 Mar 2012 +@@ -23,6 +23,7 @@ + # along with this program. If not, see . + + use strict; ++use warnings; + use File::Temp qw/tempfile/; + my @cmd; + my $dev='pdf'; +diff --git a/src/utils/afmtodit/afmtodit.pl b/src/utils/afmtodit/afmtodit.pl +index 954c58e..81a6c97 100644 +--- a/src/utils/afmtodit/afmtodit.pl ++++ b/src/utils/afmtodit/afmtodit.pl +@@ -1,4 +1,4 @@ +-#! /usr/bin/perl -w ++#! /usr/bin/perl + # -*- Perl -*- + # Copyright (C) 1989-2018 Free Software Foundation, Inc. + # Written by James Clark (jjc@jclark.com) +@@ -19,6 +19,7 @@ + # along with this program. If not, see . + + use strict; ++use warnings; + + @afmtodit.tables@ + +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/groff/files/0001-support-musl.patch b/poky/meta/recipes-extended/groff/files/0001-support-musl.patch new file mode 100644 index 000000000..a837b11b1 --- /dev/null +++ b/poky/meta/recipes-extended/groff/files/0001-support-musl.patch @@ -0,0 +1,41 @@ +From 695965c27be74acb5968f19d51af86065c4b71a9 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Mon, 13 May 2019 09:48:14 +0800 +Subject: [PATCH] support musl + +... +|./lib/math.h:2877:1: error: 'int signbit(float)' conflicts with a previous declaration +| _GL_MATH_CXX_REAL_FLOATING_DECL_2 (signbit) +| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +|In file included from recipe-sysroot/usr/include/c++/8.3.0/math.h:36, +| from ./lib/math.h:27, +| from ./src/include/driver.h:27, +| from src/devices/grodvi/dvi.cpp:20: +|recipe-sysroot/usr/include/c++/8.3.0/cmath:661:3: note: previous declaration 'constexpr bool std::signbit(float)' +| signbit(float __x) +| ^~~~~~~ +... + +Upstream-Status: Backport [http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commit;h=453ff940449bbbde9ec00f0bbf82a359c5598fc7] + +Signed-off-by: Hongxu Jia +--- + gnulib_m4/signbit.m4 | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/gnulib_m4/signbit.m4 b/gnulib_m4/signbit.m4 +index 9e7884d..8b9c70c 100644 +--- a/gnulib_m4/signbit.m4 ++++ b/gnulib_m4/signbit.m4 +@@ -31,6 +31,8 @@ AC_DEFUN([gl_SIGNBIT], + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu* | gnu*) gl_cv_func_signbit="guessing yes" ;; ++ # Guess yes on musl systems. ++ *-musl*) gl_cv_func_signbit="guessing yes" ;; + # Guess yes on native Windows. + mingw*) gl_cv_func_signbit="guessing yes" ;; + # If we don't know, assume the worst. +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch b/poky/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch new file mode 100644 index 000000000..c80a2a5c3 --- /dev/null +++ b/poky/meta/recipes-extended/groff/files/groff-not-search-fonts-on-build-host.patch @@ -0,0 +1,32 @@ +From 75761ae7adc88412de4379d1cf5484b055cd5f18 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Sat, 11 May 2019 17:06:29 +0800 +Subject: [PATCH 2/2] groff searchs fonts which are provided by ghostscript on + build host. It causes non-determinism issue. So not search font dirs on host. + +Upstream-Status: Inappropriate [cross build specific] + +Signed-off-by: Kai Kang + +Rebase to 1.22.4 +Signed-off-by: Hongxu Jia +--- + font/devpdf/Foundry.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in +index 93e9b66..235b23b 100644 +--- a/font/devpdf/Foundry.in ++++ b/font/devpdf/Foundry.in +@@ -65,7 +65,7 @@ ZD|Y||||Dingbats!d050000l.pfb + #====================================================================== + + #Foundry|Name|Searchpath +-foundry|U|(gs):@urwfontsdir@ :/usr/share/fonts/type1/gsfonts :/opt/local/share/fonts/urw-fonts # the URW fonts delivered with ghostscript (may be different) ++foundry|U|(gs) # the URW fonts delivered with ghostscript (may be different) + #Define Flags for afmtodit + + r=-i 0 -m +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch b/poky/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch deleted file mode 100644 index b61b43281..000000000 --- a/poky/meta/recipes-extended/groff/groff-1.22.3/0001-Unset-need_charset_alias-when-building-for-musl.patch +++ /dev/null @@ -1,30 +0,0 @@ -From b9565dc2fe0c4f7daaec91b7e83bc7313dee2f4a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 13 Apr 2015 17:02:13 -0700 -Subject: [PATCH] Unset need_charset_alias when building for musl - -localcharset uses ac_cv_gnu_library_2_1 from glibc21.m4 -which actually shoudl be fixed in gnulib and then all downstream -projects will get it eventually. For now we apply the fix to -coreutils - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - lib/gnulib.mk | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: groff-1.22.3/src/libs/gnulib/lib/Makefile.am -=================================================================== ---- groff-1.22.3.orig/src/libs/gnulib/lib/Makefile.am -+++ groff-1.22.3/src/libs/gnulib/lib/Makefile.am -@@ -113,7 +113,7 @@ install-exec-localcharset: all-local - case '$(host_os)' in \ - darwin[56]*) \ - need_charset_alias=true ;; \ -- darwin* | cygwin* | mingw* | pw32* | cegcc*) \ -+ darwin* | cygwin* | mingw* | pw32* | cegcc* | linux-musl*) \ - need_charset_alias=false ;; \ - *) \ - need_charset_alias=true ;; \ diff --git a/poky/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch b/poky/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch deleted file mode 100644 index f1db5b065..000000000 --- a/poky/meta/recipes-extended/groff/groff-1.22.3/0001-replace-perl-w-with-use-warnings.patch +++ /dev/null @@ -1,102 +0,0 @@ -From 5b574542070db286c89b3827e8f15ed4b3b39034 Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Thu, 6 Apr 2017 01:46:00 -0700 -Subject: [PATCH] replace "perl -w" with "use warnings" - -The shebang's max length is usually 128 as defined in -/usr/include/linux/binfmts.h: - #define BINPRM_BUF_SIZE 128 - -There would be errors when @PERL@ is longer than 128, use -'/usr/bin/env perl' can fix the problem, but '/usr/bin/env perl -w' -doesn't work: - -/usr/bin/env: perl -w: No such file or directory - -So replace "perl -w" with "use warnings" to make it work. - -Upstream-Status: Pending - -Signed-off-by: Robert Yang ---- - font/devpdf/util/BuildFoundries.pl | 3 ++- - src/devices/gropdf/gropdf.pl | 3 ++- - src/devices/gropdf/pdfmom.pl | 3 ++- - src/utils/afmtodit/afmtodit.pl | 3 ++- - 4 files changed, 8 insertions(+), 4 deletions(-) - -diff --git a/font/devpdf/util/BuildFoundries.pl b/font/devpdf/util/BuildFoundries.pl -index 39f2f0d..a2bfd8e 100644 ---- a/font/devpdf/util/BuildFoundries.pl -+++ b/font/devpdf/util/BuildFoundries.pl -@@ -1,4 +1,4 @@ --#!/usr/bin/perl -w -+#!/usr/bin/perl - # - # BuildFoundries : Given a Foundry file generate groff and download files - # Deri James : Monday 07 Feb 2011 -@@ -22,6 +22,7 @@ - # along with this program. If not, see . - - use strict; -+use warnings; - - my $where=shift||''; - my $devps=shift||'../devps'; -diff --git a/src/devices/gropdf/gropdf.pl b/src/devices/gropdf/gropdf.pl -index 035d123..b933b32 100644 ---- a/src/devices/gropdf/gropdf.pl -+++ b/src/devices/gropdf/gropdf.pl -@@ -1,4 +1,4 @@ --#!@PERL@ -w -+#!@PERL@ - # - # gropdf : PDF post processor for groff - # -@@ -21,6 +21,7 @@ - # along with this program. If not, see . - - use strict; -+use warnings; - use Getopt::Long qw(:config bundling); - use Compress::Zlib; - -diff --git a/src/devices/gropdf/pdfmom.pl b/src/devices/gropdf/pdfmom.pl -index beec820..4b46ea4 100644 ---- a/src/devices/gropdf/pdfmom.pl -+++ b/src/devices/gropdf/pdfmom.pl -@@ -1,4 +1,4 @@ --#!@PERL@ -w -+#!@PERL@ - # - # pdfmom : Frontend to run groff -mom to produce PDFs - # Deri James : Friday 16 Mar 2012 -@@ -24,6 +24,7 @@ - # along with this program. If not, see . - - use strict; -+use warnings; - use File::Temp qw/tempfile/; - my @cmd; - my $dev='pdf'; -diff --git a/src/utils/afmtodit/afmtodit.pl b/src/utils/afmtodit/afmtodit.pl -index 4f2ce83..5c078ff 100644 ---- a/src/utils/afmtodit/afmtodit.pl -+++ b/src/utils/afmtodit/afmtodit.pl -@@ -1,4 +1,4 @@ --#! /usr/bin/perl -w -+#! /usr/bin/perl - # -*- Perl -*- - # Copyright (C) 1989-2014 Free Software Foundation, Inc. - # Written by James Clark (jjc@jclark.com) -@@ -19,6 +19,7 @@ - # along with this program. If not, see . - - use strict; -+use warnings; - - @afmtodit.tables@ - --- -2.10.2 - diff --git a/poky/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch b/poky/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch deleted file mode 100644 index c73328a18..000000000 --- a/poky/meta/recipes-extended/groff/groff-1.22.3/groff-1.22.2-correct-man.local-install-path.patch +++ /dev/null @@ -1,34 +0,0 @@ -Correct the install path of man.local to fix following error: - /yocto/build/tmp/sysroots/x86_64-linux/usr/share/groff/1.22.2/tmac/an-old.tmac:690: warning: can't find macro file `man.local' - -Signed-off-by: Zhenhua Luo -Upstream-Status: Pending - -diff --git a/tmac/Makefile.sub b/tmac/Makefile.sub -index 1506232..f1468c5 100644 ---- a/tmac/Makefile.sub -+++ b/tmac/Makefile.sub -@@ -121,9 +121,9 @@ install_data: $(NORMALFILES) $(SPECIALFILES) man.local \ - $(RM) $(DESTDIR)$(mdocdir)/$$f; \ - $(INSTALL_DATA) $$f-s $(DESTDIR)$(mdocdir)/$$f; \ - done -- -test -f $(DESTDIR)$(localtmacdir)/man.local \ -+ -test -f $(DESTDIR)$(tmacdir)/man.local \ - || $(INSTALL_DATA) $(srcdir)/man.local \ -- $(DESTDIR)$(localtmacdir)/man.local -+ $(DESTDIR)$(tmacdir)/man.local - -test -f $(DESTDIR)$(localtmacdir)/mdoc.local \ - || $(INSTALL_DATA) mdoc.local-s $(DESTDIR)$(localtmacdir)/mdoc.local - -@@ -164,9 +164,9 @@ uninstall_sub: - $(RM) $(DESTDIR)$(tmacdir)/$(tmac_s_prefix)s.tmac - $(RM) $(DESTDIR)$(tmacdir)/$(tmac_an_prefix)an.tmac - $(RM) $(DESTDIR)$(tmacdir)/www.tmac -- -if cmp -s $(DESTDIR)$(localtmacdir)/man.local \ -+ -if cmp -s $(DESTDIR)$(tmacdir)/man.local \ - $(srcdir)/man.local; then \ -- $(RM) $(DESTDIR)$(localtmacdir)/man.local; \ -+ $(RM) $(DESTDIR)$(tmacdir)/man.local; \ - fi - -if cmp -s $(DESTDIR)$(localtmacdir)/mdoc.local \ - $(srcdir)/mdoc.local; then \ diff --git a/poky/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch b/poky/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch deleted file mode 100644 index ff8f32059..000000000 --- a/poky/meta/recipes-extended/groff/groff-1.22.3/groff-not-search-fonts-on-build-host.patch +++ /dev/null @@ -1,20 +0,0 @@ -groff searchs fonts which are provided by ghostscript on build host. -It causes non-determinism issue. So not search font dirs on host. - -Upstream-Status: Inappropriate [cross build specific] - -Signed-off-by: Kai Kang - -diff --git a/font/devpdf/Foundry.in b/font/devpdf/Foundry.in -index a6e968f..8094642 100644 ---- a/font/devpdf/Foundry.in -+++ b/font/devpdf/Foundry.in -@@ -65,7 +65,7 @@ ZD|Y||||Dingbats!d050000l.pfb - #====================================================================== - - #Foundry|Name|Searchpath --foundry|U|(gs):/usr/share/fonts/type1/gsfonts :/opt/local/share/fonts/urw-fonts # the URW fonts delivered with ghostscript (may be different) -+foundry|U|(gs) # the URW fonts delivered with ghostscript (may be different) - #Define Flags for afmtodit - - r=-i 0 -m diff --git a/poky/meta/recipes-extended/groff/groff_1.22.3.bb b/poky/meta/recipes-extended/groff/groff_1.22.3.bb deleted file mode 100644 index ba90cadd8..000000000 --- a/poky/meta/recipes-extended/groff/groff_1.22.3.bb +++ /dev/null @@ -1,87 +0,0 @@ -SUMMARY = "GNU Troff software" -DESCRIPTION = "The groff (GNU troff) software is a typesetting package which reads plain text mixed with \ -formatting commands and produces formatted output." -SECTION = "base" -HOMEPAGE = "http://www.gnu.org/software/groff/" -LICENSE = "GPLv3" - -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ - file://groff-1.22.2-correct-man.local-install-path.patch \ - file://0001-Unset-need_charset_alias-when-building-for-musl.patch \ - file://0001-replace-perl-w-with-use-warnings.patch \ - file://groff-not-search-fonts-on-build-host.patch \ -" - -SRC_URI[md5sum] = "cc825fa64bc7306a885f2fb2268d3ec5" -SRC_URI[sha256sum] = "3a48a9d6c97750bfbd535feeb5be0111db6406ddb7bb79fc680809cda6d828a5" - -DEPENDS = "groff-native" -DEPENDS_class-native = "" -RDEPENDS_${PN} += "perl sed" - -inherit autotools texinfo multilib_script - -MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/groffer ${PN}:${bindir}/grog" - -EXTRA_OECONF = "--without-x" -PARALLEL_MAKE = "" - -CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" - -do_configure_prepend() { - if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then - sed -i \ - -e '/^GROFFBIN=/s:=.*:=${STAGING_BINDIR_NATIVE}/groff:' \ - -e '/^TROFFBIN=/s:=.*:=${STAGING_BINDIR_NATIVE}/troff:' \ - -e '/^GROFF_BIN_PATH=/s:=.*:=${STAGING_BINDIR_NATIVE}:' \ - -e '/^GROFF_BIN_DIR=/s:=.*:=${STAGING_BINDIR_NATIVE}:' \ - ${S}/contrib/*/Makefile.sub \ - ${S}/doc/Makefile.in \ - ${S}/doc/Makefile.sub - fi -} - -do_configure_append() { - # generate gnulib configure script - olddir=`pwd` - cd ${S}/src/libs/gnulib/ - ACLOCAL="$ACLOCAL" autoreconf -Wcross --verbose --install --force ${EXTRA_AUTORECONF} $acpaths || die "autoreconf execution failed." - cd ${olddir} -} - -do_install_append() { - # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location - # for target as /usr/bin/perl, so fix it to /usr/bin/perl. - for i in afmtodit mmroff gropdf pdfmom grog; do - if [ -f ${D}${bindir}/$i ]; then - sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/$i - fi - done - if [ -e ${D}${libdir}/charset.alias ]; then - rm -rf ${D}${libdir}/charset.alias - fi - - # awk is located at /usr/bin/, not /bin/ - SPECIAL_AWK=`find ${D} -name special.awk` - if [ -f ${SPECIAL_AWK} ]; then - sed -i -e 's:#!.*awk:#! ${USRBINPATH}/awk:' ${SPECIAL_AWK} - fi - - # not ship /usr/bin/glilypond and its releated files in embedded target system - rm -rf ${D}${bindir}/glilypond - rm -rf ${D}${libdir}/groff/glilypond - rm -rf ${D}${mandir}/man1/glilypond* -} - -do_install_append_class-native() { - create_cmdline_wrapper ${D}/${bindir}/groff \ - -F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \ - -M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac -} - -FILES_${PN} += "${libdir}/${BPN}/site-tmac \ - ${libdir}/${BPN}/groffer/" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/groff/groff_1.22.4.bb b/poky/meta/recipes-extended/groff/groff_1.22.4.bb new file mode 100644 index 000000000..37eee9a6c --- /dev/null +++ b/poky/meta/recipes-extended/groff/groff_1.22.4.bb @@ -0,0 +1,65 @@ +SUMMARY = "GNU Troff software" +DESCRIPTION = "The groff (GNU troff) software is a typesetting package which reads plain text mixed with \ +formatting commands and produces formatted output." +SECTION = "base" +HOMEPAGE = "http://www.gnu.org/software/groff/" +LICENSE = "GPLv3" + +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "${GNU_MIRROR}/groff/groff-${PV}.tar.gz \ + file://0001-replace-perl-w-with-use-warnings.patch \ + file://groff-not-search-fonts-on-build-host.patch \ + file://0001-fix-shebang-for-taget.patch \ + file://0001-support-musl.patch \ +" + +SRC_URI[md5sum] = "08fb04335e2f5e73f23ea4c3adbf0c5f" +SRC_URI[sha256sum] = "e78e7b4cb7dec310849004fa88847c44701e8d133b5d4c13057d876c1bad0293" + +DEPENDS = "bison-native" +RDEPENDS_${PN} += "perl sed" + +inherit autotools-brokensep texinfo multilib_script pkgconfig + +MULTILIB_SCRIPTS = "${PN}:${bindir}/gpinyin ${PN}:${bindir}/groffer ${PN}:${bindir}/grog" + +EXTRA_OECONF = "--without-x --without-doc" +PARALLEL_MAKE = "" + +CACHED_CONFIGUREVARS += "ac_cv_path_PERL='/usr/bin/env perl'" + +do_install_append() { + # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location + # for target as /usr/bin/perl, so fix it to /usr/bin/perl. + for i in afmtodit mmroff gropdf pdfmom grog; do + if [ -f ${D}${bindir}/$i ]; then + sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/$i + fi + done + if [ -e ${D}${libdir}/charset.alias ]; then + rm -rf ${D}${libdir}/charset.alias + fi + + # awk is located at /usr/bin/, not /bin/ + SPECIAL_AWK=`find ${D} -name special.awk` + if [ -f ${SPECIAL_AWK} ]; then + sed -i -e 's:#!.*awk:#! ${USRBINPATH}/awk:' ${SPECIAL_AWK} + fi + + # not ship /usr/bin/glilypond and its releated files in embedded target system + rm -rf ${D}${bindir}/glilypond + rm -rf ${D}${libdir}/groff/glilypond + rm -rf ${D}${mandir}/man1/glilypond* +} + +do_install_append_class-native() { + create_cmdline_wrapper ${D}/${bindir}/groff \ + -F${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/font \ + -M${STAGING_DIR_NATIVE}${datadir_native}/groff/${PV}/tmac +} + +FILES_${PN} += "${libdir}/${BPN}/site-tmac \ + ${libdir}/${BPN}/groffer/" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/iptables/iptables/0003-extensions-format-security-fixes-in-libipt_icmp.patch b/poky/meta/recipes-extended/iptables/iptables/0003-extensions-format-security-fixes-in-libipt_icmp.patch new file mode 100644 index 000000000..e26594d19 --- /dev/null +++ b/poky/meta/recipes-extended/iptables/iptables/0003-extensions-format-security-fixes-in-libipt_icmp.patch @@ -0,0 +1,61 @@ +From 907e429d7548157016cd51aba4adc5d0c7d9f816 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Adam=20Go=C5=82=C4=99biowski?= +Date: Wed, 14 Nov 2018 07:35:28 +0100 +Subject: extensions: format-security fixes in libip[6]t_icmp +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +commit 61d6c3834de3 ("xtables: add 'printf' attribute to xlate_add") +introduced support for gcc feature to check format string against passed +argument. This commit adds missing bits to extenstions's libipt_icmp.c +and libip6t_icmp6.c that were causing build to fail. + +Fixes: 61d6c3834de3 ("xtables: add 'printf' attribute to xlate_add") +Signed-off-by: Adam Gołębiowski +Signed-off-by: Pablo Neira Ayuso + +Upstream-Status: Backport +--- + extensions/libip6t_icmp6.c | 4 ++-- + extensions/libipt_icmp.c | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/extensions/libip6t_icmp6.c b/extensions/libip6t_icmp6.c +index 45a71875..cc7bfaeb 100644 +--- a/extensions/libip6t_icmp6.c ++++ b/extensions/libip6t_icmp6.c +@@ -230,7 +230,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, + type_name = icmp6_type_xlate(icmptype); + + if (type_name) { +- xt_xlate_add(xl, type_name); ++ xt_xlate_add(xl, "%s", type_name); + } else { + for (i = 0; i < ARRAY_SIZE(icmpv6_codes); ++i) + if (icmpv6_codes[i].type == icmptype && +@@ -239,7 +239,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, + break; + + if (i != ARRAY_SIZE(icmpv6_codes)) +- xt_xlate_add(xl, icmpv6_codes[i].name); ++ xt_xlate_add(xl, "%s", icmpv6_codes[i].name); + else + return 0; + } +diff --git a/extensions/libipt_icmp.c b/extensions/libipt_icmp.c +index 54189976..e76257c5 100644 +--- a/extensions/libipt_icmp.c ++++ b/extensions/libipt_icmp.c +@@ -236,7 +236,7 @@ static unsigned int type_xlate_print(struct xt_xlate *xl, unsigned int icmptype, + if (icmp_codes[i].type == icmptype && + icmp_codes[i].code_min == code_min && + icmp_codes[i].code_max == code_max) { +- xt_xlate_add(xl, icmp_codes[i].name); ++ xt_xlate_add(xl, "%s", icmp_codes[i].name); + return 1; + } + } +-- +cgit v1.2.1 + diff --git a/poky/meta/recipes-extended/iptables/iptables_1.6.2.bb b/poky/meta/recipes-extended/iptables/iptables_1.6.2.bb deleted file mode 100644 index a57cac34e..000000000 --- a/poky/meta/recipes-extended/iptables/iptables_1.6.2.bb +++ /dev/null @@ -1,64 +0,0 @@ -SUMMARY = "Tools for managing kernel packet filtering capabilities" -DESCRIPTION = "iptables is the userspace command line program used to configure and control network packet \ -filtering code in Linux." -HOMEPAGE = "http://www.netfilter.org/" -BUGTRACKER = "http://bugzilla.netfilter.org/" -LICENSE = "GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263\ - file://iptables/iptables.c;beginline=13;endline=25;md5=c5cffd09974558cf27d0f763df2a12dc" - -SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \ - file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \ - file://0002-configure.ac-only-check-conntrack-when-libnfnetlink-enabled.patch \ -" - -SRC_URI[md5sum] = "7d2b7847e4aa8832a18437b8a4c1873d" -SRC_URI[sha256sum] = "55d02dfa46263343a401f297d44190f2a3e5113c8933946f094ed40237053733" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR}" - -PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" - -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," - -# libnfnetlink recipe is in meta-networking layer -PACKAGECONFIG[libnfnetlink] = "--enable-libnfnetlink,--disable-libnfnetlink,libnfnetlink libnetfilter-conntrack" - -# libnftnl recipe is in meta-networking layer(previously known as libnftables) -PACKAGECONFIG[libnftnl] = "--enable-nftables,--disable-nftables,libnftnl" - -do_configure_prepend() { - # Remove some libtool m4 files - # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive. - rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 -} - -PACKAGES += "${PN}-modules" -PACKAGES_DYNAMIC += "^${PN}-module-.*" - -python populate_packages_prepend() { - modules = do_split_packages(d, '${libdir}/xtables', r'lib(.*)\.so$', '${PN}-module-%s', '${PN} module %s', extra_depends='') - if modules: - metapkg = d.getVar('PN') + '-modules' - d.appendVar('RDEPENDS_' + metapkg, ' ' + ' '.join(modules)) -} - -FILES_${PN} += "${datadir}/xtables" - -ALLOW_EMPTY_${PN}-modules = "1" - -RDEPENDS_${PN} = "${PN}-module-xt-standard" -RRECOMMENDS_${PN} = " \ - ${PN}-modules \ - kernel-module-x-tables \ - kernel-module-ip-tables \ - kernel-module-iptable-filter \ - kernel-module-iptable-nat \ - kernel-module-nf-defrag-ipv4 \ - kernel-module-nf-conntrack \ - kernel-module-nf-conntrack-ipv4 \ - kernel-module-nf-nat \ - kernel-module-ipt-masquerade \ -" diff --git a/poky/meta/recipes-extended/iptables/iptables_1.8.2.bb b/poky/meta/recipes-extended/iptables/iptables_1.8.2.bb new file mode 100644 index 000000000..ad2c1a6f8 --- /dev/null +++ b/poky/meta/recipes-extended/iptables/iptables_1.8.2.bb @@ -0,0 +1,65 @@ +SUMMARY = "Tools for managing kernel packet filtering capabilities" +DESCRIPTION = "iptables is the userspace command line program used to configure and control network packet \ +filtering code in Linux." +HOMEPAGE = "http://www.netfilter.org/" +BUGTRACKER = "http://bugzilla.netfilter.org/" +LICENSE = "GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263\ + file://iptables/iptables.c;beginline=13;endline=25;md5=c5cffd09974558cf27d0f763df2a12dc" + +SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \ + file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \ + file://0002-configure.ac-only-check-conntrack-when-libnfnetlink-enabled.patch \ + file://0003-extensions-format-security-fixes-in-libipt_icmp.patch \ +" + +SRC_URI[md5sum] = "944558e88ddcc3b9b0d9550070fa3599" +SRC_URI[sha256sum] = "a3778b50ed1a3256f9ca975de82c2204e508001fc2471238c8c97f3d1c4c12af" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR}" + +PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" + +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," + +# libnfnetlink recipe is in meta-networking layer +PACKAGECONFIG[libnfnetlink] = "--enable-libnfnetlink,--disable-libnfnetlink,libnfnetlink libnetfilter-conntrack" + +# libnftnl recipe is in meta-networking layer(previously known as libnftables) +PACKAGECONFIG[libnftnl] = "--enable-nftables,--disable-nftables,libnftnl" + +do_configure_prepend() { + # Remove some libtool m4 files + # Keep ax_check_linker_flags.m4 which belongs to autoconf-archive. + rm -f libtool.m4 lt~obsolete.m4 ltoptions.m4 ltsugar.m4 ltversion.m4 +} + +PACKAGES += "${PN}-modules" +PACKAGES_DYNAMIC += "^${PN}-module-.*" + +python populate_packages_prepend() { + modules = do_split_packages(d, '${libdir}/xtables', r'lib(.*)\.so$', '${PN}-module-%s', '${PN} module %s', extra_depends='') + if modules: + metapkg = d.getVar('PN') + '-modules' + d.appendVar('RDEPENDS_' + metapkg, ' ' + ' '.join(modules)) +} + +FILES_${PN} += "${datadir}/xtables" + +ALLOW_EMPTY_${PN}-modules = "1" + +RDEPENDS_${PN} = "${PN}-module-xt-standard" +RRECOMMENDS_${PN} = " \ + ${PN}-modules \ + kernel-module-x-tables \ + kernel-module-ip-tables \ + kernel-module-iptable-filter \ + kernel-module-iptable-nat \ + kernel-module-nf-defrag-ipv4 \ + kernel-module-nf-conntrack \ + kernel-module-nf-conntrack-ipv4 \ + kernel-module-nf-nat \ + kernel-module-ipt-masquerade \ +" diff --git a/poky/meta/recipes-extended/libsolv/libsolv/0001-solver_solve-only-disfavor-recommends-if-there-are-a.patch b/poky/meta/recipes-extended/libsolv/libsolv/0001-solver_solve-only-disfavor-recommends-if-there-are-a.patch deleted file mode 100644 index 139613a0a..000000000 --- a/poky/meta/recipes-extended/libsolv/libsolv/0001-solver_solve-only-disfavor-recommends-if-there-are-a.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 19d7cc87adba92d31d5fafdf7db00920d24a96a6 Mon Sep 17 00:00:00 2001 -From: Alejandro del Castillo -Date: Wed, 6 Feb 2019 13:24:04 -0600 -Subject: [PATCH] solver_solve: only disfavor recommends if there are any - -In a repo that have pkg 'a' and 'b' available, and 'b' is disfavored, -but 'a' doesn't recommend 'b', libsolv segfaults on -solver_addrecommendsrules, since solv->recommendsruleq is null. Only -call solver_addrecommendsrules if there are recommends rules. - -Signed-off-by: Alejandro del Castillo - -Upstream-Status: Accepted ---- - src/solver.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/solver.c b/src/solver.c -index a80090d19..ad78327a8 100644 ---- a/src/solver.c -+++ b/src/solver.c -@@ -3920,7 +3920,7 @@ solver_solve(Solver *solv, Queue *job) - else - solv->yumobsrules = solv->yumobsrules_end = solv->nrules; - -- if (solv->havedisfavored && solv->strongrecommends) -+ if (solv->havedisfavored && solv->strongrecommends && solv->recommendsruleq) - solver_addrecommendsrules(solv); - else - solv->recommendsrules = solv->recommendsrules_end = solv->nrules; --- -2.20.1 - diff --git a/poky/meta/recipes-extended/libsolv/libsolv_0.7.3.bb b/poky/meta/recipes-extended/libsolv/libsolv_0.7.3.bb deleted file mode 100644 index 70c8dbc2e..000000000 --- a/poky/meta/recipes-extended/libsolv/libsolv_0.7.3.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "Library for solving packages and reading repositories" -HOMEPAGE = "https://github.com/openSUSE/libsolv" -BUGTRACKER = "https://github.com/openSUSE/libsolv/issues" -SECTION = "devel" -LICENSE = "BSD-3-Clause" -LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8" - -DEPENDS = "expat zlib" - -SRC_URI = "git://github.com/openSUSE/libsolv.git \ - file://0001-solver_solve-only-disfavor-recommends-if-there-are-a.patch \ - file://0001-build-use-GNUInstallDirs.patch \ -" - -SRCREV = "dc7d0f1c3113f2c8217563166906bef3eb5d1ee1" -UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" - -S = "${WORKDIR}/git" - -inherit cmake - -PACKAGECONFIG ??= "rpm" -PACKAGECONFIG[rpm] = "-DENABLE_RPMMD=ON -DENABLE_RPMDB=ON,,rpm" - -EXTRA_OECMAKE = "-DMULTI_SEMANTICS=ON -DENABLE_COMPLEX_DEPS=ON" - -PACKAGES =+ "${PN}-tools ${PN}ext" - -FILES_${PN}-tools = "${bindir}/*" -FILES_${PN}ext = "${libdir}/${PN}ext.so.*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/libsolv/libsolv_0.7.4.bb b/poky/meta/recipes-extended/libsolv/libsolv_0.7.4.bb new file mode 100644 index 000000000..b8653adc0 --- /dev/null +++ b/poky/meta/recipes-extended/libsolv/libsolv_0.7.4.bb @@ -0,0 +1,32 @@ +SUMMARY = "Library for solving packages and reading repositories" +HOMEPAGE = "https://github.com/openSUSE/libsolv" +BUGTRACKER = "https://github.com/openSUSE/libsolv/issues" +SECTION = "devel" +LICENSE = "BSD-3-Clause" +LIC_FILES_CHKSUM = "file://LICENSE.BSD;md5=62272bd11c97396d4aaf1c41bc11f7d8" + +DEPENDS = "expat zlib" + +SRC_URI = "git://github.com/openSUSE/libsolv.git \ + file://0001-build-use-GNUInstallDirs.patch \ +" + +SRCREV = "51fc3b1214aa9677e972712fa1ce6916e438751f" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P\d+(\.\d+)+)" + +S = "${WORKDIR}/git" + +inherit cmake + +PACKAGECONFIG ??= "rpm" +PACKAGECONFIG[rpm] = "-DENABLE_RPMMD=ON -DENABLE_RPMDB=ON,,rpm" + +EXTRA_OECMAKE = "-DMULTI_SEMANTICS=ON -DENABLE_COMPLEX_DEPS=ON" + +PACKAGES =+ "${PN}-tools ${PN}ext" + +FILES_${PN}-tools = "${bindir}/*" +FILES_${PN}ext = "${libdir}/${PN}ext.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch b/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch deleted file mode 100644 index 6d40d3cce..000000000 --- a/poky/meta/recipes-extended/libtirpc/libtirpc/libtirpc-1.0.4-rc1.patch +++ /dev/null @@ -1,103 +0,0 @@ -Patch from Fedora https://src.fedoraproject.org/rpms/libtirpc/raw/master/f/libtirpc-1.0.4-rc1.patch - -Upstream-Status: Backport -Signed-off-by: Khem Raj - -diff --git a/src/clnt_generic.c b/src/clnt_generic.c -index e5a314f..3f3dabf 100644 ---- a/src/clnt_generic.c -+++ b/src/clnt_generic.c -@@ -47,7 +47,6 @@ - - extern bool_t __rpc_is_local_host(const char *); - int __rpc_raise_fd(int); --extern int __binddynport(int fd); - - #ifndef NETIDLEN - #define NETIDLEN 32 -@@ -341,8 +340,7 @@ clnt_tli_create(int fd, const struct netconfig *nconf, - servtype = nconf->nc_semantics; - if (!__rpc_fd2sockinfo(fd, &si)) - goto err; -- if (__binddynport(fd) == -1) -- goto err; -+ bindresvport(fd, NULL); - } else { - if (!__rpc_fd2sockinfo(fd, &si)) - goto err; -diff --git a/src/rpc_soc.c b/src/rpc_soc.c -index af6c482..5a6eeb7 100644 ---- a/src/rpc_soc.c -+++ b/src/rpc_soc.c -@@ -67,8 +67,6 @@ - - extern mutex_t rpcsoc_lock; - --extern int __binddynport(int fd); -- - static CLIENT *clnt_com_create(struct sockaddr_in *, rpcprog_t, rpcvers_t, - int *, u_int, u_int, char *, int); - static SVCXPRT *svc_com_create(int, u_int, u_int, char *); -@@ -147,8 +145,7 @@ clnt_com_create(raddr, prog, vers, sockp, sendsz, recvsz, tp, flags) - bindaddr.maxlen = bindaddr.len = sizeof (struct sockaddr_in); - bindaddr.buf = raddr; - -- if (__binddynport(fd) == -1) -- goto err; -+ bindresvport(fd, NULL); - cl = clnt_tli_create(fd, nconf, &bindaddr, prog, vers, - sendsz, recvsz); - if (cl) { -diff --git a/src/rpcb_clnt.c b/src/rpcb_clnt.c -index a94fc73..4b44364 100644 ---- a/src/rpcb_clnt.c -+++ b/src/rpcb_clnt.c -@@ -752,7 +752,7 @@ __try_protocol_version_2(program, version, nconf, host, tp) - - client = getpmaphandle(nconf, host, &parms.r_addr); - if (client == NULL) -- return (NULL); -+ goto error; - - /* - * Set retry timeout. -@@ -771,11 +771,11 @@ __try_protocol_version_2(program, version, nconf, host, tp) - if (clnt_st != RPC_SUCCESS) { - rpc_createerr.cf_stat = RPC_PMAPFAILURE; - clnt_geterr(client, &rpc_createerr.cf_error); -- return (NULL); -+ goto error; - } else if (port == 0) { - pmapaddress = NULL; - rpc_createerr.cf_stat = RPC_PROGNOTREGISTERED; -- return (NULL); -+ goto error; - } - port = htons(port); - CLNT_CONTROL(client, CLGET_SVC_ADDR, (char *)&remote); -@@ -789,14 +789,24 @@ __try_protocol_version_2(program, version, nconf, host, tp) - free(pmapaddress); - pmapaddress = NULL; - } -- return (NULL); -+ goto error; - } - memcpy(pmapaddress->buf, remote.buf, remote.len); - memcpy(&((char *)pmapaddress->buf)[sizeof (short)], - (char *)(void *)&port, sizeof (short)); - pmapaddress->len = pmapaddress->maxlen = remote.len; - -+ CLNT_DESTROY(client); - return pmapaddress; -+ -+error: -+ if (client) { -+ CLNT_DESTROY(client); -+ client = NULL; -+ -+ } -+ return (NULL); -+ - } - #endif - diff --git a/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb b/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb deleted file mode 100644 index f978c8c8a..000000000 --- a/poky/meta/recipes-extended/libtirpc/libtirpc_1.0.3.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Transport-Independent RPC library" -DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" -SECTION = "libs/network" -HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" -LICENSE = "BSD" -LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ - file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" - -PROVIDES = "virtual/librpc" - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ - file://libtirpc-1.0.4-rc1.patch \ - file://musl.patch \ - " -UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/libtirpc/files/libtirpc/" -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)/" -SRC_URI[md5sum] = "f8403a10695348854e71d525c4db5931" -SRC_URI[sha256sum] = "86c3a78fc1bddefa96111dd233124c703b22a78884203c55c3e06b3be6a0fd5e" - -inherit autotools pkgconfig - -EXTRA_OECONF = "--disable-gssapi" - -do_install_append() { - chown root:root ${D}${sysconfdir}/netconfig -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb b/poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb new file mode 100644 index 000000000..9c480b825 --- /dev/null +++ b/poky/meta/recipes-extended/libtirpc/libtirpc_1.1.4.bb @@ -0,0 +1,28 @@ +SUMMARY = "Transport-Independent RPC library" +DESCRIPTION = "Libtirpc is a port of Suns Transport-Independent RPC library to Linux" +SECTION = "libs/network" +HOMEPAGE = "http://sourceforge.net/projects/libtirpc/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=183075&atid=903784" +LICENSE = "BSD" +LIC_FILES_CHKSUM = "file://COPYING;md5=f835cce8852481e4b2bbbdd23b5e47f3 \ + file://src/netname.c;beginline=1;endline=27;md5=f8a8cd2cb25ac5aa16767364fb0e3c24" + +PROVIDES = "virtual/librpc" + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ + file://musl.patch \ + " +UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/libtirpc/files/libtirpc/" +UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)/" +SRC_URI[md5sum] = "f5d2a623e9dfbd818d2f3f3a4a878e3a" +SRC_URI[sha256sum] = "2ca529f02292e10c158562295a1ffd95d2ce8af97820e3534fe1b0e3aec7561d" + +inherit autotools pkgconfig + +EXTRA_OECONF = "--disable-gssapi" + +do_install_append() { + chown root:root ${D}${sysconfdir}/netconfig +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-setrlimit03.c-read-proc-sys-fs-nr_open-for-.patch b/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-setrlimit03.c-read-proc-sys-fs-nr_open-for-.patch new file mode 100644 index 000000000..39623c37d --- /dev/null +++ b/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-setrlimit03.c-read-proc-sys-fs-nr_open-for-.patch @@ -0,0 +1,70 @@ +From db57ddc1497e72947da2b14f471ab521478ef99d Mon Sep 17 00:00:00 2001 +From: Tommi Rantala +Date: Thu, 31 Jan 2019 19:49:00 +0200 +Subject: [PATCH] syscalls/setrlimit03.c: read /proc/sys/fs/nr_open for + RLIMIT_NOFILE limit + +Since kernel v2.6.25 RLIMIT_NOFILE limit is no longer hardcoded to +NR_OPEN, but can be set via /proc/sys/fs/nr_open, see kernel commit +9cfe015aa424b3c003baba3841a60dd9b5ad319b ("get rid of NR_OPEN and +introduce a sysctl_nr_open"). + +nr_open default value is 1024*1024, so setrlimit03 has been passing fine +on new kernels, only "unexpectedly succeeding" if nr_open is set to some +larger value. + +Signed-off-by: Tommi Rantala +Reviewed-by: Cyril Hrubis + +Upstream-Status: Backport [db57ddc1497e ("syscalls/setrlimit03.c: read /proc/sys/fs/nr_open for RLIMIT_NOFILE limit")] + +Signed-off-by: He Zhe +--- + testcases/kernel/syscalls/setrlimit/setrlimit03.c | 13 +++++++++++-- + 1 file changed, 11 insertions(+), 2 deletions(-) + +diff --git a/testcases/kernel/syscalls/setrlimit/setrlimit03.c b/testcases/kernel/syscalls/setrlimit/setrlimit03.c +index 29b52aa..12455fe 100644 +--- a/testcases/kernel/syscalls/setrlimit/setrlimit03.c ++++ b/testcases/kernel/syscalls/setrlimit/setrlimit03.c +@@ -35,7 +35,10 @@ + # define NR_OPEN (1024*1024) + #endif + ++#define NR_OPEN_PATH "/proc/sys/fs/nr_open" ++ + static struct rlimit rlim1, rlim2; ++static unsigned int nr_open = NR_OPEN; + + static struct tcase { + struct rlimit *rlimt; +@@ -51,7 +54,10 @@ static void verify_setrlimit(unsigned int n) + + TEST(setrlimit(RLIMIT_NOFILE, tc->rlimt)); + if (TST_RET != -1) { +- tst_res(TFAIL, "call succeeded unexpectedly"); ++ tst_res(TFAIL, "call succeeded unexpectedly " ++ "(nr_open=%u rlim_cur=%lu rlim_max=%lu)", nr_open, ++ (unsigned long)(tc->rlimt->rlim_cur), ++ (unsigned long)(tc->rlimt->rlim_max)); + return; + } + +@@ -65,10 +71,13 @@ static void verify_setrlimit(unsigned int n) + + static void setup(void) + { ++ if (!access(NR_OPEN_PATH, F_OK)) ++ SAFE_FILE_SCANF(NR_OPEN_PATH, "%u", &nr_open); ++ + SAFE_GETRLIMIT(RLIMIT_NOFILE, &rlim1); + rlim2.rlim_max = rlim1.rlim_cur; + rlim2.rlim_cur = rlim1.rlim_max + 1; +- rlim1.rlim_max = NR_OPEN + 1; ++ rlim1.rlim_max = nr_open + 1; + } + + static struct tst_test test = { +-- +2.7.4 + diff --git a/poky/meta/recipes-extended/ltp/ltp_20190115.bb b/poky/meta/recipes-extended/ltp/ltp_20190115.bb index ddf97e26c..1d0c00b64 100644 --- a/poky/meta/recipes-extended/ltp/ltp_20190115.bb +++ b/poky/meta/recipes-extended/ltp/ltp_20190115.bb @@ -49,6 +49,7 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \ file://0001-open_posix_testsuite-mmap24-2-Relax-condition-a-bit.patch \ file://define-sigrtmin-and-sigrtmax-for-musl.patch \ file://setregid01-security-string-formatting.patch \ + file://0001-syscalls-setrlimit03.c-read-proc-sys-fs-nr_open-for-.patch \ " S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-extended/man-db/man-db_2.8.4.bb b/poky/meta/recipes-extended/man-db/man-db_2.8.4.bb deleted file mode 100644 index aa364659e..000000000 --- a/poky/meta/recipes-extended/man-db/man-db_2.8.4.bb +++ /dev/null @@ -1,56 +0,0 @@ -SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command" -HOMEPAGE = "http://man-db.nongnu.org/" -LICENSE = "LGPLv2.1 & GPLv2" -LIC_FILES_CHKSUM = "file://docs/COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ - file://docs/COPYING;md5=eb723b61539feef013de476e68b5c50a" - -SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/man-db/man-db-${PV}.tar.xz \ - file://99_mandb \ - file://man_db.conf-avoid-multilib-install-file-conflict.patch" -SRC_URI[md5sum] = "ab41db551f500e4a595b11203b86c67a" -SRC_URI[sha256sum] = "103c185f9d8269b9ee3b8a4cb27912b3aa393e952731ef96fedc880723472bc3" - -DEPENDS = "libpipeline gdbm groff-native base-passwd" -RDEPENDS_${PN} += "base-passwd" - -# | /usr/src/debug/man-db/2.8.0-r0/man-db-2.8.0/src/whatis.c:939: undefined reference to `_nl_msg_cat_cntr' -USE_NLS_libc-musl = "no" - -inherit gettext pkgconfig autotools - -EXTRA_OECONF = "--with-pager=less" -EXTRA_AUTORECONF += "-I ${S}/gl/m4" - -do_install() { - autotools_do_install - - if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then - install -d ${D}/etc/default/volatiles - install -m 0644 ${WORKDIR}/99_mandb ${D}/etc/default/volatiles - fi -} - -do_install_append_libc-musl() { - rm -f ${D}${libdir}/charset.alias -} - -FILES_${PN} += "${prefix}/lib/tmpfiles.d" - -FILES_${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so" - -RDEPENDS_${PN} += "groff" -RRECOMMENDS_${PN} += "less" -RPROVIDES_${PN} += " man" - -def compress_pkg(d): - if bb.utils.contains("INHERIT", "compress_doc", True, False, d): - compress = d.getVar("DOC_COMPRESS") - if compress == "gz": - return "gzip" - elif compress == "bz2": - return "bzip2" - elif compress == "xz": - return "xz" - return "" - -RDEPENDS_${PN} += "${@compress_pkg(d)}" diff --git a/poky/meta/recipes-extended/man-db/man-db_2.8.5.bb b/poky/meta/recipes-extended/man-db/man-db_2.8.5.bb new file mode 100644 index 000000000..441e2f411 --- /dev/null +++ b/poky/meta/recipes-extended/man-db/man-db_2.8.5.bb @@ -0,0 +1,59 @@ +SUMMARY = "An implementation of the standard Unix documentation system accessed using the man command" +HOMEPAGE = "http://man-db.nongnu.org/" +LICENSE = "LGPLv2.1 & GPLv2" +LIC_FILES_CHKSUM = "file://docs/COPYING.LIB;md5=a6f89e2100d9b6cdffcea4f398e37343 \ + file://docs/COPYING;md5=eb723b61539feef013de476e68b5c50a" + +SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/man-db/man-db-${PV}.tar.xz \ + file://99_mandb \ + file://man_db.conf-avoid-multilib-install-file-conflict.patch" +SRC_URI[md5sum] = "c5c6c3434be14a5527d43b5ad0f09a13" +SRC_URI[sha256sum] = "b64d52747534f1fe873b2876eb7f01319985309d5d7da319d2bc52ba1e73f6c1" + +DEPENDS = "libpipeline gdbm groff-native base-passwd" +RDEPENDS_${PN} += "base-passwd" + +# | /usr/src/debug/man-db/2.8.0-r0/man-db-2.8.0/src/whatis.c:939: undefined reference to `_nl_msg_cat_cntr' +USE_NLS_libc-musl = "no" + +inherit gettext pkgconfig autotools systemd + +EXTRA_OECONF = "--with-pager=less" +EXTRA_AUTORECONF += "-I ${S}/gl/m4" + +do_install() { + autotools_do_install + + if ${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'true', 'false', d)}; then + install -d ${D}/etc/default/volatiles + install -m 0644 ${WORKDIR}/99_mandb ${D}/etc/default/volatiles + fi +} + +do_install_append_libc-musl() { + rm -f ${D}${libdir}/charset.alias +} + +FILES_${PN} += "${prefix}/lib/tmpfiles.d" + +FILES_${PN}-dev += "${libdir}/man-db/libman.so ${libdir}/${BPN}/libmandb.so" + +RDEPENDS_${PN} += "groff" +RRECOMMENDS_${PN} += "less" +RPROVIDES_${PN} += " man" + +def compress_pkg(d): + if bb.utils.contains("INHERIT", "compress_doc", True, False, d): + compress = d.getVar("DOC_COMPRESS") + if compress == "gz": + return "gzip" + elif compress == "bz2": + return "bzip2" + elif compress == "xz": + return "xz" + return "" + +RDEPENDS_${PN} += "${@compress_pkg(d)}" + +SYSTEMD_SERVICE_${PN} = "man-db.timer man-db.service" +SYSTEMD_AUTO_ENABLE ?= "disable" diff --git a/poky/meta/recipes-extended/man-pages/man-pages_4.16.bb b/poky/meta/recipes-extended/man-pages/man-pages_4.16.bb deleted file mode 100644 index 1f14c891b..000000000 --- a/poky/meta/recipes-extended/man-pages/man-pages_4.16.bb +++ /dev/null @@ -1,37 +0,0 @@ -SUMMARY = "Linux man-pages" -DESCRIPTION = "The Linux man-pages project documents the Linux kernel and C library interfaces that are employed by user programs" -SECTION = "console/utils" -HOMEPAGE = "http://www.kernel.org/pub/linux/docs/man-pages" -LICENSE = "GPLv2+" - -LIC_FILES_CHKSUM = "file://README;md5=794f701617cc03fe50c53257660d8ec4" -SRC_URI = "${KERNELORG_MIRROR}/linux/docs/${BPN}/Archive/${BP}.tar.gz" - -SRC_URI[md5sum] = "d1fb8ba312a1c15e0bfda911a98c5544" -SRC_URI[sha256sum] = "d38b0460bf3f35c95faf7f8cf52dac1216d86a47866f5e5f2fda88c61da04960" - -inherit manpages - -MAN_PKG = "${PN}" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[manpages] = "" - -do_configure[noexec] = "1" -do_compile[noexec] = "1" - -do_install() { - oe_runmake install DESTDIR=${D} -} - -# Only deliveres man-pages so FILES_${PN} gets everything -FILES_${PN}-doc = "" -FILES_${PN} = "${mandir}/*" - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "passwd.5 getspnam.3 crypt.3" -ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5" -ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3" -ALTERNATIVE_LINK_NAME[crypt.3] = "${mandir}/man3/crypt.3" diff --git a/poky/meta/recipes-extended/man-pages/man-pages_5.01.bb b/poky/meta/recipes-extended/man-pages/man-pages_5.01.bb new file mode 100644 index 000000000..28525f4ba --- /dev/null +++ b/poky/meta/recipes-extended/man-pages/man-pages_5.01.bb @@ -0,0 +1,37 @@ +SUMMARY = "Linux man-pages" +DESCRIPTION = "The Linux man-pages project documents the Linux kernel and C library interfaces that are employed by user programs" +SECTION = "console/utils" +HOMEPAGE = "http://www.kernel.org/pub/linux/docs/man-pages" +LICENSE = "GPLv2+" + +LIC_FILES_CHKSUM = "file://README;md5=794f701617cc03fe50c53257660d8ec4" +SRC_URI = "${KERNELORG_MIRROR}/linux/docs/${BPN}/Archive/${BP}.tar.gz" + +SRC_URI[md5sum] = "38abead776a506109e128ab96bcbbe58" +SRC_URI[sha256sum] = "070bef794c6826b3fb3965d1a2efdb46c25cb37c06c715987f88a50906cd5b6f" + +inherit manpages + +MAN_PKG = "${PN}" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[manpages] = "" + +do_configure[noexec] = "1" +do_compile[noexec] = "1" + +do_install() { + oe_runmake install DESTDIR=${D} +} + +# Only deliveres man-pages so FILES_${PN} gets everything +FILES_${PN}-doc = "" +FILES_${PN} = "${mandir}/*" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "passwd.5 getspnam.3 crypt.3" +ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5" +ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3" +ALTERNATIVE_LINK_NAME[crypt.3] = "${mandir}/man3/crypt.3" diff --git a/poky/meta/recipes-extended/mdadm/files/debian-no-Werror.patch b/poky/meta/recipes-extended/mdadm/files/debian-no-Werror.patch new file mode 100644 index 000000000..e66a15cd7 --- /dev/null +++ b/poky/meta/recipes-extended/mdadm/files/debian-no-Werror.patch @@ -0,0 +1,25 @@ +From: martin f. krafft +Subject: Remove -Werror from compiler flags + +-Werror seems like a bad idea on released/packaged code because a toolchain +update (introducing new warnings) could break the build. We'll let upstream +use it to beautify the code, but remove it for out builds. + +Signed-off-by: martin f. krafft + +Upstream-Status: Pending +--- + Makefile | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +--- a/Makefile ++++ b/Makefile +@@ -48,7 +48,7 @@ endif + + CC ?= $(CROSS_COMPILE)gcc + CXFLAGS ?= -ggdb +-CWFLAGS = -Wall -Werror -Wstrict-prototypes -Wextra -Wno-unused-parameter ++CWFLAGS = -Wall -Wstrict-prototypes -Wextra -Wno-unused-parameter + ifdef WARN_UNUSED + CWFLAGS += -Wp,-D_FORTIFY_SOURCE=2 -O3 + endif diff --git a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb index 947706ff5..ef5ddf55d 100644 --- a/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb +++ b/poky/meta/recipes-extended/mdadm/mdadm_4.1.bb @@ -17,6 +17,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.xz \ file://0001-Use-CC-to-check-for-implicit-fallthrough-warning-sup.patch \ file://0001-Compute-abs-diff-in-a-standard-compliant-way.patch \ file://0001-fix-gcc-8-format-truncation-warning.patch \ + file://debian-no-Werror.patch \ file://mdadm.init \ file://mdmonitor.service \ " diff --git a/poky/meta/recipes-extended/msmtp/msmtp_1.6.6.bb b/poky/meta/recipes-extended/msmtp/msmtp_1.6.6.bb deleted file mode 100644 index e1721936c..000000000 --- a/poky/meta/recipes-extended/msmtp/msmtp_1.6.6.bb +++ /dev/null @@ -1,30 +0,0 @@ -SUMMARY = "msmtp is an SMTP client" -DESCRIPTION = "A sendmail replacement for use in MTAs like mutt" -HOMEPAGE = "http://msmtp.sourceforge.net/" -SECTION = "console/network" - -LICENSE = "GPLv3" -DEPENDS = "zlib gnutls" - -#COPYING or Licence -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "http://sourceforge.net/projects/msmtp/files/msmtp/${PV}/${BPN}-${PV}.tar.xz \ - " - -SRC_URI[md5sum] = "82b0520b57db4b2cf05333d11fb5974d" -SRC_URI[sha256sum] = "da15db1f62bd0201fce5310adb89c86188be91cd745b7cb3b62b81a501e7fb5e" - -inherit gettext autotools update-alternatives pkgconfig - -EXTRA_OECONF += "--without-libsecret --without-libgsasl --without-libidn" - -ALTERNATIVE_${PN} = "sendmail" -ALTERNATIVE_TARGET[sendmail] = "${bindir}/msmtp" -ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail" -ALTERNATIVE_PRIORITY = "100" - -pkg_postinst_${PN}_linuxstdbase () { - # /usr/lib/sendmial is required by LSB core test - [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/ -} diff --git a/poky/meta/recipes-extended/msmtp/msmtp_1.8.4.bb b/poky/meta/recipes-extended/msmtp/msmtp_1.8.4.bb new file mode 100644 index 000000000..888c1bbb5 --- /dev/null +++ b/poky/meta/recipes-extended/msmtp/msmtp_1.8.4.bb @@ -0,0 +1,29 @@ +SUMMARY = "msmtp is an SMTP client" +DESCRIPTION = "A sendmail replacement for use in MTAs like mutt" +HOMEPAGE = "https://marlam.de/msmtp/" +SECTION = "console/network" + +LICENSE = "GPLv3" +DEPENDS = "zlib gnutls" + +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +UPSTREAM_CHECK_URI = "https://marlam.de/msmtp/download/" + +SRC_URI = "https://marlam.de/${BPN}/releases/${BP}.tar.xz" +SRC_URI[md5sum] = "abfabb92f0461137f3c09cd16d98fc9b" +SRC_URI[sha256sum] = "e5dd7fe95bc8e2f5eea3e4894ec9628252f30bd700a7fd1a568b10efa91129f7" + +inherit gettext autotools update-alternatives pkgconfig + +EXTRA_OECONF += "--without-libsecret --without-libgsasl --without-libidn" + +ALTERNATIVE_${PN} = "sendmail" +ALTERNATIVE_TARGET[sendmail] = "${bindir}/msmtp" +ALTERNATIVE_LINK_NAME[sendmail] = "${sbindir}/sendmail" +ALTERNATIVE_PRIORITY = "100" + +pkg_postinst_${PN}_linuxstdbase () { + # /usr/lib/sendmial is required by LSB core test + [ ! -L $D/usr/lib/sendmail ] && ln -sf ${sbindir}/sendmail $D/usr/lib/ +} diff --git a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb index ffa838877..ec67f8d12 100644 --- a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb +++ b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb @@ -94,7 +94,6 @@ RDEPENDS_packagegroup-core-full-cmdline-utils = "\ tar \ time \ util-linux \ - zlib \ " RDEPENDS_packagegroup-core-full-cmdline-extended = "\ diff --git a/poky/meta/recipes-extended/procps/procps/sysctl.conf b/poky/meta/recipes-extended/procps/procps/sysctl.conf index 34e7488bf..253f3701b 100644 --- a/poky/meta/recipes-extended/procps/procps/sysctl.conf +++ b/poky/meta/recipes-extended/procps/procps/sysctl.conf @@ -1,64 +1,67 @@ -# This configuration file is taken from Debian. +# This configuration taken from procps v3.3.15 +# Commented out kernel/pid_max=10000 line # # /etc/sysctl.conf - Configuration file for setting system variables # See sysctl.conf (5) for information. -# -#kernel.domainname = example.com +# you can have the CD-ROM close when you use it, and open +# when you are done. +#dev.cdrom.autoeject = 1 +#dev.cdrom.autoclose = 1 -# Uncomment the following to stop low-level messages on console -#kernel.printk = 4 4 1 7 +# protection from the SYN flood attack +net/ipv4/tcp_syncookies=1 -##############################################################3 -# Functions previously found in netbase -# +# see the evil packets in your log files +net/ipv4/conf/all/log_martians=1 -# Uncomment the next two lines to enable Spoof protection (reverse-path filter) -# Turn on Source Address Verification in all interfaces to -# prevent some spoofing attacks -net.ipv4.conf.default.rp_filter=1 -net.ipv4.conf.all.rp_filter=1 +# makes you vulnerable or not :-) +net/ipv4/conf/all/accept_redirects=0 +net/ipv4/conf/all/accept_source_route=0 +net/ipv4/icmp_echo_ignore_broadcasts =1 -# Uncomment the next line to enable TCP/IP SYN cookies -#net.ipv4.tcp_syncookies=1 +# needed for routing, including masquerading or NAT +#net/ipv4/ip_forward=1 -# Uncomment the next line to enable packet forwarding for IPv4 -#net.ipv4.ip_forward=1 +# sets the port range used for outgoing connections +#net.ipv4.ip_local_port_range = 32768 61000 -# Uncomment the next line to enable packet forwarding for IPv6 -#net.ipv6.conf.all.forwarding=1 +# Broken routers and obsolete firewalls will corrupt the window scaling +# and ECN. Set these values to 0 to disable window scaling and ECN. +# This may, rarely, cause some performance loss when running high-speed +# TCP/IP over huge distances or running TCP/IP over connections with high +# packet loss and modern routers. This sure beats dropped connections. +#net.ipv4.tcp_ecn = 0 +# Swapping too much or not enough? Disks spinning up when you'd +# rather they didn't? Tweak these. +#vm.vfs_cache_pressure = 100 +#vm.laptop_mode = 0 +#vm.swappiness = 60 -################################################################### -# Additional settings - these settings can improve the network -# security of the host and prevent against some network attacks -# including spoofing attacks and man in the middle attacks through -# redirection. Some network environments, however, require that these -# settings are disabled so review and enable them as needed. -# -# Ignore ICMP broadcasts -#net.ipv4.icmp_echo_ignore_broadcasts = 1 -# -# Ignore bogus ICMP errors -#net.ipv4.icmp_ignore_bogus_error_responses = 1 -# -# Do not accept ICMP redirects (prevent MITM attacks) -#net.ipv4.conf.all.accept_redirects = 0 -#net.ipv6.conf.all.accept_redirects = 0 -# _or_ -# Accept ICMP redirects only for gateways listed in our default -# gateway list (enabled by default) -# net.ipv4.conf.all.secure_redirects = 1 -# -# Do not send ICMP redirects (we are not a router) -#net.ipv4.conf.all.send_redirects = 0 -# -# Do not accept IP source route packets (we are not a router) -#net.ipv4.conf.all.accept_source_route = 0 -#net.ipv6.conf.all.accept_source_route = 0 -# -# Log Martian Packets -#net.ipv4.conf.all.log_martians = 1 -# +#kernel.printk_ratelimit_burst = 10 +#kernel.printk_ratelimit = 5 +#kernel.panic_on_oops = 0 + +# Reboot 600 seconds after a panic +#kernel.panic = 600 + +# enable SysRq key (note: console security issues) +#kernel.sysrq = 1 + +# Change name of core file to start with the command name +# so you get things like: emacs.core mozilla-bin.core X.core +#kernel.core_pattern = %e.core + +# NIS/YP domain (not always equal to DNS domain) +#kernel.domainname = example.com +#kernel.hostname = darkstar + +# This limits PID values to 4 digits, which allows tools like ps +# to save screen space. +#kernel/pid_max=10000 -#kernel.shmmax = 141762560 +# Protects against creating or following links under certain conditions +# See https://www.kernel.org/doc/Documentation/sysctl/fs.txt +#fs.protected_hardlinks = 1 +#fs.protected_symlinks = 1 diff --git a/poky/meta/recipes-extended/quota/quota/fcntl.patch b/poky/meta/recipes-extended/quota/quota/fcntl.patch index 2d3797132..51a770ce6 100644 --- a/poky/meta/recipes-extended/quota/quota/fcntl.patch +++ b/poky/meta/recipes-extended/quota/quota/fcntl.patch @@ -9,13 +9,11 @@ Upstream-Status: Pending Signed-off-by: Khem Raj -ndex: quota-tools/quota.h -=================================================================== -Index: quota-tools/quota.h -=================================================================== ---- quota-tools.orig/quota.h -+++ quota-tools/quota.h -@@ -165,6 +165,6 @@ enum { +diff --git a/quota.h b/quota.h +index 4c21411..d20c217 100644 +--- a/quota.h ++++ b/quota.h +@@ -182,6 +182,6 @@ enum { #endif #endif @@ -23,10 +21,10 @@ Index: quota-tools/quota.h +long quotactl (int, const char *, qid_t, caddr_t); #endif /* _QUOTA_ */ -Index: quota-tools/quotacheck.c -=================================================================== ---- quota-tools.orig/quotacheck.c -+++ quota-tools/quotacheck.c +diff --git a/quotacheck.c b/quotacheck.c +index 2cdf475..07c18a7 100644 +--- a/quotacheck.c ++++ b/quotacheck.c @@ -19,6 +19,7 @@ #include #include @@ -35,10 +33,10 @@ Index: quota-tools/quotacheck.c #include #include -Index: quota-tools/quotaio.c -=================================================================== ---- quota-tools.orig/quotaio.c -+++ quota-tools/quotaio.c +diff --git a/quotaio.c b/quotaio.c +index 94ae458..d57fc1a 100644 +--- a/quotaio.c ++++ b/quotaio.c @@ -12,6 +12,7 @@ #include #include @@ -47,22 +45,10 @@ Index: quota-tools/quotaio.c #include #include #include -Index: quota-tools/dqblk_v2.h -=================================================================== ---- quota-tools.orig/dqblk_v2.h -+++ quota-tools/dqblk_v2.h -@@ -7,6 +7,7 @@ - #ifndef GUARD_DQBLK_V2_H - #define GUARD_DQBLK_V2_H - -+#include - #include - #include "quota_tree.h" - -Index: quota-tools/rquota_client.c -=================================================================== ---- quota-tools.orig/rquota_client.c -+++ quota-tools/rquota_client.c +diff --git a/rquota_client.c b/rquota_client.c +index a3a4ae3..0ffe7a9 100644 +--- a/rquota_client.c ++++ b/rquota_client.c @@ -19,7 +19,9 @@ #include "config.h" diff --git a/poky/meta/recipes-extended/quota/quota/remove_non_posix_types.patch b/poky/meta/recipes-extended/quota/quota/remove_non_posix_types.patch deleted file mode 100644 index 06ff13cb9..000000000 --- a/poky/meta/recipes-extended/quota/quota/remove_non_posix_types.patch +++ /dev/null @@ -1,198 +0,0 @@ -Use proper C99 integer types - -Upstream-Status: Pending - -Signed-off-by: Khem Raj - -Index: quota-tools/bylabel.c -=================================================================== ---- quota-tools.orig/bylabel.c -+++ quota-tools/bylabel.c -@@ -20,6 +20,7 @@ - #include - #include - #include -+#include - - #include "bylabel.h" - #include "common.h" -@@ -37,32 +38,32 @@ static struct uuidCache_s { - - #define EXT2_SUPER_MAGIC 0xEF53 - struct ext2_super_block { -- u_char s_dummy1[56]; -- u_char s_magic[2]; -- u_char s_dummy2[46]; -- u_char s_uuid[16]; -- u_char s_volume_name[16]; -+ uint8_t s_dummy1[56]; -+ uint8_t s_magic[2]; -+ uint8_t s_dummy2[46]; -+ uint8_t s_uuid[16]; -+ uint8_t s_volume_name[16]; - }; - --#define ext2magic(s) ((uint) s.s_magic[0] + (((uint) s.s_magic[1]) << 8)) -+#define ext2magic(s) ((uint32_t) s.s_magic[0] + (((uint32_t) s.s_magic[1]) << 8)) - - #define XFS_SUPER_MAGIC "XFSB" - #define XFS_SUPER_MAGIC2 "BSFX" - struct xfs_super_block { -- u_char s_magic[4]; -- u_char s_dummy[28]; -- u_char s_uuid[16]; -- u_char s_dummy2[60]; -- u_char s_fsname[12]; -+ uint8_t s_magic[4]; -+ uint8_t s_dummy[28]; -+ uint8_t s_uuid[16]; -+ uint8_t s_dummy2[60]; -+ uint8_t s_fsname[12]; - }; - - #define REISER_SUPER_MAGIC "ReIsEr2Fs" - struct reiserfs_super_block { -- u_char s_dummy1[52]; -- u_char s_magic[10]; -- u_char s_dummy2[22]; -- u_char s_uuid[16]; -- u_char s_volume_name[16]; -+ uint8_t s_dummy1[52]; -+ uint8_t s_magic[10]; -+ uint8_t s_dummy2[22]; -+ uint8_t s_uuid[16]; -+ uint8_t s_volume_name[16]; - }; - - static inline unsigned short swapped(unsigned short a) -@@ -222,7 +223,7 @@ static char *get_spec_by_x(int n, const - return NULL; - } - --static u_char fromhex(char c) -+static uint8_t fromhex(char c) - { - if (isdigit(c)) - return (c - '0'); -@@ -234,7 +235,7 @@ static u_char fromhex(char c) - - static char *get_spec_by_uuid(const char *s) - { -- u_char uuid[16]; -+ uint8_t uuid[16]; - int i; - - if (strlen(s) != 36 || s[8] != '-' || s[13] != '-' || s[18] != '-' || s[23] != '-') -Index: quota-tools/quot.c -=================================================================== ---- quota-tools.orig/quot.c -+++ quota-tools/quot.c -@@ -47,6 +47,7 @@ - #include - #include - #include -+#include - - #include "pot.h" - #include "quot.h" -@@ -56,8 +57,8 @@ - #include "quotasys.h" - - #define TSIZE 500 --static __uint64_t sizes[TSIZE]; --static __uint64_t overflow; -+static uint64_t sizes[TSIZE]; -+static uint64_t overflow; - - static int aflag; - static int cflag; -@@ -72,7 +73,7 @@ static time_t now; - char *progname; - - static void mounttable(void); --static char *idname(__uint32_t, int); -+static char *idname(uint32_t, int); - static void report(const char *, const char *, int); - static void creport(const char *, const char *); - -@@ -173,7 +174,7 @@ static int qcmp(du_t * p1, du_t * p2) - static void creport(const char *file, const char *fsdir) - { - int i; -- __uint64_t t = 0; -+ uint64_t t = 0; - - printf(_("%s (%s):\n"), file, fsdir); - for (i = 0; i < TSIZE - 1; i++) -@@ -219,7 +220,7 @@ static void report(const char *file, con - } - } - --static idcache_t *getnextent(int type, __uint32_t id, int byid) -+static idcache_t *getnextent(int type, uint32_t id, int byid) - { - struct passwd *pw; - struct group *gr; -@@ -240,7 +241,7 @@ static idcache_t *getnextent(int type, _ - return &idc; - } - --static char *idname(__uint32_t id, int type) -+static char *idname(uint32_t id, int type) - { - idcache_t *ncp, *idp; - static idcache_t nc[2][NID]; -@@ -286,8 +287,8 @@ static void acctXFS(xfs_bstat_t *p) - { - register du_t *dp; - du_t **hp; -- __uint64_t size; -- __uint32_t i, id; -+ uint64_t size; -+ uint32_t i, id; - - if ((p->bs_mode & S_IFMT) == 0) - return; -Index: quota-tools/quot.h -=================================================================== ---- quota-tools.orig/quot.h -+++ quota-tools/quot.h -@@ -35,18 +35,18 @@ - #define SEC24HR (60*60*24) /* seconds per day */ - - typedef struct { -- __uint32_t id; -+ uint32_t id; - char name[UT_NAMESIZE + 1]; - } idcache_t; - - typedef struct du { - struct du *next; -- __uint64_t blocks; -- __uint64_t blocks30; -- __uint64_t blocks60; -- __uint64_t blocks90; -- __uint64_t nfiles; -- __uint32_t id; -+ uint64_t blocks; -+ uint64_t blocks30; -+ uint64_t blocks60; -+ uint64_t blocks90; -+ uint64_t nfiles; -+ uint32_t id; - } du_t; - - #define NDU 60000 -Index: quota-tools/rquota_server.c -=================================================================== ---- quota-tools.orig/rquota_server.c -+++ quota-tools/rquota_server.c -@@ -60,7 +60,7 @@ extern char nfs_pseudoroot[PATH_MAX]; - */ - extern struct authunix_parms *unix_cred; - --int in_group(gid_t * gids, u_int len, gid_t gid) -+int in_group(gid_t * gids, uint32_t len, gid_t gid) - { - gid_t *gidsp = gids + len; - diff --git a/poky/meta/recipes-extended/quota/quota/replace_getrpcbynumber_r.patch b/poky/meta/recipes-extended/quota/quota/replace_getrpcbynumber_r.patch deleted file mode 100644 index 4687ca06f..000000000 --- a/poky/meta/recipes-extended/quota/quota/replace_getrpcbynumber_r.patch +++ /dev/null @@ -1,32 +0,0 @@ -From a3808fd165847298d025971eb3c7be7d11caba9d Mon Sep 17 00:00:00 2001 -From: "Maxin B. John" -Date: Wed, 8 Nov 2017 11:56:55 +0200 -Subject: [PATCH] Replace getrpcbynumber_r with getrpcbynumber - -musl and uclibc dont implement it - -Upstream-Status: Pending - -Signed-off-by: Khem Raj -Signed-off-by: Maxin B. John ---- - svc_socket.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/svc_socket.c b/svc_socket.c -index 8a44604..5bdaaa0 100644 ---- a/svc_socket.c -+++ b/svc_socket.c -@@ -36,7 +36,8 @@ static int get_service_port(u_long number, const char *proto) - struct servent servbuf, *servp = NULL; - int ret; - -- ret = getrpcbynumber_r(number, &rpcbuf, rpcdata, sizeof(rpcdata), &rpcp); -+ rpcp = getrpcbynumber(number); -+ ret = 0; - if (ret == 0 && rpcp != NULL) { - /* First try name */ - ret = getservbyname_r(rpcp->r_name, proto, &servbuf, servdata, --- -2.4.0 - diff --git a/poky/meta/recipes-extended/quota/quota_4.04.bb b/poky/meta/recipes-extended/quota/quota_4.04.bb deleted file mode 100644 index 93f376286..000000000 --- a/poky/meta/recipes-extended/quota/quota_4.04.bb +++ /dev/null @@ -1,38 +0,0 @@ -SUMMARY = "Tools for monitoring & limiting user disk usage per filesystem" -SECTION = "base" -HOMEPAGE = "http://sourceforge.net/projects/linuxquota/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=18136&atid=118136" -LICENSE = "BSD & GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://quota.c;beginline=1;endline=33;md5=331c7d77744bfe0ad24027f0651028ec \ - file://rquota_server.c;beginline=1;endline=20;md5=fe7e0d7e11c6f820f8fa62a5af71230f \ - file://svc_socket.c;beginline=1;endline=17;md5=24d5a8792da45910786eeac750be8ceb" - -SRC_URI = "${SOURCEFORGE_MIRROR}/project/linuxquota/quota-tools/${PV}/quota-${PV}.tar.gz \ - file://fcntl.patch \ - file://remove_non_posix_types.patch \ - " -SRC_URI_append_libc-musl = " file://replace_getrpcbynumber_r.patch" - -SRC_URI[md5sum] = "f46f3b0b5141f032f25684005dac49d3" -SRC_URI[sha256sum] = "735be1887e7f51f54165e778ae43fc859c04e44d88834ecb2f470e91d4ef8edf" - -CVE_PRODUCT = "linux_diskquota" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/linuxquota/files/quota-tools/" -UPSTREAM_CHECK_REGEX = "/quota-tools/(?P(\d+[\.\-_]*)+)/" - -DEPENDS = "gettext-native e2fsprogs libnl dbus" - -inherit autotools-brokensep gettext pkgconfig - -CFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-I${STAGING_INCDIR}/tirpc', '', d)}" -LDFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-ltirpc', '', d)}" -ASNEEDED = "" - -PACKAGECONFIG ??= "tcp-wrappers rpc bsd" -PACKAGECONFIG_libc-musl = "tcp-wrappers rpc" - -PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers" -PACKAGECONFIG[rpc] = "--enable-rpc,--disable-rpc,libtirpc" -PACKAGECONFIG[bsd] = "--enable-bsd_behaviour=yes,--enable-bsd_behaviour=no," -PACKAGECONFIG[ldapmail] = "--enable-ldapmail,--disable-ldapmail,openldap" diff --git a/poky/meta/recipes-extended/quota/quota_4.05.bb b/poky/meta/recipes-extended/quota/quota_4.05.bb new file mode 100644 index 000000000..c5da1e71e --- /dev/null +++ b/poky/meta/recipes-extended/quota/quota_4.05.bb @@ -0,0 +1,34 @@ +SUMMARY = "Tools for monitoring & limiting user disk usage per filesystem" +SECTION = "base" +HOMEPAGE = "http://sourceforge.net/projects/linuxquota/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=18136&atid=118136" +LICENSE = "BSD & GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://rquota_server.c;beginline=1;endline=20;md5=fe7e0d7e11c6f820f8fa62a5af71230f \ + file://svc_socket.c;beginline=1;endline=17;md5=24d5a8792da45910786eeac750be8ceb" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/linuxquota/quota-tools/${PV}/quota-${PV}.tar.gz \ + file://fcntl.patch \ + " +SRC_URI[md5sum] = "1c1dbd2cd3d680ccac661239b067e147" +SRC_URI[sha256sum] = "ef3b5b5d1014ed1344b46c1826145e20cbef8db967b522403c9a060761cf7ab9" + +CVE_PRODUCT = "linux_diskquota" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/linuxquota/files/quota-tools/" +UPSTREAM_CHECK_REGEX = "/quota-tools/(?P(\d+[\.\-_]*)+)/" + +DEPENDS = "gettext-native e2fsprogs libnl dbus" + +inherit autotools-brokensep gettext pkgconfig + +CFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-I${STAGING_INCDIR}/tirpc', '', d)}" +LDFLAGS += "${@bb.utils.contains('PACKAGECONFIG', 'rpc', '-ltirpc', '', d)}" +ASNEEDED = "" + +PACKAGECONFIG ??= "tcp-wrappers rpc bsd" +PACKAGECONFIG_libc-musl = "tcp-wrappers rpc" + +PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers" +PACKAGECONFIG[rpc] = "--enable-rpc,--disable-rpc,libtirpc" +PACKAGECONFIG[bsd] = "--enable-bsd_behaviour=yes,--enable-bsd_behaviour=no," +PACKAGECONFIG[ldapmail] = "--enable-ldapmail,--disable-ldapmail,openldap" diff --git a/poky/meta/recipes-extended/shadow/files/0001-Make-the-sp_lstchg-shadow-field-reproducible-re.-71.patch b/poky/meta/recipes-extended/shadow/files/0001-Make-the-sp_lstchg-shadow-field-reproducible-re.-71.patch new file mode 100644 index 000000000..de0ba3ebb --- /dev/null +++ b/poky/meta/recipes-extended/shadow/files/0001-Make-the-sp_lstchg-shadow-field-reproducible-re.-71.patch @@ -0,0 +1,89 @@ +From fe34a2a0e44bc80ff213bfd185046a5f10c94997 Mon Sep 17 00:00:00 2001 +From: Chris Lamb +Date: Wed, 2 Jan 2019 18:06:16 +0000 +Subject: [PATCH 1/2] Make the sp_lstchg shadow field reproducible (re. #71) + +From : + +``` +The third field in the /etc/shadow file (sp_lstchg) contains the date of +the last password change expressed as the number of days since Jan 1, 1970. +As this is a relative time, creating a user today will result in: + +username:17238:0:99999:7::: +whilst creating the same user tomorrow will result in: + +username:17239:0:99999:7::: +This has an impact for the Reproducible Builds[0] project where we aim to +be independent of as many elements the build environment as possible, +including the current date. + +This patch changes the behaviour to use the SOURCE_DATE_EPOCH[1] +environment variable (instead of Jan 1, 1970) if valid. +``` + +This updated PR adds some missing calls to gettime (). This was originally +filed by Johannes Schauer in Debian as #917773 [2]. + +[0] https://reproducible-builds.org/ +[1] https://reproducible-builds.org/specs/source-date-epoch/ +[2] https://bugs.debian.org/917773 + +Upstream-Status: Backport +Signed-off-by: Alex Kiernan +--- + libmisc/pwd2spwd.c | 3 +-- + src/pwck.c | 2 +- + src/pwconv.c | 2 +- + 3 files changed, 3 insertions(+), 4 deletions(-) + +diff --git a/libmisc/pwd2spwd.c b/libmisc/pwd2spwd.c +index c1b9b29ac873..6799dd50d490 100644 +--- a/libmisc/pwd2spwd.c ++++ b/libmisc/pwd2spwd.c +@@ -40,7 +40,6 @@ + #include "prototypes.h" + #include "defines.h" + #include +-extern time_t time (time_t *); + + /* + * pwd_to_spwd - create entries for new spwd structure +@@ -66,7 +65,7 @@ struct spwd *pwd_to_spwd (const struct passwd *pw) + */ + sp.sp_min = 0; + sp.sp_max = (10000L * DAY) / SCALE; +- sp.sp_lstchg = (long) time ((time_t *) 0) / SCALE; ++ sp.sp_lstchg = (long) gettime () / SCALE; + if (0 == sp.sp_lstchg) { + /* Better disable aging than requiring a password + * change */ +diff --git a/src/pwck.c b/src/pwck.c +index 0ffb711efb13..f70071b12500 100644 +--- a/src/pwck.c ++++ b/src/pwck.c +@@ -609,7 +609,7 @@ static void check_pw_file (int *errors, bool *changed) + sp.sp_inact = -1; + sp.sp_expire = -1; + sp.sp_flag = SHADOW_SP_FLAG_UNSET; +- sp.sp_lstchg = (long) time ((time_t *) 0) / SCALE; ++ sp.sp_lstchg = (long) gettime () / SCALE; + if (0 == sp.sp_lstchg) { + /* Better disable aging than + * requiring a password change +diff --git a/src/pwconv.c b/src/pwconv.c +index 9c69fa131d8e..f932f266c59c 100644 +--- a/src/pwconv.c ++++ b/src/pwconv.c +@@ -267,7 +267,7 @@ int main (int argc, char **argv) + spent.sp_flag = SHADOW_SP_FLAG_UNSET; + } + spent.sp_pwdp = pw->pw_passwd; +- spent.sp_lstchg = (long) time ((time_t *) 0) / SCALE; ++ spent.sp_lstchg = (long) gettime () / SCALE; + if (0 == spent.sp_lstchg) { + /* Better disable aging than requiring a password + * change */ +-- +2.17.1 + diff --git a/poky/meta/recipes-extended/shadow/files/0002-gettime-Use-secure_getenv-over-getenv.patch b/poky/meta/recipes-extended/shadow/files/0002-gettime-Use-secure_getenv-over-getenv.patch new file mode 100644 index 000000000..8c8234d03 --- /dev/null +++ b/poky/meta/recipes-extended/shadow/files/0002-gettime-Use-secure_getenv-over-getenv.patch @@ -0,0 +1,71 @@ +From 3d921155e0a761f61c8f1ec37328724aee1e2eda Mon Sep 17 00:00:00 2001 +From: Chris Lamb +Date: Sun, 31 Mar 2019 15:59:45 +0100 +Subject: [PATCH 2/2] gettime: Use secure_getenv over getenv. + +Upstream-Status: Backport +Signed-off-by: Alex Kiernan +--- + README | 1 + + configure.ac | 3 +++ + lib/defines.h | 6 ++++++ + libmisc/gettime.c | 2 +- + 4 files changed, 11 insertions(+), 1 deletion(-) + +diff --git a/README b/README +index 952ac5787f06..26cfff1e8fa8 100644 +--- a/README ++++ b/README +@@ -51,6 +51,7 @@ Brian R. Gaeke + Calle Karlsson + Chip Rosenthal + Chris Evans ++Chris Lamb + Cristian Gafton + Dan Walsh + Darcy Boese +diff --git a/configure.ac b/configure.ac +index da236722766b..a738ad662cc3 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -110,6 +110,9 @@ AC_REPLACE_FUNCS(sgetgrent sgetpwent sgetspent) + AC_REPLACE_FUNCS(snprintf strcasecmp strdup strerror strstr) + + AC_CHECK_FUNC(setpgrp) ++AC_CHECK_FUNC(secure_getenv, [AC_DEFINE(HAS_SECURE_GETENV, ++ 1, ++ [Defined to 1 if you have the declaration of 'secure_getenv'])]) + + if test "$ac_cv_header_shadow_h" = "yes"; then + AC_CACHE_CHECK(for working shadow group support, +diff --git a/lib/defines.h b/lib/defines.h +index cded1417fd12..2fb1b56eca6b 100644 +--- a/lib/defines.h ++++ b/lib/defines.h +@@ -382,4 +382,10 @@ extern char *strerror (); + # endif + #endif + ++#ifdef HAVE_SECURE_GETENV ++# define shadow_getenv(name) secure_getenv(name) ++# else ++# define shadow_getenv(name) getenv(name) ++#endif ++ + #endif /* _DEFINES_H_ */ +diff --git a/libmisc/gettime.c b/libmisc/gettime.c +index 53eaf51670bb..0e25a4b75061 100644 +--- a/libmisc/gettime.c ++++ b/libmisc/gettime.c +@@ -52,7 +52,7 @@ + unsigned long long epoch; + + fallback = time (NULL); +- source_date_epoch = getenv ("SOURCE_DATE_EPOCH"); ++ source_date_epoch = shadow_getenv ("SOURCE_DATE_EPOCH"); + + if (!source_date_epoch) + return fallback; +-- +2.17.1 + diff --git a/poky/meta/recipes-extended/shadow/shadow.inc b/poky/meta/recipes-extended/shadow/shadow.inc index 4de21acb7..831751d6d 100644 --- a/poky/meta/recipes-extended/shadow/shadow.inc +++ b/poky/meta/recipes-extended/shadow/shadow.inc @@ -11,6 +11,8 @@ DEPENDS = "virtual/crypt" UPSTREAM_CHECK_URI = "https://github.com/shadow-maint/shadow/releases" SRC_URI = "https://github.com/shadow-maint/shadow/releases/download/${PV}/${BP}.tar.gz \ file://shadow-4.1.3-dots-in-usernames.patch \ + file://0001-Make-the-sp_lstchg-shadow-field-reproducible-re.-71.patch \ + file://0002-gettime-Use-secure_getenv-over-getenv.patch \ ${@bb.utils.contains('PACKAGECONFIG', 'pam', '${PAM_SRC_URI}', '', d)} \ " diff --git a/poky/meta/recipes-extended/sysstat/sysstat.inc b/poky/meta/recipes-extended/sysstat/sysstat.inc index 0bc7e14d3..9228fc29c 100644 --- a/poky/meta/recipes-extended/sysstat/sysstat.inc +++ b/poky/meta/recipes-extended/sysstat/sysstat.inc @@ -10,12 +10,11 @@ SRC_URI = "http://pagesperso-orange.fr/sebastien.godard/sysstat-${PV}.tar.xz \ " UPSTREAM_CHECK_URI = "http://sebastien.godard.pagesperso-orange.fr/download.html" -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" DEPENDS += "base-passwd" # autotools-brokensep as this package doesn't use automake -inherit autotools-brokensep gettext systemd +inherit autotools-brokensep gettext systemd upstream-version-is-even PACKAGECONFIG ??= "" PACKAGECONFIG[lm-sensors] = "--enable-sensors,--disable-sensors,lmsensors,lmsensors-libsensors" diff --git a/poky/meta/recipes-extended/tar/tar_1.31.bb b/poky/meta/recipes-extended/tar/tar_1.31.bb deleted file mode 100644 index a78504261..000000000 --- a/poky/meta/recipes-extended/tar/tar_1.31.bb +++ /dev/null @@ -1,65 +0,0 @@ -SUMMARY = "GNU file archiving program" -DESCRIPTION = "GNU tar saves many files together into a single tape \ -or disk archive, and can restore individual files from the archive." -HOMEPAGE = "http://www.gnu.org/software/tar/" -SECTION = "base" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2 \ - file://remove-gets.patch \ - file://musl_dirent.patch \ -" - -SRC_URI[md5sum] = "77afa35b696c8d760331fa0e12c2fac9" -SRC_URI[sha256sum] = "577bd4463eea103bdfc662fc385789e2228dbeb399a1d0b98571ed9ce044f763" - -inherit autotools gettext texinfo - -PACKAGECONFIG ??= "" -PACKAGECONFIG_append_class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}" - -PACKAGECONFIG[acl] = "--with-posix-acls,--without-posix-acls,acl" - -EXTRA_OECONF += "DEFAULT_RMT_DIR=${base_sbindir}" - -# Let aclocal use the relative path for the m4 file rather than the -# absolute since tar has a lot of m4 files, otherwise there might -# be an "Argument list too long" error when it is built in a long/deep -# directory. -acpaths = "-I ./m4" - -do_install () { - autotools_do_install - ln -s tar ${D}${bindir}/gtar -} - -do_install_append_class-target() { - if [ "${base_bindir}" != "${bindir}" ]; then - install -d ${D}${base_bindir} - mv ${D}${bindir}/tar ${D}${base_bindir}/tar - mv ${D}${bindir}/gtar ${D}${base_bindir}/gtar - rmdir ${D}${bindir}/ - fi -} - -PACKAGES =+ "${PN}-rmt" - -FILES_${PN}-rmt = "${base_sbindir}/rmt*" - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" - -ALTERNATIVE_${PN} = "tar" -ALTERNATIVE_${PN}-rmt = "rmt" -ALTERNATIVE_${PN}_class-nativesdk = "" -ALTERNATIVE_${PN}-rmt_class-nativesdk = "" - -ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar" -ALTERNATIVE_LINK_NAME[rmt] = "${base_sbindir}/rmt" - -PROVIDES_append_class-native = " tar-replacement-native" -NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/tar/tar_1.32.bb b/poky/meta/recipes-extended/tar/tar_1.32.bb new file mode 100644 index 000000000..7240fdb7e --- /dev/null +++ b/poky/meta/recipes-extended/tar/tar_1.32.bb @@ -0,0 +1,65 @@ +SUMMARY = "GNU file archiving program" +DESCRIPTION = "GNU tar saves many files together into a single tape \ +or disk archive, and can restore individual files from the archive." +HOMEPAGE = "http://www.gnu.org/software/tar/" +SECTION = "base" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +SRC_URI = "${GNU_MIRROR}/tar/tar-${PV}.tar.bz2 \ + file://remove-gets.patch \ + file://musl_dirent.patch \ +" + +SRC_URI[md5sum] = "17917356fff5cb4bd3cd5a6c3e727b05" +SRC_URI[sha256sum] = "e4bb9e08e12e7fa9f11fef544efc85e59ba34538593d9ad38148c7ca2bfbb566" + +inherit autotools gettext texinfo + +PACKAGECONFIG ??= "" +PACKAGECONFIG_append_class-target = " ${@bb.utils.filter('DISTRO_FEATURES', 'acl', d)}" + +PACKAGECONFIG[acl] = "--with-posix-acls,--without-posix-acls,acl" + +EXTRA_OECONF += "DEFAULT_RMT_DIR=${sbindir}" + +# Let aclocal use the relative path for the m4 file rather than the +# absolute since tar has a lot of m4 files, otherwise there might +# be an "Argument list too long" error when it is built in a long/deep +# directory. +acpaths = "-I ./m4" + +do_install () { + autotools_do_install + ln -s tar ${D}${bindir}/gtar +} + +do_install_append_class-target() { + if [ "${base_bindir}" != "${bindir}" ]; then + install -d ${D}${base_bindir} + mv ${D}${bindir}/tar ${D}${base_bindir}/tar + mv ${D}${bindir}/gtar ${D}${base_bindir}/gtar + rmdir ${D}${bindir}/ + fi +} + +PACKAGES =+ "${PN}-rmt" + +FILES_${PN}-rmt = "${sbindir}/rmt*" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" + +ALTERNATIVE_${PN} = "tar" +ALTERNATIVE_${PN}-rmt = "rmt" +ALTERNATIVE_${PN}_class-nativesdk = "" +ALTERNATIVE_${PN}-rmt_class-nativesdk = "" + +ALTERNATIVE_LINK_NAME[tar] = "${base_bindir}/tar" +ALTERNATIVE_LINK_NAME[rmt] = "${sbindir}/rmt" + +PROVIDES_append_class-native = " tar-replacement-native" +NATIVE_PACKAGE_PATH_SUFFIX = "/${PN}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/wget/wget_1.20.1.bb b/poky/meta/recipes-extended/wget/wget_1.20.1.bb deleted file mode 100644 index d176bd0ac..000000000 --- a/poky/meta/recipes-extended/wget/wget_1.20.1.bb +++ /dev/null @@ -1,8 +0,0 @@ -SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ - file://0002-improve-reproducibility.patch \ - " - -SRC_URI[md5sum] = "f6ebe9c7b375fc9832fb1b2028271fb7" -SRC_URI[sha256sum] = "b783b390cb571c837b392857945f5a1f00ec6b043177cc42abb8ee1b542ee1b3" - -require wget.inc diff --git a/poky/meta/recipes-extended/wget/wget_1.20.3.bb b/poky/meta/recipes-extended/wget/wget_1.20.3.bb new file mode 100644 index 000000000..4fa273d09 --- /dev/null +++ b/poky/meta/recipes-extended/wget/wget_1.20.3.bb @@ -0,0 +1,8 @@ +SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ + file://0002-improve-reproducibility.patch \ + " + +SRC_URI[md5sum] = "db4e6dc7977cbddcd543b240079a4899" +SRC_URI[sha256sum] = "31cccfc6630528db1c8e3a06f6decf2a370060b982841cfab2b8677400a5092e" + +require wget.inc diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb deleted file mode 100644 index a64c82f48..000000000 --- a/poky/meta/recipes-gnome/epiphany/epiphany_3.30.3.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "WebKit based web browser for GNOME" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \ - gsettings-desktop-schemas libxml2-native \ - glib-2.0 glib-2.0-native json-glib libdazzle" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext -REQUIRED_DISTRO_FEATURES = "x11 opengl" - -SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ - file://0002-help-meson.build-disable-the-use-of-yelp.patch \ - " -SRC_URI[archive.md5sum] = "fd05702b1c9bcb6a0633de54c4a6ccd2" -SRC_URI[archive.sha256sum] = "76cdb8db6af2da8c3371a73e2dfd5ba64867b5f1e65fa9621f35348a42ff0d17" - -EXTRA_OEMESON += " -Ddistributor_name=${DISTRO}" - -FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" -RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_3.32.1.2.bb b/poky/meta/recipes-gnome/epiphany/epiphany_3.32.1.2.bb new file mode 100644 index 000000000..ba2e851bb --- /dev/null +++ b/poky/meta/recipes-gnome/epiphany/epiphany_3.32.1.2.bb @@ -0,0 +1,20 @@ +SUMMARY = "WebKit based web browser for GNOME" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS = "libsoup-2.4 webkitgtk gtk+3 iso-codes avahi libnotify gcr \ + gsettings-desktop-schemas libxml2-native \ + glib-2.0 glib-2.0-native json-glib libdazzle" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gsettings distro_features_check upstream-version-is-even gettext +REQUIRED_DISTRO_FEATURES = "x11 opengl" + +SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@gnome_verdir("${PV}")}/${GNOMEBN}-${PV}.tar.${GNOME_COMPRESS_TYPE};name=archive \ + file://0002-help-meson.build-disable-the-use-of-yelp.patch \ + " +SRC_URI[archive.md5sum] = "93faec353e9f62519859e6164350fd5d" +SRC_URI[archive.sha256sum] = "a8284fb9bbc8b7914a154a8eac1598c8b59ae421e0d685146fb48198427926be" + +FILES_${PN} += "${datadir}/dbus-1 ${datadir}/gnome-shell/search-providers ${datadir}/metainfo" +RDEPENDS_${PN} = "iso-codes adwaita-icon-theme gsettings-desktop-schemas" diff --git a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb index c5de7a92a..7fef697f3 100644 --- a/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb +++ b/poky/meta/recipes-gnome/gdk-pixbuf/gdk-pixbuf_2.38.0.bb @@ -34,19 +34,7 @@ SRC_URI[sha256sum] = "dd50973c7757bcde15de6bcd3a6d462a445efd552604ae6435a0532fbb inherit meson pkgconfig gettext pixbufcache ptest-gnome upstream-version-is-even gobject-introspection gtk-doc lib_package -GTKDOC_ENABLE_FLAG = "-Ddocs=true" -GTKDOC_DISABLE_FLAG = "-Ddocs=false" - -GI_ENABLE_FLAG = "-Dgir=true" -GI_DISABLE_FLAG = "-Dgir=false" - -EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " +GIR_MESON_OPTION = 'gir' EXTRA_OEMESON_append = " ${@bb.utils.contains('PTEST_ENABLED', '1', '-Dinstalled_tests=true', '-Dinstalled_tests=false', d)}" diff --git a/poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch b/poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch deleted file mode 100644 index 4cfcabd38..000000000 --- a/poky/meta/recipes-gnome/gnome/gnome-doc-utils/0001-glib-gettext.m4-Update-AM_GLIB_GNU_GETTEXT-to-match-.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 426e38468463a4abb495cf6a269b9635b2107519 Mon Sep 17 00:00:00 2001 -From: Jussi Kukkonen -Date: Tue, 17 May 2016 13:51:24 +0300 -Subject: [PATCH] glib-gettext.m4: Update AM_GLIB_GNU_GETTEXT to match glib - -This avoids - error: m4_copy: won't overwrite defined macro: glib_DEFUN - -Signed-off-by: Jussi Kukkonen -Upstream-Status: Inappropriate [No upstream] ---- - m4/glib-gettext.m4 | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/m4/glib-gettext.m4 b/m4/glib-gettext.m4 -index 81f8fd2..e2b142b 100644 ---- a/m4/glib-gettext.m4 -+++ b/m4/glib-gettext.m4 -@@ -310,7 +310,7 @@ msgstr "" - # on various variables needed by the Makefile.in.in installed by - # glib-gettextize. - dnl --glib_DEFUN([GLIB_GNU_GETTEXT], -+AU_DEFUN([GLIB_GNU_GETTEXT], - [AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_HEADER_STDC])dnl - -@@ -381,7 +381,8 @@ glib_DEFUN([GLIB_GNU_GETTEXT], - rm -f po/POTFILES - sed -e "/^#/d" -e "/^\$/d" -e "s,.*, $posrcprefix& \\\\," -e "\$s/\(.*\) \\\\/\1/" \ - < $srcdir/po/POTFILES.in > po/POTFILES -- ]) -+ ] -+ [[$0: This macro is deprecated. You should use upstream gettext instead.]]) - - # AX_GLIB_DEFINE_LOCALEDIR(VARIABLE) - # ------------------------------- --- -2.1.4 - diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch index 80c9e71ad..5747d61c1 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Port-cross-compilation-support-to-meson.patch @@ -1,4 +1,4 @@ -From ea25a5a755bc839d5b504aac207f860ae68109bc Mon Sep 17 00:00:00 2001 +From 2b3bce1526b538dc2c7fa223eaf9808858aa1b06 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Thu, 15 Nov 2018 15:10:05 +0100 Subject: [PATCH] Port cross-compilation support to meson @@ -7,16 +7,16 @@ Upstream-Status: Pending Signed-off-by: Alexander Kanavin --- - gir/meson.build | 59 ++++++++++++++++++++++++++++++++++------------- - meson.build | 4 +++- - meson_options.txt | 20 ++++++++++++++++ - 3 files changed, 66 insertions(+), 17 deletions(-) + gir/meson.build | 62 ++++++++++++++++++++++++++++++++++------------- + meson.build | 4 ++- + meson_options.txt | 20 +++++++++++++++ + 3 files changed, 68 insertions(+), 18 deletions(-) diff --git a/gir/meson.build b/gir/meson.build -index 1cb514a..f873068 100644 +index 85ae575..327c134 100644 --- a/gir/meson.build +++ b/gir/meson.build -@@ -36,15 +36,27 @@ gir_files = [ +@@ -36,16 +36,29 @@ gir_files = [ typelibdir = join_paths(get_option('libdir'), 'girepository-1.0') install_data(gir_files, install_dir: girdir) @@ -25,6 +25,7 @@ index 1cb514a..f873068 100644 - girscanner, - '--output=@OUTPUT@', - '--no-libtool', +- '--quiet', - '--reparse-validate', - '--add-include-path', join_paths(meson.current_build_dir()), - '--add-include-path', join_paths(meson.current_source_dir()), @@ -34,6 +35,7 @@ index 1cb514a..f873068 100644 + 'g-ir-scanner', + '--output=@OUTPUT@', + '--no-libtool', ++ '--quiet', + '--reparse-validate', + '--add-include-path', join_paths(meson.current_build_dir()), + '--add-include-path', join_paths(meson.current_source_dir()), @@ -44,6 +46,7 @@ index 1cb514a..f873068 100644 + girscanner, + '--output=@OUTPUT@', + '--no-libtool', ++ '--quiet', + '--reparse-validate', + '--add-include-path', join_paths(meson.current_build_dir()), + '--add-include-path', join_paths(meson.current_source_dir()), @@ -53,7 +56,7 @@ index 1cb514a..f873068 100644 dep_type = glib_dep.type_name() if dep_type == 'internal' -@@ -57,6 +69,12 @@ if dep_type == 'internal' +@@ -58,6 +71,12 @@ if dep_type == 'internal' '--extra-library=glib-2.0', '--extra-library=gobject-2.0'] endif @@ -66,7 +69,7 @@ index 1cb514a..f873068 100644 # Take a glob and print to newlines globber = ''' from glob import glob -@@ -83,8 +101,8 @@ glib_command = scanner_command + [ +@@ -84,8 +103,8 @@ glib_command = scanner_command + [ if dep_type == 'pkgconfig' glib_command += ['--external-library', '--pkg=glib-2.0'] @@ -77,7 +80,7 @@ index 1cb514a..f873068 100644 glib_libincdir = join_paths(glib_libdir, 'glib-2.0', 'include') glib_files += join_paths(glib_incdir, 'gobject', 'glib-types.h') glib_files += join_paths(glib_libincdir, 'glibconfig.h') -@@ -338,7 +356,7 @@ endforeach +@@ -339,7 +358,7 @@ endforeach if giounix_dep.found() if dep_type == 'pkgconfig' gio_command += ['--pkg=gio-unix-2.0'] @@ -86,10 +89,10 @@ index 1cb514a..f873068 100644 # Get the installed gio-unix header list ret = run_command(python, '-c', globber.format(join_paths(giounix_includedir, 'gio', '*.h'))) if ret.returncode() != 0 -@@ -416,15 +434,24 @@ gir_files += custom_target('gir-girepository', - ] +@@ -422,15 +441,24 @@ gir_files += custom_target('gir-girepository', ) + typelibs = [] +if get_option('enable-gi-cross-wrapper') != '' + gircompiler_command = [get_option('enable-gi-cross-wrapper'), gircompiler.full_path(), '-o', '@OUTPUT@', '@INPUT@', + '--includedir', meson.current_build_dir(), @@ -103,7 +106,7 @@ index 1cb514a..f873068 100644 +endif + foreach gir : gir_files - custom_target('generate-typelib-@0@'.format(gir).underscorify(), + typelibs += custom_target('generate-typelib-@0@'.format(gir).underscorify(), input: gir, output: '@BASENAME@.typelib', depends: [gobject_gir, ], @@ -116,10 +119,10 @@ index 1cb514a..f873068 100644 install_dir: typelibdir, ) diff --git a/meson.build b/meson.build -index 17acd82..e0bb495 100644 +index 95bbd2b..f7baefd 100644 --- a/meson.build +++ b/meson.build -@@ -81,7 +81,9 @@ libffi_dep = dependency('libffi', +@@ -163,7 +163,9 @@ endif subdir('girepository') subdir('tools') subdir('giscanner') @@ -131,11 +134,11 @@ index 17acd82..e0bb495 100644 subdir('docs') subdir('tests') diff --git a/meson_options.txt b/meson_options.txt -index ee6958d..b168142 100644 +index 445a68a..a325511 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -25,3 +25,23 @@ option('python', type: 'string', value: 'python3', - option('gir-dir-prefix', type: 'string', + option('gir_dir_prefix', type: 'string', description: 'Intermediate prefix for gir installation under ${prefix}' ) + diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch index a91d22afa..a4f45a142 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Relocate-the-repository-directory-for-native-builds.patch @@ -1,4 +1,4 @@ -From 7ea8c83d84a05f686128e652a5447fb5f6fb68be Mon Sep 17 00:00:00 2001 +From 8f01066e935a7323ff6e53f27ed1b5fb74fa11eb Mon Sep 17 00:00:00 2001 From: Sascha Silbe Date: Fri, 8 Jun 2018 13:55:10 +0200 Subject: [PATCH] Relocate the repository directory for native builds @@ -21,7 +21,7 @@ Signed-off-by: Sascha Silbe 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/girepository/girepository.c b/girepository/girepository.c -index c1fa3d3..efa557e 100644 +index ca5dc2b..7a4d17f 100644 --- a/girepository/girepository.c +++ b/girepository/girepository.c @@ -21,6 +21,8 @@ @@ -42,7 +42,7 @@ index c1fa3d3..efa557e 100644 /** * SECTION:girepository * @short_description: GObject Introspection repository manager -@@ -188,9 +192,16 @@ init_globals (void) +@@ -212,9 +216,16 @@ init_globals (void) g_free (custom_dirs); } @@ -62,12 +62,12 @@ index c1fa3d3..efa557e 100644 typelib_search_path = g_slist_prepend (typelib_search_path, typelib_dir); diff --git a/girepository/meson.build b/girepository/meson.build -index 6a8c5b5..8892f2a 100644 +index 0261e1a..4cb646f 100644 --- a/girepository/meson.build +++ b/girepository/meson.build -@@ -27,7 +27,7 @@ girepo_internals_lib = static_library('girepository-internals', +@@ -36,7 +36,7 @@ girepo_internals_lib = static_library('girepository-internals', ], - c_args: gi_hidden_visibility_cflags, + c_args: gi_hidden_visibility_cflags + custom_c_args, include_directories : configinc, - dependencies: [girepo_gthash_dep, libffi_dep], + dependencies: [girepo_gthash_dep, libffi_dep, cc.find_library('dl')], diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch index 86cd4ead2..d1fdc068c 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch @@ -1,4 +1,4 @@ -From ca0fb17e268c176ac89df081b1efa4a42989f014 Mon Sep 17 00:00:00 2001 +From 8a57aa0ac6c2f00b9b7a7fc177431f7643399e70 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 23 Mar 2016 17:07:28 +0200 Subject: [PATCH] Revert an incomplete upstream attempt at cross-compile @@ -13,7 +13,7 @@ Signed-off-by: Alexander Kanavin 2 files changed, 10 deletions(-) diff --git a/common.mk b/common.mk -index b778f7a..e26c637 100644 +index 64fb02f..77e819d 100644 --- a/common.mk +++ b/common.mk @@ -24,12 +24,8 @@ INTROSPECTION_SCANNER_ARGS = \ @@ -30,10 +30,10 @@ index b778f7a..e26c637 100644 INTROSPECTION_COMPILER_ARGS = \ diff --git a/giscanner/gdumpparser.py b/giscanner/gdumpparser.py -index cd9d94d..b41772c 100644 +index 1730fee..26bab84 100644 --- a/giscanner/gdumpparser.py +++ b/giscanner/gdumpparser.py -@@ -161,12 +161,6 @@ blob containing data gleaned from GObject's primitive introspection.""" +@@ -156,12 +156,6 @@ blob containing data gleaned from GObject's primitive introspection.""" out_path = os.path.join(self._binary.tmpdir, 'dump.xml') args = [] diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch deleted file mode 100644 index e0402f8f4..000000000 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-configure.ac-make-GIR_DIR-configurable.patch +++ /dev/null @@ -1,68 +0,0 @@ -configure.ac: make GIR_DIR configurable - -Some .gir files such as GLib-2.0.gir are arch related which contain such -as lengths of pointers that they are different for 64 and 32 bit target. -It causes install file conflicts for multilib when intall -gobject-introspection and lib32-gobject-introspection both. - -Add configure option 'with-gir-dir-prefix' for autotools to make .gir -could be installed to a configured path such as ${libdir}. And update -girdir in .pc files as well. - -Upstream-Status: Accepted [https://gitlab.gnome.org/GNOME/gobject-introspection/commit/3301c7e] - -Signed-off-by: Kai Kang ---- - configure.ac | 7 +++++-- - gobject-introspection-1.0.pc.in | 2 +- - gobject-introspection-no-export-1.0.pc.in | 2 +- - 3 files changed, 7 insertions(+), 4 deletions(-) - -diff --git a/configure.ac b/configure.ac -index b4294c57..60506947 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -114,9 +114,12 @@ GIR_SUFFIX="gir-1.0" - AC_SUBST(GIR_SUFFIX) - AC_DEFINE_UNQUOTED(GIR_SUFFIX, "$GIR_SUFFIX", [Name of the gir directory]) - --GIR_DIR="$EXPANDED_DATADIR/$GIR_SUFFIX" -+AC_ARG_WITH([gir-dir-prefix], -+ [AS_HELP_STRING([--with-gir-dir-prefix], [Directory prefix for gir installation])], -+ [GIR_DIR_PREFIX="$withval"], [GIR_DIR_PREFIX="$EXPANDED_DATADIR"]) -+GIR_DIR="$GIR_DIR_PREFIX/$GIR_SUFFIX" - AC_SUBST(GIR_DIR) --AC_DEFINE_UNQUOTED(GIR_DIR, "$GIR_DIR", [Director prefix for gir installation]) -+AC_DEFINE_UNQUOTED(GIR_DIR, "$GIR_DIR", [Directory prefix for gir installation]) - - PKG_CHECK_MODULES(GLIB, [glib-2.0 >= 2.58.0]) - -diff --git a/gobject-introspection-1.0.pc.in b/gobject-introspection-1.0.pc.in -index a08b5d27..3409856c 100644 ---- a/gobject-introspection-1.0.pc.in -+++ b/gobject-introspection-1.0.pc.in -@@ -10,7 +10,7 @@ g_ir_scanner=${bindir}/g-ir-scanner - g_ir_compiler=${bindir}/g-ir-compiler@EXEEXT@ - g_ir_generate=${bindir}/g-ir-generate@EXEEXT@ - gidatadir=${datadir}/gobject-introspection-1.0 --girdir=${datadir}/gir-1.0 -+girdir=@GIR_DIR@ - typelibdir=${libdir}/girepository-1.0 - - Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@ -diff --git a/gobject-introspection-no-export-1.0.pc.in b/gobject-introspection-no-export-1.0.pc.in -index d214d22d..745aaade 100644 ---- a/gobject-introspection-no-export-1.0.pc.in -+++ b/gobject-introspection-no-export-1.0.pc.in -@@ -9,7 +9,7 @@ includedir=@includedir@ - g_ir_scanner=${bindir}/g-ir-scanner - g_ir_compiler=${bindir}/g-ir-compiler@EXEEXT@ - g_ir_generate=${bindir}/g-ir-generate@EXEEXT@ --girdir=${datadir}/gir-1.0 -+girdir=@GIR_DIR@ - typelibdir=${libdir}/girepository-1.0 - - Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@ --- -2.17.0 - diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch index e9338e92e..ddd955354 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-add-a-lib-dirs-envvar-option.patch @@ -1,4 +1,4 @@ -From 3fea5e83803f4cfef21b2e06e37a6ba56f2bb914 Mon Sep 17 00:00:00 2001 +From 6653c28f0b76aad86e26c512b03efcec6d9d9e95 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 3 Jan 2018 17:02:01 +0200 Subject: [PATCH] giscanner: add a --lib-dirs-envvar option @@ -19,10 +19,10 @@ Signed-off-by: Alexander Kanavin 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/giscanner/ccompiler.py b/giscanner/ccompiler.py -index c003828..8a8ba2b 100644 +index 32c9296..3fb262b 100644 --- a/giscanner/ccompiler.py +++ b/giscanner/ccompiler.py -@@ -109,7 +109,7 @@ class CCompiler(object): +@@ -174,7 +174,7 @@ class CCompiler(object): self._cflags_no_deprecation_warnings = "-Wno-deprecated-declarations" @@ -31,7 +31,7 @@ index c003828..8a8ba2b 100644 # An "internal" link is where the library to be introspected # is being built in the current directory. -@@ -119,7 +119,7 @@ class CCompiler(object): +@@ -184,7 +184,7 @@ class CCompiler(object): if os.name == 'nt': runtime_path_envvar = ['LIB', 'PATH'] else: @@ -41,10 +41,10 @@ index c003828..8a8ba2b 100644 # (This flag is not supported nor needed for Visual C++) args.append('-L.') diff --git a/giscanner/dumper.py b/giscanner/dumper.py -index 2c668f5..2e515a0 100644 +index 2b851a5..10a7c39 100644 --- a/giscanner/dumper.py +++ b/giscanner/dumper.py -@@ -249,7 +249,8 @@ class DumpCompiler(object): +@@ -244,7 +244,8 @@ class DumpCompiler(object): libtool, self._options.libraries, self._options.extra_libraries, @@ -55,10 +55,10 @@ index 2c668f5..2e515a0 100644 else: diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py -index 5cb793e..87227e2 100644 +index 9013562..9c9fe12 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py -@@ -132,6 +132,9 @@ def _get_option_parser(): +@@ -126,6 +126,9 @@ def _get_option_parser(): parser.add_option("", "--use-ldd-wrapper", action="store", dest="ldd_wrapper", default=None, help="wrapper to use instead of ldd (useful when cross-compiling)") diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch index 9167f042e..b484b5e9e 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch @@ -1,4 +1,4 @@ -From f128cbeead687bfc6532cc1f2cc3e2dc5a2b5b30 Mon Sep 17 00:00:00 2001 +From f742da8b3913f4818d3f419117076afe62f4dbf4 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Wed, 5 Sep 2018 16:46:52 +0200 Subject: [PATCH] giscanner: ignore error return codes from ldd-wrapper @@ -8,15 +8,16 @@ It is not an error per se, but it breaks subprocess.check_output(). Upstream-Status: Inappropriate [oe-core specific] Signed-off-by: Alexander Kanavin + --- giscanner/shlibs.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py -index 01d21a3..3bd3250 100644 +index d67df95..80352a6 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py -@@ -108,7 +108,7 @@ def _resolve_non_libtool(options, binary, libraries): +@@ -102,7 +102,7 @@ def _resolve_non_libtool(options, binary, libraries): args.extend(['otool', '-L', binary.args[0]]) else: args.extend(['ldd', binary.args[0]]) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-meson.build-disable-tests-when-cross-compiling.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-meson.build-disable-tests-when-cross-compiling.patch new file mode 100644 index 000000000..c4951b22b --- /dev/null +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0001-meson.build-disable-tests-when-cross-compiling.patch @@ -0,0 +1,26 @@ +From 2c384187cc22113c0c9b1cd233948118f7c085ef Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Mon, 25 Mar 2019 13:28:48 +0100 +Subject: [PATCH] meson.build: disable tests when cross-compiling + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/gobject-introspection/merge_requests/64] +Signed-off-by: Alexander Kanavin +--- + meson.build | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index 2544ff3..4c16fe5 100644 +--- a/meson.build ++++ b/meson.build +@@ -168,7 +168,9 @@ if get_option('enable-introspection-data') == true + endif + subdir('examples') + subdir('docs') +-subdir('tests') ++if not meson.is_cross_build() ++ subdir('tests') ++endif + + install_data('Makefile.introspection', install_dir: join_paths(get_option('datadir'), 'gobject-introspection-1.0')) + install_data('m4/introspection.m4', install_dir: join_paths(get_option('datadir'), 'aclocal')) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch index 03ef2b005..e4fffcf61 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch @@ -1,4 +1,4 @@ -From a28cc8413b68bec5b4cf2ee5f37b40a8965490a5 Mon Sep 17 00:00:00 2001 +From 2335d22e4c64db3d5dfc16ac65468b9dd66db8ac Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 19 Oct 2015 18:29:21 +0300 Subject: [PATCH] configure.ac: add host-gi, gi-cross-wrapper, gi-ldd-wrapper @@ -34,7 +34,7 @@ Signed-off-by: Alexander Kanavin 4 files changed, 87 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am -index 44ed115..2a1fa56 100644 +index 952bf71..797a3bd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -21,7 +21,9 @@ include Makefile-cmph.am @@ -48,7 +48,7 @@ index 44ed115..2a1fa56 100644 ## Process this file with automake to produce Makefile.in diff --git a/common.mk b/common.mk -index e26c637..9f3a65f 100644 +index 77e819d..379ab53 100644 --- a/common.mk +++ b/common.mk @@ -6,6 +6,15 @@ @@ -132,10 +132,10 @@ index e26c637..9f3a65f 100644 INTROSPECTION_DOCTOOL_ARGS = \ --add-include-path=$(srcdir) \ diff --git a/configure.ac b/configure.ac -index d48e6c3..ed5f8a2 100644 +index 885da70..cd8108b 100644 --- a/configure.ac +++ b/configure.ac -@@ -367,6 +367,48 @@ dnl +@@ -383,6 +383,48 @@ dnl AM_CONDITIONAL(MSVC_BASE_NO_TOOLSET_SET, [test x$MSVC_BASE_TOOLSET = x]) AM_CONDITIONAL(MSVC_NO_TOOLSET_SET, [test x$MSVC_TOOLSET = x]) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-g-ir-tools-respect-gir_dir_prefix.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-g-ir-tools-respect-gir_dir_prefix.patch deleted file mode 100644 index 5e4176725..000000000 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0002-g-ir-tools-respect-gir_dir_prefix.patch +++ /dev/null @@ -1,76 +0,0 @@ -g-ir-tools: respect gir_dir_prefix - -Configure option gir_dir_prefix is used to configure install dir for -.gir files, so add its value to include file search paths. - -Upstream-Status: Accepted [https://gitlab.gnome.org/GNOME/gobject-introspection/commit/3fe995a] - -Signed-off-by: Kai Kang ---- - Makefile-tools.am | 2 +- - giscanner/transformer.py | 1 + - tests/warn/warningtester.py | 1 + - tools/g-ir-tool-template.in | 10 ++++++++++ - 6 files changed, 15 insertions(+), 2 deletions(-) - -diff --git a/Makefile-tools.am b/Makefile-tools.am -index c70d9850..fcaf1e01 100644 ---- a/Makefile-tools.am -+++ b/Makefile-tools.am -@@ -9,7 +9,7 @@ EXTRA_DIST += \ - tools/g-ir-tool-template.in \ - tools/meson.build - --TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,\/usr\/bin\/env\ $(PYTHON), -+TOOL_SUBSTITUTIONS = -e s,@libdir\@,$(libdir), -e s,@datarootdir\@,$(datarootdir), -e s,@PYTHON_CMD\@,\/usr\/bin\/env\ $(PYTHON), -e s,@GIR_DIR\@,$(GIR_DIR),g - - g-ir-scanner: tools/g-ir-tool-template.in _giscanner.la Makefile - $(AM_V_GEN) sed $(TOOL_SUBSTITUTIONS) -e s,@TOOL_MODULE\@,scannermain, -e s,@TOOL_FUNCTION\@,scanner_main, $< > $@.tmp && mv $@.tmp $@ -diff --git a/giscanner/transformer.py b/giscanner/transformer.py -index 335e229f..2c412339 100644 ---- a/giscanner/transformer.py -+++ b/giscanner/transformer.py -@@ -184,6 +184,7 @@ None.""" - def _get_gi_data_dirs(self): - data_dirs = utils.get_system_data_dirs() - data_dirs.append(DATADIR) -+ data_dirs.append(GIRDIR) - if os.name != 'nt': - # For backwards compatibility, was always unconditionally added to the list. - data_dirs.append('/usr/share') -diff --git a/tests/warn/warningtester.py b/tests/warn/warningtester.py -index f17c8889..be5aec13 100644 ---- a/tests/warn/warningtester.py -+++ b/tests/warn/warningtester.py -@@ -18,6 +18,7 @@ sys.path.insert(0, path) - - # Not correct, but enough to get the tests going uninstalled - builtins.__dict__['DATADIR'] = path -+builtins.__dict__['GIRDIR'] = '' - - from giscanner.annotationparser import GtkDocCommentBlockParser - from giscanner.ast import Include, Namespace -diff --git a/tools/g-ir-tool-template.in b/tools/g-ir-tool-template.in -index ed33d16b..b9cf0911 100755 ---- a/tools/g-ir-tool-template.in -+++ b/tools/g-ir-tool-template.in -@@ -60,6 +60,16 @@ if not os.path.isdir(os.path.join(datadir, 'gir-1.0')): - - builtins.__dict__['DATADIR'] = datadir - -+# Respect gir_dir_prefix for meson and autotools -+girdir = '' -+# for meson -+if '@gir_dir_prefix@' and not '@gir_dir_prefix@'.startswith('@'): -+ girdir = os.path.abspath(os.path.join(filedir, '..', '@gir_dir_prefix@')) -+# for autotools -+elif '@GIR_DIR@' and not '@GIR_DIR@'.startswith('@'): -+ girdir = os.path.dirname(os.path.abspath('@GIR_DIR@')) -+builtins.__dict__['GIRDIR'] = girdir -+ - # Again, relative paths first so that the installation prefix is relocatable - pylibdir = os.path.abspath(os.path.join(filedir, '..', 'lib', 'gobject-introspection')) - --- -2.17.0 - diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch index 45fe27ad6..b954dcebd 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0003-giscanner-add-use-binary-wrapper-option.patch @@ -1,4 +1,4 @@ -From 46dbe963aa6435591c87e788cdb54bc0daeac42e Mon Sep 17 00:00:00 2001 +From 5f985fd8a24764ccb38af6335d4584d7e33fc3a1 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Mon, 19 Oct 2015 18:26:40 +0300 Subject: [PATCH] giscanner: add --use-binary-wrapper option @@ -16,10 +16,10 @@ Signed-off-by: Alexander Kanavin 1 file changed, 14 insertions(+) diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py -index ccb14e9..061def0 100644 +index c004fb1..0b6a2d2 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py -@@ -126,6 +126,9 @@ def _get_option_parser(): +@@ -120,6 +120,9 @@ def _get_option_parser(): parser.add_option("", "--program", action="store", dest="program", default=None, help="program to execute") @@ -29,7 +29,7 @@ index ccb14e9..061def0 100644 parser.add_option("", "--program-arg", action="append", dest="program_args", default=[], help="extra arguments to program") -@@ -418,6 +421,17 @@ def create_binary(transformer, options, args): +@@ -417,6 +420,17 @@ def create_binary(transformer, options, args): gdump_parser.get_error_quark_functions()) shlibs = resolve_shlibs(options, binary, options.libraries) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch index 2e36b64ba..79264ed08 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0004-giscanner-add-a-use-ldd-wrapper-option.patch @@ -1,4 +1,4 @@ -From eba2b999e81d81b5f43bb1f0ab33881786bebdec Mon Sep 17 00:00:00 2001 +From cba7807888a4a1f1d630d16c51c89859209334b3 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 30 Oct 2015 16:28:46 +0200 Subject: [PATCH] giscanner: add a --use-ldd-wrapper option @@ -15,10 +15,10 @@ Signed-off-by: Alexander Kanavin 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py -index 061def0..5cb793e 100644 +index 0b6a2d2..9013562 100644 --- a/giscanner/scannermain.py +++ b/giscanner/scannermain.py -@@ -129,6 +129,9 @@ def _get_option_parser(): +@@ -123,6 +123,9 @@ def _get_option_parser(): parser.add_option("", "--use-binary-wrapper", action="store", dest="wrapper", default=None, help="wrapper to use for running programs (useful when cross-compiling)") @@ -29,10 +29,10 @@ index 061def0..5cb793e 100644 action="append", dest="program_args", default=[], help="extra arguments to program") diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py -index 7b7b2d0..01d21a3 100644 +index 2c61f2f..d67df95 100644 --- a/giscanner/shlibs.py +++ b/giscanner/shlibs.py -@@ -102,7 +102,9 @@ def _resolve_non_libtool(options, binary, libraries): +@@ -96,7 +96,9 @@ def _resolve_non_libtool(options, binary, libraries): args.extend(libtool) args.append('--mode=execute') platform_system = platform.system() diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch index 2a31117b1..74622680d 100644 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch @@ -1,4 +1,4 @@ -From a97d060933932e478c03f1de9513b69bc459eefc Mon Sep 17 00:00:00 2001 +From 74dab0fb6104ab6b715a24b783f8e8dfa5f83617 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Thu, 8 Oct 2015 18:30:35 +0300 Subject: [PATCH] Prefix pkg-config paths with PKG_CONFIG_SYSROOT_DIR @@ -16,7 +16,7 @@ Signed-off-by: Alexander Kanavin 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/Makefile-gir.am b/Makefile-gir.am -index 2cd7358..eaf0afd 100644 +index b59b0a6..24a50c2 100644 --- a/Makefile-gir.am +++ b/Makefile-gir.am @@ -58,8 +58,8 @@ else @@ -41,7 +41,7 @@ index 2cd7358..eaf0afd 100644 GOBJECT_LIBRARY=gobject-2.0 -@@ -123,8 +123,8 @@ GObject_2_0_gir_FILES = \ +@@ -124,8 +124,8 @@ GObject_2_0_gir_FILES = \ BUILT_GIRSOURCES += GObject-2.0.gir # gmodule @@ -52,7 +52,7 @@ index 2cd7358..eaf0afd 100644 GMODULE_LIBRARY=gmodule-2.0 -@@ -149,13 +149,13 @@ GModule_2_0_gir_FILES = $(GLIB_INCLUDEDIR)/gmodule.h \ +@@ -150,13 +150,13 @@ GModule_2_0_gir_FILES = $(GLIB_INCLUDEDIR)/gmodule.h \ BUILT_GIRSOURCES += GModule-2.0.gir # gio @@ -66,7 +66,7 @@ index 2cd7358..eaf0afd 100644 if HAVE_GIO_UNIX -GIO_UNIX_INCLUDEDIR = $(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0 +GIO_UNIX_INCLUDEDIR = $(PKG_CONFIG_SYSROOT_DIR)$(shell "${PKG_CONFIG}" --variable=includedir gio-unix-2.0)/gio-unix-2.0 - GIO_UNIX_HDRS = $(GIO_UNIX_INCLUDEDIR)/gio/*.h + GIO_UNIX_HDRS = $(wildcard $(GIO_UNIX_INCLUDEDIR)/gio/*.h) GIO_UNIX_PACKAGES = gio-unix-2.0 else diff --git a/m4/introspection.m4 b/m4/introspection.m4 diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch deleted file mode 100644 index 8eec5f867..000000000 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection/0010-meson-add-option-gir-dir-prefix.patch +++ /dev/null @@ -1,66 +0,0 @@ -From bbc34f00fd30a13eafc607a956de60d822260355 Mon Sep 17 00:00:00 2001 -From: Kai Kang -Date: Fri, 14 Sep 2018 01:26:38 -0700 -Subject: [PATCH] meson: add option 'gir-dir-prefix' - -Add option 'gir-dir-prefix' for meson to make the installation path of -.gir files could be configured which has been done for autoconf. - -Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/gobject-introspection/commit/3938b86f5289c2b28a5ec42965b8da4b509445c4] -Signed-off-by: Kai Kang ---- - gir/meson.build | 1 - - meson.build | 8 +++++++- - meson_options.txt | 4 ++++ - 3 files changed, 11 insertions(+), 2 deletions(-) - -diff --git a/gir/meson.build b/gir/meson.build -index 607bbc4..1cb514a 100644 ---- a/gir/meson.build -+++ b/gir/meson.build -@@ -34,7 +34,6 @@ gir_files = [ - ] - - typelibdir = join_paths(get_option('libdir'), 'girepository-1.0') --girdir = join_paths(get_option('datadir'), 'gir-1.0') - install_data(gir_files, install_dir: girdir) - - scanner_command = [ -diff --git a/meson.build b/meson.build -index a1432f7..17acd82 100644 ---- a/meson.build -+++ b/meson.build -@@ -18,7 +18,12 @@ python = pymod.find_installation(get_option('python')) - cc = meson.get_compiler('c') - config = configuration_data() - config.set_quoted('GIR_SUFFIX', 'gir-1.0') --config.set_quoted('GIR_DIR', join_paths(get_option('prefix'), get_option('datadir'), 'gir-1.0')) -+gir_dir_prefix = get_option('gir-dir-prefix') -+if gir_dir_prefix == '' -+ gir_dir_prefix = get_option('datadir') -+endif -+girdir = join_paths(get_option('prefix'), gir_dir_prefix, 'gir-1.0') -+config.set_quoted('GIR_DIR', girdir) - config.set_quoted('GOBJECT_INTROSPECTION_LIBDIR', join_paths(get_option('prefix'), get_option('libdir'))) - - foreach type : ['char', 'short', 'int', 'long'] -@@ -93,6 +98,7 @@ pkgconfig_conf.set('libdir', join_paths('${prefix}', get_option('libdir'))) - pkgconfig_conf.set('datarootdir', join_paths('${prefix}', get_option('datadir'))) - pkgconfig_conf.set('datadir', '${datarootdir}') - pkgconfig_conf.set('includedir', join_paths('${prefix}', get_option('includedir'))) -+pkgconfig_conf.set('GIR_DIR', join_paths('${prefix}', gir_dir_prefix, 'gir-1.0')) - if host_system == 'windows' or host_system == 'cygwin' - pkgconfig_conf.set('EXEEXT', '.exe') - else -diff --git a/meson_options.txt b/meson_options.txt -index 49726be..ee6958d 100644 ---- a/meson_options.txt -+++ b/meson_options.txt -@@ -21,3 +21,7 @@ option('cairo-libname', type: 'string', - option('python', type: 'string', value: 'python3', - description: 'Path or name of the Python interpreter to build for' - ) -+ -+option('gir-dir-prefix', type: 'string', -+ description: 'Intermediate prefix for gir installation under ${prefix}' -+) diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb deleted file mode 100644 index 4ff9b7bf4..000000000 --- a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.58.3.bb +++ /dev/null @@ -1,206 +0,0 @@ -SUMMARY = "Middleware layer between GObject-using C libraries and language bindings" -HOMEPAGE = "https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" -BUGTRACKER = "https://bugzilla.gnome.org/" -SECTION = "libs" -LICENSE = "LGPLv2+ & GPLv2+" -LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \ - file://tools/compiler.c;endline=20;md5=fc5007fc20022720e6c0b0cdde41fabd \ - file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \ - file://girepository/giregisteredtypeinfo.c;endline=21;md5=661847611ae6979465415f31a759ba27 \ - " - -SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-${PV}.tar.xz \ - file://0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch \ - file://0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch \ - file://0003-giscanner-add-use-binary-wrapper-option.patch \ - file://0004-giscanner-add-a-use-ldd-wrapper-option.patch \ - file://0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \ - file://0001-giscanner-add-a-lib-dirs-envvar-option.patch \ - file://0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch \ - file://0001-configure.ac-make-GIR_DIR-configurable.patch \ - file://0002-g-ir-tools-respect-gir_dir_prefix.patch \ - file://0010-meson-add-option-gir-dir-prefix.patch \ - file://0001-Port-cross-compilation-support-to-meson.patch \ - " - -SRC_URI[md5sum] = "182432c1f33886be8f4da073218b597d" -SRC_URI[sha256sum] = "025b632bbd944dcf11fc50d19a0ca086b83baf92b3e34936d008180d28cdc3c8" - -SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch" - -inherit meson pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script - -MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner" - -DEPENDS_append = " libffi zlib glib-2.0 python3 flex-native bison-native autoconf-archive" - -# target build needs qemu to run temporary introspection binaries created -# on the fly by g-ir-scanner and a native version of itself to run -# native versions of its own tools during build. -# Also prelink-rtld is used to find out library dependencies of introspection binaries -# (standard ldd doesn't work when cross-compiling). -DEPENDS_class-target_append = " gobject-introspection-native qemu-native prelink-native" - -# needed for writing out the qemu wrapper script -export STAGING_DIR_HOST -export B - -PACKAGECONFIG ?= "" -PACKAGECONFIG[doctool] = "-Ddoctool=true,-Ddoctool=false,python3-mako," - -# Configure target build to use native tools of itself and to use a qemu wrapper -# and optionally to generate introspection data -EXTRA_OEMESON_class-target = " \ - -Denable-host-gi=true \ - -Denable-gi-cross-wrapper=${B}/g-ir-scanner-qemuwrapper \ - -Denable-gi-ldd-wrapper=${B}/g-ir-scanner-lddwrapper \ - -Dpkgconfig-sysroot-path=${PKG_CONFIG_SYSROOT_DIR} \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Denable-introspection-data=true', '-Denable-introspection-data=false', d)} \ - ${@'-Dgir-dir-prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \ -" - -# Need to ensure ld.so.conf exists so prelink-native works -# both before we build and if we install from sstate -do_configure[prefuncs] += "gobject_introspection_preconfigure" -python gobject_introspection_preconfigure () { - oe.utils.write_ld_so_conf(d) -} - -do_configure_prepend_class-native() { - # Tweak the native python scripts so that they don't refer to the - # full path of native python binary (the solution is taken from glib-2.0 recipe) - # This removes the risk of exceeding Linux kernel's shebang line limit (128 bytes) - sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in -} - -do_configure_prepend_class-target() { - # Write out a qemu wrapper that will be given to gi-scanner so that it - # can run target helper binaries through that. - qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}" - cat > ${B}/g-ir-scanner-qemuwrapper << EOF -#!/bin/sh -# Use a modules directory which doesn't exist so we don't load random things -# which may then get deleted (or their dependencies) and potentially segfault -export GIO_MODULE_DIR=${STAGING_LIBDIR}/gio/modules-dummy - -$qemu_binary "\$@" -if [ \$? -ne 0 ]; then - echo "If the above error message is about missing .so libraries, then setting up GIR_EXTRA_LIBS_PATH in the recipe should help." - echo "(typically like this: GIR_EXTRA_LIBS_PATH=\"$""{B}/something/.libs\" )" - exit 1 -fi -EOF - chmod +x ${B}/g-ir-scanner-qemuwrapper - - # Write out a wrapper for g-ir-scanner itself, which will be used when building introspection files - # for glib-based packages. This wrapper calls the native version of the scanner, and tells it to use - # a qemu wrapper for running transient target binaries produced by the scanner, and an include directory - # from the target sysroot. - cat > ${B}/g-ir-scanner-wrapper << EOF -#!/bin/sh -# This prevents g-ir-scanner from writing cache data to $HOME -export GI_SCANNER_DISABLE_CACHE=1 - -g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@" -EOF - chmod +x ${B}/g-ir-scanner-wrapper - - # Write out a wrapper for g-ir-compiler, which runs the target version of it through qemu. - # g-ir-compiler writes out the raw content of a C struct to disk, and therefore is architecture dependent. - cat > ${B}/g-ir-compiler-wrapper << EOF -#!/bin/sh -${STAGING_BINDIR}/g-ir-scanner-qemuwrapper ${STAGING_BINDIR}/g-ir-compiler "\$@" -EOF - chmod +x ${B}/g-ir-compiler-wrapper - - # Write out a wrapper to use instead of ldd, which does not work when a binary is built - # for a different architecture - cat > ${B}/g-ir-scanner-lddwrapper << EOF -#!/bin/sh -prelink-rtld --root=$STAGING_DIR_HOST "\$@" -EOF - chmod +x ${B}/g-ir-scanner-lddwrapper - - # Also tweak the target python scripts so that they don't refer to the - # native version of python binary (the solution is taken from glib-2.0 recipe) - sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in -} - -do_compile_prepend() { - # This prevents g-ir-scanner from writing cache data to $HOME - export GI_SCANNER_DISABLE_CACHE=1 - - # Needed to run g-ir unit tests, which won't be able to find the built libraries otherwise - export GIR_EXTRA_LIBS_PATH=$B/.libs -} - -# Our wrappers need to be available system-wide, because they will be used -# to build introspection files for all other gobject-based packages -do_install_append_class-target() { - install -d ${D}${bindir}/ - install ${B}/g-ir-scanner-qemuwrapper ${D}${bindir}/ - install ${B}/g-ir-scanner-wrapper ${D}${bindir}/ - install ${B}/g-ir-compiler-wrapper ${D}${bindir}/ - install ${B}/g-ir-scanner-lddwrapper ${D}${bindir}/ -} - -# we need target versions of introspection tools in sysroot so that they can be run via qemu -# when building introspection files in other packages -SYSROOT_DIRS_append_class-target = " ${bindir}" - -SYSROOT_PREPROCESS_FUNCS_append_class-target = " gi_binaries_sysroot_preprocess" -gi_binaries_sysroot_preprocess() { - # Tweak the binary names in the introspection pkgconfig file, so that it - # picks up our wrappers which do the cross-compile and qemu magic. - sed -i \ - -e "s|g_ir_scanner=.*|g_ir_scanner=${bindir}/g-ir-scanner-wrapper|" \ - -e "s|g_ir_compiler=.*|g_ir_compiler=${bindir}/g-ir-compiler-wrapper|" \ - ${SYSROOT_DESTDIR}${libdir}/pkgconfig/gobject-introspection-1.0.pc -} - -SYSROOT_PREPROCESS_FUNCS_append = " gi_ldsoconf_sysroot_preprocess" -gi_ldsoconf_sysroot_preprocess () { - mkdir -p ${SYSROOT_DESTDIR}${bindir} - dest=${SYSROOT_DESTDIR}${bindir}/postinst-ldsoconf-${PN} - echo "#!/bin/sh" > $dest - echo "mkdir -p ${STAGING_DIR_TARGET}${sysconfdir}" >> $dest - echo "echo ${base_libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest - echo "echo ${libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest - chmod 755 $dest -} - -# Remove wrapper files from the package, only used for cross-compiling -PACKAGE_PREPROCESS_FUNCS += "gi_package_preprocess" -gi_package_preprocess() { - rm -f ${PKGD}${bindir}/g-ir-scanner-qemuwrapper - rm -f ${PKGD}${bindir}/g-ir-scanner-wrapper - rm -f ${PKGD}${bindir}/g-ir-compiler-wrapper - rm -f ${PKGD}${bindir}/g-ir-scanner-lddwrapper -} - -SSTATE_SCAN_FILES += "g-ir-scanner-qemuwrapper g-ir-scanner-wrapper g-ir-compiler-wrapper g-ir-scanner-lddwrapper Gio-2.0.gir postinst-ldsoconf-${PN}" - -# .typelib files are needed at runtime and so they go to the main package -FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib" - -# .gir files go to dev package, as they're needed for developing (but not for running) -# things that depends on introspection. -FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir" -FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc" - -# These are used by gobject-based packages -# to generate transient introspection binaries -FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/gdump.c \ - ${datadir}/gobject-introspection-1.0/Makefile.introspection" - -# These are used by dependent packages (e.g. pygobject) to build their -# testsuites. -FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/tests/*.c \ - ${datadir}/gobject-introspection-1.0/tests/*.h" - -FILES_${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/" -FILES_${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a" - -RDEPENDS_${PN} = "python3-pickle python3-xml" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.60.1.bb b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.60.1.bb new file mode 100644 index 000000000..40beab0c4 --- /dev/null +++ b/poky/meta/recipes-gnome/gobject-introspection/gobject-introspection_1.60.1.bb @@ -0,0 +1,206 @@ +SUMMARY = "Middleware layer between GObject-using C libraries and language bindings" +HOMEPAGE = "https://wiki.gnome.org/action/show/Projects/GObjectIntrospection" +BUGTRACKER = "https://bugzilla.gnome.org/" +SECTION = "libs" +LICENSE = "LGPLv2+ & GPLv2+" +LIC_FILES_CHKSUM = "file://COPYING;md5=c434e8128a68bedd59b80b2ac1eb1c4a \ + file://tools/compiler.c;endline=20;md5=fc5007fc20022720e6c0b0cdde41fabd \ + file://giscanner/sourcescanner.c;endline=22;md5=194d6e0c1d00662f32d030ce44de8d39 \ + file://girepository/giregisteredtypeinfo.c;endline=21;md5=661847611ae6979465415f31a759ba27 \ + " + +SRC_URI = "${GNOME_MIRROR}/${BPN}/${@oe.utils.trim_version("${PV}", 2)}/${BPN}-${PV}.tar.xz \ + file://0001-Revert-an-incomplete-upstream-attempt-at-cross-compi.patch \ + file://0002-configure.ac-add-host-gi-gi-cross-wrapper-gi-ldd-wra.patch \ + file://0003-giscanner-add-use-binary-wrapper-option.patch \ + file://0004-giscanner-add-a-use-ldd-wrapper-option.patch \ + file://0005-Prefix-pkg-config-paths-with-PKG_CONFIG_SYSROOT_DIR-.patch \ + file://0001-giscanner-add-a-lib-dirs-envvar-option.patch \ + file://0001-giscanner-ignore-error-return-codes-from-ldd-wrapper.patch \ + file://0001-Port-cross-compilation-support-to-meson.patch \ + file://0001-meson.build-disable-tests-when-cross-compiling.patch \ + " + +SRC_URI[md5sum] = "46fc8a98f6563e64947ac3d574632525" +SRC_URI[sha256sum] = "d844d1499ecd36f3ec8a3573616186d36626ec0c9a7981939e99aa02e9c824b3" + +SRC_URI_append_class-native = " file://0001-Relocate-the-repository-directory-for-native-builds.patch" + +inherit meson pkgconfig gtk-doc python3native qemu gobject-introspection-data upstream-version-is-even multilib_script + +GTKDOC_MESON_OPTION = "gtk_doc" + +MULTILIB_SCRIPTS = "${PN}:${bindir}/g-ir-annotation-tool ${PN}:${bindir}/g-ir-scanner" + +DEPENDS_append = " libffi zlib glib-2.0 python3 flex-native bison-native autoconf-archive" + +# target build needs qemu to run temporary introspection binaries created +# on the fly by g-ir-scanner and a native version of itself to run +# native versions of its own tools during build. +# Also prelink-rtld is used to find out library dependencies of introspection binaries +# (standard ldd doesn't work when cross-compiling). +DEPENDS_class-target_append = " gobject-introspection-native qemu-native prelink-native" + +# needed for writing out the qemu wrapper script +export STAGING_DIR_HOST +export B + +PACKAGECONFIG ?= "" +PACKAGECONFIG[doctool] = "-Ddoctool=true,-Ddoctool=false,python3-mako," + +# Configure target build to use native tools of itself and to use a qemu wrapper +# and optionally to generate introspection data +EXTRA_OEMESON_class-target = " \ + -Denable-host-gi=true \ + -Denable-gi-cross-wrapper=${B}/g-ir-scanner-qemuwrapper \ + -Denable-gi-ldd-wrapper=${B}/g-ir-scanner-lddwrapper \ + -Dpkgconfig-sysroot-path=${PKG_CONFIG_SYSROOT_DIR} \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-Denable-introspection-data=true', '-Denable-introspection-data=false', d)} \ + ${@'-Dgir_dir_prefix=${libdir}' if d.getVar('MULTILIBS') else ''} \ +" + +# Need to ensure ld.so.conf exists so prelink-native works +# both before we build and if we install from sstate +do_configure[prefuncs] += "gobject_introspection_preconfigure" +python gobject_introspection_preconfigure () { + oe.utils.write_ld_so_conf(d) +} + +do_configure_prepend_class-native() { + # Tweak the native python scripts so that they don't refer to the + # full path of native python binary (the solution is taken from glib-2.0 recipe) + # This removes the risk of exceeding Linux kernel's shebang line limit (128 bytes) + sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in +} + +do_configure_prepend_class-target() { + # Write out a qemu wrapper that will be given to gi-scanner so that it + # can run target helper binaries through that. + qemu_binary="${@qemu_wrapper_cmdline(d, '$STAGING_DIR_HOST', ['\\$GIR_EXTRA_LIBS_PATH','.libs','$STAGING_DIR_HOST/${libdir}','$STAGING_DIR_HOST/${base_libdir}'])}" + cat > ${B}/g-ir-scanner-qemuwrapper << EOF +#!/bin/sh +# Use a modules directory which doesn't exist so we don't load random things +# which may then get deleted (or their dependencies) and potentially segfault +export GIO_MODULE_DIR=${STAGING_LIBDIR}/gio/modules-dummy + +$qemu_binary "\$@" +if [ \$? -ne 0 ]; then + echo "If the above error message is about missing .so libraries, then setting up GIR_EXTRA_LIBS_PATH in the recipe should help." + echo "(typically like this: GIR_EXTRA_LIBS_PATH=\"$""{B}/something/.libs\" )" + exit 1 +fi +EOF + chmod +x ${B}/g-ir-scanner-qemuwrapper + + # Write out a wrapper for g-ir-scanner itself, which will be used when building introspection files + # for glib-based packages. This wrapper calls the native version of the scanner, and tells it to use + # a qemu wrapper for running transient target binaries produced by the scanner, and an include directory + # from the target sysroot. + cat > ${B}/g-ir-scanner-wrapper << EOF +#!/bin/sh +# This prevents g-ir-scanner from writing cache data to $HOME +export GI_SCANNER_DISABLE_CACHE=1 + +g-ir-scanner --lib-dirs-envvar=GIR_EXTRA_LIBS_PATH --use-binary-wrapper=${STAGING_BINDIR}/g-ir-scanner-qemuwrapper --use-ldd-wrapper=${STAGING_BINDIR}/g-ir-scanner-lddwrapper --add-include-path=${STAGING_DATADIR}/gir-1.0 --add-include-path=${STAGING_LIBDIR}/gir-1.0 "\$@" +EOF + chmod +x ${B}/g-ir-scanner-wrapper + + # Write out a wrapper for g-ir-compiler, which runs the target version of it through qemu. + # g-ir-compiler writes out the raw content of a C struct to disk, and therefore is architecture dependent. + cat > ${B}/g-ir-compiler-wrapper << EOF +#!/bin/sh +${STAGING_BINDIR}/g-ir-scanner-qemuwrapper ${STAGING_BINDIR}/g-ir-compiler "\$@" +EOF + chmod +x ${B}/g-ir-compiler-wrapper + + # Write out a wrapper to use instead of ldd, which does not work when a binary is built + # for a different architecture + cat > ${B}/g-ir-scanner-lddwrapper << EOF +#!/bin/sh +prelink-rtld --root=$STAGING_DIR_HOST "\$@" +EOF + chmod +x ${B}/g-ir-scanner-lddwrapper + + # Also tweak the target python scripts so that they don't refer to the + # native version of python binary (the solution is taken from glib-2.0 recipe) + sed -i -e '1s,#!.*,#!${USRBINPATH}/env python3,' ${S}/tools/g-ir-tool-template.in +} + +do_compile_prepend() { + # This prevents g-ir-scanner from writing cache data to $HOME + export GI_SCANNER_DISABLE_CACHE=1 + + # Needed to run g-ir unit tests, which won't be able to find the built libraries otherwise + export GIR_EXTRA_LIBS_PATH=$B/.libs +} + +# Our wrappers need to be available system-wide, because they will be used +# to build introspection files for all other gobject-based packages +do_install_append_class-target() { + install -d ${D}${bindir}/ + install ${B}/g-ir-scanner-qemuwrapper ${D}${bindir}/ + install ${B}/g-ir-scanner-wrapper ${D}${bindir}/ + install ${B}/g-ir-compiler-wrapper ${D}${bindir}/ + install ${B}/g-ir-scanner-lddwrapper ${D}${bindir}/ +} + +# we need target versions of introspection tools in sysroot so that they can be run via qemu +# when building introspection files in other packages +SYSROOT_DIRS_append_class-target = " ${bindir}" + +SYSROOT_PREPROCESS_FUNCS_append_class-target = " gi_binaries_sysroot_preprocess" +gi_binaries_sysroot_preprocess() { + # Tweak the binary names in the introspection pkgconfig file, so that it + # picks up our wrappers which do the cross-compile and qemu magic. + sed -i \ + -e "s|g_ir_scanner=.*|g_ir_scanner=${bindir}/g-ir-scanner-wrapper|" \ + -e "s|g_ir_compiler=.*|g_ir_compiler=${bindir}/g-ir-compiler-wrapper|" \ + ${SYSROOT_DESTDIR}${libdir}/pkgconfig/gobject-introspection-1.0.pc +} + +SYSROOT_PREPROCESS_FUNCS_append = " gi_ldsoconf_sysroot_preprocess" +gi_ldsoconf_sysroot_preprocess () { + mkdir -p ${SYSROOT_DESTDIR}${bindir} + dest=${SYSROOT_DESTDIR}${bindir}/postinst-ldsoconf-${PN} + echo "#!/bin/sh" > $dest + echo "mkdir -p ${STAGING_DIR_TARGET}${sysconfdir}" >> $dest + echo "echo ${base_libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest + echo "echo ${libdir} >> ${STAGING_DIR_TARGET}${sysconfdir}/ld.so.conf" >> $dest + chmod 755 $dest +} + +# Remove wrapper files from the package, only used for cross-compiling +PACKAGE_PREPROCESS_FUNCS += "gi_package_preprocess" +gi_package_preprocess() { + rm -f ${PKGD}${bindir}/g-ir-scanner-qemuwrapper + rm -f ${PKGD}${bindir}/g-ir-scanner-wrapper + rm -f ${PKGD}${bindir}/g-ir-compiler-wrapper + rm -f ${PKGD}${bindir}/g-ir-scanner-lddwrapper +} + +SSTATE_SCAN_FILES += "g-ir-scanner-qemuwrapper g-ir-scanner-wrapper g-ir-compiler-wrapper g-ir-scanner-lddwrapper Gio-2.0.gir postinst-ldsoconf-${PN}" + +# .typelib files are needed at runtime and so they go to the main package +FILES_${PN}_append = " ${libdir}/girepository-*/*.typelib" + +# .gir files go to dev package, as they're needed for developing (but not for running) +# things that depends on introspection. +FILES_${PN}-dev_append = " ${datadir}/gir-*/*.gir ${libdir}/gir-*/*.gir" +FILES_${PN}-dev_append = " ${datadir}/gir-*/*.rnc" + +# These are used by gobject-based packages +# to generate transient introspection binaries +FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/gdump.c \ + ${datadir}/gobject-introspection-1.0/Makefile.introspection" + +# These are used by dependent packages (e.g. pygobject) to build their +# testsuites. +FILES_${PN}-dev_append = " ${datadir}/gobject-introspection-1.0/tests/*.c \ + ${datadir}/gobject-introspection-1.0/tests/*.h" + +FILES_${PN}-dbg += "${libdir}/gobject-introspection/giscanner/.debug/" +FILES_${PN}-staticdev += "${libdir}/gobject-introspection/giscanner/*.a" + +RDEPENDS_${PN} = "python3-pickle python3-xml" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb b/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb index 95f90569d..1c663f93e 100644 --- a/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb +++ b/poky/meta/recipes-gnome/json-glib/json-glib_1.4.4.bb @@ -19,18 +19,6 @@ SRC_URI[archive.sha256sum] = "720c5f4379513dc11fd97dc75336eb0c0d3338c53128044d9f PACKAGECONFIG[manpages] = "-Dman=true,-Dman=false,libxslt-native xmlto-native" -# This builds both API docs (via gtk-doc) -GTKDOC_ENABLE_FLAG = "-Ddocs=true" -GTKDOC_DISABLE_FLAG = "-Ddocs=false" - -GI_ENABLE_FLAG = "-Dintrospection=true" -GI_DISABLE_FLAG = "-Dintrospection=false" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - do_install_append() { if ! ${@bb.utils.contains('PTEST_ENABLED', '1', 'true', 'false', d)}; then rm -rf ${D}${datadir}/installed-tests ${D}${libexecdir} diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch b/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch deleted file mode 100644 index c959d4397..000000000 --- a/poky/meta/recipes-gnome/libdazzle/libdazzle/0001-Add-a-define-so-that-gir-compilation-succeeds.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 546d53c3515e8a488a204763437d1fa0917097e5 Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Tue, 11 Dec 2018 12:39:30 +0100 -Subject: [PATCH] Add a define so that gir compilation succeeds - -For some reason meson 0.49.0 does not anymore pass global arguments to gir compiler. - -Upstream-Status: Pending -Signed-off-by: Alexander Kanavin ---- - src/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/meson.build b/src/meson.build -index 6ff8a6a..f0b2887 100644 ---- a/src/meson.build -+++ b/src/meson.build -@@ -132,7 +132,7 @@ if get_option('with_introspection') - install_dir_gir: girdir, - install_dir_typelib: typelibdir, - export_packages: libdazzle_package, -- extra_args: [ '--c-include=dazzle.h', '--quiet' ], -+ extra_args: [ '--c-include=dazzle.h', '--quiet', '-DDAZZLE_COMPILATION' ], - ) - - if get_option('with_vapi') diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb deleted file mode 100644 index 3779b15af..000000000 --- a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.30.2.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase upstream-version-is-even vala distro_features_check gobject-introspection - -DEPENDS = "glib-2.0-native glib-2.0 gtk+3" - -SRC_URI += " file://0001-Add-a-define-so-that-gir-compilation-succeeds.patch" -SRC_URI[archive.md5sum] = "24e2e1b914a34f5b8868a9507d1f3c4c" -SRC_URI[archive.sha256sum] = "78770eae9fa15ac5acb9c733d29459330b2540affbf72933119e36dbd90b36d5" - -GI_ENABLE_FLAG = "-Dwith_introspection=true" -GI_DISABLE_FLAG = "-Dwith_introspection=false" - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " diff --git a/poky/meta/recipes-gnome/libdazzle/libdazzle_3.32.1.bb b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.32.1.bb new file mode 100644 index 000000000..dac59f86b --- /dev/null +++ b/poky/meta/recipes-gnome/libdazzle/libdazzle_3.32.1.bb @@ -0,0 +1,15 @@ +SUMMARY = "The libdazzle library is a companion library to GObject and Gtk+." +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=8f0e2cd40e05189ec81232da84bd6e1a" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase upstream-version-is-even vala distro_features_check gobject-introspection + +DEPENDS = "glib-2.0-native glib-2.0 gtk+3" + +SRC_URI[archive.md5sum] = "5f6455ebc47e86f63b9579997137f391" +SRC_URI[archive.sha256sum] = "238da19fdcc3ae9bb0c2d781d099fb8c6ec70c4dd3dffad80d230344ecc3f972" + +GIR_MESON_OPTION = 'with_introspection' + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.7.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.7.bb deleted file mode 100644 index 6c299bc17..000000000 --- a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.7.bb +++ /dev/null @@ -1,21 +0,0 @@ -SUMMARY = "Library for sending desktop notifications to a notification daemon" -HOMEPAGE = "http://www.gnome.org" -SECTION = "libs" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" - -DEPENDS = "dbus gtk+3 dbus-glib" - -inherit gnomebase gtk-doc distro_features_check gobject-introspection -# depends on gtk+3 -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -SRC_URI[archive.md5sum] = "e9d911f6a22435e0b922f2fe71212b59" -SRC_URI[archive.sha256sum] = "9cb4ce315b2655860c524d46b56010874214ec27e854086c1a1d0260137efc04" - -# there were times, we had two versions of libnotify (oe-core libnotify:0.6.x / -# meta-gnome libnotify3: 0.7.x) -PROVIDES += "libnotify3" -RPROVIDES_${PN} += "libnotify3" -RCONFLICTS_${PN} += "libnotify3" -RREPLACES_${PN} += "libnotify3" diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb new file mode 100644 index 000000000..82c137ca3 --- /dev/null +++ b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.8.bb @@ -0,0 +1,21 @@ +SUMMARY = "Library for sending desktop notifications to a notification daemon" +HOMEPAGE = "http://www.gnome.org" +SECTION = "libs" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=7fbc338309ac38fefcd64b04bb903e34" + +DEPENDS = "dbus gtk+3 dbus-glib" + +inherit gnomebase gtk-doc distro_features_check gobject-introspection +# depends on gtk+3 +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +SRC_URI[archive.md5sum] = "babb4b07b5f21bef42a386d3d7019599" +SRC_URI[archive.sha256sum] = "69209e0b663776a00c7b6c0e560302a8dbf66b2551d55616304f240bba66e18c" + +# there were times, we had two versions of libnotify (oe-core libnotify:0.6.x / +# meta-gnome libnotify3: 0.7.x) +PROVIDES += "libnotify3" +RPROVIDES_${PN} += "libnotify3" +RCONFLICTS_${PN} += "libnotify3" +RREPLACES_${PN} += "libnotify3" diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb deleted file mode 100644 index ba38d107f..000000000 --- a/poky/meta/recipes-gnome/libsecret/libsecret_0.18.7.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "libsecret is a library for storing and retrieving passwords and other secrets" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" - -inherit gnomebase gtk-doc vala gobject-introspection manpages - -DEPENDS += "glib-2.0 libgcrypt gettext-native" - -PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" - -SRC_URI[archive.md5sum] = "376153ece17081eb5410870e0dc5c031" -SRC_URI[archive.sha256sum] = "0d66fe1fc4561b3e046ee281d7c5a703a9baac88a8c4fb42ebc739d31dabd487" - -# http://errors.yoctoproject.org/Errors/Details/20228/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# vapigen.m4 bundled with the tarball does not yet have our cross-compilation fixes -do_configure_prepend() { - rm -f ${S}/build/m4/vapigen.m4 -} diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.18.8.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.18.8.bb new file mode 100644 index 000000000..4af47fede --- /dev/null +++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.18.8.bb @@ -0,0 +1,22 @@ +SUMMARY = "libsecret is a library for storing and retrieving passwords and other secrets" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=23c2a5e0106b99d75238986559bb5fc6" + +inherit gnomebase gtk-doc vala gobject-introspection manpages + +DEPENDS += "glib-2.0 libgcrypt gettext-native" + +PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" + +SRC_URI[archive.md5sum] = "fee403988442f497f3c1dfe7b128869c" +SRC_URI[archive.sha256sum] = "3bfa889d260e0dbabcf5b9967f2aae12edcd2ddc9adc365de7a5cc840c311d15" + +# http://errors.yoctoproject.org/Errors/Details/20228/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" + +# vapigen.m4 bundled with the tarball does not yet have our cross-compilation fixes +do_configure_prepend() { + rm -f ${S}/build/m4/vapigen.m4 +} diff --git a/poky/meta/recipes-graphics/clutter/clutter-gtk-1.0.inc b/poky/meta/recipes-graphics/clutter/clutter-gtk-1.0.inc index 4e82f5660..11826a6f0 100644 --- a/poky/meta/recipes-graphics/clutter/clutter-gtk-1.0.inc +++ b/poky/meta/recipes-graphics/clutter/clutter-gtk-1.0.inc @@ -13,19 +13,6 @@ ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" DEPENDS = "clutter-1.0 gtk+3" PACKAGES =+ "${PN}-examples" -GTKDOC_ENABLE_FLAG = "-Denable_docs=true" -GTKDOC_DISABLE_FLAG = "-Denable_docs=false" - -GI_ENABLE_FLAG = "-Denable_gi=true" -GI_DISABLE_FLAG = "-Denable_gi=false" - -EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " - - +GTKDOC_MESON_OPTION = "enable_docs" +GIR_MESON_OPTION = 'enable_gi' diff --git a/poky/meta/recipes-graphics/cogl/cogl-1.0.inc b/poky/meta/recipes-graphics/cogl/cogl-1.0.inc index 7a79aa789..3e392fa5e 100644 --- a/poky/meta/recipes-graphics/cogl/cogl-1.0.inc +++ b/poky/meta/recipes-graphics/cogl/cogl-1.0.inc @@ -31,6 +31,7 @@ EXTRA_OECONF += "--enable-examples-install \ --disable-gles1 \ --disable-cairo \ " +DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized" # OpenGL/GLX PACKAGECONFIG[glx] = "--enable-gl --enable-glx,--disable-gl --disable-glx,${EDEPENDS_GL} ${EDEPENDS_X11},${ERDEPENDS_GL}" diff --git a/poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch b/poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch deleted file mode 100644 index 2a9d8f829..000000000 --- a/poky/meta/recipes-graphics/cogl/cogl-1.0/0001-Fix-an-incorrect-preprocessor-conditional.patch +++ /dev/null @@ -1,32 +0,0 @@ -Signed-off-by: Jussi Kukkonen -Upstream-Status: Backport - - -Original upstream commit follows: - -From b583e21d8698dbd58013320cfb47739102efdea7 Mon Sep 17 00:00:00 2001 -From: Kalev Lember -Date: Wed, 19 Oct 2016 23:38:28 +0200 -Subject: [PATCH] Fix an incorrect preprocessor conditional - -This fixes the build with wayland wayland egl server support disabled. ---- - cogl/winsys/cogl-winsys-egl.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/cogl/winsys/cogl-winsys-egl.c b/cogl/winsys/cogl-winsys-egl.c -index 39bfd884..4a9f3aa6 100644 ---- a/cogl/winsys/cogl-winsys-egl.c -+++ b/cogl/winsys/cogl-winsys-egl.c -@@ -1029,7 +1029,7 @@ _cogl_egl_create_image (CoglContext *ctx, - egl_ctx = EGL_NO_CONTEXT; - else - #endif --#if COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT -+#ifdef COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT - /* The WL_bind_wayland_display spec states that EGL_NO_CONTEXT is to be used - * in conjunction with the EGL_WAYLAND_BUFFER_WL target */ - if (target == EGL_WAYLAND_BUFFER_WL) --- -2.11.0 - diff --git a/poky/meta/recipes-graphics/cogl/cogl-1.0/test-backface-culling.c-fix-may-be-used-uninitialize.patch b/poky/meta/recipes-graphics/cogl/cogl-1.0/test-backface-culling.c-fix-may-be-used-uninitialize.patch deleted file mode 100644 index 479a0ff4b..000000000 --- a/poky/meta/recipes-graphics/cogl/cogl-1.0/test-backface-culling.c-fix-may-be-used-uninitialize.patch +++ /dev/null @@ -1,35 +0,0 @@ -From a51f61d675a0e7d6649182c6a1325ceab8342df2 Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Mon, 4 Jan 2016 22:47:29 -0800 -Subject: [PATCH] test-backface-culling.c: fix may be used uninitialized error - -Fixed when gcc -O: -test-backface-culling.c:206:7: error: 'cull_front' may be used uninitialized in this function [-Werror=maybe-uninitialized] -| validate_part (framebuffer, -| ^ -| cc1: some warnings being treated as errors - -Upstream-Status: Pending - -Signed-off-by: Robert Yang ---- - tests/conform/test-backface-culling.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/tests/conform/test-backface-culling.c b/tests/conform/test-backface-culling.c -index e90c2f5..7c45592 100644 ---- a/tests/conform/test-backface-culling.c -+++ b/tests/conform/test-backface-culling.c -@@ -164,7 +164,8 @@ validate_result (CoglFramebuffer *framebuffer, int y_offset) - - for (draw_num = 0; draw_num < 16; draw_num++) - { -- CoglBool cull_front, cull_back; -+ CoglBool cull_front = FALSE; -+ CoglBool cull_back = FALSE; - CoglPipelineCullFaceMode cull_mode; - - if (USE_LEGACY_STATE (draw_num)) --- -1.7.9.5 - diff --git a/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb b/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb deleted file mode 100644 index 5901062a4..000000000 --- a/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.2.bb +++ /dev/null @@ -1,8 +0,0 @@ -require cogl-1.0.inc - -SRC_URI += "file://test-backface-culling.c-fix-may-be-used-uninitialize.patch \ - file://0001-Fix-an-incorrect-preprocessor-conditional.patch" -SRC_URI[archive.md5sum] = "d53b708ca7c4af03d7254e46945d6b33" -SRC_URI[archive.sha256sum] = "39a718cdb64ea45225a7e94f88dddec1869ab37a21b339ad058a9d898782c00d" - -LIC_FILES_CHKSUM = "file://COPYING;md5=1b1a508d91d25ca607c83f92f3e31c84" diff --git a/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.4.bb b/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.4.bb new file mode 100644 index 000000000..8e61c19f5 --- /dev/null +++ b/poky/meta/recipes-graphics/cogl/cogl-1.0_1.22.4.bb @@ -0,0 +1,6 @@ +require cogl-1.0.inc + +SRC_URI[archive.md5sum] = "31755015a865c4af51ac84f6e53af8ab" +SRC_URI[archive.sha256sum] = "5217bf94cbca3df63268a3b79d017725382b9e592b891d1e7dc6212590ce0de0" + +LIC_FILES_CHKSUM = "file://COPYING;md5=1b1a508d91d25ca607c83f92f3e31c84" diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.97.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.97.bb deleted file mode 100644 index bbe9a33ba..000000000 --- a/poky/meta/recipes-graphics/drm/libdrm_2.4.97.bb +++ /dev/null @@ -1,60 +0,0 @@ -SUMMARY = "Userspace interface to the kernel DRM services" -DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ -stands for \"Direct Rendering Manager\", which is the kernel portion of the \ -\"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ -accelerated OpenGL drivers." -HOMEPAGE = "http://dri.freedesktop.org" -SECTION = "x11/base" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" -PROVIDES = "drm" -DEPENDS = "libpthread-stubs" - -SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.bz2 \ - file://musl-ioctl.patch" -SRC_URI[md5sum] = "acef22d0c62c89692348c2dd5591393e" -SRC_URI[sha256sum] = "77d0ccda3e10d6593398edb70b1566bfe1a23a39bd3da98ace2147692eadd123" - -inherit meson pkgconfig manpages - -PACKAGECONFIG ??= "libkms intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs" -PACKAGECONFIG[libkms] = "-Dlibkms=true,-Dlibkms=false" -PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess" -PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false" -PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false" -PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false" -PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false" -PACKAGECONFIG[omap] = "-Domap=true,-Domap=false" -PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false" -PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false" -PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false" -PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false" -PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false" -PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false" -PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind" -PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false" -PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false" -PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev" -PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native" - -ALLOW_EMPTY_${PN}-drivers = "1" -PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ - ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ - ${PN}-etnaviv" - -RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ - ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ - ${PN}-etnaviv" - -FILES_${PN}-tests = "${bindir}/*" -FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" -FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" -FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" -FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" -FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" -FILES_${PN}-kms = "${libdir}/libkms*.so.*" -FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" -FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.*" -FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/drm/libdrm_2.4.98.bb b/poky/meta/recipes-graphics/drm/libdrm_2.4.98.bb new file mode 100644 index 000000000..bed542ba0 --- /dev/null +++ b/poky/meta/recipes-graphics/drm/libdrm_2.4.98.bb @@ -0,0 +1,60 @@ +SUMMARY = "Userspace interface to the kernel DRM services" +DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ +stands for \"Direct Rendering Manager\", which is the kernel portion of the \ +\"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ +accelerated OpenGL drivers." +HOMEPAGE = "http://dri.freedesktop.org" +SECTION = "x11/base" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" +PROVIDES = "drm" +DEPENDS = "libpthread-stubs" + +SRC_URI = "http://dri.freedesktop.org/libdrm/${BP}.tar.bz2 \ + file://musl-ioctl.patch" +SRC_URI[md5sum] = "1320b43c4bdb8846c308ec2610b62b64" +SRC_URI[sha256sum] = "8be0edccaca3abde8b6bb1431b46354c7fab46e9b91cc6946ba65b51f56f1894" + +inherit meson pkgconfig manpages + +PACKAGECONFIG ??= "libkms intel radeon amdgpu nouveau vmwgfx omap freedreno vc4 etnaviv install-test-programs" +PACKAGECONFIG[libkms] = "-Dlibkms=true,-Dlibkms=false" +PACKAGECONFIG[intel] = "-Dintel=true,-Dintel=false,libpciaccess" +PACKAGECONFIG[radeon] = "-Dradeon=true,-Dradeon=false" +PACKAGECONFIG[amdgpu] = "-Damdgpu=true,-Damdgpu=false" +PACKAGECONFIG[nouveau] = "-Dnouveau=true,-Dnouveau=false" +PACKAGECONFIG[vmwgfx] = "-Dvmwgfx=true,-Dvmwgfx=false" +PACKAGECONFIG[omap] = "-Domap=true,-Domap=false" +PACKAGECONFIG[exynos] = "-Dexynos=true,-Dexynos=false" +PACKAGECONFIG[freedreno] = "-Dfreedreno=true,-Dfreedreno=false" +PACKAGECONFIG[tegra] = "-Dtegra=true,-Dtegra=false" +PACKAGECONFIG[vc4] = "-Dvc4=true,-Dvc4=false" +PACKAGECONFIG[etnaviv] = "-Detnaviv=true,-Detnaviv=false" +PACKAGECONFIG[freedreno-kgsl] = "-Dfreedreno-kgsl=true,-Dfreedreno-kgsl=false" +PACKAGECONFIG[valgrind] = "-Dvalgrind=true,-Dvalgrind=false,valgrind" +PACKAGECONFIG[install-test-programs] = "-Dinstall-test-programs=true,-Dinstall-test-programs=false" +PACKAGECONFIG[cairo-tests] = "-Dcairo-tests=true,-Dcairo-tests=false" +PACKAGECONFIG[udev] = "-Dudev=true,-Dudev=false,udev" +PACKAGECONFIG[manpages] = "-Dman-pages=true,-Dman-pages=false,libxslt-native xmlto-native" + +ALLOW_EMPTY_${PN}-drivers = "1" +PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ + ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ + ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ + ${PN}-etnaviv" + +FILES_${PN}-tests = "${bindir}/*" +FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" +FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" +FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" +FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" +FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" +FILES_${PN}-kms = "${libdir}/libkms*.so.*" +FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" +FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.*" +FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fccache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch b/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fccache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch deleted file mode 100644 index d9bce212f..000000000 --- a/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fccache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch +++ /dev/null @@ -1,33 +0,0 @@ -From ab9522177a8396a51812fdbebb6387df451a8499 Mon Sep 17 00:00:00 2001 -From: Robert Yang -Date: Mon, 24 Dec 2018 11:03:58 +0800 -Subject: [PATCH] src/fccache.c: Fix define for HAVE_POSIX_FADVISE - -Otherwise, there would be build errors in the following 2 cases: -* define HAVE_POSIX_FADVISE -Or: -* undef HAVE_POSIX_FADVISE - -Upstream-Status: Backport [https://gitlab.freedesktop.org/fontconfig/fontconfig/commit/586e35450e9ca7c1dc647ceb9d75ac8ed08c5c16] - -Signed-off-by: Robert Yang ---- - fccache.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/fccache.c b/src/fccache.c -index 6f3c68a..85cc4b4 100644 ---- a/src/fccache.c -+++ b/src/fccache.c -@@ -700,7 +700,7 @@ FcDirCacheMapFd (FcConfig *config, int fd, struct stat *fd_stat, struct stat *di - { - #if defined(HAVE_MMAP) || defined(__CYGWIN__) - cache = mmap (0, fd_stat->st_size, PROT_READ, MAP_SHARED, fd, 0); --#if (HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED) -+#if defined(HAVE_POSIX_FADVISE) && defined(POSIX_FADV_WILLNEED) - posix_fadvise (fd, 0, fd_stat->st_size, POSIX_FADV_WILLNEED); - #endif - if (cache == MAP_FAILED) --- -2.7.4 - diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch b/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch deleted file mode 100644 index 3ca9fde96..000000000 --- a/poky/meta/recipes-graphics/fontconfig/fontconfig/0001-src-fcxml.c-avoid-double-free-of-filename.patch +++ /dev/null @@ -1,28 +0,0 @@ -From a163c81ac430cdc292add200f3e6a0c048be4d7e Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -Date: Wed, 11 Oct 2017 17:40:09 +0300 -Subject: [PATCH] src/fcxml.c: avoid double free() of filename - -It's also freed after bail1, so no need to do it here. - -Upstream-Status: Submitted [https://bugs.freedesktop.org/show_bug.cgi?id=103221] -Signed-off-by: Alexander Kanavin ---- - src/fcxml.c | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/src/fcxml.c b/src/fcxml.c -index 19ce96a..edb6054 100644 ---- a/src/fcxml.c -+++ b/src/fcxml.c -@@ -3398,7 +3398,6 @@ FcConfigParseAndLoad (FcConfig *config, - - fd = FcOpen ((char *) filename, O_RDONLY); - if (fd == -1) { -- FcStrFree (filename); - goto bail1; - } - --- -2.14.1 - diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch b/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch index fca1e6594..30d642303 100644 --- a/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch +++ b/poky/meta/recipes-graphics/fontconfig/fontconfig/revert-static-pkgconfig.patch @@ -8,13 +8,13 @@ gently refuses and rightly so. Upstream-Status: Inappropriate [OE-Specific] Signed-off-by: Khem Raj -Index: fontconfig-2.11.93/fontconfig.pc.in -=================================================================== ---- fontconfig-2.11.93.orig/fontconfig.pc.in -+++ fontconfig-2.11.93/fontconfig.pc.in +diff --git a/fontconfig.pc.in b/fontconfig.pc.in +index 61b35fb..5bc9bab 100644 +--- a/fontconfig.pc.in ++++ b/fontconfig.pc.in @@ -15,4 +15,4 @@ Requires: @PKGCONFIG_REQUIRES@ Requires.private: @PKGCONFIG_REQUIRES_PRIVATELY@ Libs: -L${libdir} -lfontconfig - Libs.private: @EXPAT_LIBS@ @FREETYPE_LIBS@ @ICONV_LIBS@ @LIBXML2_LIBS@ --Cflags: -I${includedir} @EXPAT_CFLAGS@ @FREETYPE_CFLAGS@ @ICONV_CFLAGS@ @LIBXML2_CFLAGS@ + Libs.private: @ICONV_LIBS@ @PKG_EXPAT_LIBS@ +-Cflags: -I${includedir} @ICONV_CFLAGS@ @PKG_EXPAT_CFLAGS@ +Cflags: -I${includedir} diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb deleted file mode 100644 index 8fa739de2..000000000 --- a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.12.6.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "Generic font configuration library" -DESCRIPTION = "Fontconfig is a font configuration and customization library, which \ -does not depend on the X Window System. It is designed to locate \ -fonts within the system and select them according to requirements \ -specified by applications. \ -Fontconfig is not a rasterization library, nor does it impose a \ -particular rasterization library on the application. The X-specific \ -library 'Xft' uses fontconfig along with freetype to specify and \ -rasterize fonts." - -HOMEPAGE = "http://www.fontconfig.org" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig" - -LICENSE = "MIT-style & MIT & PD" -LIC_FILES_CHKSUM = "file://COPYING;md5=7a0449e9bc5370402a94c00204beca3d \ - file://src/fcfreetype.c;endline=45;md5=5d9513e3196a1fbfdfa94051c09dfc84 \ - file://src/fccache.c;beginline=1367;endline=1382;md5=0326cfeb4a7333dd4dd25fbbc4b9f27f" - -SECTION = "libs" - -DEPENDS = "expat freetype zlib gperf-native" - -SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ - file://revert-static-pkgconfig.patch \ - file://0001-src-fcxml.c-avoid-double-free-of-filename.patch \ - file://0001-src-fccache.c-Fix-define-for-HAVE_POSIX_FADVISE.patch \ - " - -SRC_URI[md5sum] = "00e748c67fad11e7057a71ed385e8bdb" -SRC_URI[sha256sum] = "064b9ebf060c9e77011733ac9dc0e2ce92870b574cca2405e11f5353a683c334" - -UPSTREAM_CHECK_REGEX = "fontconfig-(?P\d+\.\d+\.(?!9\d+)\d+)" - -do_configure_prepend() { - # work around https://bugs.freedesktop.org/show_bug.cgi?id=101280 - rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf -} - -do_install_append_class-target() { - # duplicate fc-cache for postinstall script - mkdir -p ${D}${libexecdir} - ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache -} - -do_install_append_class-nativesdk() { - # duplicate fc-cache for postinstall script - mkdir -p ${D}${libexecdir} - ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache -} - -PACKAGES =+ "fontconfig-utils" -FILES_${PN} =+ "${datadir}/xml/*" -FILES_fontconfig-utils = "${bindir}/* ${libexecdir}/*" - -# Work around past breakage in debian.bbclass -RPROVIDES_fontconfig-utils = "libfontconfig-utils" -RREPLACES_fontconfig-utils = "libfontconfig-utils" -RCONFLICTS_fontconfig-utils = "libfontconfig-utils" -DEBIAN_NOAUTONAME_fontconfig-utils = "1" - -inherit autotools pkgconfig relative_symlinks - -FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" - -# comma separated list of additional directories -# /usr/share/fonts is already included by default (you can change it with --with-default-fonts) -FONTCONFIG_FONT_DIRS ?= "no" - -EXTRA_OECONF = " --disable-docs --with-default-fonts=${datadir}/fonts --with-cache-dir=${FONTCONFIG_CACHE_DIR} --with-add-fonts=${FONTCONFIG_FONT_DIRS}" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb new file mode 100644 index 000000000..d0da419ce --- /dev/null +++ b/poky/meta/recipes-graphics/fontconfig/fontconfig_2.13.1.bb @@ -0,0 +1,70 @@ +SUMMARY = "Generic font configuration library" +DESCRIPTION = "Fontconfig is a font configuration and customization library, which \ +does not depend on the X Window System. It is designed to locate \ +fonts within the system and select them according to requirements \ +specified by applications. \ +Fontconfig is not a rasterization library, nor does it impose a \ +particular rasterization library on the application. The X-specific \ +library 'Xft' uses fontconfig along with freetype to specify and \ +rasterize fonts." + +HOMEPAGE = "http://www.fontconfig.org" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig" + +LICENSE = "MIT-style & MIT & PD" +LIC_FILES_CHKSUM = "file://COPYING;md5=7a0449e9bc5370402a94c00204beca3d \ + file://src/fcfreetype.c;endline=45;md5=5d9513e3196a1fbfdfa94051c09dfc84 \ + file://src/fccache.c;beginline=1671;endline=1686;md5=0326cfeb4a7333dd4dd25fbbc4b9f27f" + +SECTION = "libs" + +DEPENDS = "expat freetype zlib gperf-native util-linux" + +SRC_URI = "http://fontconfig.org/release/fontconfig-${PV}.tar.gz \ + file://revert-static-pkgconfig.patch \ + " + +SRC_URI[md5sum] = "690c6cb840a92fa8908cdf462d19ec66" +SRC_URI[sha256sum] = "9f0d852b39d75fc655f9f53850eb32555394f36104a044bb2b2fc9e66dbbfa7f" + +UPSTREAM_CHECK_REGEX = "fontconfig-(?P\d+\.\d+\.(?!9\d+)\d+)" + +do_configure_prepend() { + # work around https://bugs.freedesktop.org/show_bug.cgi?id=101280 + rm -f ${S}/src/fcobjshash.h ${S}/src/fcobjshash.gperf +} + +do_install_append_class-target() { + # duplicate fc-cache for postinstall script + mkdir -p ${D}${libexecdir} + ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache +} + +do_install_append_class-nativesdk() { + # duplicate fc-cache for postinstall script + mkdir -p ${D}${libexecdir} + ln ${D}${bindir}/fc-cache ${D}${libexecdir}/${MLPREFIX}fc-cache +} + +PACKAGES =+ "fontconfig-utils" +FILES_${PN} =+ "${datadir}/xml/*" +FILES_${PN}-dev += "${datadir}/gettext/*" +FILES_fontconfig-utils = "${bindir}/* ${libexecdir}/*" + +# Work around past breakage in debian.bbclass +RPROVIDES_fontconfig-utils = "libfontconfig-utils" +RREPLACES_fontconfig-utils = "libfontconfig-utils" +RCONFLICTS_fontconfig-utils = "libfontconfig-utils" +DEBIAN_NOAUTONAME_fontconfig-utils = "1" + +inherit autotools pkgconfig relative_symlinks gettext + +FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" + +# comma separated list of additional directories +# /usr/share/fonts is already included by default (you can change it with --with-default-fonts) +FONTCONFIG_FONT_DIRS ?= "no" + +EXTRA_OECONF = " --disable-docs --with-default-fonts=${datadir}/fonts --with-cache-dir=${FONTCONFIG_CACHE_DIR} --with-add-fonts=${FONTCONFIG_FONT_DIRS}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb deleted file mode 100644 index 4b292d8ea..000000000 --- a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.3.1.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "Text shaping library" -DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" -BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" -SECTION = "libs" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=e021dd6dda6ff1e6b1044002fc662b9b \ - file://src/hb-ucdn/COPYING;md5=994ba0f1295f15b4bda4999a5bbeddef \ -" - -DEPENDS = "glib-2.0 cairo fontconfig freetype" - -SRC_URI = "http://www.freedesktop.org/software/harfbuzz/release/${BP}.tar.bz2" -SRC_URI[md5sum] = "531de9df7c8a5405dd9c6a873fcee8c2" -SRC_URI[sha256sum] = "f205699d5b91374008d6f8e36c59e419ae2d9a7bb8c5d9f34041b9a5abcae468" - -inherit autotools pkgconfig lib_package gtk-doc - -PACKAGECONFIG ??= "icu" -PACKAGECONFIG[icu] = "--with-icu,--without-icu,icu" - -EXTRA_OECONF = " \ - --with-cairo \ - --with-fontconfig \ - --with-freetype \ - --with-glib \ - --without-graphite2 \ -" - -PACKAGES =+ "${PN}-icu ${PN}-icu-dev" - -LEAD_SONAME = "libharfbuzz.so" - -FILES_${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" -FILES_${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ - ${libdir}/libharfbuzz-icu.so \ - ${libdir}/pkgconfig/harfbuzz-icu.pc \ -" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.4.0.bb b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.4.0.bb new file mode 100644 index 000000000..4691d16df --- /dev/null +++ b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_2.4.0.bb @@ -0,0 +1,40 @@ +SUMMARY = "Text shaping library" +DESCRIPTION = "HarfBuzz is an OpenType text shaping engine." +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/HarfBuzz" +BUGTRACKER = "https://bugs.freedesktop.org/enter_bug.cgi?product=HarfBuzz" +SECTION = "libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=e021dd6dda6ff1e6b1044002fc662b9b \ + file://src/hb-ucdn/COPYING;md5=994ba0f1295f15b4bda4999a5bbeddef \ +" + +DEPENDS = "glib-2.0 cairo fontconfig freetype" + +SRC_URI = "http://www.freedesktop.org/software/harfbuzz/release/${BP}.tar.bz2" +SRC_URI[md5sum] = "49f111f9b52ae3d9b31c1a3631a320bd" +SRC_URI[sha256sum] = "b470eff9dd5b596edf078596b46a1f83c179449f051a469430afc15869db336f" + +inherit autotools pkgconfig lib_package gtk-doc + +PACKAGECONFIG ??= "icu" +PACKAGECONFIG[icu] = "--with-icu,--without-icu,icu" + +EXTRA_OECONF = " \ + --with-cairo \ + --with-fontconfig \ + --with-freetype \ + --with-glib \ + --without-graphite2 \ +" + +PACKAGES =+ "${PN}-icu ${PN}-icu-dev" + +LEAD_SONAME = "libharfbuzz.so" + +FILES_${PN}-icu = "${libdir}/libharfbuzz-icu.so.*" +FILES_${PN}-icu-dev = "${libdir}/libharfbuzz-icu.la \ + ${libdir}/libharfbuzz-icu.so \ + ${libdir}/pkgconfig/harfbuzz-icu.pc \ +" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb index b2dd6b30b..513148f9e 100644 --- a/poky/meta/recipes-graphics/kmscube/kmscube_git.bb +++ b/poky/meta/recipes-graphics/kmscube/kmscube_git.bb @@ -6,7 +6,7 @@ DEPENDS = "virtual/libgles2 virtual/egl libdrm" LIC_FILES_CHKSUM = "file://kmscube.c;beginline=1;endline=23;md5=8b309d4ee67b7315ff7381270dd631fb" -SRCREV = "d8da3dcfdfe33ee525cf562e928a5266ac69843c" +SRCREV = "485b385e966a63cecc143765d112d267b299ffe5" SRC_URI = "git://anongit.freedesktop.org/mesa/kmscube;branch=master;protocol=git \ file://detect-gst_bo_map-_unmap-and-use-it-or-avoid-it.patch" UPSTREAM_CHECK_COMMITS = "1" diff --git a/poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb index 3680ea9d8..7718d1191 100644 --- a/poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb +++ b/poky/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb @@ -31,6 +31,8 @@ BINCONFIG = "${bindir}/sdl-config" inherit autotools lib_package binconfig-disabled pkgconfig +CVE_PRODUCT = "simple_directmedia_layer sdl" + EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers \ --enable-file --disable-oss --disable-esd --disable-arts \ --disable-diskaudio --disable-nas \ diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.9.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.9.bb index c741cfb24..bac91d373 100644 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.9.bb +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.9.bb @@ -23,6 +23,8 @@ SRC_URI[sha256sum] = "255186dc676ecd0c1dbf10ec8a2cc5d6869b5079d8a38194c2aecdff54 inherit autotools lib_package binconfig pkgconfig +CVE_PRODUCT = "simple_directmedia_layer sdl" + EXTRA_OECONF = "--disable-oss --disable-esd --disable-arts \ --disable-diskaudio --disable-nas --disable-esd-shared --disable-esdtest \ --disable-video-dummy \ diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.1.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.1.bb deleted file mode 100644 index d4b1c1c45..000000000 --- a/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.1.bb +++ /dev/null @@ -1,10 +0,0 @@ -require mesa_${PV}.bb - -SUMMARY += " (OpenGL only, no EGL/GLES)" - -PROVIDES = "virtual/libgl virtual/mesa" - -S = "${WORKDIR}/mesa-${PV}" - -PACKAGECONFIG ??= "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" -PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.3.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.3.bb new file mode 100644 index 000000000..d4b1c1c45 --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/mesa-gl_19.0.3.bb @@ -0,0 +1,10 @@ +require mesa_${PV}.bb + +SUMMARY += " (OpenGL only, no EGL/GLES)" + +PROVIDES = "virtual/libgl virtual/mesa" + +S = "${WORKDIR}/mesa-${PV}" + +PACKAGECONFIG ??= "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG_class-target = "opengl dri ${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" diff --git a/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb b/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb deleted file mode 100644 index d90be8a07..000000000 --- a/poky/meta/recipes-graphics/mesa/mesa_19.0.1.bb +++ /dev/null @@ -1,19 +0,0 @@ -require ${BPN}.inc - -SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ - file://0001-Simplify-wayland-scanner-lookup.patch \ - file://0002-winsys-svga-drm-Include-sys-types.h.patch \ - file://0003-Properly-get-LLVM-version-when-using-LLVM-Git-releas.patch \ - file://0004-use-PKG_CHECK_VAR-for-defining-WAYLAND_PROTOCOLS_DAT.patch \ -" - -SRC_URI[md5sum] = "19636bb3da35c21f43040d31e575d5ce" -SRC_URI[sha256sum] = "6884163c0ea9e4c98378ab8fecd72fe7b5f437713a14471beda378df247999d4" - -#because we cannot rely on the fact that all apps will use pkgconfig, -#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER -do_install_append() { - if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then - sed -i -e 's/^#if defined(MESA_EGL_NO_X11_HEADERS)$/#if defined(MESA_EGL_NO_X11_HEADERS) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h - fi -} diff --git a/poky/meta/recipes-graphics/mesa/mesa_19.0.3.bb b/poky/meta/recipes-graphics/mesa/mesa_19.0.3.bb new file mode 100644 index 000000000..585c3ede2 --- /dev/null +++ b/poky/meta/recipes-graphics/mesa/mesa_19.0.3.bb @@ -0,0 +1,19 @@ +require ${BPN}.inc + +SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \ + file://0001-Simplify-wayland-scanner-lookup.patch \ + file://0002-winsys-svga-drm-Include-sys-types.h.patch \ + file://0003-Properly-get-LLVM-version-when-using-LLVM-Git-releas.patch \ + file://0004-use-PKG_CHECK_VAR-for-defining-WAYLAND_PROTOCOLS_DAT.patch \ +" + +SRC_URI[md5sum] = "d03bf14e42c0e54ebae5730712ccc408" +SRC_URI[sha256sum] = "f027244e38dc309a4c12db45ef79be81ab62c797a50a88d566e4edb6159fc4d5" + +#because we cannot rely on the fact that all apps will use pkgconfig, +#make eglplatform.h independent of MESA_EGL_NO_X11_HEADER +do_install_append() { + if ${@bb.utils.contains('PACKAGECONFIG', 'egl', 'true', 'false', d)}; then + sed -i -e 's/^#if defined(MESA_EGL_NO_X11_HEADERS)$/#if defined(MESA_EGL_NO_X11_HEADERS) || ${@bb.utils.contains('PACKAGECONFIG', 'x11', '0', '1', d)}/' ${D}${includedir}/EGL/eglplatform.h + fi +} diff --git a/poky/meta/recipes-graphics/pango/pango_1.42.4.bb b/poky/meta/recipes-graphics/pango/pango_1.42.4.bb index d3357f82d..58e1f41be 100644 --- a/poky/meta/recipes-graphics/pango/pango_1.42.4.bb +++ b/poky/meta/recipes-graphics/pango/pango_1.42.4.bb @@ -26,19 +26,8 @@ DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo h PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[x11] = ",,virtual/libx11 libxft" -GTKDOC_ENABLE_FLAG = "-Denable_docs=true" -GTKDOC_DISABLE_FLAG = "-Denable_docs=false" - -GI_ENABLE_FLAG = "-Dgir=true" -GI_DISABLE_FLAG = "-Dgir=false" - -EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " +GTKDOC_MESON_OPTION = "enable_docs" +GIR_MESON_OPTION = 'gir' LEAD_SONAME = "libpango-1.0*" LIBV = "1.8.0" diff --git a/poky/meta/recipes-graphics/piglit/piglit_git.bb b/poky/meta/recipes-graphics/piglit/piglit_git.bb index 59d134801..b6542a191 100644 --- a/poky/meta/recipes-graphics/piglit/piglit_git.bb +++ b/poky/meta/recipes-graphics/piglit/piglit_git.bb @@ -17,11 +17,12 @@ PV = "1.0+gitr${SRCPV}" S = "${WORKDIR}/git" -DEPENDS = "libpng virtual/libx11 libxkbcommon libxrender waffle virtual/libgl libglu python3-mako-native python3-numpy-native python3-six-native virtual/egl" +X11_DEPS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxrender libglu', '', d)}" +X11_RDEPS = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa-demos', '', d)}" + +DEPENDS = "libpng waffle libxkbcommon virtual/libgl python3-mako-native python3-numpy-native python3-six-native virtual/egl" inherit cmake pkgconfig python3native distro_features_check bash-completion -# depends on virtual/libx11 -REQUIRED_DISTRO_FEATURES = "x11" # depends on virtual/libgl REQUIRED_DISTRO_FEATURES += "opengl" @@ -32,8 +33,10 @@ REQUIRED_DISTRO_FEATURES += "opengl" export TEMP = "${B}/temp/" do_compile[dirs] =+ "${B}/temp/" -PACKAGECONFIG ??= "" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[freeglut] = "-DPIGLIT_USE_GLUT=1,-DPIGLIT_USE_GLUT=0,freeglut," +PACKAGECONFIG[x11] = "-DPIGLIT_BUILD_GL_TESTS=ON,-DPIGLIT_BUILD_GL_TESTS=OFF,${X11_DEPS}, ${X11_RDEPS}" + do_configure_prepend() { if [ "${@bb.utils.contains('PACKAGECONFIG', 'freeglut', 'yes', 'no', d)}" = "no" ]; then @@ -48,7 +51,7 @@ RDEPENDS_${PN} = "waffle waffle-bin python3 python3-mako python3-json \ python3-misc \ python3-unixadmin python3-xml python3-multiprocessing \ python3-six python3-shell python3-io \ - python3-netserver mesa-demos bash \ + python3-netserver bash \ " INSANE_SKIP_${PN} += "dev-so already-stripped" diff --git a/poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb b/poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb index 43c3edc05..31572f25f 100644 --- a/poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb +++ b/poky/meta/recipes-graphics/waffle/waffle_1.5.2.bb @@ -15,10 +15,9 @@ inherit cmake distro_features_check lib_package # This should be overridden per-machine to reflect the capabilities of the GL # stack. -PACKAGECONFIG ??= "glx" - -# libx11 requires x11 in DISTRO_FEATURES. -REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'glx', 'x11', '', d)}" +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'glx x11-egl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \ + gbm" # virtual/libgl requires opengl in DISTRO_FEATURES. REQUIRED_DISTRO_FEATURES += "${@bb.utils.contains('DEPENDS', 'virtual/${MLPREFIX}libgl', 'opengl', '', d)}" diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.12.6.bb b/poky/meta/recipes-graphics/wayland/libinput_1.12.6.bb deleted file mode 100644 index 46366b751..000000000 --- a/poky/meta/recipes-graphics/wayland/libinput_1.12.6.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "Library to handle input devices in Wayland compositors" -HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" -SECTION = "libs" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" - -DEPENDS = "libevdev udev mtdev" - -SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \ - " -SRC_URI[md5sum] = "8cf10cc0fdfab865b105dd28283fa0fd" -SRC_URI[sha256sum] = "12b4023a3fc683d3d8127db573bdf925a2ef366615042f69c87e57c32a50f45d" - -UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" -inherit meson pkgconfig lib_package - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" -PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" - -UDEVDIR = "`pkg-config --variable=udevdir udev`" - -EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} -Ddocumentation=false -Dtests=false" - -# package name changed in 1.8.1 upgrade: make sure package upgrades work -RPROVIDES_${PN} = "libinput" -RREPLACES_${PN} = "libinput" -RCONFLICTS_${PN} = "libinput" diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.13.1.bb b/poky/meta/recipes-graphics/wayland/libinput_1.13.1.bb new file mode 100644 index 000000000..5a6dd9aec --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/libinput_1.13.1.bb @@ -0,0 +1,29 @@ +SUMMARY = "Library to handle input devices in Wayland compositors" +HOMEPAGE = "http://www.freedesktop.org/wiki/Software/libinput/" +SECTION = "libs" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=1f2ea9ebff3a2c6d458faf58492efb63" + +DEPENDS = "libevdev udev mtdev" + +SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz" +SRC_URI[md5sum] = "869a7e68c4290d99868500a369645def" +SRC_URI[sha256sum] = "e1d487d478ee2bb118890a64211c2b7f2348aaed7363b214bed4d642274841ab" + +UPSTREAM_CHECK_REGEX = "libinput-(?P\d+\.\d+\.(?!9\d+)\d+)" + +inherit meson pkgconfig lib_package + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libwacom] = "-Dlibwacom=true,-Dlibwacom=false,libwacom" +PACKAGECONFIG[gui] = "-Ddebug-gui=true,-Ddebug-gui=false,cairo gtk+3" + +UDEVDIR = "`pkg-config --variable=udevdir udev`" + +EXTRA_OEMESON += "-Dudev-dir=${UDEVDIR} -Ddocumentation=false -Dtests=false" + +# package name changed in 1.8.1 upgrade: make sure package upgrades work +RPROVIDES_${PN} = "libinput" +RREPLACES_${PN} = "libinput" +RCONFLICTS_${PN} = "libinput" diff --git a/poky/meta/recipes-graphics/wayland/weston-init/weston-start b/poky/meta/recipes-graphics/wayland/weston-init/weston-start index e72fbaaac..ccc709342 100755 --- a/poky/meta/recipes-graphics/wayland/weston-init/weston-start +++ b/poky/meta/recipes-graphics/wayland/weston-init/weston-start @@ -5,8 +5,8 @@ export PATH="/sbin:/usr/sbin:/bin:/usr/bin" usage() { - cat <] [-- ] + cat <] [-- ] EOF } @@ -27,10 +27,19 @@ if [ -n "$WAYLAND_DISPLAY" ]; then echo "ERROR: A Wayland compositor is already running, nested Weston instance is not supported yet." exit 1 fi + +if [ -n "$WESTON_USER" ]; then + if [ -z "$WESTON_TTY" ]; then + echo "ERROR: If you have WESTON_USER variable set, you also need WESTON_TTY." + exit 1 + fi + weston_args_user="-u $WESTON_USER -t $WESTON_TTY" +fi + if [ -n "$DISPLAY" ]; then launcher="weston" else - launcher="weston-launch --" + launcher="weston-launch $weston_args_user --" fi openvt_args="-s" @@ -59,11 +68,15 @@ if [ -d "$modules_dir" ]; then fi if test -z "$XDG_RUNTIME_DIR"; then - export XDG_RUNTIME_DIR=/run/user/`id -u` - if ! test -d "$XDG_RUNTIME_DIR"; then - mkdir --parents $XDG_RUNTIME_DIR - chmod 0700 $XDG_RUNTIME_DIR - fi + export XDG_RUNTIME_DIR=/run/user/`id -u ${WESTON_USER}` + if ! test -d "$XDG_RUNTIME_DIR"; then + mkdir --parents $XDG_RUNTIME_DIR + chmod 0700 $XDG_RUNTIME_DIR + fi + if [ -n "$WESTON_USER" ] + then + chown $WESTON_USER:$WESTON_USER $XDG_RUNTIME_DIR + fi fi exec openvt $openvt_args -- $launcher $weston_args --log=@LOCALSTATEDIR@/log/weston.log diff --git a/poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch b/poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch index 09ec1559e..0eb3d95a6 100644 --- a/poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch +++ b/poky/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch @@ -1,4 +1,4 @@ -From ad1d2161c811cff25d1684c33611f300adb753bc Mon Sep 17 00:00:00 2001 +From c4677e155736062e75687f1a655732c8902e912b Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 29 May 2015 20:56:00 -0700 Subject: [PATCH] make error() portable @@ -18,12 +18,12 @@ Signed-off-by: Khem Raj create mode 100644 libweston/weston-error.h diff --git a/configure.ac b/configure.ac -index 7aebbdb..dc9c802 100644 +index c05ad01..6da6e04 100644 --- a/configure.ac +++ b/configure.ac -@@ -109,6 +109,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], +@@ -126,6 +126,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], + [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile weston")], [[#include ]]) - AC_CHECK_HEADERS([execinfo.h]) +AC_CHECK_HEADERS([error.h]) + @@ -57,7 +57,7 @@ index 0000000..2089d02 +#endif + diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c -index 1adcf21..166bf3b 100644 +index bf73e0d..9064439 100644 --- a/libweston/weston-launch.c +++ b/libweston/weston-launch.c @@ -33,7 +33,6 @@ diff --git a/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch index d648538b8..a2f61bfdd 100644 --- a/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch +++ b/poky/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch @@ -1,7 +1,8 @@ -From b98b9dbda902225cdd972b5bff6a641c36cc7e90 Mon Sep 17 00:00:00 2001 +From 7d2fea61a95e9498b5a19c8cffcb2ab5631d5685 Mon Sep 17 00:00:00 2001 From: Tom Hochstein Date: Wed, 22 Feb 2017 15:53:30 +0200 -Subject: [PATCH] weston-launch: Provide a default version that doesn't require PAM +Subject: [PATCH] weston-launch: Provide a default version that doesn't require + PAM weston-launch requires PAM for starting weston as a non-root user. @@ -21,10 +22,10 @@ Signed-off-by: Denys Dmytriyenko 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac -index dc9c802..48cf5cb 100644 +index 6da6e04..681f7c8 100644 --- a/configure.ac +++ b/configure.ac -@@ -451,13 +451,17 @@ AC_ARG_ENABLE(resize-optimization, +@@ -515,13 +515,17 @@ AC_ARG_ENABLE(resize-optimization, AS_IF([test "x$enable_resize_optimization" = "xyes"], [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])]) @@ -44,7 +45,7 @@ index dc9c802..48cf5cb 100644 fi AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes") -@@ -702,6 +706,7 @@ AC_MSG_RESULT([ +@@ -767,6 +771,7 @@ AC_MSG_RESULT([ Enable developer documentation ${enable_devdocs} weston-launch utility ${enable_weston_launch} @@ -53,7 +54,7 @@ index dc9c802..48cf5cb 100644 systemd notify support ${enable_systemd_notify} diff --git a/libweston/weston-launch.c b/libweston/weston-launch.c -index 166bf3b..6fb9232 100644 +index 9064439..c6abe92 100644 --- a/libweston/weston-launch.c +++ b/libweston/weston-launch.c @@ -51,7 +51,9 @@ @@ -77,7 +78,7 @@ index 166bf3b..6fb9232 100644 int tty; int ttynr; int sock[2]; -@@ -189,6 +193,7 @@ weston_launch_allowed(struct weston_launch *wl) +@@ -191,6 +195,7 @@ weston_launch_allowed(struct weston_launch *wl) return false; } @@ -85,7 +86,7 @@ index 166bf3b..6fb9232 100644 static int pam_conversation_fn(int msg_count, const struct pam_message **messages, -@@ -229,6 +234,7 @@ setup_pam(struct weston_launch *wl) +@@ -231,6 +236,7 @@ setup_pam(struct weston_launch *wl) return 0; } @@ -93,7 +94,7 @@ index 166bf3b..6fb9232 100644 static int setup_launcher_socket(struct weston_launch *wl) -@@ -422,6 +428,7 @@ quit(struct weston_launch *wl, int status) +@@ -424,6 +430,7 @@ quit(struct weston_launch *wl, int status) close(wl->signalfd); close(wl->sock[0]); @@ -101,7 +102,7 @@ index 166bf3b..6fb9232 100644 if (wl->new_user) { err = pam_close_session(wl->ph, 0); if (err) -@@ -429,6 +436,7 @@ quit(struct weston_launch *wl, int status) +@@ -431,6 +438,7 @@ quit(struct weston_launch *wl, int status) err, pam_strerror(wl->ph, err)); pam_end(wl->ph, err); } @@ -109,7 +110,7 @@ index 166bf3b..6fb9232 100644 if (ioctl(wl->tty, KDSKBMUTE, 0) && ioctl(wl->tty, KDSKBMODE, wl->kb_mode)) -@@ -608,6 +616,7 @@ setup_session(struct weston_launch *wl, char **child_argv) +@@ -610,6 +618,7 @@ setup_session(struct weston_launch *wl, char **child_argv) setenv("HOME", wl->pw->pw_dir, 1); setenv("SHELL", wl->pw->pw_shell, 1); @@ -117,7 +118,7 @@ index 166bf3b..6fb9232 100644 env = pam_getenvlist(wl->ph); if (env) { for (i = 0; env[i]; ++i) { -@@ -616,6 +625,7 @@ setup_session(struct weston_launch *wl, char **child_argv) +@@ -618,6 +627,7 @@ setup_session(struct weston_launch *wl, char **child_argv) } free(env); } @@ -125,7 +126,7 @@ index 166bf3b..6fb9232 100644 /* * We open a new session, so it makes sense -@@ -683,8 +693,10 @@ static void +@@ -685,8 +695,10 @@ static void help(const char *name) { fprintf(stderr, "Usage: %s [args...] [-- [weston args..]]\n", name); @@ -136,7 +137,7 @@ index 166bf3b..6fb9232 100644 fprintf(stderr, " -t, --tty Start session on alternative tty,\n" " e.g. -t /dev/tty4, requires -u option.\n"); fprintf(stderr, " -v, --verbose Be verbose\n"); -@@ -698,7 +710,9 @@ main(int argc, char *argv[]) +@@ -700,7 +712,9 @@ main(int argc, char *argv[]) int i, c; char *tty = NULL; struct option opts[] = { @@ -146,7 +147,7 @@ index 166bf3b..6fb9232 100644 { "tty", required_argument, NULL, 't' }, { "verbose", no_argument, NULL, 'v' }, { "help", no_argument, NULL, 'h' }, -@@ -710,9 +724,13 @@ main(int argc, char *argv[]) +@@ -712,9 +726,13 @@ main(int argc, char *argv[]) while ((c = getopt_long(argc, argv, "u:t:vh", opts, &i)) != -1) { switch (c) { case 'u': @@ -160,7 +161,7 @@ index 166bf3b..6fb9232 100644 break; case 't': tty = optarg; -@@ -753,8 +771,10 @@ main(int argc, char *argv[]) +@@ -755,8 +773,10 @@ main(int argc, char *argv[]) if (setup_tty(&wl, tty) < 0) exit(EXIT_FAILURE); diff --git a/poky/meta/recipes-graphics/wayland/weston_5.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_5.0.0.bb deleted file mode 100644 index e51710928..000000000 --- a/poky/meta/recipes-graphics/wayland/weston_5.0.0.bb +++ /dev/null @@ -1,108 +0,0 @@ -SUMMARY = "Weston, a Wayland compositor" -DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" -HOMEPAGE = "http://wayland.freedesktop.org" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ - file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" - -SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ - file://weston.png \ - file://weston.desktop \ - file://0001-make-error-portable.patch \ - file://xwayland.weston-start \ - file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ -" -SRC_URI[md5sum] = "752a04ce3c65af4884cfac4e57231bdb" -SRC_URI[sha256sum] = "15a23423bcfa45e31e1dedc0cd524ba71e2930df174fde9c99b71a537c4e4caf" - -UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" - -inherit autotools pkgconfig useradd distro_features_check -# depends on virtual/egl -REQUIRED_DISTRO_FEATURES = "opengl" - -DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" -DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" - -WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" - -EXTRA_OECONF = "--enable-setuid-install \ - --disable-rdp-compositor \ - " -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl', '', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ - clients launch" -# -# Compositor choices -# -# Weston on KMS -PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa virtual/libgbm mtdev" -# Weston on Wayland (nested Weston) -PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa" -# Weston on X11 -PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo" -# Headless Weston -PACKAGECONFIG[headless] = "--enable-headless-compositor,--disable-headless-compositor" -# Weston on framebuffer -PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,udev mtdev" -# weston-launch -PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,drm" -# VA-API desktop recorder -PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva" -# Weston with EGL support -PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl" -# Weston with cairo glesv2 support -PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo" -# Weston with lcms support -PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms" -# Weston with webp support -PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp" -# Weston with systemd-login support -PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus" -# Weston with Xwayland support (requires X11 and Wayland) -PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland" -# colord CMS support -PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord" -# Clients support -PACKAGECONFIG[clients] = "--enable-clients --enable-simple-clients --enable-demo-clients-install,--disable-clients --disable-simple-clients" -# Weston with PAM support -PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" - -do_install_append() { - # Weston doesn't need the .la files to load modules, so wipe them - rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la - - # If X11, ship a desktop file to launch it - if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then - install -d ${D}${datadir}/applications - install ${WORKDIR}/weston.desktop ${D}${datadir}/applications - - install -d ${D}${datadir}/icons/hicolor/48x48/apps - install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps - fi - - if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then - install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland - fi -} - -PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ - libweston-${WESTON_MAJOR_VERSION} ${PN}-examples" - -FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}" - -FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" -SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." - -FILES_${PN}-examples = "${bindir}/*" - -FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" -RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" - -RDEPENDS_${PN} += "xkeyboard-config" -RRECOMMENDS_${PN} = "weston-conf liberation-fonts" -RRECOMMENDS_${PN}-dev += "wayland-protocols" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/poky/meta/recipes-graphics/wayland/weston_6.0.0.bb b/poky/meta/recipes-graphics/wayland/weston_6.0.0.bb new file mode 100644 index 000000000..fa08dac91 --- /dev/null +++ b/poky/meta/recipes-graphics/wayland/weston_6.0.0.bb @@ -0,0 +1,109 @@ +SUMMARY = "Weston, a Wayland compositor" +DESCRIPTION = "Weston is the reference implementation of a Wayland compositor" +HOMEPAGE = "http://wayland.freedesktop.org" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=d79ee9e66bb0f95d3386a7acae780b70 \ + file://libweston/compositor.c;endline=27;md5=6c53bbbd99273f4f7c4affa855c33c0a" + +SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ + file://weston.png \ + file://weston.desktop \ + file://0001-make-error-portable.patch \ + file://xwayland.weston-start \ + file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ +" +SRC_URI[md5sum] = "7c634e262f8a464a076c97fd50ad36b3" +SRC_URI[sha256sum] = "546323a90607b3bd7f48809ea9d76e64cd09718102f2deca6d95aa59a882e612" + +UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html" + +inherit autotools pkgconfig useradd distro_features_check +# depends on virtual/egl +REQUIRED_DISTRO_FEATURES = "opengl" + +DEPENDS = "libxkbcommon gdk-pixbuf pixman cairo glib-2.0 jpeg" +DEPENDS += "wayland wayland-protocols libinput virtual/egl pango wayland-native" + +WESTON_MAJOR_VERSION = "${@'.'.join(d.getVar('PV').split('.')[0:1])}" + +EXTRA_OECONF = "--enable-setuid-install \ + --disable-rdp-compositor \ + --enable-autotools \ + " +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'kms fbdev wayland egl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 wayland', 'xwayland', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'pam systemd x11', d)} \ + clients launch" +# +# Compositor choices +# +# Weston on KMS +PACKAGECONFIG[kms] = "--enable-drm-compositor,--disable-drm-compositor,drm udev virtual/mesa virtual/libgbm mtdev" +# Weston on Wayland (nested Weston) +PACKAGECONFIG[wayland] = "--enable-wayland-compositor,--disable-wayland-compositor,virtual/mesa" +# Weston on X11 +PACKAGECONFIG[x11] = "--enable-x11-compositor,--disable-x11-compositor,virtual/libx11 libxcb libxcb libxcursor cairo" +# Headless Weston +PACKAGECONFIG[headless] = "--enable-headless-compositor,--disable-headless-compositor" +# Weston on framebuffer +PACKAGECONFIG[fbdev] = "--enable-fbdev-compositor,--disable-fbdev-compositor,udev mtdev" +# weston-launch +PACKAGECONFIG[launch] = "--enable-weston-launch,--disable-weston-launch,drm" +# VA-API desktop recorder +PACKAGECONFIG[vaapi] = "--enable-vaapi-recorder,--disable-vaapi-recorder,libva" +# Weston with EGL support +PACKAGECONFIG[egl] = "--enable-egl --enable-simple-egl-clients,--disable-egl --disable-simple-egl-clients,virtual/egl" +# Weston with cairo glesv2 support +PACKAGECONFIG[cairo-glesv2] = "--with-cairo-glesv2,--with-cairo=image,cairo" +# Weston with lcms support +PACKAGECONFIG[lcms] = "--enable-lcms,--disable-lcms,lcms" +# Weston with webp support +PACKAGECONFIG[webp] = "--with-webp,--without-webp,libwebp" +# Weston with systemd-login support +PACKAGECONFIG[systemd] = "--enable-systemd-login,--disable-systemd-login,systemd dbus" +# Weston with Xwayland support (requires X11 and Wayland) +PACKAGECONFIG[xwayland] = "--enable-xwayland,--disable-xwayland" +# colord CMS support +PACKAGECONFIG[colord] = "--enable-colord,--disable-colord,colord" +# Clients support +PACKAGECONFIG[clients] = "--enable-clients --enable-simple-clients --enable-demo-clients-install,--disable-clients --disable-simple-clients" +# Weston with PAM support +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam" + +do_install_append() { + # Weston doesn't need the .la files to load modules, so wipe them + rm -f ${D}/${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.la + + # If X11, ship a desktop file to launch it + if [ "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" ]; then + install -d ${D}${datadir}/applications + install ${WORKDIR}/weston.desktop ${D}${datadir}/applications + + install -d ${D}${datadir}/icons/hicolor/48x48/apps + install ${WORKDIR}/weston.png ${D}${datadir}/icons/hicolor/48x48/apps + fi + + if [ "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', 'yes', 'no', d)}" = "yes" ]; then + install -Dm 644 ${WORKDIR}/xwayland.weston-start ${D}${datadir}/weston-start/xwayland + fi +} + +PACKAGES += "${@bb.utils.contains('PACKAGECONFIG', 'xwayland', '${PN}-xwayland', '', d)} \ + libweston-${WESTON_MAJOR_VERSION} ${PN}-examples" + +FILES_${PN} = "${bindir}/weston ${bindir}/weston-terminal ${bindir}/weston-info ${bindir}/weston-launch ${bindir}/wcap-decode ${libexecdir} ${libdir}/${BPN}/*.so ${datadir}" + +FILES_libweston-${WESTON_MAJOR_VERSION} = "${libdir}/lib*${SOLIBS} ${libdir}/libweston-${WESTON_MAJOR_VERSION}/*.so" +SUMMARY_libweston-${WESTON_MAJOR_VERSION} = "Helper library for implementing 'wayland window managers'." + +FILES_${PN}-examples = "${bindir}/*" + +FILES_${PN}-xwayland = "${libdir}/libweston-${WESTON_MAJOR_VERSION}/xwayland.so" +RDEPENDS_${PN}-xwayland += "xserver-xorg-xwayland" + +RDEPENDS_${PN} += "xkeyboard-config" +RRECOMMENDS_${PN} = "weston-conf liberation-fonts" +RRECOMMENDS_${PN}-dev += "wayland-protocols" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "--system weston-launch" diff --git a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.0.bb b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.0.bb deleted file mode 100644 index a06aa269b..000000000 --- a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.0.bb +++ /dev/null @@ -1,23 +0,0 @@ -require xorg-app-common.inc - -SUMMARY = "X11 server performance test program" - -DESCRIPTION = "The x11perf program runs one or more performance tests \ -and reports how fast an X server can execute the tests." - - -DEPENDS += "libxmu libxrender libxft libxext fontconfig" - -LIC_FILES_CHKSUM = "file://COPYING;md5=428ca4d67a41fcd4fc3283dce9bbda7e \ - file://x11perf.h;endline=24;md5=29555066baf406a105ff917ac25b2d01" - -PE = "1" - -do_install_append_class-target () { - sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${bindir}/x11perfcomp -} - -FILES_${PN} += "${libdir}/X11/x11perfcomp/*" - -SRC_URI[md5sum] = "f0b24e4d8beb622a419e8431e1c03cd7" -SRC_URI[sha256sum] = "e87098dec1947572d70c62697a7b70bde1ab5668237d4660080eade6bc096751" diff --git a/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb new file mode 100644 index 000000000..33c0c8a95 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-app/x11perf_1.6.1.bb @@ -0,0 +1,23 @@ +require xorg-app-common.inc + +SUMMARY = "X11 server performance test program" + +DESCRIPTION = "The x11perf program runs one or more performance tests \ +and reports how fast an X server can execute the tests." + + +DEPENDS += "libxmu libxrender libxft libxext fontconfig" + +LIC_FILES_CHKSUM = "file://COPYING;md5=428ca4d67a41fcd4fc3283dce9bbda7e \ + file://x11perf.h;endline=24;md5=29555066baf406a105ff917ac25b2d01" + +PE = "1" + +do_install_append_class-target () { + sed -i -e 's:${HOSTTOOLS_DIR}/::g' ${D}${bindir}/x11perfcomp +} + +FILES_${PN} += "${libdir}/X11/x11perfcomp/*" + +SRC_URI[md5sum] = "e96b56756990c56c24d2d02c2964456b" +SRC_URI[sha256sum] = "1c7e0b8ffc2794b4ccf11e04d551823abe0ea47b4f7db0637390db6fbe817c34" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch b/poky/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch deleted file mode 100644 index 698d038f9..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxcb/gcc-mips-pr68302-mips-workaround.patch +++ /dev/null @@ -1,22 +0,0 @@ -Reduce debug info for xcb.c since on mips we run into a gcc5 bug - -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68302 - -This patch is a workaround to get past the gcc bug until its resolved. -it should have minimal impact on libxcb while make it work. - -Upstream-Status: Inappropriate [OE-Specific] -Signed-off-by: Khem Raj - -Index: libxcb-1.11.1/src/Makefile.am -=================================================================== ---- libxcb-1.11.1.orig/src/Makefile.am -+++ libxcb-1.11.1/src/Makefile.am -@@ -188,6 +188,7 @@ EXTSOURCES += xkb.c - if BUILD_XKB - lib_LTLIBRARIES += libxcb-xkb.la - libxcb_xkb_la_LDFLAGS = -version-info 1:0:0 -no-undefined -+CFLAGS += -g1 - libxcb_xkb_la_LIBADD = $(XCB_LIBS) - nodist_libxcb_xkb_la_SOURCES = xkb.c xkb.h - endif diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb index 84303e624..b0afc01df 100644 --- a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb +++ b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.13.1.bb @@ -12,7 +12,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7" SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.bz2 \ file://xcbincludedir.patch \ file://disable-check.patch \ - file://gcc-mips-pr68302-mips-workaround.patch \ " SRC_URI[md5sum] = "f33cdfc67346f7217a9326c0d8679975" @@ -30,7 +29,6 @@ inherit autotools pkgconfig distro_features_check # The libxau and others requires x11 in DISTRO_FEATURES REQUIRED_DISTRO_FEATURES = "x11" -REQUIRED_DISTRO_FEATURES_class-native = "" export PYTHON = "python3" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.2.bb b/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.2.bb deleted file mode 100644 index 466f3491f..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.2.bb +++ /dev/null @@ -1,29 +0,0 @@ -SUMMARY = "XDMCP: X Display Manager Control Protocol library" - -DESCRIPTION = "The purpose of the X Display Manager Control Protocol \ -(XDMCP) is to provide a uniform mechanism for an autonomous display to \ -request login service from a remote host. An X terminal (screen, \ -keyboard, mouse, processor, network interface) is a prime example of an \ -autonomous display." - -require xorg-lib-common.inc - -inherit gettext - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=d559fb26e129626022e052a5e6e0e123" - -DEPENDS += "xorgproto" -PROVIDES = "xdmcp" - -PE = "1" - -XORG_PN = "libXdmcp" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "18aa5c1279b01f9d18e3299969665b2e" -SRC_URI[sha256sum] = "81fe09867918fff258296e1e1e159f0dc639cb30d201c53519f25ab73af4e4e2" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[arc4] = "ac_cv_lib_bsd_arc4random_buf=yes,ac_cv_lib_bsd_arc4random_buf=no,libbsd" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.3.bb new file mode 100644 index 000000000..d43a146fd --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxdmcp_1.1.3.bb @@ -0,0 +1,29 @@ +SUMMARY = "XDMCP: X Display Manager Control Protocol library" + +DESCRIPTION = "The purpose of the X Display Manager Control Protocol \ +(XDMCP) is to provide a uniform mechanism for an autonomous display to \ +request login service from a remote host. An X terminal (screen, \ +keyboard, mouse, processor, network interface) is a prime example of an \ +autonomous display." + +require xorg-lib-common.inc + +inherit gettext + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=d559fb26e129626022e052a5e6e0e123" + +DEPENDS += "xorgproto" +PROVIDES = "xdmcp" + +PE = "1" + +XORG_PN = "libXdmcp" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "115c5c12ecce0e749cd91d999a5fd160" +SRC_URI[sha256sum] = "20523b44aaa513e17c009e873ad7bbc301507a3224c232610ce2e099011c6529" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[arc4] = "ac_cv_lib_bsd_arc4random_buf=yes,ac_cv_lib_bsd_arc4random_buf=no,libbsd" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.3.bb deleted file mode 100644 index aae8f2af6..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.3.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "XExt: X Extension library" - -DESCRIPTION = "libXext provides an X Window System client interface to \ -several extensions to the X protocol. The supported protocol extensions \ -are DOUBLE-BUFFER, DPMS, Extended-Visual-Information, LBX, MIT_SHM, \ -MIT_SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP, \ -XC-APPGROUP, XC-MISC, XTEST. libXext also provides a small set of \ -utility functions to aid authors of client APIs for X protocol \ -extensions." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=879ce266785414bd1cbc3bc2f4d9d7c8" - -DEPENDS += "xorgproto virtual/libx11" -PROVIDES = "xext" - -PE = "1" - -XORG_PN = "libXext" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "52df7c4c1f0badd9f82ab124fb32eb97" -SRC_URI[sha256sum] = "b518d4d332231f313371fdefac59e3776f4f0823bcb23cf7c7305bfb57b16e35" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.4.bb b/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.4.bb new file mode 100644 index 000000000..9493111a6 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxext_1.3.4.bb @@ -0,0 +1,26 @@ +SUMMARY = "XExt: X Extension library" + +DESCRIPTION = "libXext provides an X Window System client interface to \ +several extensions to the X protocol. The supported protocol extensions \ +are DOUBLE-BUFFER, DPMS, Extended-Visual-Information, LBX, MIT_SHM, \ +MIT_SUNDRY-NONSTANDARD, Multi-Buffering, SECURITY, SHAPE, SYNC, TOG-CUP, \ +XC-APPGROUP, XC-MISC, XTEST. libXext also provides a small set of \ +utility functions to aid authors of client APIs for X protocol \ +extensions." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=879ce266785414bd1cbc3bc2f4d9d7c8" + +DEPENDS += "xorgproto virtual/libx11" +PROVIDES = "xext" + +PE = "1" + +XORG_PN = "libXext" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "f5b48bb76ba327cd2a8dc7a383532a95" +SRC_URI[sha256sum] = "59ad6fcce98deaecc14d39a672cf218ca37aba617c9a0f691cac3bcd28edf82b" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb b/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb deleted file mode 100644 index 4565ae262..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.2.bb +++ /dev/null @@ -1,33 +0,0 @@ -SUMMARY = "XFt: X FreeType libary" - -DESCRIPTION = "Xft was designed to provide good support for scalable \ -fonts, and to do so efficiently. Unlike the core fonts system, it \ -supports features such as anti-aliasing and sub-pixel rasterisation. \ -Perhaps more importantly, it gives applications full control over the \ -way glyphs are rendered, making fine typesetting and WYSIWIG display \ -possible. Finally, it allows applications to use fonts that are not \ -installed system-wide for displaying documents with embedded fonts. Xft \ -is not compatible with the core fonts system: usage of Xft requires \ -fairly extensive changes to toolkits (user-interface libraries)." - -require xorg-lib-common.inc - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" - -DEPENDS += "virtual/libx11 libxrender freetype fontconfig" -PROVIDES = "xft" - -PE = "1" - -SRC_URI[md5sum] = "331b3a2a3a1a78b5b44cfbd43f86fcfe" -SRC_URI[sha256sum] = "f5a3c824761df351ca91827ac221090943ef28b248573486050de89f4bfcdc4c" - -XORG_PN = "libXft" - -BBCLASSEXTEND = "native nativesdk" - -python () { - if d.getVar('DEBIAN_NAMES'): - d.setVar('PKG_${PN}', '${MLPREFIX}libxft2') -} diff --git a/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb new file mode 100644 index 000000000..65bd9ae49 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxft_2.3.3.bb @@ -0,0 +1,33 @@ +SUMMARY = "XFt: X FreeType libary" + +DESCRIPTION = "Xft was designed to provide good support for scalable \ +fonts, and to do so efficiently. Unlike the core fonts system, it \ +supports features such as anti-aliasing and sub-pixel rasterisation. \ +Perhaps more importantly, it gives applications full control over the \ +way glyphs are rendered, making fine typesetting and WYSIWIG display \ +possible. Finally, it allows applications to use fonts that are not \ +installed system-wide for displaying documents with embedded fonts. Xft \ +is not compatible with the core fonts system: usage of Xft requires \ +fairly extensive changes to toolkits (user-interface libraries)." + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=90b90b60eb30f65fc9c2673d7cf59e24" + +DEPENDS += "virtual/libx11 libxrender freetype fontconfig" +PROVIDES = "xft" + +PE = "1" + +SRC_URI[md5sum] = "4a433c24627b4ff60a4dd403a0990796" +SRC_URI[sha256sum] = "225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216" + +XORG_PN = "libXft" + +BBCLASSEXTEND = "native nativesdk" + +python () { + if d.getVar('DEBIAN_NAMES'): + d.setVar('PKG_${PN}', '${MLPREFIX}libxft2') +} diff --git a/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.9.bb b/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.9.bb deleted file mode 100644 index f5c18607a..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.0.9.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "XKB: X Keyboard File manipulation library" - -DESCRIPTION = "libxkbfile provides an interface to read and manipulate \ -description files for XKB, the X11 keyboard configuration extension." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=8be7367f7e5d605a426f76bb37d4d61f" - -DEPENDS += "virtual/libx11 xorgproto" - -PE = "1" - -BBCLASSEXTEND = "native" - -SRC_URI[md5sum] = "4a4cfeaf24dab1b991903455d6d7d404" -SRC_URI[sha256sum] = "51817e0530961975d9513b773960b4edd275f7d5c72293d5a151ed4f42aeb16a" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.1.0.bb b/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.1.0.bb new file mode 100644 index 000000000..3a6c50ca2 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxkbfile_1.1.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "XKB: X Keyboard File manipulation library" + +DESCRIPTION = "libxkbfile provides an interface to read and manipulate \ +description files for XKB, the X11 keyboard configuration extension." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=8be7367f7e5d605a426f76bb37d4d61f" + +DEPENDS += "virtual/libx11 xorgproto" + +PE = "1" + +BBCLASSEXTEND = "native" + +SRC_URI[md5sum] = "dd7e1e946def674e78c0efbc5c7d5b3b" +SRC_URI[sha256sum] = "758dbdaa20add2db4902df0b1b7c936564b7376c02a0acd1f2a331bd334b38c7" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb b/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb deleted file mode 100644 index 4740c1573..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.2.bb +++ /dev/null @@ -1,35 +0,0 @@ -SUMMARY = "Xmu and Xmuu: X Miscellaneous Utility libraries" - -DESCRIPTION = "The Xmu Library is a collection of miscellaneous (some \ -might say random) utility functions that have been useful in building \ -various applications and widgets. This library is required by the Athena \ -Widgets. A subset of the functions that do not rely on the Athena \ -Widgets (libXaw) or X Toolkit Instrinsics (libXt) are provided in a \ -second library, libXmuu." - - -require xorg-lib-common.inc - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=def3d8e4e9c42004f1941fa22f01dc18" - -DEPENDS += "libxt libxext" -PROVIDES = "xmu" - -PE = "1" - -XORG_PN = "libXmu" - -LEAD_SONAME = "libXmu" - -PACKAGES =+ "libxmuu" - -FILES_libxmuu = "${libdir}/libXmuu.so.*" - -BBCLASSEXTEND = "native" - -SRC_URI[md5sum] = "41d92ab627dfa06568076043f3e089e4" -SRC_URI[sha256sum] = "756edc7c383254eef8b4e1b733c3bf1dc061b523c9f9833ac7058378b8349d0b" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb b/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb new file mode 100644 index 000000000..dc3179f53 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxmu_1.1.3.bb @@ -0,0 +1,34 @@ +SUMMARY = "Xmu and Xmuu: X Miscellaneous Utility libraries" + +DESCRIPTION = "The Xmu Library is a collection of miscellaneous (some \ +might say random) utility functions that have been useful in building \ +various applications and widgets. This library is required by the Athena \ +Widgets. A subset of the functions that do not rely on the Athena \ +Widgets (libXaw) or X Toolkit Instrinsics (libXt) are provided in a \ +second library, libXmuu." + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=def3d8e4e9c42004f1941fa22f01dc18" + +DEPENDS += "libxt libxext" +PROVIDES = "xmu" + +PE = "1" + +XORG_PN = "libXmu" + +LEAD_SONAME = "libXmu" + +PACKAGES =+ "libxmuu" + +FILES_libxmuu = "${libdir}/libXmuu.so.*" + +BBCLASSEXTEND = "native" + +SRC_URI[md5sum] = "ac774cff8b493f566088a255dbf91201" +SRC_URI[sha256sum] = "9c343225e7c3dc0904f2122b562278da5fed639b1b5e880d25111561bac5b731" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," diff --git a/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb b/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb deleted file mode 100644 index b90ebc623..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.1.bb +++ /dev/null @@ -1,23 +0,0 @@ -SUMMARY = "XRandR: X Resize, Rotate and Reflect extension library" - -DESCRIPTION = "The X Resize, Rotate and Reflect Extension, called RandR \ -for short, brings the ability to resize, rotate and reflect the root \ -window of a screen. It is based on the X Resize and Rotate Extension as \ -specified in the Proceedings of the 2001 Usenix Technical Conference \ -[RANDR]." - -require xorg-lib-common.inc - -LICENSE = "MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=c9d1a2118a6cd5727521db8e7a2fee69" - -DEPENDS += "virtual/libx11 xorgproto libxrender libxext" - -PE = "1" - -XORG_PN = "libXrandr" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "28e486f1d491b757173dd85ba34ee884" -SRC_URI[sha256sum] = "1ff9e7fa0e4adea912b16a5f0cfa7c1d35b0dcda0e216831f7715c8a3abcf51a" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.2.bb b/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.2.bb new file mode 100644 index 000000000..53a8335d6 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxrandr_1.5.2.bb @@ -0,0 +1,23 @@ +SUMMARY = "XRandR: X Resize, Rotate and Reflect extension library" + +DESCRIPTION = "The X Resize, Rotate and Reflect Extension, called RandR \ +for short, brings the ability to resize, rotate and reflect the root \ +window of a screen. It is based on the X Resize and Rotate Extension as \ +specified in the Proceedings of the 2001 Usenix Technical Conference \ +[RANDR]." + +require xorg-lib-common.inc + +LICENSE = "MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=c9d1a2118a6cd5727521db8e7a2fee69" + +DEPENDS += "virtual/libx11 xorgproto libxrender libxext" + +PE = "1" + +XORG_PN = "libXrandr" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "18f3b20d522f45e4dadd34afb5bea048" +SRC_URI[sha256sum] = "8aea0ebe403d62330bb741ed595b53741acf45033d3bda1792f1d4cc3daee023" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb b/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb deleted file mode 100644 index 7e49a98dd..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.10.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "XvMC: X Video Motion Compensation extension library" - -DESCRIPTION = "XvMC extends the X Video extension (Xv) and enables \ -hardware rendered motion compensation support." - -require xorg-lib-common.inc - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=0a207f08d4961489c55046c9a5e500da \ - file://wrapper/XvMCWrapper.c;endline=26;md5=5151daa8172a3f1bb0cb0e0ff157d9de" - -DEPENDS += "libxext libxv xorgproto" - -PE = "1" - -XORG_PN = "libXvMC" - -SRC_URI[md5sum] = "4cbe1c1def7a5e1b0ed5fce8e512f4c6" -SRC_URI[sha256sum] = "e501a079b5dfaef0897c56152770c77e05e362065cec58910289aa567277ee2e" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.11.bb b/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.11.bb new file mode 100644 index 000000000..d95f809ed --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxvmc_1.0.11.bb @@ -0,0 +1,19 @@ +SUMMARY = "XvMC: X Video Motion Compensation extension library" + +DESCRIPTION = "XvMC extends the X Video extension (Xv) and enables \ +hardware rendered motion compensation support." + +require xorg-lib-common.inc + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=0a207f08d4961489c55046c9a5e500da \ + file://wrapper/XvMCWrapper.c;endline=26;md5=5151daa8172a3f1bb0cb0e0ff157d9de" + +DEPENDS += "libxext libxv xorgproto" + +PE = "1" + +XORG_PN = "libXvMC" + +SRC_URI[md5sum] = "707175185a2e0490b8173686c657324f" +SRC_URI[sha256sum] = "4a2e34d444a683a7c010b01b23cefe2b8043a063ce4dc6a9b855836b5262622d" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.4.bb b/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.4.bb deleted file mode 100644 index 626199e09..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.4.bb +++ /dev/null @@ -1,19 +0,0 @@ -require xorg-lib-common.inc - -SUMMARY = "XFree86-DGA: XFree86 Direct Graphics Access extension library" - -DESCRIPTION = "libXxf86dga provides the XFree86-DGA extension, which \ -allows direct graphics access to a framebuffer-like region, and also \ -allows relative mouse reporting, et al. It is mainly used by games and \ -emulators for games." - -LIC_FILES_CHKSUM = "file://COPYING;md5=abb99ac125f84f424a4278153988e32f" - -DEPENDS += "libxext" - -PE = "1" - -SRC_URI[md5sum] = "d7dd9b9df336b7dd4028b6b56542ff2c" -SRC_URI[sha256sum] = "8eecd4b6c1df9a3704c04733c2f4fa93ef469b55028af5510b25818e2456c77e" - -XORG_PN = "libXxf86dga" diff --git a/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.5.bb b/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.5.bb new file mode 100644 index 000000000..e1cb34565 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/libxxf86dga_1.1.5.bb @@ -0,0 +1,19 @@ +require xorg-lib-common.inc + +SUMMARY = "XFree86-DGA: XFree86 Direct Graphics Access extension library" + +DESCRIPTION = "libXxf86dga provides the XFree86-DGA extension, which \ +allows direct graphics access to a framebuffer-like region, and also \ +allows relative mouse reporting, et al. It is mainly used by games and \ +emulators for games." + +LIC_FILES_CHKSUM = "file://COPYING;md5=abb99ac125f84f424a4278153988e32f" + +DEPENDS += "libxext" + +PE = "1" + +SRC_URI[md5sum] = "0ddeafc13b33086357cfa96fae41ee8e" +SRC_URI[sha256sum] = "2b98bc5f506c6140d4eddd3990842d30f5dae733b64f198a504f07461bdb7203" + +XORG_PN = "libXxf86dga" diff --git a/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.0.bb b/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.0.bb deleted file mode 100644 index 49c3d6234..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.0.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "Pixman: Pixel Manipulation library" - -DESCRIPTION = "Pixman provides a library for manipulating pixel regions \ --- a set of Y-X banded rectangles, image compositing using the \ -Porter/Duff model and implicit mask generation for geometric primitives \ -including trapezoids, triangles, and rectangles." - -require xorg-lib-common.inc - -# see http://cairographics.org/releases/ - only even minor versions are stable -UPSTREAM_CHECK_REGEX = "pixman-(?P\d+\.(\d*[02468])+(\.\d+)+)" - -LICENSE = "MIT & MIT-style & PD" -LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3 \ - file://pixman/pixman-matrix.c;endline=21;md5=4a018dff3e4e25302724c88ff95c2456 \ - file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ - " -DEPENDS += "zlib libpng" -BBCLASSEXTEND = "native nativesdk" - -PE = "1" - -IWMMXT = "--disable-arm-iwmmxt" -LOONGSON_MMI = "--disable-loongson-mmi" -# If target supports neon then disable the 'simd' (ie VFPv2) fallback, otherwise disable neon. -NEON = "${@bb.utils.contains("TUNE_FEATURES", "neon", "--disable-arm-simd", "--disable-arm-neon" ,d)}" - -EXTRA_OECONF = "--disable-gtk ${IWMMXT} ${LOONGSON_MMI} ${NEON}" -EXTRA_OECONF_class-native = "--disable-gtk" -EXTRA_OECONF_class-nativesdk = "--disable-gtk" - -SRC_URI += "\ - file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \ - file://0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch \ -" - -SRC_URI[md5sum] = "04ecad28edcc14e7eb5f7ed6df29c7a0" -SRC_URI[sha256sum] = "b768e3f7895ddebdc0f07478729d9cec4fe0a9d2201f828c900d67b0e5b436a8" - -REQUIRED_DISTRO_FEATURES = "" diff --git a/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb b/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb new file mode 100644 index 000000000..82c2e73e5 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/pixman_0.38.4.bb @@ -0,0 +1,40 @@ +SUMMARY = "Pixman: Pixel Manipulation library" + +DESCRIPTION = "Pixman provides a library for manipulating pixel regions \ +-- a set of Y-X banded rectangles, image compositing using the \ +Porter/Duff model and implicit mask generation for geometric primitives \ +including trapezoids, triangles, and rectangles." + +require xorg-lib-common.inc + +# see http://cairographics.org/releases/ - only even minor versions are stable +UPSTREAM_CHECK_REGEX = "pixman-(?P\d+\.(\d*[02468])+(\.\d+)+)" + +LICENSE = "MIT & MIT-style & PD" +LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3 \ + file://pixman/pixman-matrix.c;endline=21;md5=4a018dff3e4e25302724c88ff95c2456 \ + file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ + " +DEPENDS += "zlib libpng" +BBCLASSEXTEND = "native nativesdk" + +PE = "1" + +IWMMXT = "--disable-arm-iwmmxt" +LOONGSON_MMI = "--disable-loongson-mmi" +# If target supports neon then disable the 'simd' (ie VFPv2) fallback, otherwise disable neon. +NEON = "${@bb.utils.contains("TUNE_FEATURES", "neon", "--disable-arm-simd", "--disable-arm-neon" ,d)}" + +EXTRA_OECONF = "--disable-gtk ${IWMMXT} ${LOONGSON_MMI} ${NEON}" +EXTRA_OECONF_class-native = "--disable-gtk" +EXTRA_OECONF_class-nativesdk = "--disable-gtk" + +SRC_URI += "\ + file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \ + file://0001-test-utils-Check-for-FE_INVALID-definition-before-us.patch \ +" + +SRC_URI[md5sum] = "16a350a8a40116ddf67632a1d2623711" +SRC_URI[sha256sum] = "84abb7fa2541af24d9c3b34bf75d6ac60cc94ac4410061bbb295b66a29221550" + +REQUIRED_DISTRO_FEATURES = "" diff --git a/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc b/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc index 6f4e44454..09df0109c 100644 --- a/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc +++ b/poky/meta/recipes-graphics/xorg-lib/xorg-lib-common.inc @@ -24,4 +24,3 @@ UNKNOWN_CONFIGURE_WHITELIST += "--enable-malloc0returnsnull --disable-malloc0ret " REQUIRED_DISTRO_FEATURES ?= "x11" -REQUIRED_DISTRO_FEATURES_class-native = "" diff --git a/poky/meta/recipes-graphics/xorg-lib/xtrans_1.3.5.bb b/poky/meta/recipes-graphics/xorg-lib/xtrans_1.3.5.bb deleted file mode 100644 index 200716fb0..000000000 --- a/poky/meta/recipes-graphics/xorg-lib/xtrans_1.3.5.bb +++ /dev/null @@ -1,26 +0,0 @@ -SUMMARY = "XTrans: X Transport library" - -DESCRIPTION = "The X Transport Interface is intended to combine all \ -system and transport specific code into a single place. This API should \ -be used by all libraries, clients and servers of the X Window System. \ -Use of this API should allow the addition of new types of transports and \ -support for new platforms without making any changes to the source \ -except in the X Transport Interface code." - -require xorg-lib-common.inc - -LICENSE = "MIT & MIT-style" -LIC_FILES_CHKSUM = "file://COPYING;md5=49347921d4d5268021a999f250edc9ca" - -SRC_URI += "file://multilibfix.patch" - -PE = "1" - -RDEPENDS_${PN}-dev = "" - -inherit gettext - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI[md5sum] = "c5ba432dd1514d858053ffe9f4737dd8" -SRC_URI[sha256sum] = "adbd3b36932ce4c062cd10f57d78a156ba98d618bdb6f50664da327502bc8301" diff --git a/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb b/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb new file mode 100644 index 000000000..5bf134b5f --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-lib/xtrans_1.4.0.bb @@ -0,0 +1,26 @@ +SUMMARY = "XTrans: X Transport library" + +DESCRIPTION = "The X Transport Interface is intended to combine all \ +system and transport specific code into a single place. This API should \ +be used by all libraries, clients and servers of the X Window System. \ +Use of this API should allow the addition of new types of transports and \ +support for new platforms without making any changes to the source \ +except in the X Transport Interface code." + +require xorg-lib-common.inc + +LICENSE = "MIT & MIT-style" +LIC_FILES_CHKSUM = "file://COPYING;md5=49347921d4d5268021a999f250edc9ca" + +SRC_URI += "file://multilibfix.patch" + +PE = "1" + +RDEPENDS_${PN}-dev = "" + +inherit gettext + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI[md5sum] = "ce2fb8100c6647ee81451ebe388b17ad" +SRC_URI[sha256sum] = "377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773" diff --git a/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.5.bb b/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.5.bb deleted file mode 100644 index 727ab5496..000000000 --- a/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.5.bb +++ /dev/null @@ -1,21 +0,0 @@ -require xorg-util-common.inc - -SUMMARY = "create dependencies in makefiles" - -DESCRIPTION = "The makedepend program reads each sourcefile in sequence \ -and parses it like a C-preprocessor, processing \ -all #include, #define, #undef, #ifdef, #ifndef, #endif, #if, #elif \ -and #else directives so that it can correctly tell which #include, \ -directives would be used in a compilation. Any #include, directives \ -can reference files having other #include directives, and parsing will \ -occur in these files as well." - -DEPENDS = "xorgproto util-macros" -PE = "1" - -BBCLASSEXTEND = "native" - -LIC_FILES_CHKSUM = "file://COPYING;md5=43a6eda34b48ee821b3b66f4f753ce4f" - -SRC_URI[md5sum] = "efb2d7c7e22840947863efaedc175747" -SRC_URI[sha256sum] = "503903d41fb5badb73cb70d7b3740c8b30fe1cc68c504d3b6a85e6644c4e5004" diff --git a/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.6.bb b/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.6.bb new file mode 100644 index 000000000..2760edd17 --- /dev/null +++ b/poky/meta/recipes-graphics/xorg-util/makedepend_1.0.6.bb @@ -0,0 +1,21 @@ +require xorg-util-common.inc + +SUMMARY = "create dependencies in makefiles" + +DESCRIPTION = "The makedepend program reads each sourcefile in sequence \ +and parses it like a C-preprocessor, processing \ +all #include, #define, #undef, #ifdef, #ifndef, #endif, #if, #elif \ +and #else directives so that it can correctly tell which #include, \ +directives would be used in a compilation. Any #include, directives \ +can reference files having other #include directives, and parsing will \ +occur in these files as well." + +DEPENDS = "xorgproto util-macros" +PE = "1" + +BBCLASSEXTEND = "native" + +LIC_FILES_CHKSUM = "file://COPYING;md5=43a6eda34b48ee821b3b66f4f753ce4f" + +SRC_URI[md5sum] = "8a583055c84914060c35b6c2f963fc07" +SRC_URI[sha256sum] = "845f6708fc850bf53f5b1d0fb4352c4feab3949f140b26f71b22faba354c3365" diff --git a/poky/meta/recipes-kernel/cryptodev/cryptodev.inc b/poky/meta/recipes-kernel/cryptodev/cryptodev.inc index 252d39d23..9d8ba4405 100644 --- a/poky/meta/recipes-kernel/cryptodev/cryptodev.inc +++ b/poky/meta/recipes-kernel/cryptodev/cryptodev.inc @@ -3,7 +3,9 @@ HOMEPAGE = "http://cryptodev-linux.org/" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" -SRC_URI = "git://github.com/cryptodev-linux/cryptodev-linux" +SRC_URI = "git://github.com/cryptodev-linux/cryptodev-linux \ + file://0001-Fix-module-loading-with-Linux-v5.0-rc5.patch \ + " SRCREV = "fd8b15ef1c8398a69a37932ee48c74ab40329a29" S = "${WORKDIR}/git" diff --git a/poky/meta/recipes-kernel/cryptodev/files/0001-Fix-module-loading-with-Linux-v5.0-rc5.patch b/poky/meta/recipes-kernel/cryptodev/files/0001-Fix-module-loading-with-Linux-v5.0-rc5.patch new file mode 100644 index 000000000..34ec87272 --- /dev/null +++ b/poky/meta/recipes-kernel/cryptodev/files/0001-Fix-module-loading-with-Linux-v5.0-rc5.patch @@ -0,0 +1,59 @@ +Upstream-Status: Backport [https://github.com/cryptodev-linux/cryptodev-linux/commit/f971e0c] + +Backport patch from upstream to fix module cryptodev loading error. + +Signed-off-by: Kai Kang + +From f971e0cd4a0ebe59fb2e8e17240399bf6901b09b Mon Sep 17 00:00:00 2001 +From: "Derald D. Woods" +Date: Sun, 10 Feb 2019 13:22:19 -0600 +Subject: [PATCH] Fix module loading with Linux v5.0-rc5 + +This commit fixes this module load error: +[...] +[ 29.112091] cryptodev: loading out-of-tree module taints kernel. +[ 29.128906] cryptodev: Unknown symbol crypto_givcipher_type (err -2) +[ 29.188842] cryptodev: Unknown symbol crypto_givcipher_type (err -2) +modprobe: can't load module cryptodev (extra/cryptodev.ko): unknown symbol in module, or unknown parameter +[...] + +Upstream Linux support for unused GIVCIPHER, and others, was dropped here: + +c79b411eaa72 (crypto: skcipher - remove remnants of internal IV generators) + +Signed-off-by: Derald D. Woods +--- + cryptlib.c | 9 +++++++-- + 1 file changed, 7 insertions(+), 2 deletions(-) + +diff --git a/cryptlib.c b/cryptlib.c +index 6e66698..4a87037 100644 +--- a/cryptlib.c ++++ b/cryptlib.c +@@ -38,7 +38,9 @@ + #include "cryptodev_int.h" + #include "cipherapi.h" + ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)) + extern const struct crypto_type crypto_givcipher_type; ++#endif + + static void cryptodev_complete(struct crypto_async_request *req, int err) + { +@@ -157,8 +159,11 @@ int cryptodev_cipher_init(struct cipher_data *out, const char *alg_name, + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4, 8, 0)) + tfm = crypto_skcipher_tfm(out->async.s); +- if ((tfm->__crt_alg->cra_type == &crypto_ablkcipher_type) || +- (tfm->__crt_alg->cra_type == &crypto_givcipher_type)) { ++ if ((tfm->__crt_alg->cra_type == &crypto_ablkcipher_type) ++#if (LINUX_VERSION_CODE < KERNEL_VERSION(5, 0, 0)) ++ || (tfm->__crt_alg->cra_type == &crypto_givcipher_type) ++#endif ++ ) { + struct ablkcipher_alg *alg; + + alg = &tfm->__crt_alg->cra_ablkcipher; +-- +2.20.0 + diff --git a/poky/meta/recipes-kernel/dtc/dtc.inc b/poky/meta/recipes-kernel/dtc/dtc.inc index 7a923bf52..0650e3c82 100644 --- a/poky/meta/recipes-kernel/dtc/dtc.inc +++ b/poky/meta/recipes-kernel/dtc/dtc.inc @@ -12,6 +12,8 @@ UPSTREAM_CHECK_GITTAGREGEX = "v(?P\d+(\.\d+)+)" EXTRA_OEMAKE='NO_PYTHON=1 PREFIX="${prefix}" LIBDIR="${libdir}" DESTDIR="${D}"' +inherit pkgconfig + S = "${WORKDIR}/git" do_install () { diff --git a/poky/meta/recipes-kernel/dtc/dtc_1.4.7.bb b/poky/meta/recipes-kernel/dtc/dtc_1.4.7.bb deleted file mode 100644 index 6ce462a7f..000000000 --- a/poky/meta/recipes-kernel/dtc/dtc_1.4.7.bb +++ /dev/null @@ -1,10 +0,0 @@ -require dtc.inc - -LIC_FILES_CHKSUM = "file://GPL;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://libfdt/libfdt.h;beginline=3;endline=52;md5=fb360963151f8ec2d6c06b055bcbb68c" - -SRCREV = "88f18909db731a627456f26d779445f84e449536" - -S = "${WORKDIR}/git" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-kernel/dtc/dtc_1.5.0.bb b/poky/meta/recipes-kernel/dtc/dtc_1.5.0.bb new file mode 100644 index 000000000..a9c131706 --- /dev/null +++ b/poky/meta/recipes-kernel/dtc/dtc_1.5.0.bb @@ -0,0 +1,10 @@ +require dtc.inc + +LIC_FILES_CHKSUM = "file://GPL;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://libfdt/libfdt.h;beginline=3;endline=52;md5=fb360963151f8ec2d6c06b055bcbb68c" + +SRCREV = "d37f6b20107e952064e3f77e9d6915a9c09d10a6" + +S = "${WORKDIR}/git" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0001-Disable-PIE-during-link.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0001-Disable-PIE-during-link.patch deleted file mode 100644 index 3f2f85e33..000000000 --- a/poky/meta/recipes-kernel/kexec/kexec-tools/0001-Disable-PIE-during-link.patch +++ /dev/null @@ -1,31 +0,0 @@ -From ea7be6d71b85880e8e8a2c8a4f49a696c5f31ae4 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Sat, 10 Jun 2017 11:18:49 -0700 -Subject: [PATCH] Disable PIE during link - -We have explcitly disabled PIE during compile so we -just need to match it with linker flags - -Upstream-Status: Pending - -Signed-off-by: Khem Raj ---- - purgatory/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/purgatory/Makefile b/purgatory/Makefile -index 564bdb7..a08e41f 100644 ---- a/purgatory/Makefile -+++ b/purgatory/Makefile -@@ -59,7 +59,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ - -Iinclude \ - -I$(shell $(CC) -print-file-name=include) - $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ -- -Wl,--no-undefined -nostartfiles -nostdlib \ -+ -Wl,--no-undefined -no-pie -nostartfiles -nostdlib \ - -nodefaultlibs -e purgatory_start -Wl,-r \ - -Wl,-Map=$(PURGATORY_MAP) - --- -2.13.1 - diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0001-powerpc-change-the-memory-size-limit.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0001-powerpc-change-the-memory-size-limit.patch new file mode 100644 index 000000000..029650f35 --- /dev/null +++ b/poky/meta/recipes-kernel/kexec/kexec-tools/0001-powerpc-change-the-memory-size-limit.patch @@ -0,0 +1,35 @@ +From 211cae4b6a02a4d9d37bfcd76f3702696e095fc3 Mon Sep 17 00:00:00 2001 +From: Quanyang Wang +Date: Tue, 16 Jun 2015 12:59:57 +0800 +Subject: [PATCH] powerpc: change the memory size limit + +When run "kexec" in powerpc board, the kexec has a limit that +the kernel text and bss size must be less than 24M. But now +some kernel size exceed the limit. So we need to change the limit, +else will get the error log as below: + +my_load:669: do +Could not find a free area of memory of 0x12400 bytes... +Could not find a free area of memory of 0x13000 bytes... +locate_hole failed + +Upstream-Status: Pending + +Signed-off-by: Quanyang Wang +--- + kexec/arch/ppc/kexec-ppc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/kexec/arch/ppc/kexec-ppc.h b/kexec/arch/ppc/kexec-ppc.h +index 04e728e..6bae9ec 100644 +--- a/kexec/arch/ppc/kexec-ppc.h ++++ b/kexec/arch/ppc/kexec-ppc.h +@@ -44,7 +44,7 @@ void dol_ppc_usage(void); + * During inital setup the kernel does not map the whole memory but a part of + * it. On Book-E that is 64MiB, 601 24MiB or 256MiB (if possible). + */ +-#define KERNEL_ACCESS_TOP (24 * 1024 * 1024) ++#define KERNEL_ACCESS_TOP (36 * 1024 * 1024) + + /* boot block version 17 as defined by the linux kernel */ + struct bootblock { diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0001-purgatory-Pass-r-directly-to-linker.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0001-purgatory-Pass-r-directly-to-linker.patch deleted file mode 100644 index bfd077daf..000000000 --- a/poky/meta/recipes-kernel/kexec/kexec-tools/0001-purgatory-Pass-r-directly-to-linker.patch +++ /dev/null @@ -1,32 +0,0 @@ -From a1135b3170963ba956f2364c1283864c35541295 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 7 Sep 2015 07:59:45 +0000 -Subject: [PATCH] purgatory: Pass -r directly to linker - -This helps compiling with clang since -r is not a known option for clang -where as gcc knows how to deal with it and passes it down to linker -unfiltered - -Signed-off-by: Khem Raj ---- -Upstream-Status: Pending - - purgatory/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/purgatory/Makefile b/purgatory/Makefile -index 2b5c061..b251353 100644 ---- a/purgatory/Makefile -+++ b/purgatory/Makefile -@@ -61,7 +61,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ - -I$(shell $(CC) -print-file-name=include) - $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ - -Wl,--no-undefined -nostartfiles -nostdlib \ -- -nodefaultlibs -e purgatory_start -r \ -+ -nodefaultlibs -e purgatory_start -Wl,-r \ - -Wl,-Map=$(PURGATORY_MAP) - - $(PURGATORY): $(PURGATORY_OBJS) --- -2.5.1 - diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0002-powerpc-change-the-memory-size-limit.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0002-powerpc-change-the-memory-size-limit.patch deleted file mode 100644 index dc97d930e..000000000 --- a/poky/meta/recipes-kernel/kexec/kexec-tools/0002-powerpc-change-the-memory-size-limit.patch +++ /dev/null @@ -1,35 +0,0 @@ -From b19b68eab567aa534cf8dec79fe18e3dc0e14043 Mon Sep 17 00:00:00 2001 -From: Quanyang Wang -Date: Tue, 16 Jun 2015 12:59:57 +0800 -Subject: [PATCH] powerpc: change the memory size limit - -When run "kexec" in powerpc board, the kexec has a limit that -the kernel text and bss size must be less than 24M. But now -some kernel size exceed the limit. So we need to change the limit, -else will get the error log as below: - -my_load:669: do -Could not find a free area of memory of 0x12400 bytes... -Could not find a free area of memory of 0x13000 bytes... -locate_hole failed - -Upstream-Status: Pending - -Signed-off-by: Quanyang Wang ---- - kexec/arch/ppc/kexec-ppc.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: kexec-tools-2.0.10/kexec/arch/ppc/kexec-ppc.h -=================================================================== ---- kexec-tools-2.0.10.orig/kexec/arch/ppc/kexec-ppc.h -+++ kexec-tools-2.0.10/kexec/arch/ppc/kexec-ppc.h -@@ -42,7 +42,7 @@ void dol_ppc_usage(void); - * During inital setup the kernel does not map the whole memory but a part of - * it. On Book-E that is 64MiB, 601 24MiB or 256MiB (if possible). - */ --#define KERNEL_ACCESS_TOP (24 * 1024 * 1024) -+#define KERNEL_ACCESS_TOP (36 * 1024 * 1024) - - /* boot block version 17 as defined by the linux kernel */ - struct bootblock { diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch new file mode 100644 index 000000000..363d5da4a --- /dev/null +++ b/poky/meta/recipes-kernel/kexec/kexec-tools/0002-purgatory-Pass-r-directly-to-linker.patch @@ -0,0 +1,29 @@ +From a04bcf8f683c1a5a7d015920124457ad56fb7cf0 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Mon, 7 Sep 2015 07:59:45 +0000 +Subject: [PATCH] purgatory: Pass -r directly to linker + +This helps compiling with clang since -r is not a known option for clang +where as gcc knows how to deal with it and passes it down to linker +unfiltered + +Signed-off-by: Khem Raj + +Upstream-Status: Pending +--- + purgatory/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/purgatory/Makefile b/purgatory/Makefile +index 2dd6c47..416e6b9 100644 +--- a/purgatory/Makefile ++++ b/purgatory/Makefile +@@ -60,7 +60,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ + -I$(shell $(CC) -print-file-name=include) + $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ + -Wl,--no-undefined -nostartfiles -nostdlib \ +- -nodefaultlibs -e purgatory_start -r \ ++ -nodefaultlibs -e purgatory_start -Wl,-r \ + -Wl,-Map=$(PURGATORY_MAP) + + $(PURGATORY): $(PURGATORY_OBJS) diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch new file mode 100644 index 000000000..832fe6771 --- /dev/null +++ b/poky/meta/recipes-kernel/kexec/kexec-tools/0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch @@ -0,0 +1,49 @@ +From 55e583d20651e829afbbc8dba0f8ec3017cda2d5 Mon Sep 17 00:00:00 2001 +From: Haiqing Bai +Date: Mon, 9 Jan 2017 15:26:29 +0800 +Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue + +When "CONFIG_ARM_LPAE" is enabled,3 level page table +is used by MMU, the "SECTION_SIZE" is defined with +(1 << 21), but 'add_buffer_phys_virt()' hardcode this +to (1 << 20). + +Upstream-Status: Pending + +Suggested-By:fredrik.markstrom@gmail.com +Signed-off-by: Haiqing Bai +--- + kexec/arch/arm/crashdump-arm.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c +index daa4788..3f72b38 100644 +--- a/kexec/arch/arm/crashdump-arm.c ++++ b/kexec/arch/arm/crashdump-arm.c +@@ -240,6 +240,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + void *buf; + int err; + int last_ranges; ++ unsigned short align_bit_shift = 20; + + /* + * First fetch all the memory (RAM) ranges that we are going to pass to +@@ -281,6 +282,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + + /* for support LPAE enabled kernel*/ + elf_info.class = ELFCLASS64; ++ align_bit_shift = 21; + + err = crash_create_elf64_headers(info, &elf_info, + usablemem_rgns.ranges, +@@ -302,8 +304,9 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) + * 1MB) so that available memory passed in kernel command line will be + * aligned to 1MB. This is because kernel create_mapping() wants memory + * regions to be aligned to SECTION_SIZE. ++ * The SECTION_SIZE of LPAE kernel is '1UL << 21' defined in pgtable-3level.h + */ +- elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << 20, ++ elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << align_bit_shift, + crash_kernel_mem.start, + crash_kernel_mem.end, -1, 0); + diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0004-x86_64-Add-support-to-build-kexec-tools-with-x32-ABI.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0004-x86_64-Add-support-to-build-kexec-tools-with-x32-ABI.patch new file mode 100644 index 000000000..a809d5ba8 --- /dev/null +++ b/poky/meta/recipes-kernel/kexec/kexec-tools/0004-x86_64-Add-support-to-build-kexec-tools-with-x32-ABI.patch @@ -0,0 +1,93 @@ +From 8c9a5076543eb3d497e016b3d7707e93d6311883 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= +Date: Mon, 15 Jul 2013 23:32:36 -0700 +Subject: [PATCH] x86_64: Add support to build kexec-tools with x32 ABI +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Summary of changes, + +configure.ac: Add test for detect x32 ABI. +purgatory/arch/x86_64/Makefile: Not use mcmodel large when + x32 ABI is set. +kexec/arch/x86_64/kexec-elf-rel-x86_64.c: When x32 ABI is set + use ELFCLASS32 instead of ELFCLASS64. +kexec/kexec-syscall.h: Add correct syscall number for x32 ABI. + +Upstream-Status: Submitted + +Signed-off-by: Aníbal Limón +Signed-off-by: Mariano Lopez +--- + configure.ac | 9 +++++++++ + kexec/arch/x86_64/kexec-elf-rel-x86_64.c | 4 ++++ + kexec/kexec-syscall.h | 4 ++++ + purgatory/arch/x86_64/Makefile | 4 +++- + 4 files changed, 20 insertions(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index c2b0c68..60882b8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -54,6 +54,15 @@ case $target_cpu in + ;; + ia64|x86_64|alpha|m68k ) + ARCH="$target_cpu" ++ ++ dnl ---Test for x32 ABI in x86_64 ++ if test "x$ARCH" = "xx86_64" ; then ++ AC_EGREP_CPP(x32_test, ++ [#if defined(__x86_64__) && defined (__ILP32__) ++ x32_test ++ #endif ++ ], SUBARCH='x32', SUBARCH='64') ++ fi + ;; + * ) + AC_MSG_ERROR([unsupported architecture $target_cpu]) +diff --git a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c +index db85b44..0ce1172 100644 +--- a/kexec/arch/x86_64/kexec-elf-rel-x86_64.c ++++ b/kexec/arch/x86_64/kexec-elf-rel-x86_64.c +@@ -8,7 +8,11 @@ int machine_verify_elf_rel(struct mem_ehdr *ehdr) + if (ehdr->ei_data != ELFDATA2LSB) { + return 0; + } ++#ifdef __ILP32__ ++ if (ehdr->ei_class != ELFCLASS32) { ++#else + if (ehdr->ei_class != ELFCLASS64) { ++#endif + return 0; + } + if (ehdr->e_machine != EM_X86_64) { +diff --git a/kexec/kexec-syscall.h b/kexec/kexec-syscall.h +index dac1c1f..e9479b7 100644 +--- a/kexec/kexec-syscall.h ++++ b/kexec/kexec-syscall.h +@@ -31,8 +31,12 @@ + #define __NR_kexec_load 268 + #endif + #ifdef __x86_64__ ++#ifdef __ILP32__ ++#define __NR_kexec_load 528 ++#else + #define __NR_kexec_load 246 + #endif ++#endif + #ifdef __s390x__ + #define __NR_kexec_load 277 + #endif +diff --git a/purgatory/arch/x86_64/Makefile b/purgatory/arch/x86_64/Makefile +index 7300937..4af11e4 100644 +--- a/purgatory/arch/x86_64/Makefile ++++ b/purgatory/arch/x86_64/Makefile +@@ -23,4 +23,6 @@ x86_64_PURGATORY_SRCS += purgatory/arch/i386/console-x86.c + x86_64_PURGATORY_SRCS += purgatory/arch/i386/vga.c + x86_64_PURGATORY_SRCS += purgatory/arch/i386/pic.c + +-x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large ++ifeq ($(SUBARCH),64) ++ x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large ++endif diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch new file mode 100644 index 000000000..7a4b8548c --- /dev/null +++ b/poky/meta/recipes-kernel/kexec/kexec-tools/0005-Disable-PIE-during-link.patch @@ -0,0 +1,28 @@ +From c54488ad5fd657e0f154d76d7456d9080be24836 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sat, 10 Jun 2017 11:18:49 -0700 +Subject: [PATCH] Disable PIE during link + +We have explcitly disabled PIE during compile so we +just need to match it with linker flags + +Upstream-Status: Pending + +Signed-off-by: Khem Raj +--- + purgatory/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/purgatory/Makefile b/purgatory/Makefile +index 416e6b9..f00edb4 100644 +--- a/purgatory/Makefile ++++ b/purgatory/Makefile +@@ -59,7 +59,7 @@ $(PURGATORY): CPPFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS) \ + -Iinclude \ + -I$(shell $(CC) -print-file-name=include) + $(PURGATORY): LDFLAGS=$($(ARCH)_PURGATORY_EXTRA_CFLAGS)\ +- -Wl,--no-undefined -nostartfiles -nostdlib \ ++ -Wl,--no-undefined -no-pie -nostartfiles -nostdlib \ + -nodefaultlibs -e purgatory_start -Wl,-r \ + -Wl,-Map=$(PURGATORY_MAP) + diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch deleted file mode 100644 index 6c6c66d88..000000000 --- a/poky/meta/recipes-kernel/kexec/kexec-tools/0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch +++ /dev/null @@ -1,52 +0,0 @@ -From 78e497fb69950665e639cfab8f4fb50cc404a1eb Mon Sep 17 00:00:00 2001 -From: Haiqing Bai -Date: Mon, 9 Jan 2017 15:26:29 +0800 -Subject: [PATCH] kexec: ARM: Fix add_buffer_phys_virt() align issue - -When "CONFIG_ARM_LPAE" is enabled,3 level page table -is used by MMU, the "SECTION_SIZE" is defined with -(1 << 21), but 'add_buffer_phys_virt()' hardcode this -to (1 << 20). - -Upstream-Status: Pending - -Suggested-By:fredrik.markstrom@gmail.com -Signed-off-by: Haiqing Bai ---- - kexec/arch/arm/crashdump-arm.c | 5 ++++- - 1 file changed, 4 insertions(+), 1 deletion(-) - -diff --git a/kexec/arch/arm/crashdump-arm.c b/kexec/arch/arm/crashdump-arm.c -index 245c21a..12139c3 100644 ---- a/kexec/arch/arm/crashdump-arm.c -+++ b/kexec/arch/arm/crashdump-arm.c -@@ -240,6 +240,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) - void *buf; - int err; - int last_ranges; -+ unsigned short align_bit_shift = 20; - - /* - * First fetch all the memory (RAM) ranges that we are going to pass to -@@ -281,6 +282,7 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) - - /* for support LPAE enabled kernel*/ - elf_info.class = ELFCLASS64; -+ align_bit_shift = 21; - - err = crash_create_elf64_headers(info, &elf_info, - usablemem_rgns.ranges, -@@ -302,8 +304,9 @@ int load_crashdump_segments(struct kexec_info *info, char *mod_cmdline) - * 1MB) so that available memory passed in kernel command line will be - * aligned to 1MB. This is because kernel create_mapping() wants memory - * regions to be aligned to SECTION_SIZE. -+ * The SECTION_SIZE of LPAE kernel is '1UL << 21' defined in pgtable-3level.h - */ -- elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << 20, -+ elfcorehdr = add_buffer_phys_virt(info, buf, bufsz, bufsz, 1 << align_bit_shift, - crash_kernel_mem.start, - crash_kernel_mem.end, -1, 0); - --- -1.9.1 - diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools/kexec-x32.patch b/poky/meta/recipes-kernel/kexec/kexec-tools/kexec-x32.patch deleted file mode 100644 index 26d18eb6f..000000000 --- a/poky/meta/recipes-kernel/kexec/kexec-tools/kexec-x32.patch +++ /dev/null @@ -1,88 +0,0 @@ -x86_64: Add support to build kexec-tools with x32 ABI - -Summary of changes, - -configure.ac: Add test for detect x32 ABI. -purgatory/arch/x86_64/Makefile: Not use mcmodel large when - x32 ABI is set. -kexec/arch/x86_64/kexec-elf-rel-x86_64.c: When x32 ABI is set - use ELFCLASS32 instead of ELFCLASS64. -kexec/kexec-syscall.h: Add correct syscall number for x32 ABI. - -Upstream-Status: Submitted - -Signed-off-by: Aníbal Limón -Signed-off-by: Mariano Lopez - ---- - configure.ac | 9 +++++++++ - kexec/arch/x86_64/kexec-elf-rel-x86_64.c | 4 ++++ - kexec/kexec-syscall.h | 4 ++++ - purgatory/arch/x86_64/Makefile | 4 +++- - 4 files changed, 20 insertions(+), 1 deletion(-) - -Index: kexec-tools-2.0.10/configure.ac -=================================================================== ---- kexec-tools-2.0.10.orig/configure.ac -+++ kexec-tools-2.0.10/configure.ac -@@ -56,6 +56,15 @@ case $target_cpu in - ;; - ia64|x86_64|alpha|m68k ) - ARCH="$target_cpu" -+ -+ dnl ---Test for x32 ABI in x86_64 -+ if test "x$ARCH" = "xx86_64" ; then -+ AC_EGREP_CPP(x32_test, -+ [#if defined(__x86_64__) && defined (__ILP32__) -+ x32_test -+ #endif -+ ], SUBARCH='x32', SUBARCH='64') -+ fi - ;; - * ) - AC_MSG_ERROR([unsupported architecture $target_cpu]) -Index: kexec-tools-2.0.10/kexec/arch/x86_64/kexec-elf-rel-x86_64.c -=================================================================== ---- kexec-tools-2.0.10.orig/kexec/arch/x86_64/kexec-elf-rel-x86_64.c -+++ kexec-tools-2.0.10/kexec/arch/x86_64/kexec-elf-rel-x86_64.c -@@ -8,7 +8,11 @@ int machine_verify_elf_rel(struct mem_eh - if (ehdr->ei_data != ELFDATA2LSB) { - return 0; - } -+#ifdef __ILP32__ -+ if (ehdr->ei_class != ELFCLASS32) { -+#else - if (ehdr->ei_class != ELFCLASS64) { -+#endif - return 0; - } - if (ehdr->e_machine != EM_X86_64) { -Index: kexec-tools-2.0.10/kexec/kexec-syscall.h -=================================================================== ---- kexec-tools-2.0.10.orig/kexec/kexec-syscall.h -+++ kexec-tools-2.0.10/kexec/kexec-syscall.h -@@ -31,8 +31,12 @@ - #define __NR_kexec_load 268 - #endif - #ifdef __x86_64__ -+#ifdef __ILP32__ -+#define __NR_kexec_load 528 -+#else - #define __NR_kexec_load 246 - #endif -+#endif - #ifdef __s390x__ - #define __NR_kexec_load 277 - #endif -Index: kexec-tools-2.0.10/purgatory/arch/x86_64/Makefile -=================================================================== ---- kexec-tools-2.0.10.orig/purgatory/arch/x86_64/Makefile -+++ kexec-tools-2.0.10/purgatory/arch/x86_64/Makefile -@@ -23,4 +23,6 @@ x86_64_PURGATORY_SRCS += purgatory/arch/ - x86_64_PURGATORY_SRCS += purgatory/arch/i386/vga.c - x86_64_PURGATORY_SRCS += purgatory/arch/i386/pic.c - --x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large -+ifeq ($(SUBARCH),64) -+ x86_64_PURGATORY_EXTRA_CFLAGS = -mcmodel=large -+endif diff --git a/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.19.bb b/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.19.bb index f65cd9f10..343989907 100644 --- a/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.19.bb +++ b/poky/meta/recipes-kernel/kexec/kexec-tools_2.0.19.bb @@ -10,15 +10,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=ea5bed2f60d357618ca161ad539f7c0a \ DEPENDS = "zlib xz" SRC_URI = "${KERNELORG_MIRROR}/linux/utils/kernel/kexec/kexec-tools-${PV}.tar.gz \ - file://kdump \ - file://kdump.conf \ - file://kdump.service \ - file://0002-powerpc-change-the-memory-size-limit.patch \ - file://0001-purgatory-Pass-r-directly-to-linker.patch \ - file://0010-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch \ - file://kexec-x32.patch \ - file://0001-Disable-PIE-during-link.patch \ - " + file://kdump \ + file://kdump.conf \ + file://kdump.service \ + file://0001-powerpc-change-the-memory-size-limit.patch \ + file://0002-purgatory-Pass-r-directly-to-linker.patch \ + file://0003-kexec-ARM-Fix-add_buffer_phys_virt-align-issue.patch \ + file://0004-x86_64-Add-support-to-build-kexec-tools-with-x32-ABI.patch \ + file://0005-Disable-PIE-during-link.patch \ +" SRC_URI[md5sum] = "052458f0a35c2a3b0d2302caa3318e9f" SRC_URI[sha256sum] = "913c8dee918e5855a4ba60d609371390978144b4c8d15d6446ca0057b7bc5e58" diff --git a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb index 69a8eaef8..5ec592973 100644 --- a/poky/meta/recipes-kernel/linux/kernel-devsrc.bb +++ b/poky/meta/recipes-kernel/linux/kernel-devsrc.bb @@ -228,6 +228,9 @@ do_install() { # required to build scripts/selinux/genheaders/genheaders cp -a --parents security/selinux/include/* $kerneldir/build/ + + # copy any localversion files + cp -a localversion* $kerneldir/build/ 2>/dev/null || : ) # Make sure the Makefile and version.h have a matching timestamp so that diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb index 7a0b7231e..834b8fc03 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "eac4b8fe170fc8745377cb37c5433db69356d6d8" -SRCREV_meta ?= "55b740965496961a660674aa4e5b8568b1b9fb7e" +SRCREV_machine ?= "c279a81f1e654023c4cc78afa9f14350ee5f836f" +SRCREV_meta ?= "9bda6190bfc9e7858c2f7588109a0ec966f37a09" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.19;destsuffix=${KMETA}" -LINUX_VERSION ?= "4.19.30" +LINUX_VERSION ?= "4.19.34" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb index adffe4e9f..54f86dac9 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "06e1ff79ea9efef052404ee1989cae038b28e954" -SRCREV_meta ?= "f0b575cda6d03540ff8da2f70421f13a08f34a5e" +SRCREV_machine ?= "494384666b623a23e19cbbc54574d08e31496a03" +SRCREV_meta ?= "d26eec23cf1057a715c05777a18f395678fcbf38" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.0;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.0.3" +LINUX_VERSION ?= "5.0.7" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb index 84a02afc4..dea7f2bf5 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "4.19.30" +LINUX_VERSION ?= "4.19.34" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine_qemuarm ?= "03eb6106990498e86298646c682fce9fc61f2131" -SRCREV_machine ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_meta ?= "55b740965496961a660674aa4e5b8568b1b9fb7e" +SRCREV_machine_qemuarm ?= "6fbb768bd43d85b2cfd905e431101e214c580634" +SRCREV_machine ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_meta ?= "9bda6190bfc9e7858c2f7588109a0ec966f37a09" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb index 49c69c4b5..720192152 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.0.3" +LINUX_VERSION ?= "5.0.7" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine_qemuarm ?= "b0477279877bb2b5cca6ec49c64e931901ff2022" -SRCREV_machine ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_meta ?= "f0b575cda6d03540ff8da2f70421f13a08f34a5e" +SRCREV_machine_qemuarm ?= "f07da0a13d6f503b72594776b5e8a9795da6d6a0" +SRCREV_machine ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_meta ?= "d26eec23cf1057a715c05777a18f395678fcbf38" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_4.19.bb b/poky/meta/recipes-kernel/linux/linux-yocto_4.19.bb index f83a6d689..de4ae9287 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_4.19.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_4.19.bb @@ -11,22 +11,22 @@ KBRANCH_qemux86 ?= "v4.19/standard/base" KBRANCH_qemux86-64 ?= "v4.19/standard/base" KBRANCH_qemumips64 ?= "v4.19/standard/mti-malta64" -SRCREV_machine_qemuarm ?= "3df49db2ea9b8e800cb30d5d695d4d2a2f8c1bed" -SRCREV_machine_qemuarm64 ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_machine_qemumips ?= "5dc975d0e586edd5d33bce62560f998f9a246be6" -SRCREV_machine_qemuppc ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_machine_qemux86 ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_machine_qemux86-64 ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_machine_qemumips64 ?= "bb7ae8a8cbe76c9ce2804f651936f059f9f621a2" -SRCREV_machine ?= "253c39a252f25843111b7be0c8247eb4bd6c328d" -SRCREV_meta ?= "55b740965496961a660674aa4e5b8568b1b9fb7e" +SRCREV_machine_qemuarm ?= "b266576aa10e76afeded8e13ffce93c4638b8ddb" +SRCREV_machine_qemuarm64 ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_machine_qemumips ?= "f6ef1a5233db0a1f569d7d6638fa803ebe5c867b" +SRCREV_machine_qemuppc ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_machine_qemux86 ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_machine_qemux86-64 ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_machine_qemumips64 ?= "f5b26e4d7a0eee36298d970590c50c26a800b84d" +SRCREV_machine ?= "1afd139db231e38e8e0f5ea03dcb77f9537ba2e0" +SRCREV_meta ?= "9bda6190bfc9e7858c2f7588109a0ec966f37a09" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.19;destsuffix=${KMETA} \ " LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" -LINUX_VERSION ?= "4.19.30" +LINUX_VERSION ?= "4.19.34" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.0.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.0.bb index 82bbbd616..ae8f643e9 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.0.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.0.bb @@ -11,15 +11,15 @@ KBRANCH_qemux86 ?= "v5.0/standard/base" KBRANCH_qemux86-64 ?= "v5.0/standard/base" KBRANCH_qemumips64 ?= "v5.0/standard/mti-malta64" -SRCREV_machine_qemuarm ?= "18a5ffa0e90184c8503ff1df45e4e5e501b1bab3" -SRCREV_machine_qemuarm64 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_machine_qemumips ?= "c4d3cd6437329407e2cc7e3e4615769452d426b1" -SRCREV_machine_qemuppc ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_machine_qemux86 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_machine_qemux86-64 ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_machine_qemumips64 ?= "2468c20c15477ebe5ecd73c0e0162d7432149318" -SRCREV_machine ?= "3df4aae6074e94e794e27fe7f17451d9353cdf3d" -SRCREV_meta ?= "f0b575cda6d03540ff8da2f70421f13a08f34a5e" +SRCREV_machine_qemuarm ?= "99f3821bdc8718af3ef6e96d594b593d644ab2e4" +SRCREV_machine_qemuarm64 ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_machine_qemumips ?= "1128cfe6c7915535c4066b75342c952640e65d72" +SRCREV_machine_qemuppc ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_machine_qemux86 ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_machine_qemux86-64 ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_machine_qemumips64 ?= "55e385d52db438df1ff7ad3845c9076b2bb221eb" +SRCREV_machine ?= "891531d68e5101bf64be1cc1cb31e3d1255cf382" +SRCREV_meta ?= "d26eec23cf1057a715c05777a18f395678fcbf38" # remap qemuarm to qemuarma15 for the 5.0 kernel # KMACHINE_qemuarm ?= "qemuarma15" @@ -28,7 +28,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.0;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" -LINUX_VERSION ?= "5.0.3" +LINUX_VERSION ?= "5.0.7" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" @@ -39,6 +39,7 @@ KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" KERNEL_DEVICETREE_qemuarm = "versatile-pb.dtb" +KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb" COMPATIBLE_MACHINE = "qemuarm|qemuarmv5|qemuarm64|qemux86|qemuppc|qemumips|qemumips64|qemux86-64" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-signal-Distinguish-between-kernel_siginfo-and-si.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-signal-Distinguish-between-kernel_siginfo-and-si.patch deleted file mode 100644 index 351184dab..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Fix-signal-Distinguish-between-kernel_siginfo-and-si.patch +++ /dev/null @@ -1,133 +0,0 @@ -From 0a0d736ec89dffdbc83e7181166a99d5563acfe8 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Mon, 5 Nov 2018 11:35:52 -0500 -Subject: [PATCH 1/9] Fix: signal: Distinguish between kernel_siginfo and - siginfo (v4.20) - -See upstream commit : - - commit ae7795bc6187a15ec51cf258abae656a625f9980 - Author: Eric W. Biederman - Date: Tue Sep 25 11:27:20 2018 +0200 - - signal: Distinguish between kernel_siginfo and siginfo - - Linus recently observed that if we did not worry about the padding - member in struct siginfo it is only about 48 bytes, and 48 bytes is - much nicer than 128 bytes for allocating on the stack and copying - around in the kernel. - - The obvious thing of only adding the padding when userspace is - including siginfo.h won't work as there are sigframe definitions in - the kernel that embed struct siginfo. - - So split siginfo in two; kernel_siginfo and siginfo. Keeping the - traditional name for the userspace definition. While the version that - is used internally to the kernel and ultimately will not be padded to - 128 bytes is called kernel_siginfo. - - The definition of struct kernel_siginfo I have put in include/signal_types.h - - A set of buildtime checks has been added to verify the two structures have - the same field offsets. - - To make it easy to verify the change kernel_siginfo retains the same - size as siginfo. The reduction in size comes in a following change. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/0a0d736ec89dffdbc83e7181166a99d5563acfe8 - -Signed-off-by: Bruce Ashfield ---- - instrumentation/events/lttng-module/signal.h | 41 ++++++++++++++++++-- - 1 file changed, 37 insertions(+), 4 deletions(-) - -diff --git a/instrumentation/events/lttng-module/signal.h b/instrumentation/events/lttng-module/signal.h -index b3c9126..8783b52 100644 ---- a/instrumentation/events/lttng-module/signal.h -+++ b/instrumentation/events/lttng-module/signal.h -@@ -35,21 +35,24 @@ - * SEND_SIG_NOINFO means that si_code is SI_USER, and SEND_SIG_PRIV - * means that si_code is SI_KERNEL. - */ --#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) - LTTNG_TRACEPOINT_EVENT(signal_generate, - -- TP_PROTO(int sig, struct siginfo *info, struct task_struct *task), -+ TP_PROTO(int sig, struct kernel_siginfo *info, struct task_struct *task, -+ int group, int result), - -- TP_ARGS(sig, info, task), -+ TP_ARGS(sig, info, task, group, result), - - TP_FIELDS( - ctf_integer(int, sig, sig) - LTTNG_FIELDS_SIGINFO(info) - ctf_array_text(char, comm, task->comm, TASK_COMM_LEN) - ctf_integer(pid_t, pid, task->pid) -+ ctf_integer(int, group, group) -+ ctf_integer(int, result, result) - ) - ) --#else -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,4,0)) - LTTNG_TRACEPOINT_EVENT(signal_generate, - - TP_PROTO(int sig, struct siginfo *info, struct task_struct *task, -@@ -66,6 +69,20 @@ LTTNG_TRACEPOINT_EVENT(signal_generate, - ctf_integer(int, result, result) - ) - ) -+#else -+LTTNG_TRACEPOINT_EVENT(signal_generate, -+ -+ TP_PROTO(int sig, struct siginfo *info, struct task_struct *task), -+ -+ TP_ARGS(sig, info, task), -+ -+ TP_FIELDS( -+ ctf_integer(int, sig, sig) -+ LTTNG_FIELDS_SIGINFO(info) -+ ctf_array_text(char, comm, task->comm, TASK_COMM_LEN) -+ ctf_integer(pid_t, pid, task->pid) -+ ) -+) - #endif - - /** -@@ -82,6 +99,21 @@ LTTNG_TRACEPOINT_EVENT(signal_generate, - * This means, this can show which signals are actually delivered, but - * matching generated signals and delivered signals may not be correct. - */ -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) -+LTTNG_TRACEPOINT_EVENT(signal_deliver, -+ -+ TP_PROTO(int sig, struct kernel_siginfo *info, struct k_sigaction *ka), -+ -+ TP_ARGS(sig, info, ka), -+ -+ TP_FIELDS( -+ ctf_integer(int, sig, sig) -+ LTTNG_FIELDS_SIGINFO(info) -+ ctf_integer(unsigned long, sa_handler, (unsigned long) ka->sa.sa_handler) -+ ctf_integer(unsigned long, sa_flags, ka->sa.sa_flags) -+ ) -+) -+#else - LTTNG_TRACEPOINT_EVENT(signal_deliver, - - TP_PROTO(int sig, struct siginfo *info, struct k_sigaction *ka), -@@ -95,6 +127,7 @@ LTTNG_TRACEPOINT_EVENT(signal_deliver, - ctf_integer(unsigned long, sa_flags, ka->sa.sa_flags) - ) - ) -+#endif - - #if (LINUX_VERSION_CODE < KERNEL_VERSION(3,4,0)) - LTTNG_TRACEPOINT_EVENT_CLASS(signal_queue_overflow, --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch deleted file mode 100644 index 905b68165..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch +++ /dev/null @@ -1,67 +0,0 @@ -From 26bc064a4d4c85e6000393aadb38659f99b59162 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Mon, 5 Nov 2018 11:35:53 -0500 -Subject: [PATCH 2/9] Fix: signal: Remove SEND_SIG_FORCED (v4.20) - -See upstream commit : - - commit 4ff4c31a6e85f4c49fbeebeaa28018d002884b5a - Author: Eric W. Biederman - Date: Mon Sep 3 10:39:04 2018 +0200 - - signal: Remove SEND_SIG_FORCED - - There are no more users of SEND_SIG_FORCED so it may be safely removed. - - Remove the definition of SEND_SIG_FORCED, it's use in is_si_special, - it's use in TP_STORE_SIGINFO, and it's use in __send_signal as without - any users the uses of SEND_SIG_FORCED are now unncessary. - - This makes the code simpler, easier to understand and use. Users of - signal sending functions now no longer need to ask themselves do I - need to use SEND_SIG_FORCED. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/26bc064a4d4c85e6000393aadb38659f99b59162 - -Signed-off-by: Bruce Ashfield - ---- - instrumentation/events/lttng-module/signal.h | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/instrumentation/events/lttng-module/signal.h b/instrumentation/events/lttng-module/signal.h -index 8783b52..ad8fe69 100644 ---- a/instrumentation/events/lttng-module/signal.h -+++ b/instrumentation/events/lttng-module/signal.h -@@ -12,6 +12,17 @@ - #include - #include - #undef LTTNG_FIELDS_SIGINFO -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) -+#define LTTNG_FIELDS_SIGINFO(info) \ -+ ctf_integer(int, errno, \ -+ (info == SEND_SIG_NOINFO || info == SEND_SIG_PRIV) ? \ -+ 0 : \ -+ info->si_errno) \ -+ ctf_integer(int, code, \ -+ (info == SEND_SIG_NOINFO) ? \ -+ SI_USER : \ -+ ((info == SEND_SIG_PRIV) ? SI_KERNEL : info->si_code)) -+#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0) */ - #define LTTNG_FIELDS_SIGINFO(info) \ - ctf_integer(int, errno, \ - (info == SEND_SIG_NOINFO || info == SEND_SIG_FORCED || info == SEND_SIG_PRIV) ? \ -@@ -21,6 +32,7 @@ - (info == SEND_SIG_NOINFO || info == SEND_SIG_FORCED) ? \ - SI_USER : \ - ((info == SEND_SIG_PRIV) ? SI_KERNEL : info->si_code)) -+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0) */ - #endif /* _TRACE_SIGNAL_DEF */ - - /** --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-ext4-adjust-reserved-cluster-count-when-removing.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-ext4-adjust-reserved-cluster-count-when-removing.patch deleted file mode 100644 index 7edffee54..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-ext4-adjust-reserved-cluster-count-when-removing.patch +++ /dev/null @@ -1,149 +0,0 @@ -From cb9f1a821bcf55cecf3813195fd6d4eff8070927 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Mon, 5 Nov 2018 11:35:54 -0500 -Subject: [PATCH 3/9] Fix: ext4: adjust reserved cluster count when removing - extents (v4.20) - -See upstream commit : - - commit 9fe671496b6c286f9033aedfc1718d67721da0ae - Author: Eric Whitney - Date: Mon Oct 1 14:25:08 2018 -0400 - - ext4: adjust reserved cluster count when removing extents - - Modify ext4_ext_remove_space() and the code it calls to correct the - reserved cluster count for pending reservations (delayed allocated - clusters shared with allocated blocks) when a block range is removed - from the extent tree. Pending reservations may be found for the clusters - at the ends of written or unwritten extents when a block range is removed. - If a physical cluster at the end of an extent is freed, it's necessary - to increment the reserved cluster count to maintain correct accounting - if the corresponding logical cluster is shared with at least one - delayed and unwritten extent as found in the extents status tree. - - Add a new function, ext4_rereserve_cluster(), to reapply a reservation - on a delayed allocated cluster sharing blocks with a freed allocated - cluster. To avoid ENOSPC on reservation, a flag is applied to - ext4_free_blocks() to briefly defer updating the freeclusters counter - when an allocated cluster is freed. This prevents another thread - from allocating the freed block before the reservation can be reapplied. - - Redefine the partial cluster object as a struct to carry more state - information and to clarify the code using it. - - Adjust the conditional code structure in ext4_ext_remove_space to - reduce the indentation level in the main body of the code to improve - readability. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/cb9f1a821bcf55cecf3813195fd6d4eff8070927 - -Signed-off-by: Bruce Ashfield - ---- - instrumentation/events/lttng-module/ext4.h | 72 +++++++++++++++++++++- - 1 file changed, 69 insertions(+), 3 deletions(-) - -diff --git a/instrumentation/events/lttng-module/ext4.h b/instrumentation/events/lttng-module/ext4.h -index fe6f802..83a80ba 100644 ---- a/instrumentation/events/lttng-module/ext4.h -+++ b/instrumentation/events/lttng-module/ext4.h -@@ -1602,7 +1602,30 @@ LTTNG_TRACEPOINT_EVENT(ext4_ext_show_extent, - ) - ) - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) -+ -+LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, -+ TP_PROTO(struct inode *inode, struct ext4_extent *ex, -+ ext4_lblk_t from, ext4_fsblk_t to, -+ struct partial_cluster *pc), -+ -+ TP_ARGS(inode, ex, from, to, pc), -+ -+ TP_FIELDS( -+ ctf_integer(dev_t, dev, inode->i_sb->s_dev) -+ ctf_integer(ino_t, ino, inode->i_ino) -+ ctf_integer(ext4_lblk_t, from, from) -+ ctf_integer(ext4_lblk_t, to, to) -+ ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) -+ ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) -+ ctf_integer(unsigned short, ee_len, ext4_ext_get_actual_len(ex)) -+ ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) -+ ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) -+ ctf_integer(int, pc_state, pc->state) -+ ) -+) -+ -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) - - LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, - TP_PROTO(struct inode *inode, struct ext4_extent *ex, -@@ -1646,7 +1669,29 @@ LTTNG_TRACEPOINT_EVENT(ext4_remove_blocks, - - #endif - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) -+ -+LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, -+ TP_PROTO(struct inode *inode, ext4_lblk_t start, -+ struct ext4_extent *ex, -+ struct partial_cluster *pc), -+ -+ TP_ARGS(inode, start, ex, pc), -+ -+ TP_FIELDS( -+ ctf_integer(dev_t, dev, inode->i_sb->s_dev) -+ ctf_integer(ino_t, ino, inode->i_ino) -+ ctf_integer(ext4_lblk_t, start, start) -+ ctf_integer(ext4_lblk_t, ee_lblk, le32_to_cpu(ex->ee_block)) -+ ctf_integer(ext4_fsblk_t, ee_pblk, ext4_ext_pblock(ex)) -+ ctf_integer(short, ee_len, ext4_ext_get_actual_len(ex)) -+ ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) -+ ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) -+ ctf_integer(int, pc_state, pc->state) -+ ) -+) -+ -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) - - LTTNG_TRACEPOINT_EVENT(ext4_ext_rm_leaf, - TP_PROTO(struct inode *inode, ext4_lblk_t start, -@@ -1733,7 +1778,28 @@ LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space, - - #endif - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,20,0)) -+ -+LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, -+ TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, -+ int depth, struct partial_cluster *pc, __le16 eh_entries), -+ -+ TP_ARGS(inode, start, end, depth, pc, eh_entries), -+ -+ TP_FIELDS( -+ ctf_integer(dev_t, dev, inode->i_sb->s_dev) -+ ctf_integer(ino_t, ino, inode->i_ino) -+ ctf_integer(ext4_lblk_t, start, start) -+ ctf_integer(ext4_lblk_t, end, end) -+ ctf_integer(int, depth, depth) -+ ctf_integer(unsigned short, eh_entries, le16_to_cpu(eh_entries)) -+ ctf_integer(ext4_fsblk_t, pc_pclu, pc->pclu) -+ ctf_integer(ext4_lblk_t, pc_lblk, pc->lblk) -+ ctf_integer(int, pc_state, pc->state) -+ ) -+) -+ -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,11,0)) - - LTTNG_TRACEPOINT_EVENT(ext4_ext_remove_space_done, - TP_PROTO(struct inode *inode, ext4_lblk_t start, ext4_lblk_t end, --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-timer-instrumentation-for-RHEL-7.6.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-timer-instrumentation-for-RHEL-7.6.patch deleted file mode 100644 index b5d50dba1..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Fix-timer-instrumentation-for-RHEL-7.6.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 4eaeb54a27fbf701c2a4908a6e90a978b93deb06 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Thu, 6 Dec 2018 11:31:51 -0500 -Subject: [PATCH 4/9] Fix: timer instrumentation for RHEL 7.6 - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/4eaeb54a27fbf701c2a4908a6e90a978b93deb06 - -Signed-off-by: Bruce Ashfield ---- - instrumentation/events/lttng-module/timer.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/instrumentation/events/lttng-module/timer.h b/instrumentation/events/lttng-module/timer.h -index 6f0cb7f..8807ad5 100644 ---- a/instrumentation/events/lttng-module/timer.h -+++ b/instrumentation/events/lttng-module/timer.h -@@ -44,7 +44,8 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(timer_class, timer_init, - TP_ARGS(timer) - ) - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,2,0) || \ -+ LTTNG_RHEL_KERNEL_RANGE(3,10,0,957,0,0, 3,11,0,0,0,0)) - /** - * timer_start - called when the timer is started - * @timer: pointer to struct timer_list --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0005-Fix-Remove-type-argument-from-access_ok-function-v5..patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0005-Fix-Remove-type-argument-from-access_ok-function-v5..patch deleted file mode 100644 index 2266bbd9e..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0005-Fix-Remove-type-argument-from-access_ok-function-v5..patch +++ /dev/null @@ -1,204 +0,0 @@ -From 0039dbe9891cfdf2c0d04691f83c2f342993dfd7 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Wed, 9 Jan 2019 14:59:15 -0500 -Subject: [PATCH 5/9] Fix: Remove 'type' argument from access_ok() function - (v5.0) - -See upstream commit : - - commit 96d4f267e40f9509e8a66e2b39e8b95655617693 - Author: Linus Torvalds - Date: Thu Jan 3 18:57:57 2019 -0800 - - Remove 'type' argument from access_ok() function - - Nobody has actually used the type (VERIFY_READ vs VERIFY_WRITE) argument - of the user address range verification function since we got rid of the - old racy i386-only code to walk page tables by hand. - - It existed because the original 80386 would not honor the write protect - bit when in kernel mode, so you had to do COW by hand before doing any - user access. But we haven't supported that in a long time, and these - days the 'type' argument is a purely historical artifact. - - A discussion about extending 'user_access_begin()' to do the range - checking resulted this patch, because there is no way we're going to - move the old VERIFY_xyz interface to that model. And it's best done at - the end of the merge window when I've done most of my merges, so let's - just get this done once and for all. - - This patch was mostly done with a sed-script, with manual fix-ups for - the cases that weren't of the trivial 'access_ok(VERIFY_xyz' form. - - There were a couple of notable cases: - - - csky still had the old "verify_area()" name as an alias. - - - the iter_iov code had magical hardcoded knowledge of the actual - values of VERIFY_{READ,WRITE} (not that they mattered, since nothing - really used it) - - - microblaze used the type argument for a debug printout - - but other than those oddities this should be a total no-op patch. - - I tried to fix up all architectures, did fairly extensive grepping for - access_ok() uses, and the changes are trivial, but I may have missed - something. Any missed conversion should be trivially fixable, though. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/0039dbe9891cfdf2c0d04691f83c2f342993dfd7 - -Signed-off-by: Bruce Ashfield ---- - lib/ringbuffer/backend.h | 8 ++++---- - lib/ringbuffer/ring_buffer_iterator.c | 3 ++- - lttng-filter-interpreter.c | 4 ++-- - probes/lttng-probe-user.c | 3 ++- - wrapper/uaccess.h | 28 +++++++++++++++++++++++++++ - 5 files changed, 38 insertions(+), 8 deletions(-) - create mode 100644 wrapper/uaccess.h - -diff --git a/lib/ringbuffer/backend.h b/lib/ringbuffer/backend.h -index 0b75de8..3f8c108 100644 ---- a/lib/ringbuffer/backend.h -+++ b/lib/ringbuffer/backend.h -@@ -34,7 +34,7 @@ - #include - #include - #include --#include -+#include - - /* Internal helpers */ - #include -@@ -302,7 +302,7 @@ void lib_ring_buffer_copy_from_user_inatomic(const struct lib_ring_buffer_config - - set_fs(KERNEL_DS); - pagefault_disable(); -- if (unlikely(!access_ok(VERIFY_READ, src, len))) -+ if (unlikely(!lttng_access_ok(VERIFY_READ, src, len))) - goto fill_buffer; - - if (likely(pagecpy == len)) { -@@ -372,7 +372,7 @@ void lib_ring_buffer_strcpy_from_user_inatomic(const struct lib_ring_buffer_conf - - set_fs(KERNEL_DS); - pagefault_disable(); -- if (unlikely(!access_ok(VERIFY_READ, src, len))) -+ if (unlikely(!lttng_access_ok(VERIFY_READ, src, len))) - goto fill_buffer; - - if (likely(pagecpy == len)) { -@@ -462,7 +462,7 @@ unsigned long lib_ring_buffer_copy_from_user_check_nofault(void *dest, - unsigned long ret; - mm_segment_t old_fs; - -- if (!access_ok(VERIFY_READ, src, len)) -+ if (!lttng_access_ok(VERIFY_READ, src, len)) - return 1; - old_fs = get_fs(); - set_fs(KERNEL_DS); -diff --git a/lib/ringbuffer/ring_buffer_iterator.c b/lib/ringbuffer/ring_buffer_iterator.c -index 61eaa5b..9645946 100644 ---- a/lib/ringbuffer/ring_buffer_iterator.c -+++ b/lib/ringbuffer/ring_buffer_iterator.c -@@ -27,6 +27,7 @@ - - #include - #include -+#include - #include - #include - #include -@@ -621,7 +622,7 @@ ssize_t channel_ring_buffer_file_read(struct file *filp, - ssize_t len; - - might_sleep(); -- if (!access_ok(VERIFY_WRITE, user_buf, count)) -+ if (!lttng_access_ok(VERIFY_WRITE, user_buf, count)) - return -EFAULT; - - /* Finish copy of previous record */ -diff --git a/lttng-filter-interpreter.c b/lttng-filter-interpreter.c -index e131462..bee2918 100644 ---- a/lttng-filter-interpreter.c -+++ b/lttng-filter-interpreter.c -@@ -24,7 +24,7 @@ - * SOFTWARE. - */ - --#include -+#include - #include - #include - -@@ -46,7 +46,7 @@ char get_char(struct estack_entry *reg, size_t offset) - char c; - - /* Handle invalid access as end of string. */ -- if (unlikely(!access_ok(VERIFY_READ, -+ if (unlikely(!lttng_access_ok(VERIFY_READ, - reg->u.s.user_str + offset, - sizeof(c)))) - return '\0'; -diff --git a/probes/lttng-probe-user.c b/probes/lttng-probe-user.c -index 099a66b..ed566dd 100644 ---- a/probes/lttng-probe-user.c -+++ b/probes/lttng-probe-user.c -@@ -20,6 +20,7 @@ - - #include - #include -+#include - #include - - /* -@@ -43,7 +44,7 @@ long lttng_strlen_user_inatomic(const char *addr) - char v; - unsigned long ret; - -- if (unlikely(!access_ok(VERIFY_READ, -+ if (unlikely(!lttng_access_ok(VERIFY_READ, - (__force const char __user *) addr, - sizeof(v)))) - break; -diff --git a/wrapper/uaccess.h b/wrapper/uaccess.h -new file mode 100644 -index 0000000..c56427c ---- /dev/null -+++ b/wrapper/uaccess.h -@@ -0,0 +1,28 @@ -+/* SPDX-License-Identifier: (GPL-2.0 or LGPL-2.1) -+ * -+ * wrapper/uaccess.h -+ * -+ * wrapper around linux/uaccess.h. -+ * -+ * Copyright (C) 2019 Michael Jeanson -+ */ -+ -+#ifndef _LTTNG_WRAPPER_UACCESS_H -+#define _LTTNG_WRAPPER_UACCESS_H -+ -+#include -+#include -+ -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0)) -+ -+#define VERIFY_READ 0 -+#define VERIFY_WRITE 1 -+#define lttng_access_ok(type, addr, size) access_ok(addr, size) -+ -+#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0) */ -+ -+#define lttng_access_ok(type, addr, size) access_ok(type, addr, size) -+ -+#endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0) */ -+ -+#endif /* _LTTNG_WRAPPER_UACCESS_H */ --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0006-Fix-Replace-pointer-values-with-task-tk_pid-and-rpc_.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0006-Fix-Replace-pointer-values-with-task-tk_pid-and-rpc_.patch deleted file mode 100644 index 089486f51..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0006-Fix-Replace-pointer-values-with-task-tk_pid-and-rpc_.patch +++ /dev/null @@ -1,186 +0,0 @@ -From 89f0be35e1baf411df6852014013ac64ad1bbcf8 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Wed, 9 Jan 2019 14:59:16 -0500 -Subject: [PATCH 6/9] Fix: Replace pointer values with task->tk_pid and - rpc_clnt->cl_clid - -Introduced in v3.12. - -See upstream commit : - - commit 92cb6c5be8134db6f7c38f25f6afd13e444cebaf - Author: Trond Myklebust - Date: Wed Sep 4 22:09:50 2013 -0400 - - SUNRPC: Replace pointer values with task->tk_pid and rpc_clnt->cl_clid - - Instead of the pointer values, use the task and client identifier values - for tracing purposes. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/89f0be35e1baf411df6852014013ac64ad1bbcf8 - -Signed-off-by: Bruce Ashfield ---- - instrumentation/events/lttng-module/rpc.h | 108 ++++++++++++++++++++-- - 1 file changed, 102 insertions(+), 6 deletions(-) - -diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h -index b9e45fe..a4ac557 100644 ---- a/instrumentation/events/lttng-module/rpc.h -+++ b/instrumentation/events/lttng-module/rpc.h -@@ -8,6 +8,20 @@ - #include - #include - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) -+LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, -+ -+ TP_PROTO(struct rpc_task *task), -+ -+ TP_ARGS(task), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer(int, status, task->tk_status) -+ ) -+) -+#else - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - - TP_PROTO(struct rpc_task *task), -@@ -20,6 +34,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - ctf_integer(int, status, task->tk_status) - ) - ) -+#endif - - LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_call_status, - TP_PROTO(struct rpc_task *task), -@@ -40,8 +55,8 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status, - TP_ARGS(task), - - TP_FIELDS( -- ctf_integer_hex(const struct rpc_task *, task, task) -- ctf_integer_hex(const struct rpc_clnt *, clnt, task->tk_client) -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) - ctf_integer(int, status, task->tk_status) - ) - ) -@@ -53,8 +68,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running, - TP_ARGS(task, action), - - TP_FIELDS( -- ctf_integer_hex(const struct rpc_clnt *, clnt, task->tk_client) -- ctf_integer_hex(const struct rpc_task *, task, task) -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) - ctf_integer_hex(const void *, action, action) - ctf_integer(unsigned long, runstate, task->tk_runstate) - ctf_integer(int, status, task->tk_status) -@@ -90,8 +105,8 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued, - TP_ARGS(task, q), - - TP_FIELDS( -- ctf_integer_hex(const struct rpc_clnt *, clnt, task->tk_client) -- ctf_integer_hex(const struct rpc_task *, task, task) -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) - ctf_integer(unsigned long, timeout, task->tk_timeout) - ctf_integer(unsigned long, runstate, task->tk_runstate) - ctf_integer(int, status, task->tk_status) -@@ -114,6 +129,87 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_queued, rpc_task_wakeup, - TP_ARGS(task, q) - ) - -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) -+LTTNG_TRACEPOINT_EVENT(rpc_connect_status, -+ TP_PROTO(struct rpc_task *task, int status), -+ -+ TP_ARGS(task, status), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer(int, status, status) -+ ) -+) -+ -+LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), -+ -+ TP_ARGS(clnt, task, action), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer_hex(const void *, action, action) -+ ctf_integer(unsigned long, runstate, task->tk_runstate) -+ ctf_integer(int, status, task->tk_status) -+ ctf_integer(unsigned short, flags, task->tk_flags) -+ ) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_running, rpc_task_begin, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), -+ -+ TP_ARGS(clnt, task, action) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_running, rpc_task_run_action, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), -+ -+ TP_ARGS(clnt, task, action) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_running, rpc_task_complete, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), -+ -+ TP_ARGS(clnt, task, action) -+) -+ -+LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_queued, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q), -+ -+ TP_ARGS(clnt, task, q), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer(unsigned long, timeout, task->tk_timeout) -+ ctf_integer(unsigned long, runstate, task->tk_runstate) -+ ctf_integer(int, status, task->tk_status) -+ ctf_integer(unsigned short, flags, task->tk_flags) -+ ctf_string(q_name, rpc_qname(q)) -+ ) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_queued, rpc_task_sleep, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q), -+ -+ TP_ARGS(clnt, task, q) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_queued, rpc_task_wakeup, -+ -+ TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const struct rpc_wait_queue *q), -+ -+ TP_ARGS(clnt, task, q) -+) -+ - #else - LTTNG_TRACEPOINT_EVENT(rpc_connect_status, - TP_PROTO(struct rpc_task *task, int status), --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0007-Fix-SUNRPC-Simplify-defining-common-RPC-trace-events.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0007-Fix-SUNRPC-Simplify-defining-common-RPC-trace-events.patch deleted file mode 100644 index f3673301d..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0007-Fix-SUNRPC-Simplify-defining-common-RPC-trace-events.patch +++ /dev/null @@ -1,183 +0,0 @@ -From d11b568681f87c2df6ecb0516d3f16d153f24bd2 Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Wed, 9 Jan 2019 14:59:17 -0500 -Subject: [PATCH 7/9] Fix: SUNRPC: Simplify defining common RPC trace events - (v5.0) - -See upstream commit : - - commit dc5820bd21d84ee34770b0a1e2fca9378f8f7456 - Author: Chuck Lever - Date: Wed Dec 19 11:00:16 2018 -0500 - - SUNRPC: Simplify defining common RPC trace events - - Clean up, no functional change is expected. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/d11b568681f87c2df6ecb0516d3f16d153f24bd2 - -Signed-off-by: Bruce Ashfield ---- - instrumentation/events/lttng-module/rpc.h | 99 ++++++++++++++++------- - 1 file changed, 72 insertions(+), 27 deletions(-) - -diff --git a/instrumentation/events/lttng-module/rpc.h b/instrumentation/events/lttng-module/rpc.h -index a4ac557..4239280 100644 ---- a/instrumentation/events/lttng-module/rpc.h -+++ b/instrumentation/events/lttng-module/rpc.h -@@ -8,7 +8,32 @@ - #include - #include - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0)) -+LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, -+ -+ TP_PROTO(const struct rpc_task *task), -+ -+ TP_ARGS(task), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer(int, status, task->tk_status) -+ ) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_call_status, -+ TP_PROTO(const struct rpc_task *task), -+ -+ TP_ARGS(task) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_bind_status, -+ TP_PROTO(const struct rpc_task *task), -+ -+ TP_ARGS(task) -+) -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - - TP_PROTO(struct rpc_task *task), -@@ -21,6 +46,18 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - ctf_integer(int, status, task->tk_status) - ) - ) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_call_status, -+ TP_PROTO(struct rpc_task *task), -+ -+ TP_ARGS(task) -+) -+ -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_bind_status, -+ TP_PROTO(struct rpc_task *task), -+ -+ TP_ARGS(task) -+) - #else - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - -@@ -34,7 +71,6 @@ LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_status, - ctf_integer(int, status, task->tk_status) - ) - ) --#endif - - LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_call_status, - TP_PROTO(struct rpc_task *task), -@@ -47,8 +83,15 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_bind_status, - - TP_ARGS(task) - ) -+#endif - --#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)) -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0)) -+LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_status, rpc_connect_status, -+ TP_PROTO(const struct rpc_task *task), -+ -+ TP_ARGS(task) -+) -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)) - LTTNG_TRACEPOINT_EVENT(rpc_connect_status, - TP_PROTO(const struct rpc_task *task), - -@@ -60,7 +103,33 @@ LTTNG_TRACEPOINT_EVENT(rpc_connect_status, - ctf_integer(int, status, task->tk_status) - ) - ) -+#elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) -+LTTNG_TRACEPOINT_EVENT(rpc_connect_status, -+ TP_PROTO(struct rpc_task *task, int status), -+ -+ TP_ARGS(task, status), -+ -+ TP_FIELDS( -+ ctf_integer(unsigned int, task_id, task->tk_pid) -+ ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -+ ctf_integer(int, status, status) -+ ) -+) -+#else -+LTTNG_TRACEPOINT_EVENT(rpc_connect_status, -+ TP_PROTO(struct rpc_task *task, int status), -+ -+ TP_ARGS(task, status), -+ -+ TP_FIELDS( -+ ctf_integer_hex(const struct rpc_task *, task, task) -+ ctf_integer_hex(const struct rpc_clnt *, clnt, task->tk_client) -+ ctf_integer(int, status, status) -+ ) -+) -+#endif - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,17,0)) - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running, - - TP_PROTO(const struct rpc_task *task, const void *action), -@@ -130,18 +199,6 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_queued, rpc_task_wakeup, - ) - - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(3,12,0)) --LTTNG_TRACEPOINT_EVENT(rpc_connect_status, -- TP_PROTO(struct rpc_task *task, int status), -- -- TP_ARGS(task, status), -- -- TP_FIELDS( -- ctf_integer(unsigned int, task_id, task->tk_pid) -- ctf_integer(unsigned int, client_id, task->tk_client->cl_clid) -- ctf_integer(int, status, status) -- ) --) -- - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running, - - TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), -@@ -211,18 +268,6 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(rpc_task_queued, rpc_task_wakeup, - ) - - #else --LTTNG_TRACEPOINT_EVENT(rpc_connect_status, -- TP_PROTO(struct rpc_task *task, int status), -- -- TP_ARGS(task, status), -- -- TP_FIELDS( -- ctf_integer_hex(const struct rpc_task *, task, task) -- ctf_integer_hex(const struct rpc_clnt *, clnt, task->tk_client) -- ctf_integer(int, status, status) -- ) --) -- - LTTNG_TRACEPOINT_EVENT_CLASS(rpc_task_running, - - TP_PROTO(const struct rpc_clnt *clnt, const struct rpc_task *task, const void *action), --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0008-Fix-btrfs-Remove-fsid-metadata_fsid-fields-from-btrf.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0008-Fix-btrfs-Remove-fsid-metadata_fsid-fields-from-btrf.patch deleted file mode 100644 index 5f1298995..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0008-Fix-btrfs-Remove-fsid-metadata_fsid-fields-from-btrf.patch +++ /dev/null @@ -1,341 +0,0 @@ -From 8af8245f6f86370d01cc4acaabafb90de45e143f Mon Sep 17 00:00:00 2001 -From: Michael Jeanson -Date: Thu, 10 Jan 2019 14:56:15 -0500 -Subject: [PATCH 8/9] Fix: btrfs: Remove fsid/metadata_fsid fields from - btrfs_info - -Introduced in v5.0. - -See upstream commit : - - commit de37aa513105f864d3c21105bf5542d498f21ca2 - Author: Nikolay Borisov - Date: Tue Oct 30 16:43:24 2018 +0200 - - btrfs: Remove fsid/metadata_fsid fields from btrfs_info - - Currently btrfs_fs_info structure contains a copy of the - fsid/metadata_uuid fields. Same values are also contained in the - btrfs_fs_devices structure which fs_info has a reference to. Let's - reduce duplication by removing the fields from fs_info and always refer - to the ones in fs_devices. No functional changes. - -Signed-off-by: Michael Jeanson -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/8af8245f6f86370d01cc4acaabafb90de45e143f - -Signed-off-by: Bruce Ashfield ---- - instrumentation/events/lttng-module/btrfs.h | 100 +++++++++++--------- - 1 file changed, 53 insertions(+), 47 deletions(-) - -diff --git a/instrumentation/events/lttng-module/btrfs.h b/instrumentation/events/lttng-module/btrfs.h -index 4dfbf5b..ec45a1e 100644 ---- a/instrumentation/events/lttng-module/btrfs.h -+++ b/instrumentation/events/lttng-module/btrfs.h -@@ -32,6 +32,12 @@ struct extent_state; - - #define BTRFS_UUID_SIZE 16 - -+#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,0,0)) -+#define lttng_fs_info_fsid fs_info->fs_devices->fsid -+#else -+#define lttng_fs_info_fsid fs_info->fsid -+#endif -+ - #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,14,0) || \ - LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \ - LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \ -@@ -629,7 +635,7 @@ LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group, - TP_ARGS(fs_info, block_group, create), - - TP_FIELDS( -- ctf_array(u8, fsid, fs_info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, offset, block_group->key.objectid) - ctf_integer(u64, size, block_group->key.offset) - ctf_integer(u64, flags, block_group->flags) -@@ -647,7 +653,7 @@ LTTNG_TRACEPOINT_EVENT(btrfs_add_block_group, - TP_ARGS(fs_info, block_group, create), - - TP_FIELDS( -- ctf_array(u8, fsid, fs_info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, offset, block_group->key.objectid) - ctf_integer(u64, size, block_group->key.offset) - ctf_integer(u64, flags, block_group->flags) -@@ -1015,18 +1021,18 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk, btrfs_chunk_alloc, - -- TP_PROTO(const struct btrfs_fs_info *info, const struct map_lookup *map, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, const struct map_lookup *map, - u64 offset, u64 size), - -- TP_ARGS(info, map, offset, size) -+ TP_ARGS(fs_info, map, offset, size) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk, btrfs_chunk_free, - -- TP_PROTO(const struct btrfs_fs_info *info, const struct map_lookup *map, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, const struct map_lookup *map, - u64 offset, u64 size), - -- TP_ARGS(info, map, offset, size) -+ TP_ARGS(fs_info, map, offset, size) - ) - - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) -@@ -1050,18 +1056,18 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__chunk, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk, btrfs_chunk_alloc, - -- TP_PROTO(struct btrfs_fs_info *info, struct map_lookup *map, -+ TP_PROTO(struct btrfs_fs_info *fs_info, struct map_lookup *map, - u64 offset, u64 size), - -- TP_ARGS(info, map, offset, size) -+ TP_ARGS(fs_info, map, offset, size) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__chunk, btrfs_chunk_free, - -- TP_PROTO(struct btrfs_fs_info *info, struct map_lookup *map, -+ TP_PROTO(struct btrfs_fs_info *fs_info, struct map_lookup *map, - u64 offset, u64 size), - -- TP_ARGS(info, map, offset, size) -+ TP_ARGS(fs_info, map, offset, size) - ) - - #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \ -@@ -1192,7 +1198,7 @@ LTTNG_TRACEPOINT_EVENT(btrfs_space_reservation, - TP_ARGS(fs_info, type, val, bytes, reserve), - - TP_FIELDS( -- ctf_array(u8, fsid, fs_info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_string(type, type) - ctf_integer(u64, val, val) - ctf_integer(u64, bytes, bytes) -@@ -1208,7 +1214,7 @@ LTTNG_TRACEPOINT_EVENT(btrfs_space_reservation, - TP_ARGS(fs_info, type, val, bytes, reserve), - - TP_FIELDS( -- ctf_array(u8, fsid, fs_info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_string(type, type) - ctf_integer(u64, val, val) - ctf_integer(u64, bytes, bytes) -@@ -1221,9 +1227,9 @@ LTTNG_TRACEPOINT_EVENT(btrfs_space_reservation, - - LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent, - -- TP_PROTO(const struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(const struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len), -+ TP_ARGS(fs_info, start, len), - - TP_FIELDS( - ctf_integer(u64, start, start) -@@ -1233,25 +1239,25 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent, btrfs_reserved_extent_alloc, - -- TP_PROTO(const struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(const struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len) -+ TP_ARGS(fs_info, start, len) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent, btrfs_reserved_extent_free, - -- TP_PROTO(const struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(const struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len) -+ TP_ARGS(fs_info, start, len) - ) - - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) - - LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent, - -- TP_PROTO(struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len), -+ TP_ARGS(fs_info, start, len), - - TP_FIELDS( - ctf_integer(u64, start, start) -@@ -1261,16 +1267,16 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserved_extent, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent, btrfs_reserved_extent_alloc, - -- TP_PROTO(struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len) -+ TP_ARGS(fs_info, start, len) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserved_extent, btrfs_reserved_extent_free, - -- TP_PROTO(struct btrfs_fs_info *info, u64 start, u64 len), -+ TP_PROTO(struct btrfs_fs_info *fs_info, u64 start, u64 len), - -- TP_ARGS(info, start, len) -+ TP_ARGS(fs_info, start, len) - ) - - #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \ -@@ -1341,13 +1347,13 @@ LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent, - - btrfs_find_free_extent, - -- TP_PROTO(const struct btrfs_fs_info *info, u64 num_bytes, u64 empty_size, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, u64 num_bytes, u64 empty_size, - u64 data), - -- TP_ARGS(info, num_bytes, empty_size, data), -+ TP_ARGS(fs_info, num_bytes, empty_size, data), - - TP_FIELDS( -- ctf_array(u8, fsid, info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, num_bytes, num_bytes) - ctf_integer(u64, empty_size, empty_size) - ctf_integer(u64, data, data) -@@ -1362,7 +1368,7 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent, - TP_ARGS(block_group, start, len), - - TP_FIELDS( -- ctf_array(u8, fsid, block_group->fs_info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, block_group->lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, bg_objectid, block_group->key.objectid) - ctf_integer(u64, flags, block_group->flags) - ctf_integer(u64, start, start) -@@ -1391,13 +1397,13 @@ LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent, - - btrfs_find_free_extent, - -- TP_PROTO(const struct btrfs_fs_info *info, u64 num_bytes, u64 empty_size, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, u64 num_bytes, u64 empty_size, - u64 data), - -- TP_ARGS(info, num_bytes, empty_size, data), -+ TP_ARGS(fs_info, num_bytes, empty_size, data), - - TP_FIELDS( -- ctf_array(u8, fsid, info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, num_bytes, num_bytes) - ctf_integer(u64, empty_size, empty_size) - ctf_integer(u64, data, data) -@@ -1406,14 +1412,14 @@ LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent, - - LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent, - -- TP_PROTO(const struct btrfs_fs_info *info, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, - const struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len), -+ TP_ARGS(fs_info, block_group, start, len), - - TP_FIELDS( -- ctf_array(u8, fsid, info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, bg_objectid, block_group->key.objectid) - ctf_integer(u64, flags, block_group->flags) - ctf_integer(u64, start, start) -@@ -1423,20 +1429,20 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent, btrfs_reserve_extent, - -- TP_PROTO(const struct btrfs_fs_info *info, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, - const struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len) -+ TP_ARGS(fs_info, block_group, start, len) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent, btrfs_reserve_extent_cluster, - -- TP_PROTO(const struct btrfs_fs_info *info, -+ TP_PROTO(const struct btrfs_fs_info *fs_info, - const struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len) -+ TP_ARGS(fs_info, block_group, start, len) - ) - - #elif (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) -@@ -1445,13 +1451,13 @@ LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent, - - btrfs_find_free_extent, - -- TP_PROTO(struct btrfs_fs_info *info, u64 num_bytes, u64 empty_size, -+ TP_PROTO(struct btrfs_fs_info *fs_info, u64 num_bytes, u64 empty_size, - u64 data), - -- TP_ARGS(info, num_bytes, empty_size, data), -+ TP_ARGS(fs_info, num_bytes, empty_size, data), - - TP_FIELDS( -- ctf_array(u8, fsid, info->fsid, BTRFS_UUID_SIZE) -+ ctf_array(u8, fsid, lttng_fs_info_fsid, BTRFS_UUID_SIZE) - ctf_integer(u64, num_bytes, num_bytes) - ctf_integer(u64, empty_size, empty_size) - ctf_integer(u64, data, data) -@@ -1460,11 +1466,11 @@ LTTNG_TRACEPOINT_EVENT_MAP(find_free_extent, - - LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent, - -- TP_PROTO(struct btrfs_fs_info *info, -+ TP_PROTO(struct btrfs_fs_info *fs_info, - struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len), -+ TP_ARGS(fs_info, block_group, start, len), - - TP_FIELDS( - ctf_integer(u64, bg_objectid, block_group->key.objectid) -@@ -1476,20 +1482,20 @@ LTTNG_TRACEPOINT_EVENT_CLASS(btrfs__reserve_extent, - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent, btrfs_reserve_extent, - -- TP_PROTO(struct btrfs_fs_info *info, -+ TP_PROTO(struct btrfs_fs_info *fs_info, - struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len) -+ TP_ARGS(fs_info, block_group, start, len) - ) - - LTTNG_TRACEPOINT_EVENT_INSTANCE(btrfs__reserve_extent, btrfs_reserve_extent_cluster, - -- TP_PROTO(struct btrfs_fs_info *info, -+ TP_PROTO(struct btrfs_fs_info *fs_info, - struct btrfs_block_group_cache *block_group, u64 start, - u64 len), - -- TP_ARGS(info, block_group, start, len) -+ TP_ARGS(fs_info, block_group, start, len) - ) - #elif (LTTNG_SLE_KERNEL_RANGE(4,4,73,5,0,0, 4,4,73,6,0,0) || \ - LTTNG_SLE_KERNEL_RANGE(4,4,82,6,0,0, 4,4,82,7,0,0) || \ --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0009-Cleanup-tp-mempool-Remove-logically-dead-code.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0009-Cleanup-tp-mempool-Remove-logically-dead-code.patch deleted file mode 100644 index 4ffe48867..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules/0009-Cleanup-tp-mempool-Remove-logically-dead-code.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 416cee8707053a9015dfec8332e12f8c263098e3 Mon Sep 17 00:00:00 2001 -From: Mathieu Desnoyers -Date: Thu, 14 Feb 2019 11:40:50 -0500 -Subject: [PATCH 9/9] Cleanup: tp mempool: Remove logically dead code - -Found by Coverity: -CID 1391045 (#1 of 1): Logically dead code (DEADCODE) - -Signed-off-by: Mathieu Desnoyers - -Upstream-Status: backport https://github.com/lttng/lttng-modules/commit/416cee8707053a9015dfec8332e12f8c263098e3 - -Signed-off-by: Bruce Ashfield ---- - lttng-tp-mempool.c | 11 ++--------- - 1 file changed, 2 insertions(+), 9 deletions(-) - -diff --git a/lttng-tp-mempool.c b/lttng-tp-mempool.c -index d984bd4..21e8376 100644 ---- a/lttng-tp-mempool.c -+++ b/lttng-tp-mempool.c -@@ -151,19 +151,12 @@ void lttng_tp_mempool_free(void *ptr) - struct lttng_tp_buf_entry *entry; - struct per_cpu_buf *cpu_buf; - -- if (!ptr) { -+ if (!ptr) - goto end; -- } -- - entry = container_of(ptr, struct lttng_tp_buf_entry, buf); -- if (!entry) { -- goto end; -- } -- - cpu_buf = per_cpu_ptr(pool, entry->cpu); -- if (!cpu_buf) { -+ if (!cpu_buf) - goto end; -- } - /* Add it to the free list. */ - list_add_tail(&entry->list, &cpu_buf->free_list); - --- -2.19.1 - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.8.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.8.bb deleted file mode 100644 index 15e75e51c..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.8.bb +++ /dev/null @@ -1,45 +0,0 @@ -SECTION = "devel" -SUMMARY = "Linux Trace Toolkit KERNEL MODULE" -DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" -LICENSE = "LGPLv2.1 & GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=c4613d1f8a9587bd7b366191830364b3 \ - file://gpl-2.0.txt;md5=751419260aa954499f7abaabaa882bbe \ - file://lgpl-2.1.txt;md5=243b725d71bb5df4a1e5920b344b86ad \ - " - -inherit module - -COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' - -#https://lttng.org/files/lttng-modules/lttng-modules-2.10.7.tar.bz2 -SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ - file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ - file://0001-Fix-signal-Distinguish-between-kernel_siginfo-and-si.patch \ - file://0002-Fix-signal-Remove-SEND_SIG_FORCED-v4.20.patch \ - file://0003-Fix-ext4-adjust-reserved-cluster-count-when-removing.patch \ - file://0004-Fix-timer-instrumentation-for-RHEL-7.6.patch \ - file://0005-Fix-Remove-type-argument-from-access_ok-function-v5..patch \ - file://0006-Fix-Replace-pointer-values-with-task-tk_pid-and-rpc_.patch \ - file://0007-Fix-SUNRPC-Simplify-defining-common-RPC-trace-events.patch \ - file://0008-Fix-btrfs-Remove-fsid-metadata_fsid-fields-from-btrf.patch \ - file://0009-Cleanup-tp-mempool-Remove-logically-dead-code.patch \ - " - -SRC_URI[md5sum] = "54bd9fca61487bbec1b3fca2f2213c98" -SRC_URI[sha256sum] = "fe1d269bca723e8948af871c322c37d3900e647cdc5eb3efbe821e434beee44c" - -export INSTALL_MOD_DIR="kernel/lttng-modules" - -EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" - -do_install_append() { - # Delete empty directories to avoid QA failures if no modules were built - find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; -} - -python do_package_prepend() { - if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): - bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) -} - diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.9.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.9.bb new file mode 100644 index 000000000..70a684326 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.10.9.bb @@ -0,0 +1,36 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit KERNEL MODULE" +DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" +LICENSE = "LGPLv2.1 & GPLv2 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=c4613d1f8a9587bd7b366191830364b3 \ + file://gpl-2.0.txt;md5=751419260aa954499f7abaabaa882bbe \ + file://lgpl-2.1.txt;md5=243b725d71bb5df4a1e5920b344b86ad \ + " + +inherit module + +COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' + +#https://lttng.org/files/lttng-modules/lttng-modules-2.10.7.tar.bz2 +SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ + file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ + " + +SRC_URI[md5sum] = "09df0ac2e8f245740a2f32411d10c0d1" +SRC_URI[sha256sum] = "a1855bbd02d0f71ebd180e9872309862036624f012442ab9cc5852eb60340145" + +export INSTALL_MOD_DIR="kernel/lttng-modules" + +EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" + +do_install_append() { + # Delete empty directories to avoid QA failures if no modules were built + find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; +} + +python do_package_prepend() { + if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): + bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) +} + diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/0006-Tests-check-for-lttng-modules-presence.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/0006-Tests-check-for-lttng-modules-presence.patch index e07c227f4..30aa66b2c 100644 --- a/poky/meta/recipes-kernel/lttng/lttng-tools/0006-Tests-check-for-lttng-modules-presence.patch +++ b/poky/meta/recipes-kernel/lttng/lttng-tools/0006-Tests-check-for-lttng-modules-presence.patch @@ -3,7 +3,7 @@ From: Jonathan Rajotte Date: Mon, 25 Mar 2019 14:24:51 -0400 Subject: [2/2] tests: check for lttng-modules presence -Upstream-status: Accepted [5da3fc8579a9f93ea4767729a107784bf2d034ae] +Upstream-Status: Accepted [5da3fc8579a9f93ea4767729a107784bf2d034ae] Backported to 2.11 and 2.10 Signed-off-by: Jonathan Rajotte diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/0007-Fix-getgrnam-is-not-MT-Safe-use-getgrnam_r.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/0007-Fix-getgrnam-is-not-MT-Safe-use-getgrnam_r.patch index 5437de26e..a3362ea24 100644 --- a/poky/meta/recipes-kernel/lttng/lttng-tools/0007-Fix-getgrnam-is-not-MT-Safe-use-getgrnam_r.patch +++ b/poky/meta/recipes-kernel/lttng/lttng-tools/0007-Fix-getgrnam-is-not-MT-Safe-use-getgrnam_r.patch @@ -55,6 +55,8 @@ want to move the warning elsewhere in the future. For now, pass a bool if we need to warn or not. Signed-off-by: Jonathan Rajotte + +Upstream-Status: Submitted [https://patchwork.lttng.org/patch/2314703] --- src/bin/lttng-consumerd/health-consumerd.c | 10 ++- src/bin/lttng-relayd/health-relayd.c | 20 ++++-- diff --git a/poky/meta/recipes-kernel/perf/perf.bb b/poky/meta/recipes-kernel/perf/perf.bb index 5acdcfb9f..4e603f1a3 100644 --- a/poky/meta/recipes-kernel/perf/perf.bb +++ b/poky/meta/recipes-kernel/perf/perf.bb @@ -238,7 +238,7 @@ do_configure_prepend () { # unistd.h can be out of sync between libc-headers and the captured version in the perf source # so we copy it from the sysroot unistd.h to the perf unistd.h - cp ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/tools/include/uapi/asm-generic/unistd.h + install -D -m0644 ${STAGING_INCDIR}/asm-generic/unistd.h ${S}/tools/include/uapi/asm-generic/unistd.h } python do_package_prepend() { @@ -271,3 +271,4 @@ FILES_${PN}-perl = "${libexecdir}/perf-core/scripts/perl" INHIBIT_PACKAGE_DEBUG_SPLIT="1" +DEBUG_OPTIMIZATION_append = " -Wno-error=maybe-uninitialized" diff --git a/poky/meta/recipes-kernel/sysprof/sysprof_3.30.2.bb b/poky/meta/recipes-kernel/sysprof/sysprof_3.30.2.bb deleted file mode 100644 index 24e49cb0d..000000000 --- a/poky/meta/recipes-kernel/sysprof/sysprof_3.30.2.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "System-wide Performance Profiler for Linux" -HOMEPAGE = "http://www.sysprof.com" -LICENSE = "GPLv3+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://src/sp-application.c;endline=17;md5=40e55577ef122c88fe20052acda64875" - -GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase gettext systemd upstream-version-is-even gsettings - -DEPENDS = "glib-2.0 libxml2-native glib-2.0-native" - -SRC_URI[archive.md5sum] = "80cb47906eced2e7b9976bf00deec323" -SRC_URI[archive.sha256sum] = "e90878e5a509bd79d170a7a51d47cc5508ab1363afaf0d97654373dfd9c8ba0b" -SRC_URI += " \ - file://define-NT_GNU_BUILD_ID.patch \ - file://0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch \ - " - -PACKAGECONFIG ?= "${@bb.utils.contains_any('DISTRO_FEATURES', '${GTK3DISTROFEATURES}', 'gtk', '', d)}" -PACKAGECONFIG[gtk] = "-Denable_gtk=true,-Denable_gtk=false,gtk+3" -PACKAGECONFIG[sysprofd] = "-Dwith_sysprofd=bundled,-Dwith_sysprofd=none,polkit" - -SOLIBS = ".so" -FILES_SOLIBSDEV = "" - -SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'sysprofd', 'sysprof2.service', '', d)}" - -FILES_${PN} += " \ - ${datadir}/dbus-1/system-services \ - ${datadir}/dbus-1/system.d \ - ${datadir}/metainfo \ - " diff --git a/poky/meta/recipes-kernel/sysprof/sysprof_3.32.0.bb b/poky/meta/recipes-kernel/sysprof/sysprof_3.32.0.bb new file mode 100644 index 000000000..b92933806 --- /dev/null +++ b/poky/meta/recipes-kernel/sysprof/sysprof_3.32.0.bb @@ -0,0 +1,32 @@ +SUMMARY = "System-wide Performance Profiler for Linux" +HOMEPAGE = "http://www.sysprof.com" +LICENSE = "GPLv3+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \ + file://src/sp-application.c;endline=17;md5=40e55577ef122c88fe20052acda64875" + +GNOMEBASEBUILDCLASS = "meson" +inherit gnomebase gettext systemd upstream-version-is-even gsettings + +DEPENDS = "glib-2.0 libxml2-native glib-2.0-native" + +SRC_URI[archive.md5sum] = "d1fa9ad216419d722770ca36713ad3af" +SRC_URI[archive.sha256sum] = "fc22a69e468701c5ec9036e960c6273afa1ed6a89df1f889fed49417add5554d" +SRC_URI += " \ + file://define-NT_GNU_BUILD_ID.patch \ + file://0001-Do-not-build-anything-in-help-as-it-requires-itstool.patch \ + " + +PACKAGECONFIG ?= "${@bb.utils.contains_any('DISTRO_FEATURES', '${GTK3DISTROFEATURES}', 'gtk', '', d)}" +PACKAGECONFIG[gtk] = "-Denable_gtk=true,-Denable_gtk=false,gtk+3" +PACKAGECONFIG[sysprofd] = "-Dwith_sysprofd=bundled,-Dwith_sysprofd=none,polkit" + +SOLIBS = ".so" +FILES_SOLIBSDEV = "" + +SYSTEMD_SERVICE_${PN} = "${@bb.utils.contains('PACKAGECONFIG', 'sysprofd', 'sysprof2.service', '', d)}" + +FILES_${PN} += " \ + ${datadir}/dbus-1/system-services \ + ${datadir}/dbus-1/system.d \ + ${datadir}/metainfo \ + " diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.1.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.1.bb deleted file mode 100644 index 749b3d0dd..000000000 --- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.1.bb +++ /dev/null @@ -1,157 +0,0 @@ -SUMMARY = "A complete, cross-platform solution to record, convert and stream audio and video." -DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, \ - mux, demux, stream, filter and play pretty much anything that humans and machines \ - have created. It supports the most obscure ancient formats up to the cutting edge." -HOMEPAGE = "https://www.ffmpeg.org/" -SECTION = "libs" - -LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT" -LICENSE_${PN} = "GPLv2+" -LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libpostproc = "GPLv2+" -LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" -LICENSE_FLAGS = "commercial" - -LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \ - file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" - -SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \ - file://mips64_cpu_detection.patch \ - " -SRC_URI[md5sum] = "720fc84617a2c38aeae79aff3689a567" -SRC_URI[sha256sum] = "373749824dfd334d84e55dff406729edfd1606575ee44dd485d97d45ea4d2d86" - -# Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717 -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# Should be API compatible with libav (which was a fork of ffmpeg) -# libpostproc was previously packaged from a separate recipe -PROVIDES = "libav libpostproc" - -DEPENDS = "alsa-lib zlib libogg nasm-native" - -inherit autotools pkgconfig - -PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc avresample \ - bzlib gpl lzma theora x264 \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv', '', d)}" - -# libraries to build in addition to avutil -PACKAGECONFIG[avdevice] = "--enable-avdevice,--disable-avdevice" -PACKAGECONFIG[avfilter] = "--enable-avfilter,--disable-avfilter" -PACKAGECONFIG[avcodec] = "--enable-avcodec,--disable-avcodec" -PACKAGECONFIG[avformat] = "--enable-avformat,--disable-avformat" -PACKAGECONFIG[swresample] = "--enable-swresample,--disable-swresample" -PACKAGECONFIG[swscale] = "--enable-swscale,--disable-swscale" -PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc" -PACKAGECONFIG[avresample] = "--enable-avresample,--disable-avresample" - -# features to support -PACKAGECONFIG[bzlib] = "--enable-bzlib,--disable-bzlib,bzip2" -PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl" -PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm" -PACKAGECONFIG[jack] = "--enable-indev=jack,--disable-indev=jack,jack" -PACKAGECONFIG[libvorbis] = "--enable-libvorbis,--disable-libvorbis,libvorbis" -PACKAGECONFIG[lzma] = "--enable-lzma,--disable-lzma,xz" -PACKAGECONFIG[mp3lame] = "--enable-libmp3lame,--disable-libmp3lame,lame" -PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl" -PACKAGECONFIG[sdl2] = "--enable-sdl2,--disable-sdl2,virtual/libsdl2" -PACKAGECONFIG[speex] = "--enable-libspeex,--disable-libspeex,speex" -PACKAGECONFIG[theora] = "--enable-libtheora,--disable-libtheora,libtheora" -PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva" -PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" -PACKAGECONFIG[vpx] = "--enable-libvpx,--disable-libvpx,libvpx" -PACKAGECONFIG[x264] = "--enable-libx264,--disable-libx264,x264" -PACKAGECONFIG[xv] = "--enable-outdev=xv,--disable-outdev=xv,libxv" - -# Check codecs that require --enable-nonfree -USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'openssl' ], 'yes', '', d)}" - -def cpu(d): - for arg in (d.getVar('TUNE_CCARGS') or '').split(): - if arg.startswith('-mcpu='): - return arg[6:] - return 'generic' - -EXTRA_OECONF = " \ - --disable-stripping \ - --enable-pic \ - --enable-shared \ - --enable-pthreads \ - --disable-libxcb \ - --disable-libxcb-shm \ - --disable-libxcb-xfixes \ - --disable-libxcb-shape \ - ${@bb.utils.contains('USE_NONFREE', 'yes', '--enable-nonfree', '', d)} \ - \ - --cross-prefix=${TARGET_PREFIX} \ - \ - --ld="${CCLD}" \ - --cc="${CC}" \ - --cxx="${CXX}" \ - --arch=${TARGET_ARCH} \ - --target-os="linux" \ - --enable-cross-compile \ - --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \ - --extra-ldflags="${TARGET_LDFLAGS}" \ - --sysroot="${STAGING_DIR_TARGET}" \ - --enable-hardcoded-tables \ - ${EXTRA_FFCONF} \ - --libdir=${libdir} \ - --shlibdir=${libdir} \ - --datadir=${datadir}/ffmpeg \ - ${@bb.utils.contains('AVAILTUNES', 'mips32r2', '', '--disable-mipsdsp --disable-mipsdspr2', d)} \ - --cpu=${@cpu(d)} \ - --pkg-config=pkg-config \ -" - -EXTRA_OECONF_append_linux-gnux32 = " --disable-asm" -# gold crashes on x86, another solution is to --disable-asm but thats more hacky -# ld.gold: internal error in relocate_section, at ../../gold/i386.cc:3684 - -LDFLAGS_append_x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" - -do_configure() { - ${S}/configure ${EXTRA_OECONF} -} - -PACKAGES =+ "libavcodec \ - libavdevice \ - libavfilter \ - libavformat \ - libavresample \ - libavutil \ - libpostproc \ - libswresample \ - libswscale" - -FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}" -FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}" -FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}" -FILES_libavformat = "${libdir}/libavformat${SOLIBS}" -FILES_libavresample = "${libdir}/libavresample${SOLIBS}" -FILES_libavutil = "${libdir}/libavutil${SOLIBS}" -FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}" -FILES_libswresample = "${libdir}/libswresample${SOLIBS}" -FILES_libswscale = "${libdir}/libswscale${SOLIBS}" - -# ffmpeg disables PIC on some platforms (e.g. x86-32) -INSANE_SKIP_${MLPREFIX}libavcodec = "textrel" -INSANE_SKIP_${MLPREFIX}libavdevice = "textrel" -INSANE_SKIP_${MLPREFIX}libavfilter = "textrel" -INSANE_SKIP_${MLPREFIX}libavformat = "textrel" -INSANE_SKIP_${MLPREFIX}libavutil = "textrel" -INSANE_SKIP_${MLPREFIX}libavresample = "textrel" -INSANE_SKIP_${MLPREFIX}libswscale = "textrel" -INSANE_SKIP_${MLPREFIX}libswresample = "textrel" -INSANE_SKIP_${MLPREFIX}libpostproc = "textrel" diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.3.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.3.bb new file mode 100644 index 000000000..994a792de --- /dev/null +++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_4.1.3.bb @@ -0,0 +1,157 @@ +SUMMARY = "A complete, cross-platform solution to record, convert and stream audio and video." +DESCRIPTION = "FFmpeg is the leading multimedia framework, able to decode, encode, transcode, \ + mux, demux, stream, filter and play pretty much anything that humans and machines \ + have created. It supports the most obscure ancient formats up to the cutting edge." +HOMEPAGE = "https://www.ffmpeg.org/" +SECTION = "libs" + +LICENSE = "BSD & GPLv2+ & LGPLv2.1+ & MIT" +LICENSE_${PN} = "GPLv2+" +LICENSE_libavcodec = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavdevice = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavfilter = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavformat = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libavutil = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libpostproc = "GPLv2+" +LICENSE_libswresample = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_libswscale = "${@bb.utils.contains('PACKAGECONFIG', 'gpl', 'GPLv2+', 'LGPLv2.1+', d)}" +LICENSE_FLAGS = "commercial" + +LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LGPLv2.1;md5=bd7a443320af8c812e4c18d1b79df004 \ + file://COPYING.LGPLv3;md5=e6a600fd5e1d9cbde2d983680233ad02" + +SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \ + file://mips64_cpu_detection.patch \ + " +SRC_URI[md5sum] = "dcc20dd2682ea01c678b7b8324339d43" +SRC_URI[sha256sum] = "0c3020452880581a8face91595b239198078645e7d7184273b8bcc7758beb63d" + +# Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717 +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" + +# Should be API compatible with libav (which was a fork of ffmpeg) +# libpostproc was previously packaged from a separate recipe +PROVIDES = "libav libpostproc" + +DEPENDS = "alsa-lib zlib libogg nasm-native" + +inherit autotools pkgconfig + +PACKAGECONFIG ??= "avdevice avfilter avcodec avformat swresample swscale postproc avresample \ + bzlib gpl lzma theora x264 \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'xv', '', d)}" + +# libraries to build in addition to avutil +PACKAGECONFIG[avdevice] = "--enable-avdevice,--disable-avdevice" +PACKAGECONFIG[avfilter] = "--enable-avfilter,--disable-avfilter" +PACKAGECONFIG[avcodec] = "--enable-avcodec,--disable-avcodec" +PACKAGECONFIG[avformat] = "--enable-avformat,--disable-avformat" +PACKAGECONFIG[swresample] = "--enable-swresample,--disable-swresample" +PACKAGECONFIG[swscale] = "--enable-swscale,--disable-swscale" +PACKAGECONFIG[postproc] = "--enable-postproc,--disable-postproc" +PACKAGECONFIG[avresample] = "--enable-avresample,--disable-avresample" + +# features to support +PACKAGECONFIG[bzlib] = "--enable-bzlib,--disable-bzlib,bzip2" +PACKAGECONFIG[gpl] = "--enable-gpl,--disable-gpl" +PACKAGECONFIG[gsm] = "--enable-libgsm,--disable-libgsm,libgsm" +PACKAGECONFIG[jack] = "--enable-indev=jack,--disable-indev=jack,jack" +PACKAGECONFIG[libvorbis] = "--enable-libvorbis,--disable-libvorbis,libvorbis" +PACKAGECONFIG[lzma] = "--enable-lzma,--disable-lzma,xz" +PACKAGECONFIG[mp3lame] = "--enable-libmp3lame,--disable-libmp3lame,lame" +PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl" +PACKAGECONFIG[sdl2] = "--enable-sdl2,--disable-sdl2,virtual/libsdl2" +PACKAGECONFIG[speex] = "--enable-libspeex,--disable-libspeex,speex" +PACKAGECONFIG[theora] = "--enable-libtheora,--disable-libtheora,libtheora" +PACKAGECONFIG[vaapi] = "--enable-vaapi,--disable-vaapi,libva" +PACKAGECONFIG[vdpau] = "--enable-vdpau,--disable-vdpau,libvdpau" +PACKAGECONFIG[vpx] = "--enable-libvpx,--disable-libvpx,libvpx" +PACKAGECONFIG[x264] = "--enable-libx264,--disable-libx264,x264" +PACKAGECONFIG[xv] = "--enable-outdev=xv,--disable-outdev=xv,libxv" + +# Check codecs that require --enable-nonfree +USE_NONFREE = "${@bb.utils.contains_any('PACKAGECONFIG', [ 'openssl' ], 'yes', '', d)}" + +def cpu(d): + for arg in (d.getVar('TUNE_CCARGS') or '').split(): + if arg.startswith('-mcpu='): + return arg[6:] + return 'generic' + +EXTRA_OECONF = " \ + --disable-stripping \ + --enable-pic \ + --enable-shared \ + --enable-pthreads \ + --disable-libxcb \ + --disable-libxcb-shm \ + --disable-libxcb-xfixes \ + --disable-libxcb-shape \ + ${@bb.utils.contains('USE_NONFREE', 'yes', '--enable-nonfree', '', d)} \ + \ + --cross-prefix=${TARGET_PREFIX} \ + \ + --ld="${CCLD}" \ + --cc="${CC}" \ + --cxx="${CXX}" \ + --arch=${TARGET_ARCH} \ + --target-os="linux" \ + --enable-cross-compile \ + --extra-cflags="${TARGET_CFLAGS} ${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS}" \ + --extra-ldflags="${TARGET_LDFLAGS}" \ + --sysroot="${STAGING_DIR_TARGET}" \ + --enable-hardcoded-tables \ + ${EXTRA_FFCONF} \ + --libdir=${libdir} \ + --shlibdir=${libdir} \ + --datadir=${datadir}/ffmpeg \ + ${@bb.utils.contains('AVAILTUNES', 'mips32r2', '', '--disable-mipsdsp --disable-mipsdspr2', d)} \ + --cpu=${@cpu(d)} \ + --pkg-config=pkg-config \ +" + +EXTRA_OECONF_append_linux-gnux32 = " --disable-asm" +# gold crashes on x86, another solution is to --disable-asm but thats more hacky +# ld.gold: internal error in relocate_section, at ../../gold/i386.cc:3684 + +LDFLAGS_append_x86 = "${@bb.utils.contains('DISTRO_FEATURES', 'ld-is-gold', ' -fuse-ld=bfd ', '', d)}" + +do_configure() { + ${S}/configure ${EXTRA_OECONF} +} + +PACKAGES =+ "libavcodec \ + libavdevice \ + libavfilter \ + libavformat \ + libavresample \ + libavutil \ + libpostproc \ + libswresample \ + libswscale" + +FILES_libavcodec = "${libdir}/libavcodec${SOLIBS}" +FILES_libavdevice = "${libdir}/libavdevice${SOLIBS}" +FILES_libavfilter = "${libdir}/libavfilter${SOLIBS}" +FILES_libavformat = "${libdir}/libavformat${SOLIBS}" +FILES_libavresample = "${libdir}/libavresample${SOLIBS}" +FILES_libavutil = "${libdir}/libavutil${SOLIBS}" +FILES_libpostproc = "${libdir}/libpostproc${SOLIBS}" +FILES_libswresample = "${libdir}/libswresample${SOLIBS}" +FILES_libswscale = "${libdir}/libswscale${SOLIBS}" + +# ffmpeg disables PIC on some platforms (e.g. x86-32) +INSANE_SKIP_${MLPREFIX}libavcodec = "textrel" +INSANE_SKIP_${MLPREFIX}libavdevice = "textrel" +INSANE_SKIP_${MLPREFIX}libavfilter = "textrel" +INSANE_SKIP_${MLPREFIX}libavformat = "textrel" +INSANE_SKIP_${MLPREFIX}libavutil = "textrel" +INSANE_SKIP_${MLPREFIX}libavresample = "textrel" +INSANE_SKIP_${MLPREFIX}libswscale = "textrel" +INSANE_SKIP_${MLPREFIX}libswresample = "textrel" +INSANE_SKIP_${MLPREFIX}libpostproc = "textrel" diff --git a/poky/meta/recipes-multimedia/flac/flac_1.3.2.bb b/poky/meta/recipes-multimedia/flac/flac_1.3.2.bb index 92ef8973e..e8599f6ba 100644 --- a/poky/meta/recipes-multimedia/flac/flac_1.3.2.bb +++ b/poky/meta/recipes-multimedia/flac/flac_1.3.2.bb @@ -21,7 +21,7 @@ SRC_URI = "http://downloads.xiph.org/releases/flac/${BP}.tar.xz \ SRC_URI[md5sum] = "454f1bfa3f93cc708098d7890d0499bd" SRC_URI[sha256sum] = "91cfc3ed61dc40f47f050a109b08610667d73477af6ef36dcad31c31a4a8d53f" -CVE_PRODUCT = "libflac" +CVE_PRODUCT = "libflac flac" inherit autotools gettext diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.4.bb index 4987be865..23d093d47 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.4.bb +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.14.4.bb @@ -20,7 +20,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=73a5855a8119deb017f5f13cf327095d \ DEPENDS += "gstreamer1.0-plugins-base" -inherit gettext bluetooth +inherit gettext bluetooth gobject-introspection PACKAGECONFIG ??= " \ ${GSTREAMER_ORC} \ diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb index 12c9bbce9..f3e6daf56 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb @@ -28,7 +28,7 @@ S = "${WORKDIR}/gst-plugins-base-${PV}" DEPENDS += "iso-codes util-linux" -inherit gettext +inherit gettext gobject-introspection PACKAGES_DYNAMIC =+ "^libgst.*" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc index 5906e4ad3..bc24b05fe 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins.inc @@ -7,7 +7,7 @@ DEPENDS = "gstreamer1.0 glib-2.0-native" SRC_URI_append = " file://gtk-doc-tweaks.patch" -inherit autotools pkgconfig upstream-version-is-even gobject-introspection gtk-doc +inherit autotools pkgconfig upstream-version-is-even gtk-doc acpaths = "-I ${S}/common/m4 -I ${S}/m4" diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.14.4.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.14.4.bb index 8d45ca266..048aaf441 100644 --- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.14.4.bb +++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.14.4.bb @@ -16,7 +16,11 @@ PNREAL = "gst-python" S = "${WORKDIR}/${PNREAL}-${PV}" -inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection +# gobject-introspection is mandatory and cannot be configured +REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" +UNKNOWN_CONFIGURE_WHITELIST_append = " --enable-introspection --disable-introspection" + +inherit autotools pkgconfig distutils3-base upstream-version-is-even gobject-introspection distro_features_check do_install_append() { # gstpythonplugin hardcodes the location of the libpython from the build diff --git a/poky/meta/recipes-multimedia/libpng/libpng/CVE-2019-7317.patch b/poky/meta/recipes-multimedia/libpng/libpng/CVE-2019-7317.patch deleted file mode 100644 index 6ee1f8da3..000000000 --- a/poky/meta/recipes-multimedia/libpng/libpng/CVE-2019-7317.patch +++ /dev/null @@ -1,20 +0,0 @@ -Use-after-free detected with static analysis. - -CVE: CVE-2019-7317 -Upstream-Status: Submitted [https://github.com/glennrp/libpng/issues/275] -Signed-off-by: Ross Burton - -diff --git a/png.c b/png.c -index 9d9926f638..efd1aecfbd 100644 ---- a/png.c -+++ b/png.c -@@ -4588,8 +4588,7 @@ png_image_free(png_imagep image) - if (image != NULL && image->opaque != NULL && - image->opaque->error_buf == NULL) - { -- /* Ignore errors here: */ -- (void)png_safe_execute(image, png_image_free_function, image); -+ png_image_free_function(image); - image->opaque = NULL; - } - } diff --git a/poky/meta/recipes-multimedia/libpng/libpng_1.6.36.bb b/poky/meta/recipes-multimedia/libpng/libpng_1.6.36.bb deleted file mode 100644 index a58623788..000000000 --- a/poky/meta/recipes-multimedia/libpng/libpng_1.6.36.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "PNG image format decoding library" -HOMEPAGE = "http://www.libpng.org/" -SECTION = "libs" -LICENSE = "Libpng" -LIC_FILES_CHKSUM = "file://LICENSE;md5=12b4ec50384c800bc568f519671b120c \ - file://png.h;endline=144;md5=15ae15f53376306868259924a9db4e05 \ - " -DEPENDS = "zlib" - -LIBV = "16" - -SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/${PV}/${BP}.tar.xz \ - file://CVE-2019-7317.patch" -SRC_URI[md5sum] = "df2be2d29c40937fe1f5349b16bc2826" -SRC_URI[sha256sum] = "eceb924c1fa6b79172fdfd008d335f0e59172a86a66481e09d4089df872aa319" - -MIRRORS += "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/${PV}/ ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/older-releases/${PV}/" - -UPSTREAM_CHECK_URI = "http://libpng.org/pub/png/libpng.html" - -BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" - -inherit autotools binconfig-disabled pkgconfig - -# Work around missing symbols -EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off" ,d)}" - -PACKAGES =+ "${PN}-tools" - -FILES_${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb b/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb new file mode 100644 index 000000000..66af2f3d6 --- /dev/null +++ b/poky/meta/recipes-multimedia/libpng/libpng_1.6.37.bb @@ -0,0 +1,31 @@ +SUMMARY = "PNG image format decoding library" +HOMEPAGE = "http://www.libpng.org/" +SECTION = "libs" +LICENSE = "Libpng" +LIC_FILES_CHKSUM = "file://LICENSE;md5=b0085051bf265bac2bfc38bc89f50000\ + file://png.h;endline=144;md5=8acd23d544623816b097e07be0139509\ + " +DEPENDS = "zlib" + +LIBV = "16" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/${PV}/${BP}.tar.xz" +SRC_URI[md5sum] = "015e8e15db1eecde5f2eb9eb5b6e59e9" +SRC_URI[sha256sum] = "505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca" + +MIRRORS += "${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/${PV}/ ${SOURCEFORGE_MIRROR}/project/${BPN}/${BPN}${LIBV}/older-releases/${PV}/" + +UPSTREAM_CHECK_URI = "http://libpng.org/pub/png/libpng.html" + +BINCONFIG = "${bindir}/libpng-config ${bindir}/libpng16-config" + +inherit autotools binconfig-disabled pkgconfig + +# Work around missing symbols +EXTRA_OECONF_append_class-target = " ${@bb.utils.contains("TUNE_FEATURES", "neon", "--enable-arm-neon=on", "--enable-arm-neon=off" ,d)}" + +PACKAGES =+ "${PN}-tools" + +FILES_${PN}-tools = "${bindir}/png-fix-itxt ${bindir}/pngfix ${bindir}/pngcp" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-multimedia/mpg123/mpg123/sdl2.patch b/poky/meta/recipes-multimedia/mpg123/mpg123/sdl2.patch new file mode 100644 index 000000000..9dc9b923d --- /dev/null +++ b/poky/meta/recipes-multimedia/mpg123/mpg123/sdl2.patch @@ -0,0 +1,14 @@ +Use libsdl2 instead of libsdl 1.2, which is dead upstream. + +Luckily the API that mpg123 use didn't change so this is a trivial change. + +Upstream-Status: Submitted [https://sourceforge.net/p/mpg123/bugs/268/] +Signed-off-by: Ross Burton + +diff --git a/configure.ac b/configure.ac +index 6216d4f..b8d3344 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -1694 +1694 @@ do +- PKG_CHECK_MODULES(SDL, sdl, output_modules="$output_modules sdl" HAVE_SDL="yes", HAVE_SDL="no" check_failed=yes) ++ PKG_CHECK_MODULES(SDL, sdl2, output_modules="$output_modules sdl" HAVE_SDL="yes", HAVE_SDL="no" check_failed=yes) diff --git a/poky/meta/recipes-multimedia/mpg123/mpg123_1.25.10.bb b/poky/meta/recipes-multimedia/mpg123/mpg123_1.25.10.bb index ff2b7d893..dfb10bb1c 100644 --- a/poky/meta/recipes-multimedia/mpg123/mpg123_1.25.10.bb +++ b/poky/meta/recipes-multimedia/mpg123/mpg123_1.25.10.bb @@ -9,7 +9,8 @@ SECTION = "multimedia" LICENSE = "LGPLv2.1" LIC_FILES_CHKSUM = "file://COPYING;md5=1e86753638d3cf2512528b99079bc4f3" -SRC_URI = "https://www.mpg123.de/download/${BP}.tar.bz2" +SRC_URI = "https://www.mpg123.de/download/${BP}.tar.bz2 \ + file://sdl2.patch" SRC_URI[md5sum] = "ea32caa61d41d8be797f0b04a1b43ad9" SRC_URI[sha256sum] = "6c1337aee2e4bf993299851c70b7db11faec785303cfca3a5c3eb5f329ba7023" @@ -27,7 +28,7 @@ PACKAGECONFIG[jack] = ",,jack" PACKAGECONFIG[openal] = ",,openal-soft" PACKAGECONFIG[portaudio] = ",,portaudio-v19" PACKAGECONFIG[pulseaudio] = "--with-default-audio=pulse,,pulseaudio" -PACKAGECONFIG[sdl] = ",,libsdl" +PACKAGECONFIG[sdl] = ",,libsdl2" # Following are possible sound output modules: # alsa arts coreaudio dummy esd jack nas openal os2 oss portaudio pulse sdl sndio sun tinyalsa win32 win32_wasapi diff --git a/poky/meta/recipes-rt/images/core-image-rt-sdk.bb b/poky/meta/recipes-rt/images/core-image-rt-sdk.bb index 0f7f09168..624b7d943 100644 --- a/poky/meta/recipes-rt/images/core-image-rt-sdk.bb +++ b/poky/meta/recipes-rt/images/core-image-rt-sdk.bb @@ -11,7 +11,7 @@ python () { DESCRIPTION = "Small image capable of booting a device with a test suite and \ tools for real-time use. It includes the full meta-toolchain, development \ headers and libraries to form a standalone SDK." -DEPENDS = "linux-yocto-rt" +DEPENDS += "linux-yocto-rt" IMAGE_FEATURES += "dev-pkgs tools-sdk tools-debug eclipse-debug tools-profile tools-testapps debug-tweaks" diff --git a/poky/meta/recipes-rt/images/core-image-rt.bb b/poky/meta/recipes-rt/images/core-image-rt.bb index 9cb93b3de..053d23219 100644 --- a/poky/meta/recipes-rt/images/core-image-rt.bb +++ b/poky/meta/recipes-rt/images/core-image-rt.bb @@ -10,7 +10,7 @@ python () { DESCRIPTION = "A small image just capable of allowing a device to boot plus a \ real-time test suite and tools appropriate for real-time use." -DEPENDS = "linux-yocto-rt" +DEPENDS += "linux-yocto-rt" IMAGE_INSTALL += "rt-tests hwlatdetect" diff --git a/poky/meta/recipes-sato/images/core-image-sato-ptest-fast.bb b/poky/meta/recipes-sato/images/core-image-sato-ptest-fast.bb new file mode 100644 index 000000000..b794a7dc9 --- /dev/null +++ b/poky/meta/recipes-sato/images/core-image-sato-ptest-fast.bb @@ -0,0 +1,16 @@ +require core-image-sato-sdk.bb +require conf/distro/include/ptest-packagelists.inc + +IMAGE_INSTALL += "${PTESTS_FAST}" + +DESCRIPTION += "Also includes ptest packages with fast execution times to allow for more automated QA." + +# This image is sufficiently large (~1.8GB) that it can't actually fit in a live +# image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the +# box) and explicitly add just 1500MB. +# strace-ptest in particular needs more than 500MB +IMAGE_OVERHEAD_FACTOR = "1.0" +IMAGE_ROOTFS_EXTRA_SPACE = "1524288" + +# ptests need more memory than standard to avoid the OOM killer +QB_MEM = "-m 1024" diff --git a/poky/meta/recipes-sato/images/core-image-sato-sdk-ptest.bb b/poky/meta/recipes-sato/images/core-image-sato-sdk-ptest.bb index 1027ec03b..e84beda6c 100644 --- a/poky/meta/recipes-sato/images/core-image-sato-sdk-ptest.bb +++ b/poky/meta/recipes-sato/images/core-image-sato-sdk-ptest.bb @@ -1,15 +1,21 @@ require core-image-sato-sdk.bb +require conf/distro/include/ptest-packagelists.inc DESCRIPTION += "Also includes ptest packages." IMAGE_FEATURES += "ptest-pkgs" +PROVIDES += "core-image-sato-ptest" + +# Also include ptests which may not otherwise be included in a sato image +IMAGE_INSTALL += "${PTESTS_FAST} ${PTESTS_SLOW}" + # This image is sufficiently large (~1.8GB) that we need to be careful that it fits in a live # image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the -# box) and explicitly add just 1500MB. +# box) and explicitly add just 1200MB. # strace-ptest in particular needs more than 500MB IMAGE_OVERHEAD_FACTOR = "1.0" -IMAGE_ROOTFS_EXTRA_SPACE = "1524288" +IMAGE_ROOTFS_EXTRA_SPACE = "1224288" # ptests need more memory than standard to avoid the OOM killer QB_MEM = "-m 1024" diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch index d9a18e0ce..0c145c7eb 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch +++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Fix-build-with-musl.patch @@ -1,4 +1,4 @@ -From 322966273a8e085829261a397af37de0fbf51aad Mon Sep 17 00:00:00 2001 +From c4d4d9f1aa74addefdad40294cf16d9e0b3dd6ec Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 6 Oct 2017 17:00:08 +0300 Subject: [PATCH] Fix build with musl @@ -12,7 +12,7 @@ Signed-off-by: Alexander Kanavin 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Source/JavaScriptCore/runtime/MachineContext.h b/Source/JavaScriptCore/runtime/MachineContext.h -index 836d755..7665d25 100644 +index 823964c2..00841146 100644 --- a/Source/JavaScriptCore/runtime/MachineContext.h +++ b/Source/JavaScriptCore/runtime/MachineContext.h @@ -188,7 +188,7 @@ static inline void*& stackPointerImpl(mcontext_t& machineContext) @@ -61,12 +61,12 @@ index 836d755..7665d25 100644 // The following sequence depends on glibc's sys/ucontext.h. #if CPU(X86) diff --git a/Source/WTF/wtf/Platform.h b/Source/WTF/wtf/Platform.h -index a841946..1e5c7dd 100644 +index 34f7cb14..32ad9150 100644 --- a/Source/WTF/wtf/Platform.h +++ b/Source/WTF/wtf/Platform.h -@@ -701,7 +701,7 @@ - #define HAVE_CFNETWORK_STORAGE_PARTITIONING 1 - #endif +@@ -714,7 +714,7 @@ + + #endif /* OS(DARWIN) */ -#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || defined(__GLIBC__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) +#if OS(DARWIN) || OS(FUCHSIA) || ((OS(FREEBSD) || defined(__linux__) || defined(__BIONIC__)) && (CPU(X86) || CPU(X86_64) || CPU(ARM) || CPU(ARM64) || CPU(MIPS))) diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch index 83fd5129a..664cea9c7 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch +++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch @@ -1,8 +1,8 @@ -From 9b09974003097c9a408bbeea568996768efe705b Mon Sep 17 00:00:00 2001 +From d3796ad1a19233ee5d3492a5560d7ede882f89cf Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Thu, 11 Aug 2016 17:13:51 +0300 -Subject: [PATCH 05/10] Tweak gtkdoc settings so that gtkdoc generation works - under OpenEmbedded build system +Subject: [PATCH] Tweak gtkdoc settings so that gtkdoc generation works under + OpenEmbedded build system This requires setting a few environment variables so that the transient binary is build and linked correctly, and disabling the tweaks to RUN @@ -12,28 +12,28 @@ Upstream-Status: Inappropriate [oe-specific] Signed-off-by: Alexander Kanavin --- - Source/PlatformGTK.cmake | 2 +- - Tools/gtk/gtkdoc.py | 4 ++-- + Source/cmake/GtkDoc.cmake | 2 +- + Tools/gtkdoc/gtkdoc.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) -diff --git a/Source/PlatformGTK.cmake b/Source/PlatformGTK.cmake -index 50b5393..7a31db5 100644 ---- a/Source/PlatformGTK.cmake -+++ b/Source/PlatformGTK.cmake -@@ -24,7 +24,7 @@ macro(ADD_GTKDOC_GENERATOR _stamp_name _extra_args) +diff --git a/Source/cmake/GtkDoc.cmake b/Source/cmake/GtkDoc.cmake +index 2ee05550..6cb6313d 100644 +--- a/Source/cmake/GtkDoc.cmake ++++ b/Source/cmake/GtkDoc.cmake +@@ -4,7 +4,7 @@ macro(ADD_GTKDOC_GENERATOR _stamp_name _extra_args) add_custom_command( OUTPUT "${CMAKE_BINARY_DIR}/${_stamp_name}" DEPENDS ${DocumentationDependencies} -- COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" ${CMAKE_SOURCE_DIR}/Tools/gtk/generate-gtkdoc ${_extra_args} -+ COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LD=${CMAKE_C_COMPILER}" "LDFLAGS=${CMAKE_C_LINK_FLAGS}" "RUN=${CMAKE_BINARY_DIR}/gtkdoc-qemuwrapper" ${CMAKE_SOURCE_DIR}/Tools/gtk/generate-gtkdoc -v ${_extra_args} +- COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} ++ COMMAND ${CMAKE_COMMAND} -E env "CC=${CMAKE_C_COMPILER}" "CFLAGS=${CMAKE_C_FLAGS} -Wno-unused-parameter" "LD=${CMAKE_C_COMPILER}" "LDFLAGS=${CMAKE_C_LINK_FLAGS}" "RUN=${CMAKE_BINARY_DIR}/gtkdoc-qemuwrapper" ${CMAKE_SOURCE_DIR}/Tools/gtkdoc/generate-gtkdoc ${_extra_args} COMMAND touch ${_stamp_name} WORKING_DIRECTORY "${CMAKE_BINARY_DIR}" VERBATIM -diff --git a/Tools/gtk/gtkdoc.py b/Tools/gtk/gtkdoc.py -index 03c8e8e..34fbaff 100644 ---- a/Tools/gtk/gtkdoc.py -+++ b/Tools/gtk/gtkdoc.py -@@ -318,9 +318,9 @@ class GTKDoc(object): +diff --git a/Tools/gtkdoc/gtkdoc.py b/Tools/gtkdoc/gtkdoc.py +index 81ee8cdc..3e11c2f0 100644 +--- a/Tools/gtkdoc/gtkdoc.py ++++ b/Tools/gtkdoc/gtkdoc.py +@@ -317,9 +317,9 @@ class GTKDoc(object): additional_ldflags = '%s %s' % (additional_ldflags, arg) ldflags = ' "-L%s" %s ' % (self.library_path, additional_ldflags) + ldflags current_ld_library_path = env.get('LD_LIBRARY_PATH') @@ -45,6 +45,3 @@ index 03c8e8e..34fbaff 100644 env['LD_LIBRARY_PATH'] = self.library_path if ldflags: --- -2.15.1 - diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch b/poky/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch index b31026448..e71905d26 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch +++ b/poky/meta/recipes-sato/webkit/webkitgtk/0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch @@ -1,4 +1,4 @@ -From e1c6540f7984bd48e1e2d80d965fa82c70de3c20 Mon Sep 17 00:00:00 2001 +From d1634e56a2589ec62325011bf77d480a67123b52 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Sun, 17 Apr 2016 12:35:41 -0700 Subject: [PATCH] WebKitMacros: Append to -I and not to -isystem @@ -28,10 +28,10 @@ Upstream-Status: Pending 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Source/JavaScriptCore/shell/CMakeLists.txt b/Source/JavaScriptCore/shell/CMakeLists.txt -index b3c7e0b..88446de 100644 +index 87153e35..cd0beed4 100644 --- a/Source/JavaScriptCore/shell/CMakeLists.txt +++ b/Source/JavaScriptCore/shell/CMakeLists.txt -@@ -35,7 +35,7 @@ WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS() +@@ -36,7 +36,7 @@ WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS() WEBKIT_WRAP_SOURCELIST(${JSC_SOURCES}) WEBKIT_WRAP_SOURCELIST(${TESTAPI_SOURCES}) include_directories(./ ${JavaScriptCore_INCLUDE_DIRECTORIES} ${JavaScriptCore_PRIVATE_INCLUDE_DIRECTORIES}) @@ -41,10 +41,10 @@ index b3c7e0b..88446de 100644 target_link_libraries(jsc ${JSC_LIBRARIES}) diff --git a/Source/WebCore/PlatformGTK.cmake b/Source/WebCore/PlatformGTK.cmake -index f7d8d70a..3c27b8bc 100644 +index e0dd9cd9..a2997f3e 100644 --- a/Source/WebCore/PlatformGTK.cmake +++ b/Source/WebCore/PlatformGTK.cmake -@@ -157,7 +157,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2) +@@ -164,7 +164,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2) target_include_directories(WebCorePlatformGTK2 PRIVATE ${WebCore_INCLUDE_DIRECTORIES} ) @@ -53,7 +53,7 @@ index f7d8d70a..3c27b8bc 100644 ${WebCore_SYSTEM_INCLUDE_DIRECTORIES} ${GTK2_INCLUDE_DIRS} ${GDK2_INCLUDE_DIRS} -@@ -183,7 +183,7 @@ add_dependencies(WebCorePlatformGTK WebCore) +@@ -190,7 +190,7 @@ add_dependencies(WebCorePlatformGTK WebCore) target_include_directories(WebCorePlatformGTK PRIVATE ${WebCore_INCLUDE_DIRECTORIES} ) @@ -62,7 +62,7 @@ index f7d8d70a..3c27b8bc 100644 ${WebCore_SYSTEM_INCLUDE_DIRECTORIES} ${GTK_INCLUDE_DIRS} ${GDK_INCLUDE_DIRS} -@@ -199,7 +199,7 @@ include_directories( +@@ -206,7 +206,7 @@ include_directories( "${WEBCORE_DIR}/bindings/gobject/" ) @@ -72,10 +72,10 @@ index f7d8d70a..3c27b8bc 100644 ) diff --git a/Source/WebKit/PlatformGTK.cmake b/Source/WebKit/PlatformGTK.cmake -index 8c6ebb5..772c243 100644 +index 693bbdfe..20e3802f 100644 --- a/Source/WebKit/PlatformGTK.cmake +++ b/Source/WebKit/PlatformGTK.cmake -@@ -655,7 +655,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2) +@@ -664,7 +664,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2) target_include_directories(WebKitPluginProcess2 PRIVATE ${WebKitCommonIncludeDirectories} ) @@ -85,10 +85,10 @@ index 8c6ebb5..772c243 100644 ${GTK2_INCLUDE_DIRS} ${GDK2_INCLUDE_DIRS} diff --git a/Source/cmake/WebKitMacros.cmake b/Source/cmake/WebKitMacros.cmake -index a1e7e8f..ce24274 100644 +index 6d58d57e..976e2362 100644 --- a/Source/cmake/WebKitMacros.cmake +++ b/Source/cmake/WebKitMacros.cmake -@@ -134,7 +134,7 @@ macro(WEBKIT_FRAMEWORK _target) +@@ -152,7 +152,7 @@ macro(WEBKIT_FRAMEWORK _target) ${${_target}_SOURCES} ) target_include_directories(${_target} PUBLIC "$") @@ -98,10 +98,10 @@ index a1e7e8f..ce24274 100644 target_link_libraries(${_target} ${${_target}_LIBRARIES}) set_target_properties(${_target} PROPERTIES COMPILE_DEFINITIONS "BUILDING_${_target}") diff --git a/Tools/MiniBrowser/gtk/CMakeLists.txt b/Tools/MiniBrowser/gtk/CMakeLists.txt -index dc2b61e..0128dca 100644 +index a0d32059..f259ade2 100644 --- a/Tools/MiniBrowser/gtk/CMakeLists.txt +++ b/Tools/MiniBrowser/gtk/CMakeLists.txt -@@ -57,7 +57,7 @@ endif () +@@ -59,7 +59,7 @@ endif () add_definitions(-DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6) include_directories(${MiniBrowser_INCLUDE_DIRECTORIES}) @@ -111,10 +111,10 @@ index dc2b61e..0128dca 100644 target_link_libraries(MiniBrowser ${MiniBrowser_LIBRARIES}) diff --git a/Tools/TestWebKitAPI/PlatformGTK.cmake b/Tools/TestWebKitAPI/PlatformGTK.cmake -index 4aef695..a14b163 100644 +index 8dd0e146..d037fc35 100644 --- a/Tools/TestWebKitAPI/PlatformGTK.cmake +++ b/Tools/TestWebKitAPI/PlatformGTK.cmake -@@ -20,7 +20,7 @@ include_directories( +@@ -22,7 +22,7 @@ include_directories( ${WEBKIT_DIR}/UIProcess/API/gtk ) @@ -122,4 +122,4 @@ index 4aef695..a14b163 100644 +include_directories( ${GDK3_INCLUDE_DIRS} ${GLIB_INCLUDE_DIRS} - ${GTK3_INCLUDE_DIRS} + ${GSTREAMER_INCLUDE_DIRS} diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch b/poky/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch deleted file mode 100644 index 9d0d50b79..000000000 --- a/poky/meta/recipes-sato/webkit/webkitgtk/bad_optional_access.patch +++ /dev/null @@ -1,35 +0,0 @@ -unbreak build with libc++ 7 - -based on -https://svnweb.freebsd.org/ports/head/www/webkit2-gtk3/files/patch-Source_WTF_wtf_Optional.h?view=markup&pathrev=477812 - -Fixes - -/usr/include/c++/v1/optional:171:29: error: redefinition of 'bad_optional_access' -class _LIBCPP_EXCEPTION_ABI bad_optional_access - ^ -DerivedSources/ForwardingHeaders/wtf/Optional.h:295:7: note: previous definition is here -class bad_optional_access : public std::logic_error { - ^ - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- a/Source/WTF/wtf/Optional.h -+++ b/Source/WTF/wtf/Optional.h -@@ -276,14 +276,14 @@ struct nullopt_t - }; - constexpr nullopt_t nullopt{nullopt_t::init()}; - -- -+# if !defined(_LIBCPP_VERSION) || _LIBCPP_VERSION < 7000 - // 20.5.8, class bad_optional_access - class bad_optional_access : public std::logic_error { - public: - explicit bad_optional_access(const std::string& what_arg) : std::logic_error{what_arg} {} - explicit bad_optional_access(const char* what_arg) : std::logic_error{what_arg} {} - }; -- -+# endif // _LIBCPP_VERSION < 7000 - - template - union storage_t diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch b/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch new file mode 100644 index 000000000..7268b04bf --- /dev/null +++ b/poky/meta/recipes-sato/webkit/webkitgtk/include_array.patch @@ -0,0 +1,15 @@ +Added missing include for std::array + +Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=197085] +Signed-off-by: Khem Raj + +--- webkitgtk-2.24.0/Source/JavaScriptCore/assembler/PerfLog.cpp.org 2019-04-18 18:03:50.226231691 -0700 ++++ webkitgtk-2.24.0/Source/JavaScriptCore/assembler/PerfLog.cpp 2019-04-18 18:07:28.569153989 -0700 +@@ -31,6 +31,7 @@ + #include + #include + #include ++#include + #include + #include + #include diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/narrowing.patch b/poky/meta/recipes-sato/webkit/webkitgtk/narrowing.patch new file mode 100644 index 000000000..598b6b5df --- /dev/null +++ b/poky/meta/recipes-sato/webkit/webkitgtk/narrowing.patch @@ -0,0 +1,31 @@ +Fix build with clang on arm where char is unsigned + +Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=197087] +Signed-off-by: Khem Raj + +--- a/Source/WebCore/contentextensions/DFACombiner.cpp ++++ b/Source/WebCore/contentextensions/DFACombiner.cpp +@@ -37,7 +37,7 @@ namespace WebCore { + namespace ContentExtensions { + + class DFAMerger { +- typedef MutableRangeList CombinedTransitionsMutableRangeList; ++ typedef MutableRangeList CombinedTransitionsMutableRangeList; + + enum class WhichDFA { + A, +--- a/Source/WebCore/contentextensions/NFAToDFA.cpp ++++ b/Source/WebCore/contentextensions/NFAToDFA.cpp +@@ -41,9 +41,9 @@ namespace WebCore { + + namespace ContentExtensions { + +-typedef MutableRange NFANodeRange; +-typedef MutableRangeList NFANodeRangeList; +-typedef MutableRangeList PreallocatedNFANodeRangeList; ++typedef MutableRange NFANodeRange; ++typedef MutableRangeList NFANodeRangeList; ++typedef MutableRangeList PreallocatedNFANodeRangeList; + typedef Vector UniqueNodeList; + typedef Vector NFANodeClosures; + diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/snprintf.patch b/poky/meta/recipes-sato/webkit/webkitgtk/snprintf.patch new file mode 100644 index 000000000..b1481d78e --- /dev/null +++ b/poky/meta/recipes-sato/webkit/webkitgtk/snprintf.patch @@ -0,0 +1,15 @@ +include missing header for snprintf definition + +Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=197088] +Signed-off-by: Khem Raj + +--- a/Source/WebCore/platform/text/TextCodec.cpp ++++ b/Source/WebCore/platform/text/TextCodec.cpp +@@ -28,6 +28,7 @@ + #include "TextCodec.h" + + #include ++#include + + namespace WebCore { + diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.22.7.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.22.7.bb deleted file mode 100644 index 301bf10ce..000000000 --- a/poky/meta/recipes-sato/webkit/webkitgtk_2.22.7.bb +++ /dev/null @@ -1,134 +0,0 @@ -SUMMARY = "WebKit web rendering engine for the GTK+ platform" -HOMEPAGE = "http://www.webkitgtk.org/" -BUGTRACKER = "http://bugs.webkit.org/" - -LICENSE = "BSD & LGPLv2+" -LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ - file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \ - file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ - file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ - " - -SRC_URI = "http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ - file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ - file://0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch \ - file://0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch \ - file://0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch \ - file://0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch \ - file://x32_support.patch \ - file://cross-compile.patch \ - file://0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch \ - file://0001-Fix-build-with-musl.patch \ - file://detect-gstreamer-gl.patch \ - file://bad_optional_access.patch \ - " - -SRC_URI[md5sum] = "47386c10a9c3975f933c85404f35ff3b" -SRC_URI[sha256sum] = "4be6f7d605cd0a690fd26e8aa83b089a33ad9d419148eafcfb60580dd2af30ff" - -inherit cmake pkgconfig gobject-introspection perlnative distro_features_check upstream-version-is-even gtk-doc - -REQUIRED_DISTRO_FEATURES = "x11 opengl" - -DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libxt libidn libgcrypt \ - gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \ - pango icu bison-native gawk intltool-native libwebp \ - atk udev harfbuzz jpeg libpng pulseaudio librsvg libtheora libvorbis libxcomposite libxtst \ - ruby-native libnotify gstreamer1.0-plugins-bad \ - gettext-native glib-2.0 glib-2.0-native libtasn1 \ - " - -PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'wayland' ,d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'webgl opengl', '' ,d)} \ - enchant \ - libsecret \ - " - -PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland" -PACKAGECONFIG[x11] = "-DENABLE_X11_TARGET=ON,-DENABLE_X11_TARGET=OFF,virtual/libx11" -PACKAGECONFIG[geoclue] = "-DENABLE_GEOLOCATION=ON,-DENABLE_GEOLOCATION=OFF,geoclue" -PACKAGECONFIG[enchant] = "-DENABLE_SPELLCHECK=ON,-DENABLE_SPELLCHECK=OFF,enchant" -PACKAGECONFIG[gtk2] = "-DENABLE_PLUGIN_PROCESS_GTK2=ON,-DENABLE_PLUGIN_PROCESS_GTK2=OFF,gtk+" -PACKAGECONFIG[gles2] = "-DENABLE_GLES2=ON,-DENABLE_GLES2=OFF,virtual/libgles2" -PACKAGECONFIG[webgl] = "-DENABLE_WEBGL=ON,-DENABLE_WEBGL=OFF,virtual/libgl" -PACKAGECONFIG[opengl] = "-DENABLE_OPENGL=ON,-DENABLE_OPENGL=OFF,virtual/libgl" -PACKAGECONFIG[libsecret] = "-DUSE_LIBSECRET=ON,-DUSE_LIBSECRET=OFF,libsecret" -PACKAGECONFIG[libhyphen] = "-DUSE_LIBHYPHEN=ON,-DUSE_LIBHYPHEN=OFF,libhyphen" -# Source is at https://github.com/google/woff2 -PACKAGECONFIG[woff2] = "-DUSE_WOFF2=ON,-DUSE_WOFF2=OFF,woff2" - -EXTRA_OECMAKE = " \ - -DPORT=GTK \ - -DCMAKE_BUILD_TYPE=Release \ - ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ - ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '-DENABLE_GTKDOC=ON', '-DENABLE_GTKDOC=OFF', d)} \ - -DENABLE_MINIBROWSER=ON \ - -DPYTHON_EXECUTABLE=`which python` \ - " - -# GL/GLES header clash: both define the same thing, differently, on 32 bit x86 -EXTRA_OECMAKE_append_x86 = " -DUSE_GSTREAMER_GL=OFF " -EXTRA_OECMAKE_append_x86-x32 = " -DUSE_GSTREAMER_GL=OFF " - -# Javascript JIT is not supported on ARC -EXTRA_OECMAKE_append_arc = " -DENABLE_JIT=OFF " -# By default 25-bit "medium" calls are used on ARC -# which is not enough for binaries larger than 32 MiB -CFLAGS_append_arc = " -mlong-calls" -CXXFLAGS_append_arc = " -mlong-calls" - -# Javascript JIT is not supported on powerpc -EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF " - -# ARM JIT code does not build on ARMv4/5/6 anymore -EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF " -EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF " - -# binutils 2.25.1 has a bug on aarch64: -# https://sourceware.org/bugzilla/show_bug.cgi?id=18430 -EXTRA_OECMAKE_append_aarch64 = " -DUSE_LD_GOLD=OFF " -EXTRA_OECMAKE_append_mipsarch = " -DUSE_LD_GOLD=OFF " -EXTRA_OECMAKE_append_powerpc = " -DUSE_LD_GOLD=OFF " - -EXTRA_OECMAKE_append_aarch64 = " -DWTF_CPU_ARM64_CORTEXA53=ON" - -# JIT not supported on MIPS either -EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF " - -# JIT not supported on X32 -# An attempt was made to upstream JIT support for x32 in -# https://bugs.webkit.org/show_bug.cgi?id=100450, but this was closed as -# unresolved due to limited X32 adoption. -EXTRA_OECMAKE_append_x86-x32 = " -DENABLE_JIT=OFF " - -SECURITY_CFLAGS_remove_aarch64 = "-fpie" -SECURITY_CFLAGS_append_aarch64 = " -fPIE" - -LDFLAGS_append_toolchain-clang = " -rtlib=compiler-rt" - -FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so" - -RRECOMMENDS_${PN} += "ca-certificates shared-mime-info" - -# http://errors.yoctoproject.org/Errors/Details/20370/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" -ARM_INSTRUCTION_SET_armv6 = "arm" - -# https://bugzilla.yoctoproject.org/show_bug.cgi?id=9474 -# https://bugs.webkit.org/show_bug.cgi?id=159880 -# JSC JIT can build on ARMv7 with -marm, but doesn't work on runtime. -# Upstream only tests regularly the JSC JIT on ARMv7 with Thumb2 (-mthumb). -ARM_INSTRUCTION_SET_armv7a = "thumb" -ARM_INSTRUCTION_SET_armv7r = "thumb" -ARM_INSTRUCTION_SET_armv7ve = "thumb" - -# qemu: uncaught target signal 11 (Segmentation fault) - core dumped -# Segmentation fault -GI_DATA_ENABLED_armv7a = "False" -GI_DATA_ENABLED_armv7ve = "False" - -# Can't be built with ccache -CCACHE_DISABLE = "1" diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.24.0.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.24.0.bb new file mode 100644 index 000000000..96ac5ac18 --- /dev/null +++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.24.0.bb @@ -0,0 +1,137 @@ +SUMMARY = "WebKit web rendering engine for the GTK+ platform" +HOMEPAGE = "http://www.webkitgtk.org/" +BUGTRACKER = "http://bugs.webkit.org/" + +LICENSE = "BSD & LGPLv2+" +LIC_FILES_CHKSUM = "file://Source/JavaScriptCore/COPYING.LIB;md5=d0c6d6397a5d84286dda758da57bd691 \ + file://Source/WebCore/LICENSE-APPLE;md5=4646f90082c40bcf298c285f8bab0b12 \ + file://Source/WebCore/LICENSE-LGPL-2;md5=36357ffde2b64ae177b2494445b79d21 \ + file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 \ + " + +SRC_URI = "http://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \ + file://0001-FindGObjectIntrospection.cmake-prefix-variables-obta.patch \ + file://0001-When-building-introspection-files-add-CMAKE_C_FLAGS-.patch \ + file://0001-OptionsGTK.cmake-drop-the-hardcoded-introspection-gt.patch \ + file://0001-Fix-racy-parallel-build-of-WebKit2-4.0.gir.patch \ + file://0001-Tweak-gtkdoc-settings-so-that-gtkdoc-generation-work.patch \ + file://x32_support.patch \ + file://cross-compile.patch \ + file://0001-WebKitMacros-Append-to-I-and-not-to-isystem.patch \ + file://0001-Fix-build-with-musl.patch \ + file://detect-gstreamer-gl.patch \ + file://include_array.patch \ + file://narrowing.patch \ + file://snprintf.patch \ + " + +SRC_URI[md5sum] = "576d69c598b3e36c73441052d02466de" +SRC_URI[sha256sum] = "2e4ad1503fe482ceb5a83cf70ac9cd42f37eb718555a4d6844fe4c59a9214407" + +inherit cmake pkgconfig gobject-introspection perlnative distro_features_check upstream-version-is-even gtk-doc + +REQUIRED_DISTRO_FEATURES = "x11 opengl" + +CVE_PRODUCT = "webkitgtk webkitgtk\+" + +DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libxt libidn libgcrypt \ + gtk+3 gstreamer1.0 gstreamer1.0-plugins-base flex-native gperf-native sqlite3 \ + pango icu bison-native gawk intltool-native libwebp \ + atk udev harfbuzz jpeg libpng pulseaudio librsvg libtheora libvorbis libxcomposite libxtst \ + ruby-native libnotify gstreamer1.0-plugins-bad \ + gettext-native glib-2.0 glib-2.0-native libtasn1 \ + " + +PACKAGECONFIG ??= "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', 'wayland' ,d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'webgl opengl', '' ,d)} \ + enchant \ + libsecret \ + " + +PACKAGECONFIG[wayland] = "-DENABLE_WAYLAND_TARGET=ON,-DENABLE_WAYLAND_TARGET=OFF,wayland" +PACKAGECONFIG[x11] = "-DENABLE_X11_TARGET=ON,-DENABLE_X11_TARGET=OFF,virtual/libx11" +PACKAGECONFIG[geoclue] = "-DENABLE_GEOLOCATION=ON,-DENABLE_GEOLOCATION=OFF,geoclue" +PACKAGECONFIG[enchant] = "-DENABLE_SPELLCHECK=ON,-DENABLE_SPELLCHECK=OFF,enchant" +PACKAGECONFIG[gtk2] = "-DENABLE_PLUGIN_PROCESS_GTK2=ON,-DENABLE_PLUGIN_PROCESS_GTK2=OFF,gtk+" +PACKAGECONFIG[gles2] = "-DENABLE_GLES2=ON,-DENABLE_GLES2=OFF,virtual/libgles2" +PACKAGECONFIG[webgl] = "-DENABLE_WEBGL=ON,-DENABLE_WEBGL=OFF,virtual/libgl" +PACKAGECONFIG[opengl] = "-DENABLE_OPENGL=ON,-DENABLE_OPENGL=OFF,virtual/libgl" +PACKAGECONFIG[libsecret] = "-DUSE_LIBSECRET=ON,-DUSE_LIBSECRET=OFF,libsecret" +PACKAGECONFIG[libhyphen] = "-DUSE_LIBHYPHEN=ON,-DUSE_LIBHYPHEN=OFF,libhyphen" +# Source is at https://github.com/google/woff2 +PACKAGECONFIG[woff2] = "-DUSE_WOFF2=ON,-DUSE_WOFF2=OFF,woff2" +PACKAGECONFIG[openjpeg] = "-DUSE_OPENJPEG=ON,-DUSE_OPENJPEG=OFF,openjpeg" + +EXTRA_OECMAKE = " \ + -DPORT=GTK \ + -DCMAKE_BUILD_TYPE=Release \ + ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '-DENABLE_INTROSPECTION=ON', '-DENABLE_INTROSPECTION=OFF', d)} \ + ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '-DENABLE_GTKDOC=ON', '-DENABLE_GTKDOC=OFF', d)} \ + -DENABLE_MINIBROWSER=ON \ + -DPYTHON_EXECUTABLE=`which python` \ + " + +# GL/GLES header clash: both define the same thing, differently, on 32 bit x86 +EXTRA_OECMAKE_append_x86 = " -DUSE_GSTREAMER_GL=OFF " +EXTRA_OECMAKE_append_x86-x32 = " -DUSE_GSTREAMER_GL=OFF " + +# Javascript JIT is not supported on ARC +EXTRA_OECMAKE_append_arc = " -DENABLE_JIT=OFF " +# By default 25-bit "medium" calls are used on ARC +# which is not enough for binaries larger than 32 MiB +CFLAGS_append_arc = " -mlong-calls" +CXXFLAGS_append_arc = " -mlong-calls" + +# Javascript JIT is not supported on powerpc +EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF " + +# ARM JIT code does not build on ARMv4/5/6 anymore +EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF " +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF " + +# binutils 2.25.1 has a bug on aarch64: +# https://sourceware.org/bugzilla/show_bug.cgi?id=18430 +EXTRA_OECMAKE_append_aarch64 = " -DUSE_LD_GOLD=OFF " +EXTRA_OECMAKE_append_mipsarch = " -DUSE_LD_GOLD=OFF " +EXTRA_OECMAKE_append_powerpc = " -DUSE_LD_GOLD=OFF " + +# JIT not supported on MIPS either +EXTRA_OECMAKE_append_mipsarch = " -DENABLE_JIT=OFF " + +# JIT not supported on X32 +# An attempt was made to upstream JIT support for x32 in +# https://bugs.webkit.org/show_bug.cgi?id=100450, but this was closed as +# unresolved due to limited X32 adoption. +EXTRA_OECMAKE_append_x86-x32 = " -DENABLE_JIT=OFF " + +SECURITY_CFLAGS_remove_aarch64 = "-fpie" +SECURITY_CFLAGS_append_aarch64 = " -fPIE" + +LDFLAGS_append_toolchain-clang = " -rtlib=compiler-rt" + +FILES_${PN} += "${libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so" + +RRECOMMENDS_${PN} += "ca-certificates shared-mime-info" + +# http://errors.yoctoproject.org/Errors/Details/20370/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" +ARM_INSTRUCTION_SET_armv6 = "arm" + +# https://bugzilla.yoctoproject.org/show_bug.cgi?id=9474 +# https://bugs.webkit.org/show_bug.cgi?id=159880 +# JSC JIT can build on ARMv7 with -marm, but doesn't work on runtime. +# Upstream only tests regularly the JSC JIT on ARMv7 with Thumb2 (-mthumb). +ARM_INSTRUCTION_SET_armv7a = "thumb" +ARM_INSTRUCTION_SET_armv7r = "thumb" +ARM_INSTRUCTION_SET_armv7ve = "thumb" + +# qemu: uncaught target signal 11 (Segmentation fault) - core dumped +# Segmentation fault +GI_DATA_ENABLED_armv7a = "False" +GI_DATA_ENABLED_armv7ve = "False" + +# Can't be built with ccache +CCACHE_DISABLE = "1" diff --git a/poky/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch b/poky/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch index 5f5e7eac3..d1a2ebe88 100644 --- a/poky/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch +++ b/poky/meta/recipes-support/apr/apr/0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch @@ -1,7 +1,7 @@ -From f4d6e45ed5d2ccffd1af4c2ccdf7099ba0dce137 Mon Sep 17 00:00:00 2001 +From 49661ea3858cf8494926cccf57d3e8c6dcb47117 Mon Sep 17 00:00:00 2001 From: Dengke Du Date: Wed, 14 Dec 2016 18:13:08 +0800 -Subject: [PATCH 6/7] apr: fix off_t size doesn't match in glibc when cross +Subject: [PATCH] apr: fix off_t size doesn't match in glibc when cross compiling In configure.in, it contains the following: @@ -29,15 +29,16 @@ Change the above correspondingly. Signed-off-by: Dengke Du Upstream-Status: Pending + --- configure.in | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/configure.in b/configure.in -index 3b10422..a227e72 100644 +index 27b8539..fb408d1 100644 --- a/configure.in +++ b/configure.in -@@ -1769,7 +1769,7 @@ else +@@ -1801,7 +1801,7 @@ else socklen_t_value="int" fi @@ -46,25 +47,25 @@ index 3b10422..a227e72 100644 if test "$ac_cv_sizeof_pid_t" = "$ac_cv_sizeof_short"; then pid_t_fmt='#define APR_PID_T_FMT "hd"' -@@ -1838,7 +1838,7 @@ APR_CHECK_TYPES_COMPATIBLE(ssize_t, long, [ssize_t_fmt="ld"]) - APR_CHECK_TYPES_COMPATIBLE(size_t, unsigned int, [size_t_fmt="u"]) - APR_CHECK_TYPES_COMPATIBLE(size_t, unsigned long, [size_t_fmt="lu"]) +@@ -1873,7 +1873,7 @@ APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned long, lu, [size_t_fmt="lu"], [ + APR_CHECK_TYPES_FMT_COMPATIBLE(size_t, unsigned int, u, [size_t_fmt="u"]) + ]) -APR_CHECK_SIZEOF_EXTENDED([#include ], ssize_t, 8) +AC_CHECK_SIZEOF(ssize_t) + dnl the else cases below should no longer occur; AC_MSG_CHECKING([which format to use for apr_ssize_t]) - if test -n "$ssize_t_fmt"; then -@@ -1855,7 +1855,7 @@ fi +@@ -1891,7 +1891,7 @@ fi ssize_t_fmt="#define APR_SSIZE_T_FMT \"$ssize_t_fmt\"" -APR_CHECK_SIZEOF_EXTENDED([#include ], size_t, 8) +AC_CHECK_SIZEOF(size_t) + # else cases below should no longer occur; AC_MSG_CHECKING([which format to use for apr_size_t]) - if test -n "$size_t_fmt"; then -@@ -1872,7 +1872,7 @@ fi +@@ -1909,7 +1909,7 @@ fi size_t_fmt="#define APR_SIZE_T_FMT \"$size_t_fmt\"" @@ -73,6 +74,3 @@ index 3b10422..a227e72 100644 if test "${ac_cv_sizeof_off_t}${apr_cv_use_lfs64}" = "4yes"; then # Enable LFS --- -1.8.3.1 - diff --git a/poky/meta/recipes-support/apr/apr_1.6.5.bb b/poky/meta/recipes-support/apr/apr_1.6.5.bb deleted file mode 100644 index 432e4ed74..000000000 --- a/poky/meta/recipes-support/apr/apr_1.6.5.bb +++ /dev/null @@ -1,112 +0,0 @@ -SUMMARY = "Apache Portable Runtime (APR) library" -HOMEPAGE = "http://apr.apache.org/" -SECTION = "libs" -DEPENDS = "util-linux" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=4dfd4cd216828c8cae5de5a12f3844c8 \ - file://include/apr_lib.h;endline=15;md5=823b3d1a7225df8f7b68a69c3c2b4c71" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \ - file://run-ptest \ - file://0001-build-buildcheck.sh-improve-libtool-detection.patch \ - file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \ - file://0003-Makefile.in-configure.in-support-cross-compiling.patch \ - file://0004-Fix-packet-discards-HTTP-redirect.patch \ - file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \ - file://0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch \ - file://0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch \ - " - -SRC_URI[md5sum] = "ad4add8efdfe87330b88e5e788241775" -SRC_URI[sha256sum] = "a67ca9fcf9c4ff59bce7f428a323c8b5e18667fdea7b0ebad47d194371b0a105" - -inherit autotools-brokensep lib_package binconfig multilib_header ptest - -OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" - -# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928 -CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes" - -# Also suppress trying to use sctp. -# -CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no" - -CACHED_CONFIGUREVARS += "ac_cv_sizeof_struct_iovec=yes" -CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," - -do_configure_prepend() { - # Avoid absolute paths for grep since it causes failures - # when using sstate between different hosts with different - # install paths for grep. - export GREP="grep" - - cd ${S} - libtool='${HOST_SYS}-libtool' ./buildconf -} - -FILES_${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*" -RDEPENDS_${PN}-dev += "bash" - -#for some reason, build/libtool.m4 handled by buildconf still be overwritten -#when autoconf, so handle it again. -do_configure_append() { - sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4 - sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk -} - -do_install_append() { - oe_multilib_header apr.h - install -d ${D}${datadir}/apr -} - -do_install_append_class-target() { - sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \ - -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk - sed -i -e 's,${STAGING_DIR_HOST},,g' \ - -e 's,APR_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \ - -e 's,APR_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apr-1-config -} - -SSTATE_SCAN_FILES += "apr_rules.mk libtool" - -SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" - -apr_sysroot_preprocess () { - d=${SYSROOT_DESTDIR}${datadir}/apr - install -d $d/ - cp ${S}/build/apr_rules.mk $d/ - sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk - sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk - sed -i s,LIBTOOL=.*,LIBTOOL=${HOST_SYS}-libtool,g $d/apr_rules.mk - sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk - cp ${S}/build/mkdir.sh $d/ - cp ${S}/build/make_exports.awk $d/ - cp ${S}/build/make_var_export.awk $d/ - cp ${S}/${HOST_SYS}-libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool -} - -do_compile_ptest() { - cd ${S}/test - oe_runmake -} - -do_install_ptest() { - t=${D}${PTEST_PATH}/test - mkdir -p $t/.libs - cp -r ${S}/test/data $t/ - cp -r ${S}/test/.libs/*.so $t/.libs/ - cp ${S}/test/proc_child $t/ - cp ${S}/test/readchild $t/ - cp ${S}/test/sockchild $t/ - cp ${S}/test/sockperf $t/ - cp ${S}/test/testall $t/ - cp ${S}/test/tryread $t/ -} - -export CONFIG_SHELL="/bin/bash" diff --git a/poky/meta/recipes-support/apr/apr_1.7.0.bb b/poky/meta/recipes-support/apr/apr_1.7.0.bb new file mode 100644 index 000000000..a58651d07 --- /dev/null +++ b/poky/meta/recipes-support/apr/apr_1.7.0.bb @@ -0,0 +1,112 @@ +SUMMARY = "Apache Portable Runtime (APR) library" +HOMEPAGE = "http://apr.apache.org/" +SECTION = "libs" +DEPENDS = "util-linux" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4dfd4cd216828c8cae5de5a12f3844c8 \ + file://include/apr_lib.h;endline=15;md5=823b3d1a7225df8f7b68a69c3c2b4c71" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \ + file://run-ptest \ + file://0001-build-buildcheck.sh-improve-libtool-detection.patch \ + file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \ + file://0003-Makefile.in-configure.in-support-cross-compiling.patch \ + file://0004-Fix-packet-discards-HTTP-redirect.patch \ + file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \ + file://0006-apr-fix-off_t-size-doesn-t-match-in-glibc-when-cross.patch \ + file://0007-explicitly-link-libapr-against-phtread-to-make-gold-.patch \ + " + +SRC_URI[md5sum] = "7a14a83d664e87599ea25ff4432e48a7" +SRC_URI[sha256sum] = "e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea" + +inherit autotools-brokensep lib_package binconfig multilib_header ptest + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928 +CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes" + +# Also suppress trying to use sctp. +# +CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no" + +CACHED_CONFIGUREVARS += "ac_cv_sizeof_struct_iovec=yes" +CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," + +do_configure_prepend() { + # Avoid absolute paths for grep since it causes failures + # when using sstate between different hosts with different + # install paths for grep. + export GREP="grep" + + cd ${S} + libtool='${HOST_SYS}-libtool' ./buildconf +} + +FILES_${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*" +RDEPENDS_${PN}-dev += "bash" + +#for some reason, build/libtool.m4 handled by buildconf still be overwritten +#when autoconf, so handle it again. +do_configure_append() { + sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4 + sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk +} + +do_install_append() { + oe_multilib_header apr.h + install -d ${D}${datadir}/apr +} + +do_install_append_class-target() { + sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \ + -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk + sed -i -e 's,${STAGING_DIR_HOST},,g' \ + -e 's,APR_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \ + -e 's,APR_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apr-1-config +} + +SSTATE_SCAN_FILES += "apr_rules.mk libtool" + +SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" + +apr_sysroot_preprocess () { + d=${SYSROOT_DESTDIR}${datadir}/apr + install -d $d/ + cp ${S}/build/apr_rules.mk $d/ + sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk + sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk + sed -i s,LIBTOOL=.*,LIBTOOL=${HOST_SYS}-libtool,g $d/apr_rules.mk + sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk + cp ${S}/build/mkdir.sh $d/ + cp ${S}/build/make_exports.awk $d/ + cp ${S}/build/make_var_export.awk $d/ + cp ${S}/${HOST_SYS}-libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool +} + +do_compile_ptest() { + cd ${S}/test + oe_runmake +} + +do_install_ptest() { + t=${D}${PTEST_PATH}/test + mkdir -p $t/.libs + cp -r ${S}/test/data $t/ + cp -r ${S}/test/.libs/*.so $t/.libs/ + cp ${S}/test/proc_child $t/ + cp ${S}/test/readchild $t/ + cp ${S}/test/sockchild $t/ + cp ${S}/test/sockperf $t/ + cp ${S}/test/testall $t/ + cp ${S}/test/tryread $t/ +} + +export CONFIG_SHELL="/bin/bash" diff --git a/poky/meta/recipes-support/atk/at-spi2-core/meson-0.50-fix.patch b/poky/meta/recipes-support/atk/at-spi2-core/meson-0.50-fix.patch new file mode 100644 index 000000000..fbdf7d0e2 --- /dev/null +++ b/poky/meta/recipes-support/atk/at-spi2-core/meson-0.50-fix.patch @@ -0,0 +1,31 @@ +From 44a812ea51223d82f21a098a2d45fcc5c329ce7a Mon Sep 17 00:00:00 2001 +From: Tobias Stoeckmann +Date: Tue, 12 Mar 2019 11:46:24 +0100 +Subject: [PATCH] Fix meson.build for meson 0.50.0. + +Since meson 0.50.0 it is not possible anymore to specify an +absolute directory for subdir. To keep current functionality, +use install_dir instead. + +atspi/meson.build:60:0: ERROR: Subdir keyword must not be an absolute path. + +Upstream-Status: Backport +Signed-off-by: Alexander Kanavin +Signed-off-by: Tobias Stoeckmann +--- + atspi/meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/atspi/meson.build b/atspi/meson.build +index b7a9357..2a6915d 100644 +--- a/atspi/meson.build ++++ b/atspi/meson.build +@@ -57,7 +57,7 @@ atspi_headers = [ + + atspi_includedir = join_paths(get_option('prefix'), get_option('includedir'), 'at-spi-2.0', 'atspi') + +-install_headers(atspi_headers, subdir: atspi_includedir) ++install_headers(atspi_headers, install_dir: atspi_includedir) + + atspi_enums = gnome.mkenums('atspi-enum-types', + sources: [ 'atspi-constants.h', 'atspi-types.h' ], diff --git a/poky/meta/recipes-support/atk/at-spi2-core_2.30.0.bb b/poky/meta/recipes-support/atk/at-spi2-core_2.30.0.bb index d0b567a5e..cfe0ddeef 100644 --- a/poky/meta/recipes-support/atk/at-spi2-core_2.30.0.bb +++ b/poky/meta/recipes-support/atk/at-spi2-core_2.30.0.bb @@ -6,6 +6,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=e9f288ba982d60518f375b5898283886" MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}" SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \ + file://meson-0.50-fix.patch \ " SRC_URI[md5sum] = "d4f22c66b3210ffe6b10d01c04e008b5" @@ -21,17 +22,11 @@ inherit meson gtk-doc gettext systemd pkgconfig upstream-version-is-even gobject EXTRA_OEMESON = " -Dsystemd_user_dir=${systemd_user_unitdir} \ -Ddbus_daemon=${bindir}/dbus-daemon" -GTKDOC_ENABLE_FLAG = "-Denable_docs=true" -GTKDOC_DISABLE_FLAG = "-Denable_docs=false" +GTKDOC_MESON_OPTION = "enable_docs" -GI_ENABLE_FLAG = "-Denable-introspection=yes" -GI_DISABLE_FLAG = "-Denable-introspection=no" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " +GIR_MESON_OPTION = 'enable-introspection' +GIR_MESON_ENABLE_FLAG = 'yes' +GIR_MESON_DISABLE_FLAG = 'no' FILES_${PN} += "${datadir}/dbus-1/services/*.service \ ${datadir}/dbus-1/accessibility-services/*.service \ diff --git a/poky/meta/recipes-support/atk/atk_2.30.0.bb b/poky/meta/recipes-support/atk/atk_2.30.0.bb index 4e2dacbc4..4e22b3f81 100644 --- a/poky/meta/recipes-support/atk/atk_2.30.0.bb +++ b/poky/meta/recipes-support/atk/atk_2.30.0.bb @@ -14,20 +14,6 @@ DEPENDS = "gettext-native glib-2.0" GNOMEBASEBUILDCLASS = "meson" inherit gnomebase gtk-doc gettext upstream-version-is-even gobject-introspection -GTKDOC_ENABLE_FLAG = "-Ddocs=true" -GTKDOC_DISABLE_FLAG = "-Ddocs=false" - -GI_ENABLE_FLAG = "-Dintrospection=true" -GI_DISABLE_FLAG = "-Dintrospection=false" - -EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " - SRC_URI_append = " \ file://0001-meson.build-enable-introspection-for-cross-compile.patch \ file://0001-Switch-from-filename-to-basename.patch \ diff --git a/poky/meta/recipes-support/curl/curl_7.64.0.bb b/poky/meta/recipes-support/curl/curl_7.64.0.bb deleted file mode 100644 index a1b5e7d57..000000000 --- a/poky/meta/recipes-support/curl/curl_7.64.0.bb +++ /dev/null @@ -1,80 +0,0 @@ -SUMMARY = "Command line tool and library for client-side URL transfers" -HOMEPAGE = "http://curl.haxx.se/" -BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" -SECTION = "console/network" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=be5d9e1419c4363f4b32037a2d3b7ffa" - -SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ - file://0001-replace-krb5-config-with-pkg-config.patch \ -" - -SRC_URI[md5sum] = "d0bcc586873cfef08b4b9594e5395a33" -SRC_URI[sha256sum] = "d573ba1c2d1cf9d8533fadcce480d778417964e8d04ccddcc76e591d544cf2eb" - -CVE_PRODUCT = "curl libcurl" -inherit autotools pkgconfig binconfig multilib_header - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib" -PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib" -PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib" - -# 'ares' and 'threaded-resolver' are mutually exclusive -PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares" -PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli" -PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual" -PACKAGECONFIG[dict] = "--enable-dict,--disable-dict," -PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" -PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher," -PACKAGECONFIG[imap] = "--enable-imap,--disable-imap," -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5" -PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap," -PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps," -PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2" -PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2" -PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls" -PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2" -PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3," -PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy," -PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump" -PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp," -PACKAGECONFIG[smb] = "--enable-smb,--disable-smb," -PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp," -PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl" -PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss" -PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet," -PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp," -PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver" -PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose" -PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib" - -EXTRA_OECONF = " \ - --disable-libcurl-option \ - --disable-ntlm-wb \ - --enable-crypto-auth \ - --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \ - --without-libmetalink \ - --without-libpsl \ -" - -do_install_append_class-target() { - # cleanup buildpaths from curl-config - sed -i \ - -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ - -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \ - -e 's|${DEBUG_PREFIX_MAP}||g' \ - ${D}${bindir}/curl-config -} - -PACKAGES =+ "lib${BPN}" - -FILES_lib${BPN} = "${libdir}/lib*.so.*" -RRECOMMENDS_lib${BPN} += "ca-certificates" - -FILES_${PN} += "${datadir}/zsh" - -inherit multilib_script -MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/curl/curl_7.64.1.bb b/poky/meta/recipes-support/curl/curl_7.64.1.bb new file mode 100644 index 000000000..47c28beff --- /dev/null +++ b/poky/meta/recipes-support/curl/curl_7.64.1.bb @@ -0,0 +1,80 @@ +SUMMARY = "Command line tool and library for client-side URL transfers" +HOMEPAGE = "http://curl.haxx.se/" +BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker" +SECTION = "console/network" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=be5d9e1419c4363f4b32037a2d3b7ffa" + +SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ + file://0001-replace-krb5-config-with-pkg-config.patch \ +" + +SRC_URI[md5sum] = "790c101927845208a9d7e8c429ddd1b2" +SRC_URI[sha256sum] = "4cc7c738b35250d0680f29e93e0820c4cb40035f43514ea3ec8d60322d41a45d" + +CVE_PRODUCT = "curl libcurl" +inherit autotools pkgconfig binconfig multilib_header + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib" +PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib" +PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib" + +# 'ares' and 'threaded-resolver' are mutually exclusive +PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares" +PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli" +PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual" +PACKAGECONFIG[dict] = "--enable-dict,--disable-dict," +PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" +PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher," +PACKAGECONFIG[imap] = "--enable-imap,--disable-imap," +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," +PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5" +PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap," +PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps," +PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2" +PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2" +PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls" +PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2" +PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3," +PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy," +PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump" +PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp," +PACKAGECONFIG[smb] = "--enable-smb,--disable-smb," +PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp," +PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl" +PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss" +PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet," +PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp," +PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver" +PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose" +PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib" + +EXTRA_OECONF = " \ + --disable-libcurl-option \ + --disable-ntlm-wb \ + --enable-crypto-auth \ + --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \ + --without-libmetalink \ + --without-libpsl \ +" + +do_install_append_class-target() { + # cleanup buildpaths from curl-config + sed -i \ + -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \ + -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \ + -e 's|${DEBUG_PREFIX_MAP}||g' \ + ${D}${bindir}/curl-config +} + +PACKAGES =+ "lib${BPN}" + +FILES_lib${BPN} = "${libdir}/lib*.so.*" +RRECOMMENDS_lib${BPN} += "ca-certificates" + +FILES_${PN} += "${datadir}/zsh" + +inherit multilib_script +MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/gnupg/gnupg/0001-Woverride-init-is-not-needed-with-gcc-9.patch b/poky/meta/recipes-support/gnupg/gnupg/0001-Woverride-init-is-not-needed-with-gcc-9.patch index 4a280f9d5..83195b5bd 100644 --- a/poky/meta/recipes-support/gnupg/gnupg/0001-Woverride-init-is-not-needed-with-gcc-9.patch +++ b/poky/meta/recipes-support/gnupg/gnupg/0001-Woverride-init-is-not-needed-with-gcc-9.patch @@ -1,4 +1,4 @@ -From 0df5800cc2e720aad883a517f7d24a9722fe5845 Mon Sep 17 00:00:00 2001 +From e3adc816d2d56dd929016073937ba24e01e03cb8 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 20 Dec 2018 17:37:48 -0800 Subject: [PATCH] Woverride-init is not needed with gcc 9 @@ -17,15 +17,18 @@ Signed-off-by: Khem Raj 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dirmngr/dns.h b/dirmngr/dns.h -index 30d0b45..98fe412 100644 +index 024d6dcc8..c6e141e16 100644 --- a/dirmngr/dns.h +++ b/dirmngr/dns.h -@@ -154,7 +154,7 @@ DNS_PUBLIC int *dns_debug_p(void); +@@ -139,7 +139,7 @@ DNS_PUBLIC int *dns_debug_p(void); + #define DNS_PRAGMA_QUIET _Pragma("clang diagnostic ignored \"-Winitializer-overrides\"") + #define DNS_PRAGMA_POP _Pragma("clang diagnostic pop") - #define dns_quietinit(...) \ - DNS_PRAGMA_PUSH DNS_PRAGMA_QUIET __VA_ARGS__ DNS_PRAGMA_POP -#elif (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || __GNUC__ > 4 +#elif (__GNUC__ == 4 && __GNUC_MINOR__ >= 6) || (__GNUC__ > 4 && __GNUC__ < 9) #define DNS_PRAGMA_PUSH _Pragma("GCC diagnostic push") #define DNS_PRAGMA_QUIET _Pragma("GCC diagnostic ignored \"-Woverride-init\"") #define DNS_PRAGMA_POP _Pragma("GCC diagnostic pop") +-- +2.17.1 + diff --git a/poky/meta/recipes-support/gnupg/gnupg_2.2.13.bb b/poky/meta/recipes-support/gnupg/gnupg_2.2.13.bb deleted file mode 100644 index 3ce2a38c0..000000000 --- a/poky/meta/recipes-support/gnupg/gnupg_2.2.13.bb +++ /dev/null @@ -1,56 +0,0 @@ -SUMMARY = "GNU Privacy Guard - encryption and signing tools (2.x)" -HOMEPAGE = "http://www.gnupg.org/" -LICENSE = "GPLv3 & LGPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=189af8afca6d6075ba6c9e0aa8077626 \ - file://COPYING.LGPL3;md5=a2b6bf2cb38ee52619e60f30a1fc7257" - -DEPENDS = "npth libassuan libksba zlib bzip2 readline libgcrypt" - -inherit autotools gettext texinfo pkgconfig - -UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" -SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch \ - file://0002-use-pkgconfig-instead-of-npth-config.patch \ - file://0003-dirmngr-uses-libgpg-error.patch \ - file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \ - file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \ - " -SRC_URI_append_class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \ - file://relocate.patch" - - -SRC_URI[md5sum] = "563b959d0c3856e34526e9ca51c80d7b" -SRC_URI[sha256sum] = "76c787a955f9e6e0ead47c9be700bfb9d454f955a7b7c7e697aa719bac7b11d8" - -EXTRA_OECONF = "--disable-ldap \ - --disable-ccid-driver \ - --with-zlib=${STAGING_LIBDIR}/.. \ - --with-bzip2=${STAGING_LIBDIR}/.. \ - --with-readline=${STAGING_LIBDIR}/.. \ - --enable-gpg-is-gpg2 \ - " -RRECOMMENDS_${PN} = "pinentry" - -do_configure_prepend () { - # Else these could be used in prefernce to those in aclocal-copy - rm -f ${S}/m4/gpg-error.m4 - rm -f ${S}/m4/libassuan.m4 - rm -f ${S}/m4/ksba.m4 - rm -f ${S}/m4/libgcrypt.m4 -} - -do_install_append() { - ln -sf gpg2 ${D}${bindir}/gpg - ln -sf gpgv2 ${D}${bindir}/gpgv -} - -do_install_append_class-native() { - create_wrapper ${D}${bindir}/gpg2 GNUPG_BINDIR=${STAGING_BINDIR_NATIVE} -} - -PACKAGECONFIG ??= "gnutls" -PACKAGECONFIG[gnutls] = "--enable-gnutls, --disable-gnutls, gnutls" -PACKAGECONFIG[sqlite3] = "--enable-sqlite, --disable-sqlite, sqlite3" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/gnupg/gnupg_2.2.15.bb b/poky/meta/recipes-support/gnupg/gnupg_2.2.15.bb new file mode 100644 index 000000000..06a257333 --- /dev/null +++ b/poky/meta/recipes-support/gnupg/gnupg_2.2.15.bb @@ -0,0 +1,56 @@ +SUMMARY = "GNU Privacy Guard - encryption and signing tools (2.x)" +HOMEPAGE = "http://www.gnupg.org/" +LICENSE = "GPLv3 & LGPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=189af8afca6d6075ba6c9e0aa8077626 \ + file://COPYING.LGPL3;md5=a2b6bf2cb38ee52619e60f30a1fc7257" + +DEPENDS = "npth libassuan libksba zlib bzip2 readline libgcrypt" + +inherit autotools gettext texinfo pkgconfig + +UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" +SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://0001-Use-pkg-config-to-find-pth-instead-of-pth-config.patch \ + file://0002-use-pkgconfig-instead-of-npth-config.patch \ + file://0003-dirmngr-uses-libgpg-error.patch \ + file://0004-autogen.sh-fix-find-version-for-beta-checking.patch \ + file://0001-Woverride-init-is-not-needed-with-gcc-9.patch \ + " +SRC_URI_append_class-native = " file://0001-configure.ac-use-a-custom-value-for-the-location-of-.patch \ + file://relocate.patch" + + +SRC_URI[md5sum] = "3ab87e377aa0af2f463649515bf66508" +SRC_URI[sha256sum] = "cb8ce298d7b36558ffc48aec961b14c830ff1783eef7a623411188b5e0f5d454" + +EXTRA_OECONF = "--disable-ldap \ + --disable-ccid-driver \ + --with-zlib=${STAGING_LIBDIR}/.. \ + --with-bzip2=${STAGING_LIBDIR}/.. \ + --with-readline=${STAGING_LIBDIR}/.. \ + --enable-gpg-is-gpg2 \ + " +RRECOMMENDS_${PN} = "pinentry" + +do_configure_prepend () { + # Else these could be used in prefernce to those in aclocal-copy + rm -f ${S}/m4/gpg-error.m4 + rm -f ${S}/m4/libassuan.m4 + rm -f ${S}/m4/ksba.m4 + rm -f ${S}/m4/libgcrypt.m4 +} + +do_install_append() { + ln -sf gpg2 ${D}${bindir}/gpg + ln -sf gpgv2 ${D}${bindir}/gpgv +} + +do_install_append_class-native() { + create_wrapper ${D}${bindir}/gpg2 GNUPG_BINDIR=${STAGING_BINDIR_NATIVE} +} + +PACKAGECONFIG ??= "gnutls" +PACKAGECONFIG[gnutls] = "--enable-gnutls, --disable-gnutls, gnutls" +PACKAGECONFIG[sqlite3] = "--enable-sqlite, --disable-sqlite, sqlite3" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/gnutls/gnutls_3.6.5.bb b/poky/meta/recipes-support/gnutls/gnutls_3.6.5.bb deleted file mode 100644 index dfc35079d..000000000 --- a/poky/meta/recipes-support/gnutls/gnutls_3.6.5.bb +++ /dev/null @@ -1,64 +0,0 @@ -SUMMARY = "GNU Transport Layer Security Library" -HOMEPAGE = "http://www.gnu.org/software/gnutls/" -BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls" - -LICENSE = "GPLv3+ & LGPLv2.1+" -LICENSE_${PN} = "LGPLv2.1+" -LICENSE_${PN}-xx = "LGPLv2.1+" -LICENSE_${PN}-bin = "GPLv3+" -LICENSE_${PN}-openssl = "GPLv3+" - -LIC_FILES_CHKSUM = "file://LICENSE;md5=71391c8e0c1cfe68077e7fce3b586283 \ - file://doc/COPYING;md5=d32239bcb673463ab874e80d47fae504 \ - file://doc/COPYING.LESSER;md5=a6f89e2100d9b6cdffcea4f398e37343" - -DEPENDS = "nettle gmp virtual/libiconv libunistring" -DEPENDS_append_libc-musl = " argp-standalone" - -SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" - -SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar.xz \ - file://arm_eabi.patch \ -" - -SRC_URI[md5sum] = "3474849e1bbd4d16403b82ab2579000b" -SRC_URI[sha256sum] = "073eced3acef49a3883e69ffd5f0f0b5f46e2760ad86eddc6c0866df4e7abb35" - -inherit autotools texinfo pkgconfig gettext lib_package gtk-doc - -PACKAGECONFIG ??= "libidn" - -# You must also have CONFIG_SECCOMP enabled in the kernel for -# seccomp to work. -PACKAGECONFIG[seccomp] = "ac_cv_libseccomp=yes,ac_cv_libseccomp=no,libseccomp" -PACKAGECONFIG[libidn] = "--with-idn,--without-idn,libidn2" -PACKAGECONFIG[libtasn1] = "--with-included-libtasn1=no,--with-included-libtasn1,libtasn1" -PACKAGECONFIG[p11-kit] = "--with-p11-kit,--without-p11-kit,p11-kit" -PACKAGECONFIG[tpm] = "--with-tpm,--without-tpm,trousers" - -EXTRA_OECONF = " \ - --enable-doc \ - --disable-libdane \ - --disable-guile \ - --disable-rpath \ - --enable-local-libopts \ - --enable-openssl-compatibility \ - --with-libpthread-prefix=${STAGING_DIR_HOST}${prefix} \ - --without-libunistring-prefix \ -" - -LDFLAGS_append_libc-musl = " -largp" - -do_configure_prepend() { - for dir in . lib; do - rm -f ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4 - done -} - -PACKAGES =+ "${PN}-openssl ${PN}-xx" - -FILES_${PN}-dev += "${bindir}/gnutls-cli-debug" -FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*" -FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/gnutls/gnutls_3.6.7.bb b/poky/meta/recipes-support/gnutls/gnutls_3.6.7.bb new file mode 100644 index 000000000..e05dc2b57 --- /dev/null +++ b/poky/meta/recipes-support/gnutls/gnutls_3.6.7.bb @@ -0,0 +1,63 @@ +SUMMARY = "GNU Transport Layer Security Library" +HOMEPAGE = "http://www.gnu.org/software/gnutls/" +BUGTRACKER = "https://savannah.gnu.org/support/?group=gnutls" + +LICENSE = "GPLv3+ & LGPLv2.1+" +LICENSE_${PN} = "LGPLv2.1+" +LICENSE_${PN}-xx = "LGPLv2.1+" +LICENSE_${PN}-bin = "GPLv3+" +LICENSE_${PN}-openssl = "GPLv3+" + +LIC_FILES_CHKSUM = "file://LICENSE;md5=71391c8e0c1cfe68077e7fce3b586283 \ + file://doc/COPYING;md5=c678957b0c8e964aa6c70fd77641a71e \ + file://doc/COPYING.LESSER;md5=a6f89e2100d9b6cdffcea4f398e37343" + +DEPENDS = "nettle gmp virtual/libiconv libunistring" +DEPENDS_append_libc-musl = " argp-standalone" + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" + +SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar.xz \ + file://arm_eabi.patch \ +" + +SRC_URI[md5sum] = "c4ac669c500df939d4fbfea722367929" +SRC_URI[sha256sum] = "5b3409ad5aaf239808730d1ee12fdcd148c0be00262c7edf157af655a8a188e2" + +inherit autotools texinfo pkgconfig gettext lib_package gtk-doc + +PACKAGECONFIG ??= "libidn" + +# You must also have CONFIG_SECCOMP enabled in the kernel for +# seccomp to work. +PACKAGECONFIG[seccomp] = "ac_cv_libseccomp=yes,ac_cv_libseccomp=no,libseccomp" +PACKAGECONFIG[libidn] = "--with-idn,--without-idn,libidn2" +PACKAGECONFIG[libtasn1] = "--with-included-libtasn1=no,--with-included-libtasn1,libtasn1" +PACKAGECONFIG[p11-kit] = "--with-p11-kit,--without-p11-kit,p11-kit" +PACKAGECONFIG[tpm] = "--with-tpm,--without-tpm,trousers" + +EXTRA_OECONF = " \ + --enable-doc \ + --disable-libdane \ + --disable-guile \ + --disable-rpath \ + --enable-local-libopts \ + --enable-openssl-compatibility \ + --with-libpthread-prefix=${STAGING_DIR_HOST}${prefix} \ +" + +LDFLAGS_append_libc-musl = " -largp" + +do_configure_prepend() { + for dir in . lib; do + rm -f ${dir}/aclocal.m4 ${dir}/m4/libtool.m4 ${dir}/m4/lt*.m4 + done +} + +PACKAGES =+ "${PN}-openssl ${PN}-xx" + +FILES_${PN}-dev += "${bindir}/gnutls-cli-debug" +FILES_${PN}-openssl = "${libdir}/libgnutls-openssl.so.*" +FILES_${PN}-xx = "${libdir}/libgnutlsxx.so.*" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch b/poky/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch new file mode 100644 index 000000000..0ed4eb681 --- /dev/null +++ b/poky/meta/recipes-support/gpgme/gpgme/0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch @@ -0,0 +1,134 @@ +From a001b3c23bf80fd752044615b9bba6b926ff9666 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Fri, 10 May 2019 14:18:04 +0800 +Subject: [PATCH] Revert "build: Make gpgme.m4 use gpgrt-config with *.pc." + +This reverts commit 60828a505a1c74fd34476c181df2a588ea6f9c83. + +The oe-core does not support gpgrt-config, so revert it + +Upstream-Status: Inappropriate [oe-core specific] + +Signed-off-by: Hongxu Jia +--- + src/gpgme.m4 | 58 ++++++++++------------------------------------------------ + 1 file changed, 10 insertions(+), 48 deletions(-) + +diff --git a/src/gpgme.m4 b/src/gpgme.m4 +index 2a72f18..6c2be44 100644 +--- a/src/gpgme.m4 ++++ b/src/gpgme.m4 +@@ -1,5 +1,5 @@ + # gpgme.m4 - autoconf macro to detect GPGME. +-# Copyright (C) 2002, 2003, 2004, 2014, 2018 g10 Code GmbH ++# Copyright (C) 2002, 2003, 2004, 2014 g10 Code GmbH + # + # This file is free software; as a special exception the author gives + # unlimited permission to copy and/or distribute it, with or without +@@ -9,7 +9,7 @@ + # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the + # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + # +-# Last-changed: 2018-11-12 ++# Last-changed: 2014-10-02 + + + AC_DEFUN([_AM_PATH_GPGME_CONFIG], +@@ -36,24 +36,10 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG], + fi + fi + +- use_gpgrt_config="" +- if test x"${GPGME_CONFIG}" = x -a x"$GPGRT_CONFIG" != x -a "$GPGRT_CONFIG" != "no"; then +- if $GPGRT_CONFIG gpgme --exists; then +- GPGME_CONFIG="$GPGRT_CONFIG gpgme" +- AC_MSG_NOTICE([Use gpgrt-config as gpgme-config]) +- use_gpgrt_config=yes +- fi +- fi +- if test -z "$use_gpgrt_config"; then +- AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no) +- fi ++ AC_PATH_PROG(GPGME_CONFIG, gpgme-config, no) + + if test "$GPGME_CONFIG" != "no" ; then +- if test -z "$use_gpgrt_config"; then +- gpgme_version=`$GPGME_CONFIG --version` +- else +- gpgme_version=`$GPGME_CONFIG --modversion` +- fi ++ gpgme_version=`$GPGME_CONFIG --version` + fi + gpgme_version_major=`echo $gpgme_version | \ + sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'` +@@ -66,16 +52,12 @@ AC_DEFUN([_AM_PATH_GPGME_CONFIG], + + AC_DEFUN([_AM_PATH_GPGME_CONFIG_HOST_CHECK], + [ +- if test -z "$use_gpgrt_config"; then +- gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` +- else +- gpgme_config_host=`$GPGME_CONFIG --variable=host 2>/dev/null || echo none` +- fi ++ gpgme_config_host=`$GPGME_CONFIG --host 2>/dev/null || echo none` + if test x"$gpgme_config_host" != xnone ; then + if test x"$gpgme_config_host" != x"$host" ; then + AC_MSG_WARN([[ + *** +-*** The config script "$GPGME_CONFIG" was ++*** The config script $GPGME_CONFIG was + *** built for $gpgme_config_host and thus may not match the + *** used host $host. + *** You may want to use the configure option --with-gpgme-prefix +@@ -136,11 +118,7 @@ AC_DEFUN([AM_PATH_GPGME], + # If we have a recent GPGME, we should also check that the + # API is compatible. + if test "$req_gpgme_api" -gt 0 ; then +- if test -z "$use_gpgrt_config"; then +- tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` +- else +- tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0` +- fi ++ tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` + if test "$tmp" -gt 0 ; then + if test "$req_gpgme_api" -ne "$tmp" ; then + ok=no +@@ -280,11 +258,7 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], + # If we have a recent GPGME, we should also check that the + # API is compatible. + if test "$req_gpgme_api" -gt 0 ; then +- if test -z "$use_gpgrt_config"; then +- tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` +- else +- tmp=`$GPGME_CONFIG --variable=api_version 2>/dev/null || echo 0` +- fi ++ tmp=`$GPGME_CONFIG --api-version 2>/dev/null || echo 0` + if test "$tmp" -gt 0 ; then + if test "$req_gpgme_api" -ne "$tmp" ; then + ok=no +@@ -293,20 +267,8 @@ AC_DEFUN([AM_PATH_GPGME_GLIB], + fi + fi + if test $ok = yes; then +- if test -z "$use_gpgrt_config"; then +- GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --glib --cflags` +- GPGME_GLIB_LIBS=`$GPGME_CONFIG --glib --libs` +- else +- if $GPGRT_CONFIG gpgme-glib --exists; then +- GPGME_CONFIG="$GPGRT_CONFIG gpgme-glib" +- GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --cflags` +- GPGME_GLIB_LIBS=`$GPGME_CONFIG --libs` +- else +- ok = no +- fi +- fi +- fi +- if test $ok = yes; then ++ GPGME_GLIB_CFLAGS=`$GPGME_CONFIG --glib --cflags` ++ GPGME_GLIB_LIBS=`$GPGME_CONFIG --glib --libs` + AC_MSG_RESULT(yes) + ifelse([$2], , :, [$2]) + _AM_PATH_GPGME_CONFIG_HOST_CHECK +-- +2.7.4 + diff --git a/poky/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch b/poky/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch index 176723cd1..827d95a15 100644 --- a/poky/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch +++ b/poky/meta/recipes-support/gpgme/gpgme/0001-pkgconfig.patch @@ -1,7 +1,7 @@ -From 6492c952d61bb93a8bf8200c093d7e491456aa5a Mon Sep 17 00:00:00 2001 +From 98ce65902b197faa8f660564613ca2e504c2f8f8 Mon Sep 17 00:00:00 2001 From: Richard Purdie -Date: Fri, 29 Jun 2018 14:35:41 +0800 -Subject: [PATCH 1/7] pkgconfig +Date: Fri, 10 May 2019 14:23:55 +0800 +Subject: [PATCH] pkgconfig Update gpgme to use pkgconfig instead of -config files since its simpler and less error prone when cross compiling. @@ -11,7 +11,7 @@ RP 2015/4/17 Signed-off-by: Richard Purdie -Rebase to 1.11.1 +Rebase to 1.13.0 Signed-off-by: Hongxu Jia --- @@ -19,43 +19,40 @@ Signed-off-by: Hongxu Jia src/Makefile.am | 4 +- src/gpgme-pthread.pc.in | 15 +++++++ src/gpgme.m4 | 114 ++++-------------------------------------------- - src/gpgme.pc.in | 15 +++++++ - 5 files changed, 42 insertions(+), 107 deletions(-) + src/gpgme.pc.in | 4 +- + 5 files changed, 28 insertions(+), 110 deletions(-) create mode 100644 src/gpgme-pthread.pc.in - create mode 100644 src/gpgme.pc.in diff --git a/configure.ac b/configure.ac -index af569ac..865bd10 100644 +index 25184f4..1c0a386 100644 --- a/configure.ac +++ b/configure.ac -@@ -895,6 +895,7 @@ AC_CONFIG_FILES(Makefile src/Makefile - src/versioninfo.rc +@@ -899,6 +899,7 @@ AC_CONFIG_FILES(Makefile src/Makefile + src/gpgme-glib.pc src/gpgme.h) AC_CONFIG_FILES(src/gpgme-config, chmod +x src/gpgme-config) -+AC_CONFIG_FILES(src/gpgme.pc src/gpgme-pthread.pc) ++AC_CONFIG_FILES(src/gpgme-pthread.pc) AC_CONFIG_FILES(lang/cpp/Makefile lang/cpp/src/Makefile) + AC_CONFIG_FILES(lang/cpp/tests/Makefile) AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig-w32.cmake.in) - AC_CONFIG_FILES(lang/cpp/src/GpgmeppConfig.cmake.in) diff --git a/src/Makefile.am b/src/Makefile.am -index 1394c02..8451c3a 100644 +index d85a85c..d942f3e 100644 --- a/src/Makefile.am +++ b/src/Makefile.am -@@ -19,12 +19,14 @@ +@@ -20,11 +20,11 @@ ## Process this file with automake to produce Makefile.in + pkgconfigdir = $(libdir)/pkgconfig +-pkgconfig_DATA = gpgme.pc gpgme-glib.pc ++pkgconfig_DATA = gpgme.pc gpgme-glib.pc gpgme-pthread.pc + EXTRA_DIST = gpgme-config.in gpgme.m4 libgpgme.vers ChangeLog-2011 \ -- gpgme.h.in versioninfo.rc.in gpgme.def -+ gpgme.h.in versioninfo.rc.in gpgme.def gpgme.pc.in gpgme-pthread.pc.in + gpgme.h.in versioninfo.rc.in gpgme.def \ +- gpgme.pc.in gpgme-glib.pc.in ++ gpgme.pc.in gpgme-glib.pc.in gpgme-pthread.pc.in bin_SCRIPTS = gpgme-config m4datadir = $(datadir)/aclocal - m4data_DATA = gpgme.m4 - nodist_include_HEADERS = gpgme.h -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = gpgme.pc gpgme-pthread.pc - - bin_PROGRAMS = gpgme-tool gpgme-json - diff --git a/src/gpgme-pthread.pc.in b/src/gpgme-pthread.pc.in new file mode 100644 index 0000000..074bbf6 @@ -277,27 +274,18 @@ index 6c2be44..d8a75cb 100644 - AC_SUBST(GPGME_GLIB_LIBS) ]) diff --git a/src/gpgme.pc.in b/src/gpgme.pc.in -new file mode 100644 -index 0000000..b69539f ---- /dev/null +index be288b8..16f56ac 100644 +--- a/src/gpgme.pc.in +++ b/src/gpgme.pc.in -@@ -0,0 +1,15 @@ -+prefix=@prefix@ -+exec_prefix=@exec_prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+# API info -+api_version=@GPGME_CONFIG_API_VERSION@ -+host=@GPGME_CONFIG_HOST@ -+ -+Name: gpgme -+Description: GnuPG Made Easy (GPGME) is a C language library that allows to addsupport for cryptography to a program. -+Version: @VERSION@ -+Libs: -L${libdir} -lgpgme +@@ -9,6 +9,6 @@ Name: gpgme + Description: GnuPG Made Easy to access GnuPG + Requires: gpg-error, libassuan + Version: @PACKAGE_VERSION@ +-Cflags: @GPGME_CONFIG_CFLAGS@ +-Libs: @GPGME_CONFIG_LIBS@ +Cflags: -I${includedir} -+Requires: libassuan gpg-error -\ No newline at end of file ++Libs: -L${libdir} -lgpgme + URL: https://www.gnupg.org/software/gpgme/index.html -- 2.7.4 diff --git a/poky/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch b/poky/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch index 0d0d0c67b..ecd1793ab 100644 --- a/poky/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch +++ b/poky/meta/recipes-support/gpgme/gpgme/0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch @@ -1,6 +1,6 @@ -From 03819ad1270a279223219c0e70ba631bfe517714 Mon Sep 17 00:00:00 2001 +From 52f8fd2010b900c7d382a7c4e6c1a317d8160585 Mon Sep 17 00:00:00 2001 From: Hongxu Jia -Date: Wed, 17 Oct 2018 23:32:19 +0800 +Date: Fri, 10 May 2019 14:30:36 +0800 Subject: [PATCH 2/7] gpgme/lang/python: gpg-error-config should not be used gpg-error-config was modified by OE to always return an error. @@ -11,39 +11,38 @@ Upstream-Status: Inappropriate [changes are specific to OE] Signed-off-by: Mark Hatle -Rebase to 1.12.0 +Rebase to 1.13.0 Signed-off-by: Hongxu Jia --- - lang/python/setup.py.in | 11 +---------- - 1 file changed, 1 insertion(+), 10 deletions(-) + lang/python/setup.py.in | 9 +-------- + 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/lang/python/setup.py.in b/lang/python/setup.py.in -index 65a4be0..11b8413 100755 +index 9785a28..006216d 100755 --- a/lang/python/setup.py.in +++ b/lang/python/setup.py.in @@ -30,7 +30,6 @@ import subprocess import sys # Out-of-tree build of the gpg bindings. --gpg_error_config = ["gpg-error-config"] - gpgme_config_flags = ["--thread=pthread"] - gpgme_config = ["gpgme-config"] + gpgme_config_flags - gpgme_h = "" -@@ -181,16 +180,8 @@ class BuildExtFirstHack(build): - shutil.copy2(source_name, sink_name) +-gpg_error_config = ['gpg-error-config'] + gpgme_config_flags = ['--thread=pthread'] + gpgme_config = ['gpgme-config'] + gpgme_config_flags + gpgme_h = '' +@@ -182,15 +181,9 @@ class BuildExtFirstHack(build): def _generate_errors_i(self): -- + - try: - subprocess.check_call( - gpg_error_config + ['--version'], stdout=devnull) - except: -- sys.exit("Could not find gpg-error-config. " + -- "Please install the libgpg-error development package.") -- +- sys.exit('Could not find gpg-error-config. ' + +- 'Please install the libgpg-error development package.') + gpg_error_content = self._read_header( -- "gpg-error.h", getconfig("cflags", config=gpg_error_config)) +- 'gpg-error.h', getconfig('cflags', config=gpg_error_config)) + "gpg-error.h", os.environ.get('CFLAGS').split()) filter_re = re.compile(r'GPG_ERR_[^ ]* =') diff --git a/poky/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch b/poky/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch new file mode 100644 index 000000000..3afbfc863 --- /dev/null +++ b/poky/meta/recipes-support/gpgme/gpgme/0008-do-not-auto-check-var-PYTHON.patch @@ -0,0 +1,36 @@ +From fc3d9cc218e60582fd158d21a1cd537a3dc1b007 Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Fri, 10 May 2019 16:19:54 +0800 +Subject: [PATCH] do not auto check var-PYTHON + +Upstream auto check the version of python rather than specify option +[ff6ff61 python: Auto-check for all installed python versions.] + +In oe-core, don't check var-PYTHON, use the setting from recipe, +only check specific python 2.7 and 3.7 + +Upstream-Status: Inappropriate [oe-core specific] + +Signed-off-by: Hongxu Jia +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index cb2f073..7d74a6d 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -423,8 +423,8 @@ if test "$found_py" = "1"; then + if test "$found_py" = "1" -o "$found_py3" = "1"; then + # Reset everything, so that we can look for another Python. + m4_foreach([mym4pythonver], +- [[2.7],[3.4],[3.5],[3.6],[3.7],[3.8],[all]], +- [unset PYTHON ++ [[2.7],[3.7]], ++ [ + unset PYTHON_VERSION + unset PYTHON_CPPFLAGS + unset PYTHON_LDFLAGS +-- +2.7.4 + diff --git a/poky/meta/recipes-support/gpgme/gpgme_1.12.0.bb b/poky/meta/recipes-support/gpgme/gpgme_1.12.0.bb deleted file mode 100644 index b46c5fc27..000000000 --- a/poky/meta/recipes-support/gpgme/gpgme_1.12.0.bb +++ /dev/null @@ -1,85 +0,0 @@ -SUMMARY = "High-level GnuPG encryption/signing API" -DESCRIPTION = "GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a High-Level Crypto API for encryption, decryption, signing, signature verification and key management" -HOMEPAGE = "http://www.gnupg.org/gpgme.html" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" - -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ - file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \ - file://src/gpgme.h.in;endline=23;md5=4d6319e587fd944adfe61a41a8f15b36 \ - file://src/engine.h;endline=22;md5=4b6d8ba313d9b564cc4d4cfb1640af9d" - -UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" -SRC_URI = "${GNUPG_MIRROR}/gpgme/${BP}.tar.bz2 \ - file://0001-pkgconfig.patch \ - file://0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch \ - file://0003-Correctly-install-python-modules.patch \ - file://0004-python-import.patch \ - file://0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch \ - file://0006-fix-build-path-issue.patch \ - file://0007-python-Add-variables-to-tests.patch \ - " - -SRC_URI[md5sum] = "902fca3a94907efe4e929b2ade545a7c" -SRC_URI[sha256sum] = "b4dc951c3743a60e2e120a77892e9e864fb936b2e58e7c77e8581f4d050e8cd8" - -DEPENDS = "libgpg-error libassuan" -RDEPENDS_${PN}-cpp += "libstdc++" - -RDEPENDS_python2-gpg += "python-unixadmin" -RDEPENDS_python3-gpg += "python3-unixadmin" - -BINCONFIG = "${bindir}/gpgme-config" - -# Note select python2 or python3, but you can't select both at the same time -PACKAGECONFIG ??= "python3" -PACKAGECONFIG[python2] = ",,python swig-native," -PACKAGECONFIG[python3] = ",,python3 swig-native," - -# Default in configure.ac: "cl cpp python qt" -# Supported: "cl cpp python python2 python3 qt" -# python says 'search and find python2 or python3' - -# Building the C++ bindings for native requires a C++ compiler with C++11 -# support. Since these bindings are currently not needed, we can disable them. -DEFAULT_LANGUAGES = "" -DEFAULT_LANGUAGES_class-target = "cpp" -LANGUAGES ?= "${DEFAULT_LANGUAGES}" -LANGUAGES .= "${@bb.utils.contains('PACKAGECONFIG', 'python2', ' python2', '', d)}" -LANGUAGES .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', ' python3', '', d)}" - -PYTHON_INHERIT = "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'pythonnative', '', d)}" -PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native', '', d)}" - -EXTRA_OECONF += '--enable-languages="${LANGUAGES}" \ - --disable-gpgconf-test \ - --disable-gpg-test \ - --disable-gpgsm-test \ - --disable-g13-test \ - --disable-lang-python-test \ -' - -inherit autotools texinfo binconfig-disabled pkgconfig distutils-common-base ${PYTHON_INHERIT} - -export PKG_CONFIG='pkg-config' - -BBCLASSEXTEND = "native nativesdk" - -PACKAGES =+ "${PN}-cpp" -PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python2-gpg ', '', d)}" -PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-gpg ', '', d)}" - -FILES_${PN}-cpp = "${libdir}/libgpgmepp.so.*" -FILES_python2-gpg = "${PYTHON_SITEPACKAGES_DIR}/*" -FILES_python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*" -FILES_${PN}-dev += "${datadir}/common-lisp/source/gpgme/* \ - ${libdir}/cmake/* \ -" - -CFLAGS_append_libc-musl = " -D__error_t_defined " -do_configure_prepend () { - # Else these could be used in preference to those in aclocal-copy - rm -f ${S}/m4/gpg-error.m4 - rm -f ${S}/m4/libassuan.m4 - rm -f ${S}/m4/python.m4 -} diff --git a/poky/meta/recipes-support/gpgme/gpgme_1.13.0.bb b/poky/meta/recipes-support/gpgme/gpgme_1.13.0.bb new file mode 100644 index 000000000..cbd37da30 --- /dev/null +++ b/poky/meta/recipes-support/gpgme/gpgme_1.13.0.bb @@ -0,0 +1,85 @@ +SUMMARY = "High-level GnuPG encryption/signing API" +DESCRIPTION = "GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a High-Level Crypto API for encryption, decryption, signing, signature verification and key management" +HOMEPAGE = "http://www.gnupg.org/gpgme.html" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" + +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ + file://COPYING.LESSER;md5=bbb461211a33b134d42ed5ee802b37ff \ + file://src/gpgme.h.in;endline=23;md5=2f0bf06d1c7dcb28532a9d0f94a7ca1d \ + file://src/engine.h;endline=22;md5=4b6d8ba313d9b564cc4d4cfb1640af9d" + +UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" +SRC_URI = "${GNUPG_MIRROR}/gpgme/${BP}.tar.bz2 \ + file://0001-Revert-build-Make-gpgme.m4-use-gpgrt-config-with-.pc.patch \ + file://0001-pkgconfig.patch \ + file://0002-gpgme-lang-python-gpg-error-config-should-not-be-use.patch \ + file://0003-Correctly-install-python-modules.patch \ + file://0004-python-import.patch \ + file://0005-gpgme-config-skip-all-lib-or-usr-lib-directories-in-.patch \ + file://0006-fix-build-path-issue.patch \ + file://0007-python-Add-variables-to-tests.patch \ + file://0008-do-not-auto-check-var-PYTHON.patch \ + " + +SRC_URI[md5sum] = "e511a0d95c507ab87e713140c82fc7d0" +SRC_URI[sha256sum] = "d4b23e47a9e784a63e029338cce0464a82ce0ae4af852886afda410f9e39c630" + +DEPENDS = "libgpg-error libassuan" +RDEPENDS_${PN}-cpp += "libstdc++" + +RDEPENDS_python2-gpg += "python-unixadmin" +RDEPENDS_python3-gpg += "python3-unixadmin" + +BINCONFIG = "${bindir}/gpgme-config" + +# Note select python2 or python3, but you can't select both at the same time +PACKAGECONFIG ??= "python3" +PACKAGECONFIG[python2] = ",,python swig-native," +PACKAGECONFIG[python3] = ",,python3 swig-native," + +# Default in configure.ac: "cl cpp python qt" +# Supported: "cl cpp python python2 python3 qt" +# python says 'search and find python2 or python3' + +# Building the C++ bindings for native requires a C++ compiler with C++11 +# support. Since these bindings are currently not needed, we can disable them. +DEFAULT_LANGUAGES = "" +DEFAULT_LANGUAGES_class-target = "cpp" +LANGUAGES ?= "${DEFAULT_LANGUAGES} python" + +PYTHON_INHERIT = "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'pythonnative', '', d)}" +PYTHON_INHERIT .= "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3native', '', d)}" + +EXTRA_OECONF += '--enable-languages="${LANGUAGES}" \ + --disable-gpgconf-test \ + --disable-gpg-test \ + --disable-gpgsm-test \ + --disable-g13-test \ + --disable-lang-python-test \ +' + +inherit autotools texinfo binconfig-disabled pkgconfig distutils-common-base ${PYTHON_INHERIT} + +export PKG_CONFIG='pkg-config' + +BBCLASSEXTEND = "native nativesdk" + +PACKAGES =+ "${PN}-cpp" +PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python2', 'python2-gpg ', '', d)}" +PACKAGES =. "${@bb.utils.contains('PACKAGECONFIG', 'python3', 'python3-gpg ', '', d)}" + +FILES_${PN}-cpp = "${libdir}/libgpgmepp.so.*" +FILES_python2-gpg = "${PYTHON_SITEPACKAGES_DIR}/*" +FILES_python3-gpg = "${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-dev += "${datadir}/common-lisp/source/gpgme/* \ + ${libdir}/cmake/* \ +" + +CFLAGS_append_libc-musl = " -D__error_t_defined " +do_configure_prepend () { + # Else these could be used in preference to those in aclocal-copy + rm -f ${S}/m4/gpg-error.m4 + rm -f ${S}/m4/libassuan.m4 + rm -f ${S}/m4/python.m4 +} diff --git a/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch b/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch new file mode 100644 index 000000000..efb27ae4e --- /dev/null +++ b/poky/meta/recipes-support/icu/icu/0001-Fix-big-endian-build.patch @@ -0,0 +1,28 @@ +From 9be0b489a94b57419202c552022f25cb95bfac51 Mon Sep 17 00:00:00 2001 +From: Alexander Kanavin +Date: Wed, 17 Apr 2019 16:41:58 +0200 +Subject: [PATCH] Fix big-endian build + +Bug-report: https://unicode-org.atlassian.net/browse/ICU-20533 +Patch taken from: https://bugs.gentoo.org/682170 + +Upstream-Status: Pending +Signed-off-by: Alexander Kanavin +--- + data/Makefile.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/source/data/Makefile.in b/source/data/Makefile.in +index 778b6c7..67203e7 100644 +--- a/data/Makefile.in ++++ b/data/Makefile.in +@@ -148,7 +148,8 @@ ICUDATA_ARCHIVE = $(firstword $(wildcard $(srcdir)/in/$(ICUDATA_BASENAME_VERSION + # and convert it to the current type. + ifneq ($(ICUDATA_ARCHIVE),) + ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat +-$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) ++$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) ++ $(MKINSTALLDIRS) $(OUTDIR) + $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE) + endif + else diff --git a/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch new file mode 100644 index 000000000..299689d95 --- /dev/null +++ b/poky/meta/recipes-support/icu/icu/0001-icu-Added-armeb-support.patch @@ -0,0 +1,30 @@ +From 500321387ceca48934bb0f323779117cd518bab6 Mon Sep 17 00:00:00 2001 +From: Lei Maohui +Date: Wed, 8 May 2019 14:42:30 +0900 +Subject: [PATCH] icu: Added armeb support. + +Make icu support arm32 BE. + +Upstream-Status: Pending + +Signed-off-by: Lei Maohui +--- + i18n/double-conversion-utils.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h +index 1e44fca..e4f2a8b 100644 +--- a/i18n/double-conversion-utils.h ++++ b/i18n/double-conversion-utils.h +@@ -92,7 +92,7 @@ int main(int argc, char** argv) { + // + // If it prints "correct" then the architecture should be here, in the "correct" section. + #if defined(_M_X64) || defined(__x86_64__) || \ +- defined(__ARMEL__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \ ++ defined(__arm__) || defined(__avr32__) || defined(_M_ARM) || defined(_M_ARM64) || \ + defined(__hppa__) || defined(__ia64__) || \ + defined(__mips__) || \ + defined(__powerpc__) || defined(__ppc__) || defined(__ppc64__) || \ +-- +2.7.4 + diff --git a/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch b/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch deleted file mode 100644 index 20e3d8356..000000000 --- a/poky/meta/recipes-support/icu/icu/0002-Add-ARC-support.patch +++ /dev/null @@ -1,27 +0,0 @@ -From fcfd57105b4bdb30d906df152ef01748fa95daff Mon Sep 17 00:00:00 2001 -From: Alexey Brodkin -Date: Thu, 13 Sep 2018 17:13:20 +0300 -Subject: [PATCH] icu: Add ARC support - -Signed-off-by: Alexey Brodkin - -Upstream-Status: Submitted [ https://github.com/unicode-org/icu/pull/149 ] ---- - i18n/double-conversion-utils.h | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/i18n/double-conversion-utils.h b/i18n/double-conversion-utils.h -index 57fc49b231a3..0bd3e8340673 100644 ---- a/i18n/double-conversion-utils.h -+++ b/i18n/double-conversion-utils.h -@@ -86,7 +86,7 @@ inline void abort_noreturn() { abort(); } - defined(__SH4__) || defined(__alpha__) || \ - defined(_MIPS_ARCH_MIPS32R2) || \ - defined(__AARCH64EL__) || defined(__aarch64__) || \ -- defined(__riscv) -+ defined(__riscv) || defined(__arc__) - #define DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS 1 - #elif defined(__mc68000__) - #undef DOUBLE_CONVERSION_CORRECT_DOUBLE_OPERATIONS -2.17.1 - diff --git a/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch b/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch deleted file mode 100644 index 19c50e4e7..000000000 --- a/poky/meta/recipes-support/icu/icu/CVE-2018-18928.patch +++ /dev/null @@ -1,63 +0,0 @@ -CVE: CVE-2018-18928 -Upstream-Status: Backport -Signed-off-by: Ross Burton - -From 53d8c8f3d181d87a6aa925b449b51c4a2c922a51 Mon Sep 17 00:00:00 2001 -From: Shane Carr -Date: Mon, 29 Oct 2018 23:52:44 -0700 -Subject: [PATCH] ICU-20246 Fixing another integer overflow in number parsing. - ---- - i18n/fmtable.cpp | 2 +- - i18n/number_decimalquantity.cpp | 5 ++++- - test/intltest/numfmtst.cpp | 8 ++++++++ - 6 files changed, 31 insertions(+), 4 deletions(-) - -diff --git a/i18n/fmtable.cpp b/i18n/fmtable.cpp -index 45c7024fc29..8601d95f4a6 100644 ---- a/i18n/fmtable.cpp -+++ b/i18n/fmtable.cpp -@@ -734,7 +734,7 @@ CharString *Formattable::internalGetCharString(UErrorCode &status) { - // not print scientific notation for magnitudes greater than -5 and smaller than some amount (+5?). - if (fDecimalQuantity->isZero()) { - fDecimalStr->append("0", -1, status); -- } else if (std::abs(fDecimalQuantity->getMagnitude()) < 5) { -+ } else if (fDecimalQuantity->getMagnitude() != INT32_MIN && std::abs(fDecimalQuantity->getMagnitude()) < 5) { - fDecimalStr->appendInvariantChars(fDecimalQuantity->toPlainString(), status); - } else { - fDecimalStr->appendInvariantChars(fDecimalQuantity->toScientificString(), status); -diff --git a/i18n/number_decimalquantity.cpp b/i18n/number_decimalquantity.cpp -index 47b930a564b..d5dd7ae694c 100644 ---- a/i18n/number_decimalquantity.cpp -+++ b/i18n/number_decimalquantity.cpp -@@ -898,7 +898,10 @@ UnicodeString DecimalQuantity::toScientificString() const { - } - result.append(u'E'); - int32_t _scale = upperPos + scale; -- if (_scale < 0) { -+ if (_scale == INT32_MIN) { -+ result.append({u"-2147483648", -1}); -+ return result; -+ } else if (_scale < 0) { - _scale *= -1; - result.append(u'-'); - } else { -diff --git a/test/intltest/numfmtst.cpp b/test/intltest/numfmtst.cpp -index 34355939113..8d52dc122bf 100644 ---- a/test/intltest/numfmtst.cpp -+++ b/test/intltest/numfmtst.cpp -@@ -9226,6 +9226,14 @@ void NumberFormatTest::Test20037_ScientificIntegerOverflow() { - assertEquals(u"Should not overflow and should parse only the first exponent", - u"1E-2147483647", - {sp.data(), sp.length(), US_INV}); -+ -+ // Test edge case overflow of exponent -+ result = Formattable(); -+ nf->parse(u".0003e-2147483644", result, status); -+ sp = result.getDecimalNumber(status); -+ assertEquals(u"Should not overflow", -+ u"3E-2147483648", -+ {sp.data(), sp.length(), US_INV}); - } - - void NumberFormatTest::Test13840_ParseLongStringCrash() { diff --git a/poky/meta/recipes-support/icu/icu_63.1.bb b/poky/meta/recipes-support/icu/icu_63.1.bb deleted file mode 100644 index 961f022ad..000000000 --- a/poky/meta/recipes-support/icu/icu_63.1.bb +++ /dev/null @@ -1,30 +0,0 @@ -require icu.inc - -LIC_FILES_CHKSUM = "file://../LICENSE;md5=63752c57bd0b365c9af9f427ef79c819" - -def icu_download_version(d): - pvsplit = d.getVar('PV').split('.') - return pvsplit[0] + "_" + pvsplit[1] - -ICU_PV = "${@icu_download_version(d)}" - -# http://errors.yoctoproject.org/Errors/Details/20486/ -ARM_INSTRUCTION_SET_armv4 = "arm" -ARM_INSTRUCTION_SET_armv5 = "arm" - -BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/${PV}/icu4c-${ICU_PV}-src.tgz" -SRC_URI = "${BASE_SRC_URI} \ - file://icu-pkgdata-large-cmd.patch \ - file://fix-install-manx.patch \ - file://0002-Add-ARC-support.patch \ - file://CVE-2018-18928.patch \ - " - -SRC_URI_append_class-target = "\ - file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ - " -SRC_URI[md5sum] = "9e40f6055294284df958200e308bce50" -SRC_URI[sha256sum] = "05c490b69454fce5860b7e8e2821231674af0a11d7ef2febea9a32512998cb9d" - -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)/" -UPSTREAM_CHECK_URI = "http://download.icu-project.org/files/icu4c/" diff --git a/poky/meta/recipes-support/icu/icu_64.2.bb b/poky/meta/recipes-support/icu/icu_64.2.bb new file mode 100644 index 000000000..10bac7aac --- /dev/null +++ b/poky/meta/recipes-support/icu/icu_64.2.bb @@ -0,0 +1,30 @@ +require icu.inc + +LIC_FILES_CHKSUM = "file://../LICENSE;md5=8bc5d32052a96f214cbdd1e53dfc935d" + +def icu_download_version(d): + pvsplit = d.getVar('PV').split('.') + return pvsplit[0] + "_" + pvsplit[1] + +ICU_PV = "${@icu_download_version(d)}" + +# http://errors.yoctoproject.org/Errors/Details/20486/ +ARM_INSTRUCTION_SET_armv4 = "arm" +ARM_INSTRUCTION_SET_armv5 = "arm" + +BASE_SRC_URI = "http://download.icu-project.org/files/icu4c/${PV}/icu4c-${ICU_PV}-src.tgz" +SRC_URI = "${BASE_SRC_URI} \ + file://icu-pkgdata-large-cmd.patch \ + file://fix-install-manx.patch \ + file://0001-Fix-big-endian-build.patch \ + file://0001-icu-Added-armeb-support.patch \ + " + +SRC_URI_append_class-target = "\ + file://0001-Disable-LDFLAGSICUDT-for-Linux.patch \ + " +SRC_URI[md5sum] = "a3d18213beec454e3cdec9a3116d6b05" +SRC_URI[sha256sum] = "627d5d8478e6d96fc8c90fed4851239079a561a6a8b9e48b0892f24e82d31d6c" + +UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)/" +UPSTREAM_CHECK_URI = "http://download.icu-project.org/files/icu4c/" diff --git a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb new file mode 100644 index 000000000..7628eedb1 --- /dev/null +++ b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.10.bb @@ -0,0 +1,22 @@ +SUMMARY = "A library for atomic integer operations" +HOMEPAGE = "https://github.com/ivmai/libatomic_ops/" +SECTION = "optional" +PROVIDES += "libatomics-ops" +LICENSE = "GPLv2 & MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://doc/LICENSING.txt;md5=e00dd5c8ac03a14c5ae5225a4525fa2d \ + " + +SRC_URI = "https://github.com/ivmai/libatomic_ops/releases/download/v${PV}/libatomic_ops-${PV}.tar.gz" +UPSTREAM_CHECK_URI = "https://github.com/ivmai/libatomic_ops/releases" + +SRC_URI[md5sum] = "90a78a84d9c28ce11f331c25289bfbd0" +SRC_URI[sha256sum] = "587edf60817f56daf1e1ab38a4b3c729b8e846ff67b4f62a6157183708f099af" + +S = "${WORKDIR}/libatomic_ops-${PV}" + +ALLOW_EMPTY_${PN} = "1" + +inherit autotools pkgconfig + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.8.bb b/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.8.bb deleted file mode 100644 index 8292c3b31..000000000 --- a/poky/meta/recipes-support/libatomic-ops/libatomic-ops_7.6.8.bb +++ /dev/null @@ -1,22 +0,0 @@ -SUMMARY = "A library for atomic integer operations" -HOMEPAGE = "https://github.com/ivmai/libatomic_ops/" -SECTION = "optional" -PROVIDES += "libatomics-ops" -LICENSE = "GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://doc/LICENSING.txt;md5=e00dd5c8ac03a14c5ae5225a4525fa2d \ - " - -SRC_URI = "https://github.com/ivmai/libatomic_ops/releases/download/v${PV}/libatomic_ops-${PV}.tar.gz" -UPSTREAM_CHECK_URI = "https://github.com/ivmai/libatomic_ops/releases" - -SRC_URI[md5sum] = "99128f05e3e3f4e0cd39aa23f23bbe0c" -SRC_URI[sha256sum] = "1d6a279edf81767e74d2ad2c9fce09459bc65f12c6525a40b0cb3e53c089f665" - -S = "${WORKDIR}/libatomic_ops-${PV}" - -ALLOW_EMPTY_${PN} = "1" - -inherit autotools pkgconfig - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libcap/libcap_2.26.bb b/poky/meta/recipes-support/libcap/libcap_2.26.bb deleted file mode 100644 index 14841de4a..000000000 --- a/poky/meta/recipes-support/libcap/libcap_2.26.bb +++ /dev/null @@ -1,73 +0,0 @@ -SUMMARY = "Library for getting/setting POSIX.1e capabilities" -HOMEPAGE = "http://sites.google.com/site/fullycapable/" - -# no specific GPL version required -LICENSE = "BSD | GPLv2" -LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" - -DEPENDS = "hostperl-runtime-native gperf-native" - -SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \ - file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \ - " -SRC_URI[md5sum] = "968ac4d42a1a71754313527be2ab5df3" -SRC_URI[sha256sum] = "b630b7c484271b3ba867680d6a14b10a86cfa67247a14631b14c06731d5a458b" - -inherit lib_package - -# do NOT pass target cflags to host compilations -# -do_configure() { - # libcap uses := for compilers, fortunately, it gives us a hint - # on what should be replaced with ?= - sed -e 's,:=,?=,g' -i Make.Rules - sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules -} - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" -PACKAGECONFIG_class-native ??= "" - -PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" - -EXTRA_OEMAKE = " \ - INDENT= \ - lib='${baselib}' \ - RAISE_SETFCAP=no \ - DYNAMIC=yes \ - BUILD_GPERF=yes \ -" - -EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" - -# these are present in the libcap defaults, so include in our CFLAGS too -CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" - -do_compile() { - oe_runmake ${PACKAGECONFIG_CONFARGS} -} - -do_install() { - oe_runmake install \ - ${PACKAGECONFIG_CONFARGS} \ - DESTDIR="${D}" \ - prefix="${prefix}" \ - SBINDIR="${sbindir}" -} - -do_install_append() { - # Move the library to base_libdir - install -d ${D}${base_libdir} - if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then - mv ${D}${libdir}/libcap* ${D}${base_libdir} - if [ -d ${D}${libdir}/security ]; then - mv ${D}${libdir}/security ${D}${base_libdir} - fi - fi -} - -FILES_${PN}-dev += "${base_libdir}/*.so" - -# pam files -FILES_${PN} += "${base_libdir}/security/*.so" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libcap/libcap_2.27.bb b/poky/meta/recipes-support/libcap/libcap_2.27.bb new file mode 100644 index 000000000..4f3bac849 --- /dev/null +++ b/poky/meta/recipes-support/libcap/libcap_2.27.bb @@ -0,0 +1,73 @@ +SUMMARY = "Library for getting/setting POSIX.1e capabilities" +HOMEPAGE = "http://sites.google.com/site/fullycapable/" + +# no specific GPL version required +LICENSE = "BSD | GPLv2" +LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" + +DEPENDS = "hostperl-runtime-native gperf-native" + +SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \ + file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \ + " +SRC_URI[md5sum] = "2e8f9fab32eb5ccb37969fe317fd17aa" +SRC_URI[sha256sum] = "dac1792d0118bee6aae6ba7fb93ff1602c6a9bda812fd63916eee1435b9c486a" + +inherit lib_package + +# do NOT pass target cflags to host compilations +# +do_configure() { + # libcap uses := for compilers, fortunately, it gives us a hint + # on what should be replaced with ?= + sed -e 's,:=,?=,g' -i Make.Rules + sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules +} + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}" +PACKAGECONFIG_class-native ??= "" + +PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" + +EXTRA_OEMAKE = " \ + INDENT= \ + lib='${baselib}' \ + RAISE_SETFCAP=no \ + DYNAMIC=yes \ + BUILD_GPERF=yes \ +" + +EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" + +# these are present in the libcap defaults, so include in our CFLAGS too +CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64" + +do_compile() { + oe_runmake ${PACKAGECONFIG_CONFARGS} +} + +do_install() { + oe_runmake install \ + ${PACKAGECONFIG_CONFARGS} \ + DESTDIR="${D}" \ + prefix="${prefix}" \ + SBINDIR="${sbindir}" +} + +do_install_append() { + # Move the library to base_libdir + install -d ${D}${base_libdir} + if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then + mv ${D}${libdir}/libcap* ${D}${base_libdir} + if [ -d ${D}${libdir}/security ]; then + mv ${D}${libdir}/security ${D}${base_libdir} + fi + fi +} + +FILES_${PN}-dev += "${base_libdir}/*.so" + +# pam files +FILES_${PN} += "${base_libdir}/security/*.so" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7960.patch b/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7960.patch deleted file mode 100644 index f6f43c3d2..000000000 --- a/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7960.patch +++ /dev/null @@ -1,56 +0,0 @@ -input: check end of input before reading a byte - -When reading bytes we weren't check that the index wasn't -out of bound and this could produce an invalid read which -could deal to a security bug. - -Upstream-Status: Backport[https://gitlab.gnome.org/GNOME/libcroco/ - commit/898e3a8c8c0314d2e6b106809a8e3e93cf9d4394] - -CVE: CVE-2017-7960 - -Signed-off-by: Changqing Li - -diff --git a/src/cr-input.c b/src/cr-input.c -index 49000b1f5f07fe057135f1b8fc69bdcf9613e300..3b63a88ee3b1c56778e58172d147d958951bf099 100644 ---- a/src/cr-input.c -+++ b/src/cr-input.c -@@ -256,7 +256,7 @@ cr_input_new_from_uri (const gchar * a_file_uri, enum CREncoding a_enc) - *we should free buf here because it's own by CRInput. - *(see the last parameter of cr_input_new_from_buf(). - */ -- buf = NULL ; -+ buf = NULL; - } - - cleanup: -@@ -404,6 +404,8 @@ cr_input_get_nb_bytes_left (CRInput const * a_this) - enum CRStatus - cr_input_read_byte (CRInput * a_this, guchar * a_byte) - { -+ gulong nb_bytes_left = 0; -+ - g_return_val_if_fail (a_this && PRIVATE (a_this) - && a_byte, CR_BAD_PARAM_ERROR); - -@@ -413,6 +415,12 @@ cr_input_read_byte (CRInput * a_this, guchar * a_byte) - if (PRIVATE (a_this)->end_of_input == TRUE) - return CR_END_OF_INPUT_ERROR; - -+ nb_bytes_left = cr_input_get_nb_bytes_left (a_this); -+ -+ if (nb_bytes_left < 1) { -+ return CR_END_OF_INPUT_ERROR; -+ } -+ - *a_byte = PRIVATE (a_this)->in_buf[PRIVATE (a_this)->next_byte_index]; - - if (PRIVATE (a_this)->nb_bytes - -@@ -477,7 +485,6 @@ cr_input_read_char (CRInput * a_this, guint32 * a_char) - if (*a_char == '\n') { - PRIVATE (a_this)->end_of_line = TRUE; - } -- - } - - return status; diff --git a/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7961.patch b/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7961.patch deleted file mode 100644 index 35471ec7e..000000000 --- a/poky/meta/recipes-support/libcroco/libcroco/CVE-2017-7961.patch +++ /dev/null @@ -1,45 +0,0 @@ -CVE: CVE-2017-7961 -Upstream-Status: Backport -Signed-off-by: Ross Burton - -From 9ad72875e9f08e4c519ef63d44cdbd94aa9504f7 Mon Sep 17 00:00:00 2001 -From: Ignacio Casal Quinteiro -Date: Sun, 16 Apr 2017 13:56:09 +0200 -Subject: [PATCH] tknzr: support only max long rgb values - -This fixes a possible out of bound when reading rgbs which -are longer than the support MAXLONG ---- - src/cr-tknzr.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - -diff --git a/src/cr-tknzr.c b/src/cr-tknzr.c -index 1a7cfeb..1548c35 100644 ---- a/src/cr-tknzr.c -+++ b/src/cr-tknzr.c -@@ -1279,6 +1279,11 @@ cr_tknzr_parse_rgb (CRTknzr * a_this, CRRgb ** a_rgb) - status = cr_tknzr_parse_num (a_this, &num); - ENSURE_PARSING_COND ((status == CR_OK) && (num != NULL)); - -+ if (num->val > G_MAXLONG) { -+ status = CR_PARSING_ERROR; -+ goto error; -+ } -+ - red = num->val; - cr_num_destroy (num); - num = NULL; -@@ -1298,6 +1303,11 @@ cr_tknzr_parse_rgb (CRTknzr * a_this, CRRgb ** a_rgb) - status = cr_tknzr_parse_num (a_this, &num); - ENSURE_PARSING_COND ((status == CR_OK) && (num != NULL)); - -+ if (num->val > G_MAXLONG) { -+ status = CR_PARSING_ERROR; -+ goto error; -+ } -+ - PEEK_BYTE (a_this, 1, &next_bytes[0]); - if (next_bytes[0] == '%') { - SKIP_CHARS (a_this, 1); --- -2.18.1 diff --git a/poky/meta/recipes-support/libcroco/libcroco_0.6.12.bb b/poky/meta/recipes-support/libcroco/libcroco_0.6.12.bb deleted file mode 100644 index f95a58313..000000000 --- a/poky/meta/recipes-support/libcroco/libcroco_0.6.12.bb +++ /dev/null @@ -1,24 +0,0 @@ -SUMMARY = "Cascading Style Sheet (CSS) parsing and manipulation toolkit" -HOMEPAGE = "http://www.gnome.org/" -BUGTRACKER = "https://bugzilla.gnome.org/" - -LICENSE = "LGPLv2 & LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \ - file://src/cr-rgb.c;endline=22;md5=31d5f0944d556c8589d04ea6055fcc66 \ - file://tests/cr-test-utils.c;endline=21;md5=2382c27934cae1d3792fcb17a6142c4e" - -SECTION = "x11/utils" -DEPENDS = "glib-2.0 libxml2 zlib" -BBCLASSEXTEND = "native nativesdk" -EXTRA_OECONF += "--enable-Bsymbolic=auto" - -BINCONFIG = "${bindir}/croco-0.6-config" - -inherit gnomebase gtk-doc binconfig-disabled - -SRC_URI += "file://CVE-2017-7960.patch \ - file://CVE-2017-7961.patch \ - " - -SRC_URI[archive.md5sum] = "bc0984fce078ba2ce29f9500c6b9ddce" -SRC_URI[archive.sha256sum] = "ddc4b5546c9fb4280a5017e2707fbd4839034ed1aba5b7d4372212f34f84f860" diff --git a/poky/meta/recipes-support/libcroco/libcroco_0.6.13.bb b/poky/meta/recipes-support/libcroco/libcroco_0.6.13.bb new file mode 100644 index 000000000..9171a9de5 --- /dev/null +++ b/poky/meta/recipes-support/libcroco/libcroco_0.6.13.bb @@ -0,0 +1,20 @@ +SUMMARY = "Cascading Style Sheet (CSS) parsing and manipulation toolkit" +HOMEPAGE = "http://www.gnome.org/" +BUGTRACKER = "https://bugzilla.gnome.org/" + +LICENSE = "LGPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \ + file://src/cr-rgb.c;endline=22;md5=31d5f0944d556c8589d04ea6055fcc66 \ + file://tests/cr-test-utils.c;endline=21;md5=2382c27934cae1d3792fcb17a6142c4e" + +SECTION = "x11/utils" +DEPENDS = "glib-2.0 libxml2 zlib" +BBCLASSEXTEND = "native nativesdk" +EXTRA_OECONF += "--enable-Bsymbolic=auto" + +BINCONFIG = "${bindir}/croco-0.6-config" + +inherit gnomebase gtk-doc binconfig-disabled + +SRC_URI[archive.md5sum] = "c80c5a8385011a0260dce6bd0da93dce" +SRC_URI[archive.sha256sum] = "767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4" diff --git a/poky/meta/recipes-support/libgpg-error/libgpg-error_1.35.bb b/poky/meta/recipes-support/libgpg-error/libgpg-error_1.35.bb deleted file mode 100644 index 57ac143fd..000000000 --- a/poky/meta/recipes-support/libgpg-error/libgpg-error_1.35.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "Small library that defines common error values for all GnuPG components" -HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/" -BUGTRACKER = "https://bugs.g10code.com/gnupg/index" - -LICENSE = "GPLv2+ & LGPLv2.1+" -LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ - file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ - file://src/gpg-error.h.in;beginline=2;endline=18;md5=cd91e3ad1265a0c268efad541a39345e \ - file://src/init.c;beginline=2;endline=17;md5=f01cdfcf747af5380590cfd9bbfeaaf7" - - -SECTION = "libs" - -UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" -SRC_URI = "${GNUPG_MIRROR}/libgpg-error/libgpg-error-${PV}.tar.bz2 \ - file://pkgconfig.patch \ - " - -SRC_URI[md5sum] = "2808a9e044f883f7554c5ba6a380b711" -SRC_URI[sha256sum] = "cbd5ee62a8a8c88d48c158fff4fc9ead4132aacd1b4a56eb791f9f997d07e067" - -BINCONFIG = "${bindir}/gpg-error-config" - -inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script - -MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config" - -CPPFLAGS += "-P" -do_compile_prepend() { - TARGET_FILE=linux-gnu - if [ ${TARGET_OS} = "mingw32" ]; then - # There are no arch specific syscfg files for mingw32 - TARGET_FILE= - elif [ ${TARGET_ARCH} = "arc" ]; then - # ARC syscfg file is automatically aliased to i686-pc-linux-gnu - TARGET_FILE= - elif [ ${TARGET_OS} != "linux" ]; then - TARGET_FILE=${TARGET_OS} - fi - - case ${TARGET_ARCH} in - aarch64_be) TUPLE=aarch64-unknown-linux-gnu ;; - arm) TUPLE=arm-unknown-linux-gnueabi ;; - armeb) TUPLE=arm-unknown-linux-gnueabi ;; - i586|i686) TUPLE=i686-unknown-linux-gnu;; - mips64*) TUPLE=mips64el-unknown-linux-gnuabi64 ;; - mips*el) TUPLE=mipsel-unknown-linux-gnu ;; - mips*) TUPLE=mips-unknown-linux-gnu ;; - x86_64) TUPLE=x86_64-unknown-linux-gnu ;; - ppc) TUPLE=powerpc-unknown-linux-gnu ;; - ppc64) TUPLE=powerpc64-unknown-linux-gnu ;; - ppc64le) TUPLE=powerpc64le-unknown-linux-gnu ;; - *) TUPLE=${TARGET_ARCH}-unknown-linux-gnu ;; - esac - - if [ -n "$TARGET_FILE" ]; then - cp ${S}/src/syscfg/lock-obj-pub.$TUPLE.h \ - ${S}/src/syscfg/lock-obj-pub.$TARGET_FILE.h - fi -} - -do_install_append() { - # we don't have common lisp in OE - rm -rf "${D}${datadir}/common-lisp/" - oe_multilib_header gpg-error.h gpgrt.h -} - -FILES_${PN}-dev += "${bindir}/gpg-error" -FILES_${PN}-doc += "${datadir}/libgpg-error/errorref.txt" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libgpg-error/libgpg-error_1.36.bb b/poky/meta/recipes-support/libgpg-error/libgpg-error_1.36.bb new file mode 100644 index 000000000..2db544a12 --- /dev/null +++ b/poky/meta/recipes-support/libgpg-error/libgpg-error_1.36.bb @@ -0,0 +1,71 @@ +SUMMARY = "Small library that defines common error values for all GnuPG components" +HOMEPAGE = "http://www.gnupg.org/related_software/libgpg-error/" +BUGTRACKER = "https://bugs.g10code.com/gnupg/index" + +LICENSE = "GPLv2+ & LGPLv2.1+" +LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552 \ + file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \ + file://src/gpg-error.h.in;beginline=2;endline=18;md5=cd91e3ad1265a0c268efad541a39345e \ + file://src/init.c;beginline=2;endline=17;md5=f01cdfcf747af5380590cfd9bbfeaaf7" + + +SECTION = "libs" + +UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html" +SRC_URI = "${GNUPG_MIRROR}/libgpg-error/libgpg-error-${PV}.tar.bz2 \ + file://pkgconfig.patch \ + " + +SRC_URI[md5sum] = "eff437f397e858a9127b76c0d87fa5ed" +SRC_URI[sha256sum] = "babd98437208c163175c29453f8681094bcaf92968a15cafb1a276076b33c97c" + +BINCONFIG = "${bindir}/gpg-error-config" + +inherit autotools binconfig-disabled pkgconfig gettext multilib_header multilib_script + +MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/gpgrt-config" + +CPPFLAGS += "-P" +do_compile_prepend() { + TARGET_FILE=linux-gnu + if [ ${TARGET_OS} = "mingw32" ]; then + # There are no arch specific syscfg files for mingw32 + TARGET_FILE= + elif [ ${TARGET_ARCH} = "arc" ]; then + # ARC syscfg file is automatically aliased to i686-pc-linux-gnu + TARGET_FILE= + elif [ ${TARGET_OS} != "linux" ]; then + TARGET_FILE=${TARGET_OS} + fi + + case ${TARGET_ARCH} in + aarch64_be) TUPLE=aarch64-unknown-linux-gnu ;; + arm) TUPLE=arm-unknown-linux-gnueabi ;; + armeb) TUPLE=arm-unknown-linux-gnueabi ;; + i586|i686) TUPLE=i686-unknown-linux-gnu;; + mips64*) TUPLE=mips64el-unknown-linux-gnuabi64 ;; + mips*el) TUPLE=mipsel-unknown-linux-gnu ;; + mips*) TUPLE=mips-unknown-linux-gnu ;; + x86_64) TUPLE=x86_64-unknown-linux-gnu ;; + ppc) TUPLE=powerpc-unknown-linux-gnu ;; + ppc64) TUPLE=powerpc64-unknown-linux-gnu ;; + ppc64le) TUPLE=powerpc64le-unknown-linux-gnu ;; + *) TUPLE=${TARGET_ARCH}-unknown-linux-gnu ;; + esac + + if [ -n "$TARGET_FILE" ]; then + cp ${S}/src/syscfg/lock-obj-pub.$TUPLE.h \ + ${S}/src/syscfg/lock-obj-pub.$TARGET_FILE.h + fi +} + +do_install_append() { + # we don't have common lisp in OE + rm -rf "${D}${datadir}/common-lisp/" + oe_multilib_header gpg-error.h gpgrt.h +} + +FILES_${PN}-dev += "${bindir}/gpg-error" +FILES_${PN}-doc += "${datadir}/libgpg-error/errorref.txt" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libpsl/libpsl_0.20.2.bb b/poky/meta/recipes-support/libpsl/libpsl_0.20.2.bb deleted file mode 100644 index 5cb20d46b..000000000 --- a/poky/meta/recipes-support/libpsl/libpsl_0.20.2.bb +++ /dev/null @@ -1,20 +0,0 @@ -SUMMARY = "Public Suffix List library" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=5437030d9e4fbe7267ced058ddb8a7f5 \ - file://COPYING;md5=f41d10997a12da5ee3c24ceeb0148d18" - -SRC_URI = "https://github.com/rockdaboot/${BPN}/releases/download/${BP}/${BP}.tar.gz" -SRC_URI[md5sum] = "f604f7d30d64bc673870ecf84b860a1e" -SRC_URI[sha256sum] = "f8fd0aeb66252dfcc638f14d9be1e2362fdaf2ca86bde0444ff4d5cc961b560f" - -UPSTREAM_CHECK_URI = "https://github.com/rockdaboot/libpsl/releases" - -DEPENDS = "libidn2" - -inherit autotools gettext gtk-doc manpages pkgconfig lib_package - -PACKAGECONFIG ??= "" -PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libpsl/libpsl_0.21.0.bb b/poky/meta/recipes-support/libpsl/libpsl_0.21.0.bb new file mode 100644 index 000000000..f545ba076 --- /dev/null +++ b/poky/meta/recipes-support/libpsl/libpsl_0.21.0.bb @@ -0,0 +1,20 @@ +SUMMARY = "Public Suffix List library" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=5437030d9e4fbe7267ced058ddb8a7f5 \ + file://COPYING;md5=f41d10997a12da5ee3c24ceeb0148d18" + +SRC_URI = "https://github.com/rockdaboot/${BPN}/releases/download/${BP}/${BP}.tar.gz" +SRC_URI[md5sum] = "171e96d887709e36a57f4ee627bf82d2" +SRC_URI[sha256sum] = "41bd1c75a375b85c337b59783f5deb93dbb443fb0a52d257f403df7bd653ee12" + +UPSTREAM_CHECK_URI = "https://github.com/rockdaboot/libpsl/releases" + +DEPENDS = "libidn2" + +inherit autotools gettext gtk-doc manpages pkgconfig lib_package + +PACKAGECONFIG ??= "" +PACKAGECONFIG[manpages] = "--enable-man,--disable-man,libxslt-native" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch b/poky/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch index 72b029a80..cd6de853e 100644 --- a/poky/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch +++ b/poky/meta/recipes-support/libsoup/libsoup-2.4/0001-Do-not-enforce-no-introspection-when-cross-building.patch @@ -1,24 +1,28 @@ -From 921888affe66953c92a08ae440e911b016b124be Mon Sep 17 00:00:00 2001 +From 85f7b74fc602214297928afe09347c31d696173d Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 15 Feb 2019 14:21:06 +0100 Subject: [PATCH] Do not enforce no-introspection when cross-building Upstream-Status: Pending Signed-off-by: Alexander Kanavin +Signed-off-by: Alistair Francis --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meson.build b/meson.build -index 5a92cda..cfb3520 100644 +index 25887f9..6261a7c 100644 --- a/meson.build +++ b/meson.build -@@ -262,7 +262,7 @@ enable_gnome = get_option('gnome') and host_machine.system() != 'windows' - ######################### - # GObject introspection # - ######################### --enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found() and not meson.is_cross_build() -+enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found() +@@ -281,7 +281,7 @@ enable_gnome = get_option('gnome') and host_machine.system() != 'windows' + # FIXME: once we start to require meson 0.49.0+ and gnome-introspection 1.58.1+ + # the we can enable the introspection even for the static build. See + # https://github.com/mesonbuild/meson/pull/4478. +-enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found() and not meson.is_cross_build() and not is_static_library ++enable_introspection = get_option('introspection') and find_program('g-ir-scanner', required: false).found() and not is_static_library ############ # Vala API # +-- +2.20.1 + diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb deleted file mode 100644 index ae7c1a686..000000000 --- a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.64.2.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "An HTTP library implementation in C" -HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" -BUGTRACKER = "https://bugzilla.gnome.org/" -SECTION = "x11/gnome/libs" -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" - -DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" - -SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" - -SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \ - file://0001-Do-not-enforce-no-introspection-when-cross-building.patch \ - " -SRC_URI[md5sum] = "cac755dc6c6acd6e0c70007f547548f5" -SRC_URI[sha256sum] = "75ddc194a5b1d6f25033bb9d355f04bfe5c03e0e1c71ed0774104457b3a786c6" - -S = "${WORKDIR}/libsoup-${PV}" - -inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc - -# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. -PACKAGECONFIG ??= "" -PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" -PACKAGECONFIG[gssapi] = "-Dgssapi=true,-Dgssapi=false,krb5" - -EXTRA_OEMESON_append = " -Dvapi=false" - -GTKDOC_ENABLE_FLAG = "-Ddoc=true" -GTKDOC_DISABLE_FLAG = "-Ddoc=false" - -GI_ENABLE_FLAG = "-Dintrospection=true" -GI_DISABLE_FLAG = "-Dintrospection=false" - -EXTRA_OEMESON_append_class-nativesdk = " ${GI_DISABLE_FLAG}" - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GI_DATA_ENABLED', 'True', '${GI_ENABLE_FLAG}', \ - '${GI_DISABLE_FLAG}', d)} " - -EXTRA_OEMESON_append_class-target = " ${@bb.utils.contains('GTKDOC_ENABLED', 'True', '${GTKDOC_ENABLE_FLAG}', \ - '${GTKDOC_DISABLE_FLAG}', d)} " - - -# When built without gnome support, libsoup-2.4 will contain only one shared lib -# and will therefore become subject to renaming by debian.bbclass. Prevent -# renaming in order to keep the package name consistent regardless of whether -# gnome support is enabled or disabled. -DEBIAN_NOAUTONAME_${PN} = "1" - -# glib-networking is needed for SSL, proxies, etc. -RRECOMMENDS_${PN} = "glib-networking" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.66.1.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.66.1.bb new file mode 100644 index 000000000..f0043f80b --- /dev/null +++ b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.66.1.bb @@ -0,0 +1,38 @@ +SUMMARY = "An HTTP library implementation in C" +HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" +BUGTRACKER = "https://bugzilla.gnome.org/" +SECTION = "x11/gnome/libs" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" + +DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" + +SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \ + file://0001-Do-not-enforce-no-introspection-when-cross-building.patch \ + " +SRC_URI[md5sum] = "5f04c09a06f6dbe4c4d3f003992145ce" +SRC_URI[sha256sum] = "4a2cb6c1174540af13661636035992c2b179dfcb39f4d3fa7bee3c7e355c43ff" + +S = "${WORKDIR}/libsoup-${PV}" + +inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc + +# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. +PACKAGECONFIG ??= "" +PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" +PACKAGECONFIG[gssapi] = "-Dgssapi=true,-Dgssapi=false,krb5" + +EXTRA_OEMESON_append = " -Dvapi=false" + +GTKDOC_MESON_OPTION = "doc" + +# When built without gnome support, libsoup-2.4 will contain only one shared lib +# and will therefore become subject to renaming by debian.bbclass. Prevent +# renaming in order to keep the package name consistent regardless of whether +# gnome support is enabled or disabled. +DEBIAN_NOAUTONAME_${PN} = "1" + +# glib-networking is needed for SSL, proxies, etc. +RRECOMMENDS_${PN} = "glib-networking" diff --git a/poky/meta/recipes-support/libyaml/libyaml_0.2.1.bb b/poky/meta/recipes-support/libyaml/libyaml_0.2.1.bb deleted file mode 100644 index d77891825..000000000 --- a/poky/meta/recipes-support/libyaml/libyaml_0.2.1.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "LibYAML is a YAML 1.1 parser and emitter written in C." -DESCRIPTION = "LibYAML is a C library for parsing and emitting data in YAML 1.1, \ -a human-readable data serialization format. " -HOMEPAGE = "http://pyyaml.org/wiki/LibYAML" -SECTION = "libs/devel" - -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=5591701d32590f9fa94f3bfee820b634" - -SRC_URI = "http://pyyaml.org/download/libyaml/yaml-${PV}.tar.gz" -SRC_URI[md5sum] = "72724b9736923c517e5a8fc6757ef03d" -SRC_URI[sha256sum] = "78281145641a080fb32d6e7a87b9c0664d611dcb4d542e90baf731f51cbb59cd" - -S = "${WORKDIR}/yaml-${PV}" - -inherit autotools - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/libyaml/libyaml_0.2.2.bb b/poky/meta/recipes-support/libyaml/libyaml_0.2.2.bb new file mode 100644 index 000000000..fbd199205 --- /dev/null +++ b/poky/meta/recipes-support/libyaml/libyaml_0.2.2.bb @@ -0,0 +1,18 @@ +SUMMARY = "LibYAML is a YAML 1.1 parser and emitter written in C." +DESCRIPTION = "LibYAML is a C library for parsing and emitting data in YAML 1.1, \ +a human-readable data serialization format. " +HOMEPAGE = "http://pyyaml.org/wiki/LibYAML" +SECTION = "libs/devel" + +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=a76b4c69bfcf82313bbdc0393b04438a" + +SRC_URI = "http://pyyaml.org/download/libyaml/yaml-${PV}.tar.gz" +SRC_URI[md5sum] = "54bf11ccb8bc488b5b3bec931f5b70dc" +SRC_URI[sha256sum] = "4a9100ab61047fd9bd395bcef3ce5403365cafd55c1e0d0299cde14958e47be9" + +S = "${WORKDIR}/yaml-${PV}" + +inherit autotools + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/lz4/lz4_1.8.3.bb b/poky/meta/recipes-support/lz4/lz4_1.8.3.bb deleted file mode 100644 index 125836f7b..000000000 --- a/poky/meta/recipes-support/lz4/lz4_1.8.3.bb +++ /dev/null @@ -1,27 +0,0 @@ -SUMMARY = "Extremely Fast Compression algorithm" -DESCRIPTION = "LZ4 is a very fast lossless compression algorithm, providing compression speed at 400 MB/s per core, scalable with multi-cores CPU. It also features an extremely fast decoder, with speed in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems." - -LICENSE = "BSD | BSD-2-Clause | GPL-2.0" -LIC_FILES_CHKSUM = "file://lib/LICENSE;md5=ebc2ea4814a64de7708f1571904b32cc \ - file://programs/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://LICENSE;md5=d57c0d21cb917fb4e0af2454aa48b956 \ - " - -PE = "1" - -SRCREV = "641b453d9db536ee020851bfcb1dc39f61006f0a" - -SRC_URI = "git://github.com/lz4/lz4.git \ - file://run-ptest \ - " -UPSTREAM_CHECK_GITTAGREGEX = "v(?P.*)" - -S = "${WORKDIR}/git" - -EXTRA_OEMAKE = "PREFIX=${prefix} CC='${CC}' DESTDIR=${D} LIBDIR=${libdir} INCLUDEDIR=${includedir}" - -do_install() { - oe_runmake install -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/lz4/lz4_1.9.0.bb b/poky/meta/recipes-support/lz4/lz4_1.9.0.bb new file mode 100644 index 000000000..744a1bf47 --- /dev/null +++ b/poky/meta/recipes-support/lz4/lz4_1.9.0.bb @@ -0,0 +1,27 @@ +SUMMARY = "Extremely Fast Compression algorithm" +DESCRIPTION = "LZ4 is a very fast lossless compression algorithm, providing compression speed at 400 MB/s per core, scalable with multi-cores CPU. It also features an extremely fast decoder, with speed in multiple GB/s per core, typically reaching RAM speed limits on multi-core systems." + +LICENSE = "BSD | BSD-2-Clause | GPL-2.0" +LIC_FILES_CHKSUM = "file://lib/LICENSE;md5=ebc2ea4814a64de7708f1571904b32cc \ + file://programs/COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://LICENSE;md5=d57c0d21cb917fb4e0af2454aa48b956 \ + " + +PE = "1" + +SRCREV = "131896ab9d4fc9b8c606616327ed223d5d86472b" + +SRC_URI = "git://github.com/lz4/lz4.git \ + file://run-ptest \ + " +UPSTREAM_CHECK_GITTAGREGEX = "v(?P.*)" + +S = "${WORKDIR}/git" + +EXTRA_OEMAKE = "PREFIX=${prefix} CC='${CC}' DESTDIR=${D} LIBDIR=${libdir} INCLUDEDIR=${includedir}" + +do_install() { + oe_runmake install +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/nettle/nettle-3.4.1/dlopen-test.patch b/poky/meta/recipes-support/nettle/nettle-3.4.1/dlopen-test.patch index c4f0b7ea1..fea577420 100644 --- a/poky/meta/recipes-support/nettle/nettle-3.4.1/dlopen-test.patch +++ b/poky/meta/recipes-support/nettle/nettle-3.4.1/dlopen-test.patch @@ -1,4 +1,4 @@ -Replace relative path of libnettle.so with absolute path so the test +Remove the relative path for libnettle.so so the test program can find it. Relative paths are not suitable, as the folder strucure for ptest is different from the one expected by the nettle testsuite. @@ -6,6 +6,7 @@ is different from the one expected by the nettle testsuite. Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Juro Bystricky +Signed-off-by: Mingli Yu --- a/testsuite/dlopen-test.c 2016-10-01 00:28:38.000000000 -0700 +++ b/testsuite/dlopen-test.c 2017-10-13 11:08:57.227572860 -0700 @@ -14,7 +15,7 @@ Signed-off-by: Juro Bystricky { #if HAVE_LIBDL - void *handle = dlopen ("../libnettle.so", RTLD_NOW); -+ void *handle = dlopen ("/usr/lib/libnettle.so", RTLD_NOW); ++ void *handle = dlopen ("libnettle.so", RTLD_NOW); int (*get_version)(void); if (!handle) { diff --git a/poky/meta/recipes-support/nettle/nettle_3.4.1.bb b/poky/meta/recipes-support/nettle/nettle_3.4.1.bb index dd49c30c8..cd8024f79 100644 --- a/poky/meta/recipes-support/nettle/nettle_3.4.1.bb +++ b/poky/meta/recipes-support/nettle/nettle_3.4.1.bb @@ -30,7 +30,7 @@ inherit autotools ptest multilib_header EXTRA_AUTORECONF += "--exclude=aclocal" EXTRA_OECONF = "--disable-openssl" -CFLAGS_append = " -std=c99" +CFLAGS_append = " -std=gnu99" do_compile_ptest() { oe_runmake buildtest @@ -49,4 +49,7 @@ do_install_ptest() { install ${B}/testsuite/*-test ${D}${PTEST_PATH}/testsuite/ } +RDEPENDS_${PN}-ptest += "${PN}-dev" +INSANE_SKIP_${PN}-ptest += "dev-deps" + BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/nss/nss_3.42.1.bb b/poky/meta/recipes-support/nss/nss_3.42.1.bb deleted file mode 100644 index b6bbd800f..000000000 --- a/poky/meta/recipes-support/nss/nss_3.42.1.bb +++ /dev/null @@ -1,264 +0,0 @@ -SUMMARY = "Mozilla's SSL and TLS implementation" -DESCRIPTION = "Network Security Services (NSS) is a set of libraries \ -designed to support cross-platform development of \ -security-enabled client and server applications. \ -Applications built with NSS can support SSL v2 and v3, \ -TLS, PKCS 5, PKCS 7, PKCS 11, PKCS 12, S/MIME, X.509 \ -v3 certificates, and other security standards." -HOMEPAGE = "http://www.mozilla.org/projects/security/pki/nss/" -SECTION = "libs" - -LICENSE = "MPL-2.0 | (MPL-2.0 & GPL-2.0+) | (MPL-2.0 & LGPL-2.1+)" - -LIC_FILES_CHKSUM = "file://nss/COPYING;md5=3b1e88e1b9c0b5a4b2881d46cce06a18 \ - file://nss/lib/freebl/mpi/doc/LICENSE;md5=491f158d09d948466afce85d6f1fe18f \ - file://nss/lib/freebl/mpi/doc/LICENSE-MPL;md5=5d425c8f3157dbf212db2ec53d9e5132" - -VERSION_DIR = "${@d.getVar('BP').upper().replace('-', '_').replace('.', '_') + '_RTM'}" - -SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${VERSION_DIR}/src/${BP}.tar.gz \ - file://nss.pc.in \ - file://signlibs.sh \ - file://0001-nss-fix-support-cross-compiling.patch \ - file://nss-no-rpath-for-cross-compiling.patch \ - file://nss-fix-incorrect-shebang-of-perl.patch \ - file://nss-fix-nsinstall-build.patch \ - file://disable-Wvarargs-with-clang.patch \ - file://pqg.c-ULL_addend.patch \ - file://blank-cert9.db \ - file://blank-key4.db \ - file://system-pkcs11.txt \ - " - -SRC_URI[md5sum] = "1f6cc6c702379478a3a72298caaef0a7" -SRC_URI[sha256sum] = "087db37d38fd49dfd584dd2a8b5baa7fc88de7c9bd97c0c2d5be4abcafc61fc6" - -UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases" -UPSTREAM_CHECK_REGEX = "NSS_(?P.+)_release_notes" - -inherit siteinfo - -DEPENDS = "sqlite3 nspr zlib nss-native" -DEPENDS_class-native = "sqlite3-native nspr-native zlib-native" -RDEPENDS_${PN}-smime = "perl" - -TD = "${S}/tentative-dist" -TDS = "${S}/tentative-dist-staging" - -TARGET_CC_ARCH += "${LDFLAGS}" - -do_configure_prepend_libc-musl () { - sed -i -e '/-DHAVE_SYS_CDEFS_H/d' ${S}/nss/lib/dbm/config/config.mk -} - -do_compile_prepend_class-native() { - export NSPR_INCLUDE_DIR=${STAGING_INCDIR_NATIVE} - export NSPR_LIB_DIR=${STAGING_LIBDIR_NATIVE} - export NSS_ENABLE_WERROR=0 -} - -do_compile_prepend_class-nativesdk() { - export LDFLAGS="" -} - -do_compile_prepend_class-native() { - # Need to set RPATH so that chrpath will do its job correctly - RPATH="-Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} -Wl,-rpath-link,${STAGING_BASE_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_BASE_LIBDIR_NATIVE}" -} - -do_compile() { - export CROSS_COMPILE=1 - export NATIVE_CC="${BUILD_CC}" - export NATIVE_FLAGS="${BUILD_CFLAGS}" - export BUILD_OPT=1 - - export FREEBL_NO_DEPEND=1 - export FREEBL_LOWHASH=1 - - export LIBDIR=${libdir} - export MOZILLA_CLIENT=1 - export NS_USE_GCC=1 - export NSS_USE_SYSTEM_SQLITE=1 - export NSS_ENABLE_ECC=1 - - export OS_RELEASE=3.4 - export OS_TARGET=Linux - export OS_ARCH=Linux - - if [ "${TARGET_ARCH}" = "powerpc" ]; then - OS_TEST=ppc - elif [ "${TARGET_ARCH}" = "powerpc64" ]; then - OS_TEST=ppc64 - elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then - OS_TEST=mips - elif [ "${TARGET_ARCH}" = "aarch64_be" ]; then - OS_TEST="aarch64" - else - OS_TEST="${TARGET_ARCH}" - fi - - if [ "${SITEINFO_BITS}" = "64" ]; then - export USE_64=1 - elif [ "${TARGET_ARCH}" = "x86_64" -a "${SITEINFO_BITS}" = "32" ]; then - export USE_X32=1 - fi - - export NSS_DISABLE_GTESTS=1 - - # We can modify CC in the environment, but if we set it via an - # argument to make, nsinstall, a host program, will also build with it! - # - # nss pretty much does its own thing with CFLAGS, so we put them into CC. - # Optimization will get clobbered, but most of the stuff will survive. - # The motivation for this is to point to the correct place for debug - # source files and CFLAGS does that. Nothing uses CCC. - # - export CC="${CC} ${CFLAGS}" - make -C ./nss CCC="${CXX} -g" \ - OS_TEST=${OS_TEST} \ - RPATH="${RPATH}" -} -do_compile[vardepsexclude] += "SITEINFO_BITS" - - -do_install_prepend_class-nativesdk() { - export LDFLAGS="" -} - -do_install() { - export CROSS_COMPILE=1 - export NATIVE_CC="${BUILD_CC}" - export BUILD_OPT=1 - - export FREEBL_NO_DEPEND=1 - - export LIBDIR=${libdir} - export MOZILLA_CLIENT=1 - export NS_USE_GCC=1 - export NSS_USE_SYSTEM_SQLITE=1 - export NSS_ENABLE_ECC=1 - - export OS_RELEASE=3.4 - export OS_TARGET=Linux - export OS_ARCH=Linux - - if [ "${TARGET_ARCH}" = "powerpc" ]; then - OS_TEST=ppc - elif [ "${TARGET_ARCH}" = "powerpc64" ]; then - OS_TEST=ppc64 - elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then - OS_TEST=mips - elif [ "${TARGET_ARCH}" = "aarch64_be" ]; then - CPU_ARCH=aarch64 - OS_TEST="aarch64" - else - OS_TEST="${TARGET_ARCH}" - fi - if [ "${SITEINFO_BITS}" = "64" ]; then - export USE_64=1 - elif [ "${TARGET_ARCH}" = "x86_64" -a "${SITEINFO_BITS}" = "32" ]; then - export USE_X32=1 - fi - - export NSS_DISABLE_GTESTS=1 - - make -C ./nss \ - CCC="${CXX}" \ - OS_TEST=${OS_TEST} \ - SOURCE_LIB_DIR="${TD}/${libdir}" \ - SOURCE_BIN_DIR="${TD}/${bindir}" \ - install - - install -d ${D}/${libdir}/ - for file in ${S}/dist/*.OBJ/lib/*.so; do - echo "Installing `basename $file`..." - cp $file ${D}/${libdir}/ - done - - for shared_lib in ${TD}/${libdir}/*.so.*; do - if [ -f $shared_lib ]; then - cp $shared_lib ${D}/${libdir} - ln -sf $(basename $shared_lib) ${D}/${libdir}/$(basename $shared_lib .1oe) - fi - done - for shared_lib in ${TD}/${libdir}/*.so; do - if [ -f $shared_lib -a ! -e ${D}/${libdir}/$shared_lib ]; then - cp $shared_lib ${D}/${libdir} - fi - done - - install -d ${D}/${includedir}/nss3 - install -m 644 -t ${D}/${includedir}/nss3 dist/public/nss/* - - install -d ${D}/${bindir} - for binary in ${TD}/${bindir}/*; do - install -m 755 -t ${D}/${bindir} $binary - done -} -do_install[vardepsexclude] += "SITEINFO_BITS" - -do_install_append() { - # Create empty .chk files for the NSS libraries at build time. They could - # be regenerated at target's boot time. - for file in libsoftokn3.chk libfreebl3.chk libnssdbm3.chk; do - touch ${D}/${libdir}/$file - chmod 755 ${D}/${libdir}/$file - done - install -D -m 755 ${WORKDIR}/signlibs.sh ${D}/${bindir}/signlibs.sh - - install -d ${D}${libdir}/pkgconfig/ - sed 's/%NSS_VERSION%/${PV}/' ${WORKDIR}/nss.pc.in | sed 's/%NSPR_VERSION%/4.9.2/' > ${D}${libdir}/pkgconfig/nss.pc - sed -i s:OEPREFIX:${prefix}:g ${D}${libdir}/pkgconfig/nss.pc - sed -i s:OEEXECPREFIX:${exec_prefix}:g ${D}${libdir}/pkgconfig/nss.pc - sed -i s:OELIBDIR:${libdir}:g ${D}${libdir}/pkgconfig/nss.pc - sed -i s:OEINCDIR:${includedir}/nss3:g ${D}${libdir}/pkgconfig/nss.pc -} - -do_install_append_class-target() { - # It used to call certutil to create a blank certificate with empty password at - # build time, but the checksum of key4.db changes every time when certutil is called. - # It causes non-determinism issue, so provide databases with a blank certificate - # which are originally from output of nss in qemux86-64 build. You can get these - # databases by: - # certutil -N -d sql:/database/path/ --empty-password - install -d ${D}${sysconfdir}/pki/nssdb/ - install -m 0644 ${WORKDIR}/blank-cert9.db ${D}${sysconfdir}/pki/nssdb/cert9.db - install -m 0644 ${WORKDIR}/blank-key4.db ${D}${sysconfdir}/pki/nssdb/key4.db - install -m 0644 ${WORKDIR}/system-pkcs11.txt ${D}${sysconfdir}/pki/nssdb/pkcs11.txt -} - -PACKAGE_WRITE_DEPS += "nss-native" -pkg_postinst_${PN} () { - if [ -n "$D" ]; then - for I in $D${libdir}/lib*.chk; do - DN=`dirname $I` - BN=`basename $I .chk` - FN=$DN/$BN.so - shlibsign -i $FN - if [ $? -ne 0 ]; then - exit 1 - fi - done - else - signlibs.sh - fi -} - -PACKAGES =+ "${PN}-smime" -FILES_${PN}-smime = "\ - ${bindir}/smime \ -" -FILES_${PN} = "\ - ${sysconfdir} \ - ${bindir} \ - ${libdir}/lib*.chk \ - ${libdir}/lib*.so \ - " -FILES_${PN}-dev = "\ - ${libdir}/nss \ - ${libdir}/pkgconfig/* \ - ${includedir}/* \ - " - -BBCLASSEXTEND = "native nativesdk" - diff --git a/poky/meta/recipes-support/nss/nss_3.43.bb b/poky/meta/recipes-support/nss/nss_3.43.bb new file mode 100644 index 000000000..f8cf5a46a --- /dev/null +++ b/poky/meta/recipes-support/nss/nss_3.43.bb @@ -0,0 +1,267 @@ +SUMMARY = "Mozilla's SSL and TLS implementation" +DESCRIPTION = "Network Security Services (NSS) is a set of libraries \ +designed to support cross-platform development of \ +security-enabled client and server applications. \ +Applications built with NSS can support SSL v2 and v3, \ +TLS, PKCS 5, PKCS 7, PKCS 11, PKCS 12, S/MIME, X.509 \ +v3 certificates, and other security standards." +HOMEPAGE = "http://www.mozilla.org/projects/security/pki/nss/" +SECTION = "libs" + +DEPENDS = "sqlite3 nspr zlib nss-native" +DEPENDS_class-native = "sqlite3-native nspr-native zlib-native" + +LICENSE = "MPL-2.0 | (MPL-2.0 & GPL-2.0+) | (MPL-2.0 & LGPL-2.1+)" + +LIC_FILES_CHKSUM = "file://nss/COPYING;md5=3b1e88e1b9c0b5a4b2881d46cce06a18 \ + file://nss/lib/freebl/mpi/doc/LICENSE;md5=491f158d09d948466afce85d6f1fe18f \ + file://nss/lib/freebl/mpi/doc/LICENSE-MPL;md5=5d425c8f3157dbf212db2ec53d9e5132" + +VERSION_DIR = "${@d.getVar('BP').upper().replace('-', '_').replace('.', '_') + '_RTM'}" + +SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/${VERSION_DIR}/src/${BP}.tar.gz \ + file://nss.pc.in \ + file://signlibs.sh \ + file://0001-nss-fix-support-cross-compiling.patch \ + file://nss-no-rpath-for-cross-compiling.patch \ + file://nss-fix-incorrect-shebang-of-perl.patch \ + file://nss-fix-nsinstall-build.patch \ + file://disable-Wvarargs-with-clang.patch \ + file://pqg.c-ULL_addend.patch \ + file://blank-cert9.db \ + file://blank-key4.db \ + file://system-pkcs11.txt \ + " + +SRC_URI[md5sum] = "67c8fa282c32cb56117fdd530dd77001" +SRC_URI[sha256sum] = "f30bc1b7330887b75de9fec37dbc173001758dc43fb095ffbc45dac4093fe2ca" + +UPSTREAM_CHECK_URI = "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_Releases" +UPSTREAM_CHECK_REGEX = "NSS_(?P.+)_release_notes" + +inherit siteinfo + +TD = "${S}/tentative-dist" +TDS = "${S}/tentative-dist-staging" + +TARGET_CC_ARCH += "${LDFLAGS}" + +do_configure_prepend_libc-musl () { + sed -i -e '/-DHAVE_SYS_CDEFS_H/d' ${S}/nss/lib/dbm/config/config.mk +} + +do_compile_prepend_class-native() { + export NSPR_INCLUDE_DIR=${STAGING_INCDIR_NATIVE} + export NSPR_LIB_DIR=${STAGING_LIBDIR_NATIVE} + export NSS_ENABLE_WERROR=0 +} + +do_compile_prepend_class-nativesdk() { + export LDFLAGS="" +} + +do_compile_prepend_class-native() { + # Need to set RPATH so that chrpath will do its job correctly + RPATH="-Wl,-rpath-link,${STAGING_LIBDIR_NATIVE} -Wl,-rpath-link,${STAGING_BASE_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_LIBDIR_NATIVE} -Wl,-rpath,${STAGING_BASE_LIBDIR_NATIVE}" +} + +do_compile() { + export CROSS_COMPILE=1 + export NATIVE_CC="${BUILD_CC}" + export NATIVE_FLAGS="${BUILD_CFLAGS}" + export BUILD_OPT=1 + + export FREEBL_NO_DEPEND=1 + export FREEBL_LOWHASH=1 + + export LIBDIR=${libdir} + export MOZILLA_CLIENT=1 + export NS_USE_GCC=1 + export NSS_USE_SYSTEM_SQLITE=1 + export NSS_ENABLE_ECC=1 + + export OS_RELEASE=3.4 + export OS_TARGET=Linux + export OS_ARCH=Linux + + if [ "${TARGET_ARCH}" = "powerpc" ]; then + OS_TEST=ppc + elif [ "${TARGET_ARCH}" = "powerpc64" ]; then + OS_TEST=ppc64 + elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then + OS_TEST=mips + elif [ "${TARGET_ARCH}" = "aarch64_be" ]; then + OS_TEST="aarch64" + else + OS_TEST="${TARGET_ARCH}" + fi + + if [ "${SITEINFO_BITS}" = "64" ]; then + export USE_64=1 + elif [ "${TARGET_ARCH}" = "x86_64" -a "${SITEINFO_BITS}" = "32" ]; then + export USE_X32=1 + fi + + export NSS_DISABLE_GTESTS=1 + + # We can modify CC in the environment, but if we set it via an + # argument to make, nsinstall, a host program, will also build with it! + # + # nss pretty much does its own thing with CFLAGS, so we put them into CC. + # Optimization will get clobbered, but most of the stuff will survive. + # The motivation for this is to point to the correct place for debug + # source files and CFLAGS does that. Nothing uses CCC. + # + export CC="${CC} ${CFLAGS}" + make -C ./nss CCC="${CXX} -g" \ + OS_TEST=${OS_TEST} \ + RPATH="${RPATH}" +} + +do_compile[vardepsexclude] += "SITEINFO_BITS" + +do_install_prepend_class-nativesdk() { + export LDFLAGS="" +} + +do_install() { + export CROSS_COMPILE=1 + export NATIVE_CC="${BUILD_CC}" + export BUILD_OPT=1 + + export FREEBL_NO_DEPEND=1 + + export LIBDIR=${libdir} + export MOZILLA_CLIENT=1 + export NS_USE_GCC=1 + export NSS_USE_SYSTEM_SQLITE=1 + export NSS_ENABLE_ECC=1 + + export OS_RELEASE=3.4 + export OS_TARGET=Linux + export OS_ARCH=Linux + + if [ "${TARGET_ARCH}" = "powerpc" ]; then + OS_TEST=ppc + elif [ "${TARGET_ARCH}" = "powerpc64" ]; then + OS_TEST=ppc64 + elif [ "${TARGET_ARCH}" = "mips" -o "${TARGET_ARCH}" = "mipsel" -o "${TARGET_ARCH}" = "mips64" -o "${TARGET_ARCH}" = "mips64el" ]; then + OS_TEST=mips + elif [ "${TARGET_ARCH}" = "aarch64_be" ]; then + CPU_ARCH=aarch64 + OS_TEST="aarch64" + else + OS_TEST="${TARGET_ARCH}" + fi + if [ "${SITEINFO_BITS}" = "64" ]; then + export USE_64=1 + elif [ "${TARGET_ARCH}" = "x86_64" -a "${SITEINFO_BITS}" = "32" ]; then + export USE_X32=1 + fi + + export NSS_DISABLE_GTESTS=1 + + make -C ./nss \ + CCC="${CXX}" \ + OS_TEST=${OS_TEST} \ + SOURCE_LIB_DIR="${TD}/${libdir}" \ + SOURCE_BIN_DIR="${TD}/${bindir}" \ + install + + install -d ${D}/${libdir}/ + for file in ${S}/dist/*.OBJ/lib/*.so; do + echo "Installing `basename $file`..." + cp $file ${D}/${libdir}/ + done + + for shared_lib in ${TD}/${libdir}/*.so.*; do + if [ -f $shared_lib ]; then + cp $shared_lib ${D}/${libdir} + ln -sf $(basename $shared_lib) ${D}/${libdir}/$(basename $shared_lib .1oe) + fi + done + for shared_lib in ${TD}/${libdir}/*.so; do + if [ -f $shared_lib -a ! -e ${D}/${libdir}/$shared_lib ]; then + cp $shared_lib ${D}/${libdir} + fi + done + + install -d ${D}/${includedir}/nss3 + install -m 644 -t ${D}/${includedir}/nss3 dist/public/nss/* + + install -d ${D}/${bindir} + for binary in ${TD}/${bindir}/*; do + install -m 755 -t ${D}/${bindir} $binary + done +} + +do_install[vardepsexclude] += "SITEINFO_BITS" + +do_install_append() { + # Create empty .chk files for the NSS libraries at build time. They could + # be regenerated at target's boot time. + for file in libsoftokn3.chk libfreebl3.chk libnssdbm3.chk; do + touch ${D}/${libdir}/$file + chmod 755 ${D}/${libdir}/$file + done + install -D -m 755 ${WORKDIR}/signlibs.sh ${D}/${bindir}/signlibs.sh + + install -d ${D}${libdir}/pkgconfig/ + sed 's/%NSS_VERSION%/${PV}/' ${WORKDIR}/nss.pc.in | sed 's/%NSPR_VERSION%/4.9.2/' > ${D}${libdir}/pkgconfig/nss.pc + sed -i s:OEPREFIX:${prefix}:g ${D}${libdir}/pkgconfig/nss.pc + sed -i s:OEEXECPREFIX:${exec_prefix}:g ${D}${libdir}/pkgconfig/nss.pc + sed -i s:OELIBDIR:${libdir}:g ${D}${libdir}/pkgconfig/nss.pc + sed -i s:OEINCDIR:${includedir}/nss3:g ${D}${libdir}/pkgconfig/nss.pc +} + +do_install_append_class-target() { + # It used to call certutil to create a blank certificate with empty password at + # build time, but the checksum of key4.db changes every time when certutil is called. + # It causes non-determinism issue, so provide databases with a blank certificate + # which are originally from output of nss in qemux86-64 build. You can get these + # databases by: + # certutil -N -d sql:/database/path/ --empty-password + install -d ${D}${sysconfdir}/pki/nssdb/ + install -m 0644 ${WORKDIR}/blank-cert9.db ${D}${sysconfdir}/pki/nssdb/cert9.db + install -m 0644 ${WORKDIR}/blank-key4.db ${D}${sysconfdir}/pki/nssdb/key4.db + install -m 0644 ${WORKDIR}/system-pkcs11.txt ${D}${sysconfdir}/pki/nssdb/pkcs11.txt +} + +PACKAGE_WRITE_DEPS += "nss-native" +pkg_postinst_${PN} () { + if [ -n "$D" ]; then + for I in $D${libdir}/lib*.chk; do + DN=`dirname $I` + BN=`basename $I .chk` + FN=$DN/$BN.so + shlibsign -i $FN + if [ $? -ne 0 ]; then + exit 1 + fi + done + else + signlibs.sh + fi +} + +PACKAGES =+ "${PN}-smime" +FILES_${PN}-smime = "\ + ${bindir}/smime \ +" + +FILES_${PN} = "\ + ${sysconfdir} \ + ${bindir} \ + ${libdir}/lib*.chk \ + ${libdir}/lib*.so \ + " + +FILES_${PN}-dev = "\ + ${libdir}/nss \ + ${libdir}/pkgconfig/* \ + ${includedir}/* \ + " + +RDEPENDS_${PN}-smime = "perl" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9936.patch b/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9936.patch deleted file mode 100644 index 1b907b9d4..000000000 --- a/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9936.patch +++ /dev/null @@ -1,28 +0,0 @@ -Running fts5 prefix queries inside a transaction could trigger a heap-based -buffer over-read in fts5HashEntrySort in sqlite3.c, which may lead to an -information leak. - -CVE: CVE-2019-9936 -Upstream-Status: Backport [https://sqlite.org/src/vpatch?from=45c73deb440496e8&to=b3fa58dd7403dbd4] -Signed-off-by: Ross Burton ---- - sqlite3.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/sqlite3.c b/sqlite3.c -index 4729f45..65527d8 100644 ---- a/sqlite3.c -+++ b/sqlite3.c -@@ -207759,7 +207759,9 @@ static int fts5HashEntrySort( - for(iSlot=0; iSlotnSlot; iSlot++){ - Fts5HashEntry *pIter; - for(pIter=pHash->aSlot[iSlot]; pIter; pIter=pIter->pHashNext){ -- if( pTerm==0 || 0==memcmp(fts5EntryKey(pIter), pTerm, nTerm) ){ -+ if( pTerm==0 -+ || (pIter->nKey+1>=nTerm && 0==memcmp(fts5EntryKey(pIter), pTerm, nTerm)) -+ ){ - Fts5HashEntry *pEntry = pIter; - pEntry->pScanNext = 0; - for(i=0; ap[i]; i++){ --- -2.20.1 diff --git a/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9937.patch b/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9937.patch deleted file mode 100644 index baa5666dd..000000000 --- a/poky/meta/recipes-support/sqlite/sqlite3/CVE-2019-9937.patch +++ /dev/null @@ -1,187 +0,0 @@ -Interleaving reads and writes in a single transaction with an fts5 virtual table -will lead to a NULL Pointer Dereference in fts5ChunkIterate in sqlite3.c. - -CVE: CVE-2019-9937 -Upstream-Status: Backport [https://sqlite.org/src/vpatch?from=c2f50aa4e7bad882&to=45c73deb440496e8] -Signed-off-by: Ross Burton - ---- - sqlite3.c | 83 ++++++++++++++++++++++++++++++++++++++----------------- - 1 file changed, 57 insertions(+), 26 deletions(-) - -diff --git a/sqlite3.c b/sqlite3.c -index 65527d8..b1a8799 100644 ---- a/sqlite3.c -+++ b/sqlite3.c -@@ -200668,8 +200668,9 @@ static void sqlite3Fts5HashClear(Fts5Hash*); - - static int sqlite3Fts5HashQuery( - Fts5Hash*, /* Hash table to query */ -+ int nPre, - const char *pTerm, int nTerm, /* Query term */ -- const u8 **ppDoclist, /* OUT: Pointer to doclist for pTerm */ -+ void **ppObj, /* OUT: Pointer to doclist for pTerm */ - int *pnDoclist /* OUT: Size of doclist in bytes */ - ); - -@@ -207501,19 +207502,25 @@ static int fts5HashResize(Fts5Hash *pHash){ - return SQLITE_OK; - } - --static void fts5HashAddPoslistSize(Fts5Hash *pHash, Fts5HashEntry *p){ -+static int fts5HashAddPoslistSize( -+ Fts5Hash *pHash, -+ Fts5HashEntry *p, -+ Fts5HashEntry *p2 -+){ -+ int nRet = 0; - if( p->iSzPoslist ){ -- u8 *pPtr = (u8*)p; -+ u8 *pPtr = p2 ? (u8*)p2 : (u8*)p; -+ int nData = p->nData; - if( pHash->eDetail==FTS5_DETAIL_NONE ){ -- assert( p->nData==p->iSzPoslist ); -+ assert( nData==p->iSzPosList ); - if( p->bDel ){ -- pPtr[p->nData++] = 0x00; -+ pPtr[nData++] = 0x00; - if( p->bContent ){ -- pPtr[p->nData++] = 0x00; -+ pPtr[nData++] = 0x00; - } - } - }else{ -- int nSz = (p->nData - p->iSzPoslist - 1); /* Size in bytes */ -+ int nSz = (nData - p->iSzPoslist - 1); /* Size in bytes */ - int nPos = nSz*2 + p->bDel; /* Value of nPos field */ - - assert( p->bDel==0 || p->bDel==1 ); -@@ -207523,14 +207530,19 @@ static void fts5HashAddPoslistSize(Fts5Hash *pHash, Fts5HashEntry *p){ - int nByte = sqlite3Fts5GetVarintLen((u32)nPos); - memmove(&pPtr[p->iSzPoslist + nByte], &pPtr[p->iSzPoslist + 1], nSz); - sqlite3Fts5PutVarint(&pPtr[p->iSzPoslist], nPos); -- p->nData += (nByte-1); -+ nData += (nByte-1); - } - } - -- p->iSzPoslist = 0; -- p->bDel = 0; -- p->bContent = 0; -+ nRet = nData - p->nData; -+ if( p2 == 0 ){ -+ p->iSzPoslist = 0; -+ p->bDel = 0; -+ p->bContent = 0; -+ p->nData = nData; -+ } - } -+ return nRet; - } - - /* -@@ -207642,7 +207654,7 @@ static int sqlite3Fts5HashWrite( - /* If this is a new rowid, append the 4-byte size field for the previous - ** entry, and the new rowid for this entry. */ - if( iRowid!=p->iRowid ){ -- fts5HashAddPoslistSize(pHash, p); -+ fts5HashAddPoslistSize(pHash, p, 0); - p->nData += sqlite3Fts5PutVarint(&pPtr[p->nData], iRowid - p->iRowid); - p->iRowid = iRowid; - bNew = 1; -@@ -207789,8 +207801,9 @@ static int fts5HashEntrySort( - */ - static int sqlite3Fts5HashQuery( - Fts5Hash *pHash, /* Hash table to query */ -+ int nPre, - const char *pTerm, int nTerm, /* Query term */ -- const u8 **ppDoclist, /* OUT: Pointer to doclist for pTerm */ -+ void **ppOut, /* OUT: Pointer to new object */ - int *pnDoclist /* OUT: Size of doclist in bytes */ - ){ - unsigned int iHash = fts5HashKey(pHash->nSlot, (const u8*)pTerm, nTerm); -@@ -207804,11 +207817,20 @@ static int sqlite3Fts5HashQuery( - } - - if( p ){ -- fts5HashAddPoslistSize(pHash, p); -- *ppDoclist = (const u8*)&zKey[nTerm+1]; -- *pnDoclist = p->nData - (sizeof(Fts5HashEntry) + nTerm + 1); -+ int nHashPre = sizeof(Fts5HashEntry) + nTerm + 1; -+ int nList = p->nData - nHashPre; -+ u8 *pRet = (u8*)(*ppOut = sqlite3_malloc64(nPre + nList + 10)); -+ if ( pRet ){ -+ Fts5HashEntry *pFaux = (Fts5HashEntry*)&pRet[nPre-nHashPre]; -+ memcpy(&pRet[nPre], &((u8*)p)[nHashPre], nList); -+ nList += fts5HashAddPoslistSize(pHash, p, pFaux); -+ *pnDoclist = nList; -+ }else{ -+ *pnDoclist = 0; -+ return SQLITE_NOMEM; -+ } - }else{ -- *ppDoclist = 0; -+ *ppOut = 0; - *pnDoclist = 0; - } - -@@ -207841,7 +207863,7 @@ static void sqlite3Fts5HashScanEntry( - if( (p = pHash->pScan) ){ - char *zKey = fts5EntryKey(p); - int nTerm = (int)strlen(zKey); -- fts5HashAddPoslistSize(pHash, p); -+ fts5HashAddPoslistSize(pHash, p, 0); - *pzTerm = zKey; - *ppDoclist = (const u8*)&zKey[nTerm+1]; - *pnDoclist = p->nData - (sizeof(Fts5HashEntry) + nTerm + 1); -@@ -210311,31 +210333,40 @@ static void fts5SegIterHashInit( - int flags, /* Mask of FTS5INDEX_XXX flags */ - Fts5SegIter *pIter /* Object to populate */ - ){ -- const u8 *pList = 0; - int nList = 0; - const u8 *z = 0; - int n = 0; -+ Fts5Data *pLeaf = 0; - - assert( p->pHash ); - assert( p->rc==SQLITE_OK ); - - if( pTerm==0 || (flags & FTS5INDEX_QUERY_SCAN) ){ -+ const u8 *pList = 0; -+ - p->rc = sqlite3Fts5HashScanInit(p->pHash, (const char*)pTerm, nTerm); - sqlite3Fts5HashScanEntry(p->pHash, (const char**)&z, &pList, &nList); - n = (z ? (int)strlen((const char*)z) : 0); -+ if ( pList ){ -+ pLeaf = fts5IdxMalloc(p, sizeof(Fts5Data)); -+ if ( pLeaf ){ -+ pLeaf->p = pList; -+ } -+ } - }else{ -- pIter->flags |= FTS5_SEGITER_ONETERM; -- sqlite3Fts5HashQuery(p->pHash, (const char*)pTerm, nTerm, &pList, &nList); -+ p->rc = sqlite3Fts5HashQuery(p->pHash, sizeof(Fts5Data), -+ (const char*)pTerm, nTerm, (void**)&pLeaf, &nList -+ ); -+ if( pLeaf ){ -+ pLeaf->p = (u8*)&pLeaf[1]; -+ } - z = pTerm; - n = nTerm; -+ pIter->flags |= FTS5_SEGITER_ONETERM; - } - -- if( pList ){ -- Fts5Data *pLeaf; -+ if( pLeaf ){ - sqlite3Fts5BufferSet(&p->rc, &pIter->term, n, z); -- pLeaf = fts5IdxMalloc(p, sizeof(Fts5Data)); -- if( pLeaf==0 ) return; -- pLeaf->p = (u8*)pList; - pLeaf->nn = pLeaf->szLeaf = nList; - pIter->pLeaf = pLeaf; - pIter->iLeafOffset = fts5GetVarint(pLeaf->p, (u64*)&pIter->iRowid); --- -2.20.1 diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.27.2.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.27.2.bb deleted file mode 100644 index 4bdb04f4d..000000000 --- a/poky/meta/recipes-support/sqlite/sqlite3_3.27.2.bb +++ /dev/null @@ -1,13 +0,0 @@ -require sqlite3.inc - -LICENSE = "PD" -LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66" - -SRC_URI = "\ - http://www.sqlite.org/2019/sqlite-autoconf-${SQLITE_PV}.tar.gz \ - file://CVE-2019-9936.patch \ - file://CVE-2019-9937.patch \ - " - -SRC_URI[md5sum] = "1f72631ce6e8efa5b4a6e55a43b3bdc0" -SRC_URI[sha256sum] = "50c39e85ea28b5ecfdb3f9e860afe9ba606381e21836b2849efca6a0bfe6ef6e" diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.28.0.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.28.0.bb new file mode 100644 index 000000000..438a4ea47 --- /dev/null +++ b/poky/meta/recipes-support/sqlite/sqlite3_3.28.0.bb @@ -0,0 +1,8 @@ +require sqlite3.inc + +LICENSE = "PD" +LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66" + +SRC_URI = "http://www.sqlite.org/2019/sqlite-autoconf-${SQLITE_PV}.tar.gz" +SRC_URI[md5sum] = "3c68eb400f8354605736cd55400e1572" +SRC_URI[sha256sum] = "d61b5286f062adfce5125eaf544d495300656908e61fca143517afcc0a89b7c3" diff --git a/poky/meta/recipes-support/vim/vim-tiny_8.1.1017.bb b/poky/meta/recipes-support/vim/vim-tiny_8.1.1017.bb deleted file mode 100644 index 8b1fb7b11..000000000 --- a/poky/meta/recipes-support/vim/vim-tiny_8.1.1017.bb +++ /dev/null @@ -1,15 +0,0 @@ -require vim_${PV}.bb - -SUMMARY += " (with tiny features)" - -PROVIDES_remove = "xxd" -ALTERNATIVE_${PN}_remove = "xxd" - -PACKAGECONFIG += "tiny" - -do_install() { - install -D -m 0755 ${S}/vim ${D}/${bindir}/vim.tiny -} - -ALTERNATIVE_PRIORITY = "90" -ALTERNATIVE_TARGET = "${bindir}/vim.tiny" diff --git a/poky/meta/recipes-support/vim/vim-tiny_8.1.1240.bb b/poky/meta/recipes-support/vim/vim-tiny_8.1.1240.bb new file mode 100644 index 000000000..74464833a --- /dev/null +++ b/poky/meta/recipes-support/vim/vim-tiny_8.1.1240.bb @@ -0,0 +1,15 @@ +require vim_${PV}.bb + +SUMMARY += " (with tiny features)" + +PROVIDES_remove = "xxd" +ALTERNATIVE_${PN}_remove = "xxd" + +PACKAGECONFIG += "tiny" + +do_install() { + install -D -m 0755 ${S}/src/vim ${D}/${bindir}/vim.tiny +} + +ALTERNATIVE_PRIORITY = "90" +ALTERNATIVE_TARGET = "${bindir}/vim.tiny" diff --git a/poky/meta/recipes-support/vim/vim_8.1.1017.bb b/poky/meta/recipes-support/vim/vim_8.1.1017.bb deleted file mode 100644 index 7627d2844..000000000 --- a/poky/meta/recipes-support/vim/vim_8.1.1017.bb +++ /dev/null @@ -1,129 +0,0 @@ -SUMMARY = "Vi IMproved - enhanced vi editor" -SECTION = "console/utils" - -PROVIDES = "xxd" -DEPENDS = "ncurses gettext-native" -# vimdiff doesn't like busybox diff -RSUGGESTS_${PN} = "diffutils" -LICENSE = "vim" -LIC_FILES_CHKSUM = "file://../runtime/doc/uganda.txt;endline=287;md5=f1f82b42360005c70b8c19b0ef493f72" - -SRC_URI = "git://github.com/vim/vim.git \ - file://disable_acl_header_check.patch;patchdir=.. \ - file://vim-add-knob-whether-elf.h-are-checked.patch;patchdir=.. \ - file://0001-src-Makefile-improve-reproducibility.patch;patchdir=.. \ -" -SRCREV = "493fbe4abee660d30b4f2aef87b754b0a720213c" - -S = "${WORKDIR}/git/src" - -VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}" - -inherit autotools-brokensep update-alternatives - -CLEANBROKEN = "1" - -# vim configure.in contains functions which got 'dropped' by autotools.bbclass -do_configure () { - rm -f auto/* - touch auto/config.mk - aclocal - autoconf - oe_runconf - touch auto/configure - touch auto/config.mk auto/config.h -} - -#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny -PACKAGECONFIG ??= "" -PACKAGECONFIG += " \ - ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \ -" -PACKAGECONFIG_class-native = "" - -PACKAGECONFIG[gtkgui] = "--enable-gui=gtk2,--enable-gui=no,gtk+," -PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," -PACKAGECONFIG[x11] = "--with-x,--without-x,xt," -PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,," -PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux," -PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils," - -EXTRA_OECONF = " \ - --disable-gpm \ - --disable-gtktest \ - --disable-xim \ - --disable-netbeans \ - --with-tlib=ncurses \ - ac_cv_small_wchar_t=no \ - vim_cv_getcwd_broken=no \ - vim_cv_memmove_handles_overlap=yes \ - vim_cv_stat_ignores_slash=no \ - vim_cv_terminfo=yes \ - vim_cv_tgetent=non-zero \ - vim_cv_toupper_broken=no \ - vim_cv_tty_group=world \ - STRIP=/bin/true \ -" - -do_install() { - autotools_do_install - - # Work around file-rdeps picking up csh, awk, perl or python as a dep - chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/vim132 - chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/mve.awk - chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.pl - chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.py - - # Install example vimrc from runtime files - install -m 0644 ../runtime/vimrc_example.vim ${D}/${datadir}/${BPN}/vimrc - - # we use --with-features=big as default - mv ${D}${bindir}/${BPN} ${D}${bindir}/${BPN}.${BPN} - - if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'true', 'false', d)}; then - # The mouse being autoenabled is just annoying in xfce4-terminal (mouse - # drag make vim go into visual mode and there is no right click menu), - # delete the block. - sed -i '/the mouse works just fine/,+4d' ${D}/${datadir}/${BPN}/vimrc - fi -} - -PARALLEL_MAKEINST = "" - -PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools" -FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax" -FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc" -FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor" -FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc" -FILES_${PN}-data = "${datadir}/${BPN}" -FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools" -FILES_${PN}-common = " \ - ${datadir}/${BPN}/${VIMDIR}/*.vim \ - ${datadir}/${BPN}/${VIMDIR}/autoload \ - ${datadir}/${BPN}/${VIMDIR}/colors \ - ${datadir}/${BPN}/${VIMDIR}/compiler \ - ${datadir}/${BPN}/${VIMDIR}/ftplugin \ - ${datadir}/${BPN}/${VIMDIR}/indent \ - ${datadir}/${BPN}/${VIMDIR}/keymap \ - ${datadir}/${BPN}/${VIMDIR}/lang \ - ${datadir}/${BPN}/${VIMDIR}/macros \ - ${datadir}/${BPN}/${VIMDIR}/plugin \ - ${datadir}/${BPN}/${VIMDIR}/print \ - ${datadir}/${BPN}/${VIMDIR}/spell \ - ${datadir}/icons \ -" - -RDEPENDS_${BPN} = "ncurses-terminfo-base" -# Recommend that runtime data is installed along with vim -RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common" - -ALTERNATIVE_${PN} = "vi vim xxd" -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}" -ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi" -ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim" -ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd" -ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/vim/vim_8.1.1240.bb b/poky/meta/recipes-support/vim/vim_8.1.1240.bb new file mode 100644 index 000000000..f5c74684b --- /dev/null +++ b/poky/meta/recipes-support/vim/vim_8.1.1240.bb @@ -0,0 +1,141 @@ +SUMMARY = "Vi IMproved - enhanced vi editor" +SECTION = "console/utils" + +PROVIDES = "xxd" +DEPENDS = "ncurses gettext-native" +# vimdiff doesn't like busybox diff +RSUGGESTS_${PN} = "diffutils" +LICENSE = "vim" +LIC_FILES_CHKSUM = "file://runtime/doc/uganda.txt;endline=287;md5=f1f82b42360005c70b8c19b0ef493f72" + +SRC_URI = "git://github.com/vim/vim.git \ + file://disable_acl_header_check.patch \ + file://vim-add-knob-whether-elf.h-are-checked.patch \ + file://0001-src-Makefile-improve-reproducibility.patch \ +" +SRCREV = "d96dbd6f95ea22f609042cc9c6272f14a21ff1a5" + +S = "${WORKDIR}/git" + +VIMDIR = "vim${@d.getVar('PV').split('.')[0]}${@d.getVar('PV').split('.')[1]}" + +inherit autotools-brokensep update-alternatives + +CLEANBROKEN = "1" + +# vim configure.in contains functions which got 'dropped' by autotools.bbclass +do_configure () { + cd src + rm -f auto/* + touch auto/config.mk + aclocal + autoconf + cd .. + oe_runconf + touch src/auto/configure + touch src/auto/config.mk src/auto/config.h +} + +do_compile() { + # We do not support fully / correctly the following locales. Attempting + # to use these with msgfmt in order to update the ".desktop" files exposes + # this problem and leads to the compile failing. + for LOCALE in cs fr ko pl sk zh_CN zh_TW;do + echo -n > src/po/${LOCALE}.po + done + autotools_do_compile +} + +#Available PACKAGECONFIG options are gtkgui, acl, x11, tiny +PACKAGECONFIG ??= "" +PACKAGECONFIG += " \ + ${@bb.utils.filter('DISTRO_FEATURES', 'acl selinux', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 gtkgui', '', d)} \ +" +PACKAGECONFIG_class-native = "" + +PACKAGECONFIG[gtkgui] = "--enable-gui=gtk2,--enable-gui=no,gtk+," +PACKAGECONFIG[acl] = "--enable-acl,--disable-acl,acl," +PACKAGECONFIG[x11] = "--with-x,--without-x,xt," +PACKAGECONFIG[tiny] = "--with-features=tiny,--with-features=big,," +PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux," +PACKAGECONFIG[elfutils] = "--enable-elf-check,,elfutils," + +EXTRA_OECONF = " \ + --disable-gpm \ + --disable-gtktest \ + --disable-xim \ + --disable-netbeans \ + --with-tlib=ncurses \ + ac_cv_small_wchar_t=no \ + vim_cv_getcwd_broken=no \ + vim_cv_memmove_handles_overlap=yes \ + vim_cv_stat_ignores_slash=no \ + vim_cv_terminfo=yes \ + vim_cv_tgetent=non-zero \ + vim_cv_toupper_broken=no \ + vim_cv_tty_group=world \ + STRIP=/bin/true \ +" + +do_install() { + autotools_do_install + + # Work around file-rdeps picking up csh, awk, perl or python as a dep + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/vim132 + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/mve.awk + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.pl + chmod -x ${D}${datadir}/${BPN}/${VIMDIR}/tools/*.py + + # Install example vimrc from runtime files + install -m 0644 runtime/vimrc_example.vim ${D}/${datadir}/${BPN}/vimrc + + # we use --with-features=big as default + mv ${D}${bindir}/${BPN} ${D}${bindir}/${BPN}.${BPN} + + if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'true', 'false', d)}; then + # The mouse being autoenabled is just annoying in xfce4-terminal (mouse + # drag make vim go into visual mode and there is no right click menu), + # delete the block. + sed -i '/the mouse works just fine/,+4d' ${D}/${datadir}/${BPN}/vimrc + fi +} + +PARALLEL_MAKEINST = "" + +PACKAGES =+ "${PN}-common ${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-tools" +FILES_${PN}-syntax = "${datadir}/${BPN}/${VIMDIR}/syntax" +FILES_${PN}-help = "${datadir}/${BPN}/${VIMDIR}/doc" +FILES_${PN}-tutor = "${datadir}/${BPN}/${VIMDIR}/tutor ${bindir}/${BPN}tutor" +FILES_${PN}-vimrc = "${datadir}/${BPN}/vimrc" +FILES_${PN}-data = "${datadir}/${BPN}" +FILES_${PN}-tools = "${datadir}/${BPN}/${VIMDIR}/tools" +FILES_${PN}-common = " \ + ${datadir}/${BPN}/${VIMDIR}/*.vim \ + ${datadir}/${BPN}/${VIMDIR}/autoload \ + ${datadir}/${BPN}/${VIMDIR}/colors \ + ${datadir}/${BPN}/${VIMDIR}/compiler \ + ${datadir}/${BPN}/${VIMDIR}/ftplugin \ + ${datadir}/${BPN}/${VIMDIR}/indent \ + ${datadir}/${BPN}/${VIMDIR}/keymap \ + ${datadir}/${BPN}/${VIMDIR}/lang \ + ${datadir}/${BPN}/${VIMDIR}/macros \ + ${datadir}/${BPN}/${VIMDIR}/plugin \ + ${datadir}/${BPN}/${VIMDIR}/print \ + ${datadir}/${BPN}/${VIMDIR}/spell \ + ${datadir}/icons \ +" + +RDEPENDS_${BPN} = "ncurses-terminfo-base" +# Recommend that runtime data is installed along with vim +RRECOMMENDS_${BPN} = "${PN}-syntax ${PN}-help ${PN}-tutor ${PN}-vimrc ${PN}-common" + +ALTERNATIVE_${PN} = "vi vim xxd" +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_TARGET = "${bindir}/${BPN}.${BPN}" +ALTERNATIVE_LINK_NAME[vi] = "${base_bindir}/vi" +ALTERNATIVE_LINK_NAME[vim] = "${bindir}/vim" +ALTERNATIVE_TARGET[xxd] = "${bindir}/xxd" +ALTERNATIVE_LINK_NAME[xxd] = "${bindir}/xxd" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch b/poky/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch new file mode 100644 index 000000000..0ffd92b4b --- /dev/null +++ b/poky/meta/recipes-support/vte/vte/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch @@ -0,0 +1,59 @@ +From f78988d3bb5929c857e788a86c7919d6a4ffacc9 Mon Sep 17 00:00:00 2001 +From: Danilo Spinella +Date: Thu, 21 Mar 2019 14:19:26 +0100 +Subject: [PATCH] Add W_EXITCODE macro for non-glibc systems + +Upstream-Status: Submitted [1] + +Signed-off-by: Andreas Müller + +[1] https://gitlab.gnome.org/GNOME/vte/issues/72 + +--- + src/missing.hh | 21 +++++++++++++++++++++ + src/widget.cc | 1 + + 2 files changed, 22 insertions(+) + create mode 100644 src/missing.hh + +diff --git a/src/missing.hh b/src/missing.hh +new file mode 100644 +index 00000000..1baa993d +--- /dev/null ++++ b/src/missing.hh +@@ -0,0 +1,21 @@ ++/* Copyright 2019 Danilo Spinella ++ * ++ * This library is free software; you can redistribute it and/or ++ * modify it under the terms of the GNU Lesser General Public ++ * License as published by the Free Software Foundation; either ++ * version 3 of the License, or (at your option) any later version. ++ * ++ * This library is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ * Lesser General Public License for more details. ++ * ++ * You should have received a copy of the GNU Lesser General Public ++ * License along with this library; if not, write to the Free Software ++ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA ++ */ ++ ++#ifndef W_EXITCODE ++#define W_EXITCODE(ret, sig) ((ret) << 8 | (sig)) ++#endif ++ +diff --git a/src/widget.cc b/src/widget.cc +index 331ddba9..555a4adf 100644 +--- a/src/widget.cc ++++ b/src/widget.cc +@@ -21,6 +21,7 @@ + #include "widget.hh" + + #include // for W_EXITCODE ++#include "missing.hh" // for W_EXITCODE on non-glibc systems + + #include + #include +-- +2.21.0 + diff --git a/poky/meta/recipes-support/vte/vte_0.52.2.bb b/poky/meta/recipes-support/vte/vte_0.52.2.bb deleted file mode 100644 index 272ae66f1..000000000 --- a/poky/meta/recipes-support/vte/vte_0.52.2.bb +++ /dev/null @@ -1,49 +0,0 @@ -SUMMARY = "Virtual terminal emulator GTK+ widget library" -BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" -LICENSE = "LGPLv2.1+" -DEPENDS = "glib-2.0 gtk+3 libpcre2 intltool-native libxml2-native gperf-native" - -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -inherit gnomebase gtk-doc distro_features_check upstream-version-is-even gobject-introspection - -# vapigen.m4 is required when vala is not present (but the one from vala should be used normally) -SRC_URI += "file://0001-Don-t-enable-stack-protection-by-default.patch \ - ${@bb.utils.contains('PACKAGECONFIG', 'vala', '', 'file://0001-Add-m4-vapigen.m4.patch', d) } \ - file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \ - " -SRC_URI[archive.md5sum] = "de8181350dccb010e915e366bdd06d18" -SRC_URI[archive.sha256sum] = "0f2657cef52accbfe56feede553155552d7c1984b1291838af3cb8cfc19b26af" - -ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" - -# Instead of "inherit vala" we do the relevant settings here so we can -# set DEPENDS based on PACKAGECONFIG. - -# Our patched version of Vala looks in STAGING_DATADIR for .vapi files -export STAGING_DATADIR -# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files -export XDG_DATA_DIRS = "${STAGING_DATADIR}" - -# Help g-ir-scanner find the .so for linking -do_compile_prepend() { - export GIR_EXTRA_LIBS_PATH="${B}/src/.libs" -} - -# Package additional files -FILES_${PN}-dev += "${datadir}/vala/vapi/*" - -PACKAGECONFIG ??= "gnutls" -PACKAGECONFIG[vala] = "--enable-vala,--disable-vala,vala-native vala" -PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" - -CFLAGS += "-D_GNU_SOURCE" - -# libtool adds "-nostdlib" when g++ is used. This breaks PIE builds. -# Use libtool-cross (which has a hack to prevent that) instead. -EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" - -PACKAGES =+ "libvte" -FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-support/vte/vte_0.56.1.bb b/poky/meta/recipes-support/vte/vte_0.56.1.bb new file mode 100644 index 000000000..3585e9ce5 --- /dev/null +++ b/poky/meta/recipes-support/vte/vte_0.56.1.bb @@ -0,0 +1,57 @@ +SUMMARY = "Virtual terminal emulator GTK+ widget library" +BUGTRACKER = "https://bugzilla.gnome.org/buglist.cgi?product=vte" +LICENSE = "GPLv3 & LGPLv2.1+" +LICENSE_libvte = "LGPLv2.1+" + +LIC_FILES_CHKSUM = " \ + file://COPYING.GPL3;md5=2f31b266d3440dd7ee50f92cf67d8e6c \ + file://COPYING.LGPL2;md5=4fbd65380cdd255951079008b364516c \ + file://COPYING.LGPL3;md5=b52f2d57d10c4f7ee67a7eb9615d5d24 \ +" + +DEPENDS = "glib-2.0 gtk+3 libpcre2 intltool-native libxml2-native gperf-native" + +inherit gnomebase gtk-doc distro_features_check upstream-version-is-even gobject-introspection + +# vapigen.m4 is required when vala is not present (but the one from vala should be used normally) +SRC_URI += "file://0001-Don-t-enable-stack-protection-by-default.patch \ + ${@bb.utils.contains('PACKAGECONFIG', 'vala', '', 'file://0001-Add-m4-vapigen.m4.patch', d) } \ + file://0001-app.cc-use-old-school-asignment-to-avoid-gcc-4.8-err.patch \ + file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \ + " +SRC_URI[archive.md5sum] = "a8984cd5a101dbff0b0c875d1de3f692" +SRC_URI[archive.sha256sum] = "02fa8ecc02a9332e47f486795494527b5687b3bd448e73e6b67285f2f326dc7c" + +ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}" + +# Instead of "inherit vala" we do the relevant settings here so we can +# set DEPENDS based on PACKAGECONFIG. + +# Our patched version of Vala looks in STAGING_DATADIR for .vapi files +export STAGING_DATADIR +# Upstream Vala >= 0.11 looks in XDG_DATA_DIRS for .vapi files +export XDG_DATA_DIRS = "${STAGING_DATADIR}" + +# Help g-ir-scanner find the .so for linking +do_compile_prepend() { + export GIR_EXTRA_LIBS_PATH="${B}/src/.libs" +} + +# Package additional files +FILES_${PN}-dev += "${datadir}/vala/vapi/*" + +PACKAGECONFIG ??= "gnutls" +PACKAGECONFIG[vala] = "--enable-vala,--disable-vala,vala-native vala" +PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls" + +CFLAGS += "-D_GNU_SOURCE" + +# libtool adds "-nostdlib" when g++ is used. This breaks PIE builds. +# Use libtool-cross (which has a hack to prevent that) instead. +EXTRA_OEMAKE_class-target = "LIBTOOL=${STAGING_BINDIR_CROSS}/${HOST_SYS}-libtool" + +PACKAGES =+ "libvte ${PN}-prompt" +FILES_libvte = "${libdir}/*.so.* ${libdir}/girepository-1.0/*" +FILES_${PN}-prompt = "${sysconfdir}/profile.d" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/oe-init-build-env b/poky/oe-init-build-env index 861c3e000..8c1bd54e5 100755 --- a/poky/oe-init-build-env +++ b/poky/oe-init-build-env @@ -4,19 +4,8 @@ # # Copyright (C) 2006-2011 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. +# SPDX-License-Identifier: GPL-2.0-or-later # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # Normally this is called as '. ./oe-init-build-env ' diff --git a/poky/scripts/autobuilder-worker-prereq-tests b/poky/scripts/autobuilder-worker-prereq-tests index 358dd2bee..5d7e6e260 100755 --- a/poky/scripts/autobuilder-worker-prereq-tests +++ b/poky/scripts/autobuilder-worker-prereq-tests @@ -3,7 +3,7 @@ # Script which can be run on new autobuilder workers to check all needed configuration is present. # Designed to be run in a repo where bitbake/oe-core are already present. # - +# SPDX-License-Identifier: GPL-2.0-only # # Todo # Add testtools/subunit import test diff --git a/poky/scripts/bitbake-prserv-tool b/poky/scripts/bitbake-prserv-tool index fa31b5258..e55d98c72 100755 --- a/poky/scripts/bitbake-prserv-tool +++ b/poky/scripts/bitbake-prserv-tool @@ -1,4 +1,7 @@ #!/usr/bin/env bash +# +# SPDX-License-Identifier: GPL-2.0-only +# help () { diff --git a/poky/scripts/bitbake-whatchanged b/poky/scripts/bitbake-whatchanged index 0207777e6..3095dafa4 100755 --- a/poky/scripts/bitbake-whatchanged +++ b/poky/scripts/bitbake-whatchanged @@ -4,18 +4,8 @@ # Copyright (c) 2013 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import os import sys diff --git a/poky/scripts/buildhistory-collect-srcrevs b/poky/scripts/buildhistory-collect-srcrevs index d375b045d..c4d203ff4 100755 --- a/poky/scripts/buildhistory-collect-srcrevs +++ b/poky/scripts/buildhistory-collect-srcrevs @@ -5,18 +5,8 @@ # Copyright 2013 Intel Corporation # Authored-by: Paul Eggleton # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import collections import os diff --git a/poky/scripts/buildhistory-diff b/poky/scripts/buildhistory-diff index 70805b067..833f7c33a 100755 --- a/poky/scripts/buildhistory-diff +++ b/poky/scripts/buildhistory-diff @@ -4,6 +4,9 @@ # # Copyright (C) 2013 Intel Corporation # Author: Paul Eggleton +# +# SPDX-License-Identifier: GPL-2.0-only +# import sys import os diff --git a/poky/scripts/buildstats-diff b/poky/scripts/buildstats-diff index a128dd324..c179c9352 100755 --- a/poky/scripts/buildstats-diff +++ b/poky/scripts/buildstats-diff @@ -4,15 +4,9 @@ # # Copyright (c) 2016, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import argparse import glob import logging diff --git a/poky/scripts/combo-layer b/poky/scripts/combo-layer index dc40e7240..9b50e9873 100755 --- a/poky/scripts/combo-layer +++ b/poky/scripts/combo-layer @@ -7,18 +7,8 @@ # Paul Eggleton # Richard Purdie # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import fnmatch import os, sys diff --git a/poky/scripts/combo-layer-hook-default.sh b/poky/scripts/combo-layer-hook-default.sh index 1e3a3b9bc..11547a982 100755 --- a/poky/scripts/combo-layer-hook-default.sh +++ b/poky/scripts/combo-layer-hook-default.sh @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: GPL-2.0-only +# # Hook to add source component/revision info to commit message # Parameter: # $1 patch-file diff --git a/poky/scripts/contrib/bb-perf/bb-matrix-plot.sh b/poky/scripts/contrib/bb-perf/bb-matrix-plot.sh index 136a25570..e7bd129e9 100755 --- a/poky/scripts/contrib/bb-perf/bb-matrix-plot.sh +++ b/poky/scripts/contrib/bb-perf/bb-matrix-plot.sh @@ -1,21 +1,8 @@ #!/bin/bash # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # This script operates on the .dat file generated by bb-matrix.sh. It tolerates diff --git a/poky/scripts/contrib/bb-perf/bb-matrix.sh b/poky/scripts/contrib/bb-perf/bb-matrix.sh index 106456584..b1fff0f34 100755 --- a/poky/scripts/contrib/bb-perf/bb-matrix.sh +++ b/poky/scripts/contrib/bb-perf/bb-matrix.sh @@ -1,21 +1,8 @@ #!/bin/bash # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # This script runs BB_CMD (typically building core-image-sato) for all diff --git a/poky/scripts/contrib/bb-perf/buildstats-plot.sh b/poky/scripts/contrib/bb-perf/buildstats-plot.sh index 7e8ae0410..898834e5a 100755 --- a/poky/scripts/contrib/bb-perf/buildstats-plot.sh +++ b/poky/scripts/contrib/bb-perf/buildstats-plot.sh @@ -1,21 +1,8 @@ #!/usr/bin/env bash # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # diff --git a/poky/scripts/contrib/bb-perf/buildstats.sh b/poky/scripts/contrib/bb-perf/buildstats.sh index 8d7e2488f..e9ec2d476 100755 --- a/poky/scripts/contrib/bb-perf/buildstats.sh +++ b/poky/scripts/contrib/bb-perf/buildstats.sh @@ -1,21 +1,8 @@ #!/bin/bash # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # Given 'buildstats' data (generate by bitbake when setting diff --git a/poky/scripts/contrib/bbvars.py b/poky/scripts/contrib/bbvars.py index 286b5a940..090133600 100755 --- a/poky/scripts/contrib/bbvars.py +++ b/poky/scripts/contrib/bbvars.py @@ -1,18 +1,6 @@ #!/usr/bin/env python3 - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # # Copyright (C) Darren Hart , 2010 diff --git a/poky/scripts/contrib/build-perf-test-wrapper.sh b/poky/scripts/contrib/build-perf-test-wrapper.sh index 7cbb5d794..fa71d4a2e 100755 --- a/poky/scripts/contrib/build-perf-test-wrapper.sh +++ b/poky/scripts/contrib/build-perf-test-wrapper.sh @@ -4,15 +4,7 @@ # # Copyright (c) 2016, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# +# SPDX-License-Identifier: GPL-2.0-only # # This script is a simple wrapper around the actual build performance tester # script. This script initializes the build environment, runs diff --git a/poky/scripts/contrib/ddimage b/poky/scripts/contrib/ddimage index ab929957a..b577d1ca2 100755 --- a/poky/scripts/contrib/ddimage +++ b/poky/scripts/contrib/ddimage @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: GPL-2.0-only +# # Default to avoiding the first two disks on typical Linux and Mac OS installs # Better safe than sorry :-) diff --git a/poky/scripts/contrib/devtool-stress.py b/poky/scripts/contrib/devtool-stress.py index d555c51a6..81046ecf4 100755 --- a/poky/scripts/contrib/devtool-stress.py +++ b/poky/scripts/contrib/devtool-stress.py @@ -6,18 +6,7 @@ # # Copyright 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import sys diff --git a/poky/scripts/contrib/dialog-power-control b/poky/scripts/contrib/dialog-power-control index 7550ea53b..ad6070c36 100755 --- a/poky/scripts/contrib/dialog-power-control +++ b/poky/scripts/contrib/dialog-power-control @@ -1,5 +1,7 @@ #!/bin/sh # +# SPDX-License-Identifier: GPL-2.0-only +# # Simple script to show a manual power prompt for when you want to use # automated hardware testing with testimage.bbclass but you don't have a # web-enabled power strip or similar to do the power on/off/cycle. diff --git a/poky/scripts/contrib/documentation-audit.sh b/poky/scripts/contrib/documentation-audit.sh index 2144aac93..1191f57a8 100755 --- a/poky/scripts/contrib/documentation-audit.sh +++ b/poky/scripts/contrib/documentation-audit.sh @@ -1,5 +1,7 @@ #!/bin/bash # +# SPDX-License-Identifier: GPL-2.0-only +# # Perform an audit of which packages provide documentation and which # are missing -doc packages. # @@ -7,7 +9,6 @@ # this script after source'ing the build environment script, so you're # running it from build/ directory. # -# Maintainer: Scott Garman REPORT_DOC_SIMPLE="documentation_exists.txt" REPORT_DOC_DETAIL="documentation_exists_detail.txt" diff --git a/poky/scripts/contrib/graph-tool b/poky/scripts/contrib/graph-tool index 1df5b8c34..6d2e68b82 100755 --- a/poky/scripts/contrib/graph-tool +++ b/poky/scripts/contrib/graph-tool @@ -7,18 +7,7 @@ # # Copyright 2013 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import sys diff --git a/poky/scripts/contrib/list-packageconfig-flags.py b/poky/scripts/contrib/list-packageconfig-flags.py index 7ce718624..b1d6c852d 100755 --- a/poky/scripts/contrib/list-packageconfig-flags.py +++ b/poky/scripts/contrib/list-packageconfig-flags.py @@ -1,21 +1,10 @@ #!/usr/bin/env python3 -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software Foundation. -# # Copyright (C) 2013 Wind River Systems, Inc. # Copyright (C) 2014 Intel Corporation # +# SPDX-License-Identifier: GPL-2.0-or-later +# # - list available recipes which have PACKAGECONFIG flags # - list available PACKAGECONFIG flags and all affected recipes # - list all recipes and PACKAGECONFIG information diff --git a/poky/scripts/contrib/oe-build-perf-report-email.py b/poky/scripts/contrib/oe-build-perf-report-email.py index 913847bbe..de3862c89 100755 --- a/poky/scripts/contrib/oe-build-perf-report-email.py +++ b/poky/scripts/contrib/oe-build-perf-report-email.py @@ -4,15 +4,9 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import argparse import base64 import logging diff --git a/poky/scripts/contrib/patchreview.py b/poky/scripts/contrib/patchreview.py index 072166504..62c509f51 100755 --- a/poky/scripts/contrib/patchreview.py +++ b/poky/scripts/contrib/patchreview.py @@ -1,4 +1,7 @@ #! /usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# # TODO # - option to just list all broken files diff --git a/poky/scripts/contrib/patchtest.sh b/poky/scripts/contrib/patchtest.sh index 7fe566666..b1e1ea334 100755 --- a/poky/scripts/contrib/patchtest.sh +++ b/poky/scripts/contrib/patchtest.sh @@ -1,26 +1,12 @@ #!/bin/bash -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # patchtest: Run patchtest on commits starting at master # # Copyright (c) 2017, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-or-later # + set -o errexit # Default values diff --git a/poky/scripts/contrib/serdevtry b/poky/scripts/contrib/serdevtry index 74bd7b716..9144730e7 100755 --- a/poky/scripts/contrib/serdevtry +++ b/poky/scripts/contrib/serdevtry @@ -2,7 +2,8 @@ # Copyright (C) 2014 Intel Corporation # -# Released under the MIT license (see COPYING.MIT) +# SPDX-License-Identifier: MIT +# if [ "$1" = "" -o "$1" = "--help" ] ; then echo "Usage: $0 " diff --git a/poky/scripts/contrib/test_build_time.sh b/poky/scripts/contrib/test_build_time.sh index 9e5725ae5..23f238adf 100755 --- a/poky/scripts/contrib/test_build_time.sh +++ b/poky/scripts/contrib/test_build_time.sh @@ -3,22 +3,8 @@ # Build performance regression test script # # Copyright 2011 Intel Corporation -# All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # This script is intended to be used in conjunction with "git bisect run" diff --git a/poky/scripts/contrib/test_build_time_worker.sh b/poky/scripts/contrib/test_build_time_worker.sh index 8e20a9ea7..478e8b0d0 100755 --- a/poky/scripts/contrib/test_build_time_worker.sh +++ b/poky/scripts/contrib/test_build_time_worker.sh @@ -1,5 +1,7 @@ #!/bin/bash - +# +# SPDX-License-Identifier: GPL-2.0-only +# # This is an example script to be used in conjunction with test_build_time.sh if [ "$TEST_BUILDDIR" = "" ] ; then diff --git a/poky/scripts/contrib/uncovered b/poky/scripts/contrib/uncovered index a8399ad17..f16128cb7 100755 --- a/poky/scripts/contrib/uncovered +++ b/poky/scripts/contrib/uncovered @@ -1,23 +1,10 @@ #!/bin/bash -eur -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Find python modules uncovered by oe-seltest # # Copyright (c) 2016, Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # Author: Ed Bartosh # diff --git a/poky/scripts/contrib/verify-homepage.py b/poky/scripts/contrib/verify-homepage.py index cc6e797d8..7bffa78e2 100755 --- a/poky/scripts/contrib/verify-homepage.py +++ b/poky/scripts/contrib/verify-homepage.py @@ -1,5 +1,7 @@ #!/usr/bin/env python3 - +# +# SPDX-License-Identifier: GPL-2.0-only +# # This script can be used to verify HOMEPAGE values for all recipes in # the current configuration. # The result is influenced by network environment, since the timeout of connect url is 5 seconds as default. diff --git a/poky/scripts/cp-noerror b/poky/scripts/cp-noerror index 35eb211be..ab617c5d3 100755 --- a/poky/scripts/cp-noerror +++ b/poky/scripts/cp-noerror @@ -1,5 +1,7 @@ #!/usr/bin/env python3 # +# SPDX-License-Identifier: GPL-2.0-only +# # Allow copying of $1 to $2 but if files in $1 disappear during the copy operation, # don't error. # Also don't error if $1 disappears. diff --git a/poky/scripts/create-pull-request b/poky/scripts/create-pull-request index 280880b3f..3ce03d6c1 100755 --- a/poky/scripts/create-pull-request +++ b/poky/scripts/create-pull-request @@ -1,21 +1,8 @@ #!/bin/sh # # Copyright (c) 2010-2013, Intel Corporation. -# All Rights Reserved -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See -# the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# SPDX-License-Identifier: GPL-2.0-or-later # # diff --git a/poky/scripts/crosstap b/poky/scripts/crosstap index e33fa4ad4..40856bc20 100755 --- a/poky/scripts/crosstap +++ b/poky/scripts/crosstap @@ -17,20 +17,9 @@ # related to kernel. # # Copyright (c) 2018, Cisco Systems. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import sys import re diff --git a/poky/scripts/devtool b/poky/scripts/devtool index 0e578c0de..8a4f41bc3 100755 --- a/poky/scripts/devtool +++ b/poky/scripts/devtool @@ -4,18 +4,8 @@ # # Copyright (C) 2014-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/gen-lockedsig-cache b/poky/scripts/gen-lockedsig-cache index 6765891d1..e3076e11a 100755 --- a/poky/scripts/gen-lockedsig-cache +++ b/poky/scripts/gen-lockedsig-cache @@ -1,4 +1,7 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import os import sys diff --git a/poky/scripts/gen-site-config b/poky/scripts/gen-site-config index 7da7a0bd8..727b809c0 100755 --- a/poky/scripts/gen-site-config +++ b/poky/scripts/gen-site-config @@ -1,18 +1,8 @@ #! /bin/sh # Copyright (c) 2005-2008 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA cat << EOF AC_PREREQ(2.57) diff --git a/poky/scripts/lib/argparse_oe.py b/poky/scripts/lib/argparse_oe.py index 9bdfc1cec..94a4ac501 100644 --- a/poky/scripts/lib/argparse_oe.py +++ b/poky/scripts/lib/argparse_oe.py @@ -1,3 +1,7 @@ +# +# SPDX-License-Identifier: GPL-2.0-only +# + import sys import argparse from collections import defaultdict, OrderedDict diff --git a/poky/scripts/lib/build_perf/__init__.py b/poky/scripts/lib/build_perf/__init__.py index 1f8b72907..dcbb78042 100644 --- a/poky/scripts/lib/build_perf/__init__.py +++ b/poky/scripts/lib/build_perf/__init__.py @@ -1,14 +1,7 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # """Build performance test library functions""" diff --git a/poky/scripts/lib/build_perf/html.py b/poky/scripts/lib/build_perf/html.py index 578bb162e..d1273c9c5 100644 --- a/poky/scripts/lib/build_perf/html.py +++ b/poky/scripts/lib/build_perf/html.py @@ -1,14 +1,7 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # """Helper module for HTML reporting""" from jinja2 import Environment, PackageLoader diff --git a/poky/scripts/lib/build_perf/report.py b/poky/scripts/lib/build_perf/report.py index d99a36797..4e8e2a8a9 100644 --- a/poky/scripts/lib/build_perf/report.py +++ b/poky/scripts/lib/build_perf/report.py @@ -1,14 +1,7 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # """Handling of build perf test reports""" from collections import OrderedDict, Mapping, namedtuple diff --git a/poky/scripts/lib/buildstats.py b/poky/scripts/lib/buildstats.py index f7db3eaf9..1adab06ed 100644 --- a/poky/scripts/lib/buildstats.py +++ b/poky/scripts/lib/buildstats.py @@ -1,14 +1,7 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # """Functionality for analyzing buildstats""" import json diff --git a/poky/scripts/lib/checklayer/__init__.py b/poky/scripts/lib/checklayer/__init__.py index 670f0eea3..8244cf072 100644 --- a/poky/scripts/lib/checklayer/__init__.py +++ b/poky/scripts/lib/checklayer/__init__.py @@ -1,7 +1,9 @@ # Yocto Project layer check tool # # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import os import re diff --git a/poky/scripts/lib/checklayer/case.py b/poky/scripts/lib/checklayer/case.py index 9dd00412e..fa9dee384 100644 --- a/poky/scripts/lib/checklayer/case.py +++ b/poky/scripts/lib/checklayer/case.py @@ -1,5 +1,7 @@ # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# from oeqa.core.case import OETestCase diff --git a/poky/scripts/lib/checklayer/cases/bsp.py b/poky/scripts/lib/checklayer/cases/bsp.py index b6b611be7..7fd56f5d3 100644 --- a/poky/scripts/lib/checklayer/cases/bsp.py +++ b/poky/scripts/lib/checklayer/cases/bsp.py @@ -1,5 +1,7 @@ # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import unittest diff --git a/poky/scripts/lib/checklayer/cases/common.py b/poky/scripts/lib/checklayer/cases/common.py index 1bef61b04..8ffe028b3 100644 --- a/poky/scripts/lib/checklayer/cases/common.py +++ b/poky/scripts/lib/checklayer/cases/common.py @@ -1,5 +1,7 @@ # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import glob import os diff --git a/poky/scripts/lib/checklayer/cases/distro.py b/poky/scripts/lib/checklayer/cases/distro.py index df1b3035e..f0bee5493 100644 --- a/poky/scripts/lib/checklayer/cases/distro.py +++ b/poky/scripts/lib/checklayer/cases/distro.py @@ -1,5 +1,7 @@ # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import unittest diff --git a/poky/scripts/lib/checklayer/context.py b/poky/scripts/lib/checklayer/context.py index 1bec2c410..4de8f668f 100644 --- a/poky/scripts/lib/checklayer/context.py +++ b/poky/scripts/lib/checklayer/context.py @@ -1,5 +1,7 @@ # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import os import sys diff --git a/poky/scripts/lib/devtool/__init__.py b/poky/scripts/lib/devtool/__init__.py index 8fc7fffcd..d39c474fb 100644 --- a/poky/scripts/lib/devtool/__init__.py +++ b/poky/scripts/lib/devtool/__init__.py @@ -4,18 +4,8 @@ # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool plugins module""" import os diff --git a/poky/scripts/lib/devtool/build.py b/poky/scripts/lib/devtool/build.py index ba9593f1a..7543398d9 100644 --- a/poky/scripts/lib/devtool/build.py +++ b/poky/scripts/lib/devtool/build.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool build plugin""" import os diff --git a/poky/scripts/lib/devtool/build_image.py b/poky/scripts/lib/devtool/build_image.py index e5810389b..9388abbac 100644 --- a/poky/scripts/lib/devtool/build_image.py +++ b/poky/scripts/lib/devtool/build_image.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool plugin containing the build-image subcommand.""" diff --git a/poky/scripts/lib/devtool/build_sdk.py b/poky/scripts/lib/devtool/build_sdk.py index b89d65b0c..6fe02fff2 100644 --- a/poky/scripts/lib/devtool/build_sdk.py +++ b/poky/scripts/lib/devtool/build_sdk.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import subprocess diff --git a/poky/scripts/lib/devtool/deploy.py b/poky/scripts/lib/devtool/deploy.py index f345f31b7..d1ce2309f 100644 --- a/poky/scripts/lib/devtool/deploy.py +++ b/poky/scripts/lib/devtool/deploy.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool plugin containing the deploy subcommands""" import logging diff --git a/poky/scripts/lib/devtool/export.py b/poky/scripts/lib/devtool/export.py index 35349e2cd..01174edae 100644 --- a/poky/scripts/lib/devtool/export.py +++ b/poky/scripts/lib/devtool/export.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool export plugin""" import os diff --git a/poky/scripts/lib/devtool/import.py b/poky/scripts/lib/devtool/import.py index 4264b7d82..682985166 100644 --- a/poky/scripts/lib/devtool/import.py +++ b/poky/scripts/lib/devtool/import.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool import plugin""" import os diff --git a/poky/scripts/lib/devtool/package.py b/poky/scripts/lib/devtool/package.py index af9e8f15f..c2367342c 100644 --- a/poky/scripts/lib/devtool/package.py +++ b/poky/scripts/lib/devtool/package.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool plugin containing the package subcommands""" import os diff --git a/poky/scripts/lib/devtool/runqemu.py b/poky/scripts/lib/devtool/runqemu.py index e26cf28c2..ead978aab 100644 --- a/poky/scripts/lib/devtool/runqemu.py +++ b/poky/scripts/lib/devtool/runqemu.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool runqemu plugin""" diff --git a/poky/scripts/lib/devtool/sdk.py b/poky/scripts/lib/devtool/sdk.py index 461675379..3aa42a146 100644 --- a/poky/scripts/lib/devtool/sdk.py +++ b/poky/scripts/lib/devtool/sdk.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import subprocess diff --git a/poky/scripts/lib/devtool/search.py b/poky/scripts/lib/devtool/search.py index b4f209b7e..d24040df3 100644 --- a/poky/scripts/lib/devtool/search.py +++ b/poky/scripts/lib/devtool/search.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool search plugin""" diff --git a/poky/scripts/lib/devtool/standard.py b/poky/scripts/lib/devtool/standard.py index 0a1e329e6..aca74b1fc 100644 --- a/poky/scripts/lib/devtool/standard.py +++ b/poky/scripts/lib/devtool/standard.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool standard plugins""" import os diff --git a/poky/scripts/lib/devtool/upgrade.py b/poky/scripts/lib/devtool/upgrade.py index 75e765e01..62ec2f94c 100644 --- a/poky/scripts/lib/devtool/upgrade.py +++ b/poky/scripts/lib/devtool/upgrade.py @@ -2,18 +2,7 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # """Devtool upgrade plugin""" diff --git a/poky/scripts/lib/devtool/utilcmds.py b/poky/scripts/lib/devtool/utilcmds.py index 7cd139fb8..964817766 100644 --- a/poky/scripts/lib/devtool/utilcmds.py +++ b/poky/scripts/lib/devtool/utilcmds.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. """Devtool utility plugins""" diff --git a/poky/scripts/lib/recipetool/append.py b/poky/scripts/lib/recipetool/append.py index 3f2c134ad..e9d52bb67 100644 --- a/poky/scripts/lib/recipetool/append.py +++ b/poky/scripts/lib/recipetool/append.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/lib/recipetool/create.py b/poky/scripts/lib/recipetool/create.py index 1810c70ae..98277f74c 100644 --- a/poky/scripts/lib/recipetool/create.py +++ b/poky/scripts/lib/recipetool/create.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os @@ -704,7 +694,7 @@ def create_recipe(args): if not args.autorev and srcrev == '${AUTOREV}': if os.path.exists(os.path.join(srctree, '.git')): (stdout, _) = bb.process.run('git rev-parse HEAD', cwd=srctree) - srcrev = stdout.rstrip() + srcrev = stdout.rstrip() lines_before.append('SRCREV = "%s"' % srcrev) if args.provides: lines_before.append('PROVIDES = "%s"' % args.provides) diff --git a/poky/scripts/lib/recipetool/create_buildsys.py b/poky/scripts/lib/recipetool/create_buildsys.py index 4743c740c..3cb02766c 100644 --- a/poky/scripts/lib/recipetool/create_buildsys.py +++ b/poky/scripts/lib/recipetool/create_buildsys.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re import logging diff --git a/poky/scripts/lib/recipetool/create_buildsys_python.py b/poky/scripts/lib/recipetool/create_buildsys_python.py index 5bd2aa337..1a38bd0b1 100644 --- a/poky/scripts/lib/recipetool/create_buildsys_python.py +++ b/poky/scripts/lib/recipetool/create_buildsys_python.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Mentor Graphics Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import ast import codecs diff --git a/poky/scripts/lib/recipetool/create_kernel.py b/poky/scripts/lib/recipetool/create_kernel.py index ca4996c7a..5740589a6 100644 --- a/poky/scripts/lib/recipetool/create_kernel.py +++ b/poky/scripts/lib/recipetool/create_kernel.py @@ -2,18 +2,8 @@ # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re import logging diff --git a/poky/scripts/lib/recipetool/create_kmod.py b/poky/scripts/lib/recipetool/create_kmod.py index 3982537a4..85b5c48e5 100644 --- a/poky/scripts/lib/recipetool/create_kmod.py +++ b/poky/scripts/lib/recipetool/create_kmod.py @@ -2,18 +2,8 @@ # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import re import logging diff --git a/poky/scripts/lib/recipetool/create_npm.py b/poky/scripts/lib/recipetool/create_npm.py index 03667887f..39429ebad 100644 --- a/poky/scripts/lib/recipetool/create_npm.py +++ b/poky/scripts/lib/recipetool/create_npm.py @@ -2,20 +2,11 @@ # # Copyright (C) 2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os +import sys import logging import subprocess import tempfile diff --git a/poky/scripts/lib/recipetool/edit.py b/poky/scripts/lib/recipetool/edit.py index c4789a999..94bdf7bca 100644 --- a/poky/scripts/lib/recipetool/edit.py +++ b/poky/scripts/lib/recipetool/edit.py @@ -6,18 +6,8 @@ # # Copyright (C) 2018 Mentor Graphics Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import argparse import errno diff --git a/poky/scripts/lib/recipetool/newappend.py b/poky/scripts/lib/recipetool/newappend.py index 76707b4c9..08e2474dc 100644 --- a/poky/scripts/lib/recipetool/newappend.py +++ b/poky/scripts/lib/recipetool/newappend.py @@ -7,18 +7,8 @@ # # Copyright (C) 2015 Christopher Larson # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import argparse import errno diff --git a/poky/scripts/lib/recipetool/setvar.py b/poky/scripts/lib/recipetool/setvar.py index 9de315a0e..f8e2ee75f 100644 --- a/poky/scripts/lib/recipetool/setvar.py +++ b/poky/scripts/lib/recipetool/setvar.py @@ -2,18 +2,8 @@ # # Copyright (C) 2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/lib/resulttool/log.py b/poky/scripts/lib/resulttool/log.py new file mode 100644 index 000000000..25c339671 --- /dev/null +++ b/poky/scripts/lib/resulttool/log.py @@ -0,0 +1,71 @@ +# resulttool - Show logs +# +# Copyright (c) 2019 Garmin International +# +# SPDX-License-Identifier: GPL-2.0-only +# +import os +import resulttool.resultutils as resultutils + +def show_ptest(result, ptest, logger): + if 'ptestresult.sections' in result: + if ptest in result['ptestresult.sections'] and 'log' in result['ptestresult.sections'][ptest]: + print(result['ptestresult.sections'][ptest]['log']) + return 0 + + print("ptest '%s' not found" % ptest) + return 1 + +def log(args, logger): + results = resultutils.load_resultsdata(args.source) + + ptest_count = sum(1 for _, _, _, r in resultutils.test_run_results(results) if 'ptestresult.sections' in r) + if ptest_count > 1 and not args.prepend_run: + print("%i ptest sections found. '--prepend-run' is required" % ptest_count) + return 1 + + for _, run_name, _, r in resultutils.test_run_results(results): + if args.dump_ptest: + if 'ptestresult.sections' in r: + for name, ptest in r['ptestresult.sections'].items(): + if 'log' in ptest: + dest_dir = args.dump_ptest + if args.prepend_run: + dest_dir = os.path.join(dest_dir, run_name) + + os.makedirs(dest_dir, exist_ok=True) + + dest = os.path.join(dest_dir, '%s.log' % name) + print(dest) + with open(dest, 'w') as f: + f.write(ptest['log']) + + if args.raw: + if 'ptestresult.rawlogs' in r: + print(r['ptestresult.rawlogs']['log']) + else: + print('Raw logs not found') + return 1 + + for ptest in args.ptest: + if not show_ptest(r, ptest, logger): + return 1 + +def register_commands(subparsers): + """Register subcommands from this plugin""" + parser = subparsers.add_parser('log', help='show logs', + description='show the logs from test results', + group='analysis') + parser.set_defaults(func=log) + parser.add_argument('source', + help='the results file/directory/URL to import') + parser.add_argument('--ptest', action='append', default=[], + help='show logs for a ptest') + parser.add_argument('--dump-ptest', metavar='DIR', + help='Dump all ptest log files to the specified directory.') + parser.add_argument('--prepend-run', action='store_true', + help='''Dump ptest results to a subdirectory named after the test run when using --dump-ptest. + Required if more than one test run is present in the result file''') + parser.add_argument('--raw', action='store_true', + help='show raw logs') + diff --git a/poky/scripts/lib/resulttool/manualexecution.py b/poky/scripts/lib/resulttool/manualexecution.py index 12ef90d6a..df28e1d21 100755 --- a/poky/scripts/lib/resulttool/manualexecution.py +++ b/poky/scripts/lib/resulttool/manualexecution.py @@ -2,27 +2,22 @@ # # Copyright (c) 2018, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import argparse import json import os import sys import datetime import re +import copy from oeqa.core.runner import OETestResultJSONHelper -def load_json_file(file): - with open(file, "r") as f: - return json.load(f) +def load_json_file(f): + with open(f, "r") as filedata: + return json.load(filedata) def write_json_file(f, json_data): os.makedirs(os.path.dirname(f), exist_ok=True) @@ -31,9 +26,8 @@ def write_json_file(f, json_data): class ManualTestRunner(object): - def _get_testcases(self, file): - self.jdata = load_json_file(file) - self.test_module = self.jdata[0]['test']['@alias'].split('.', 2)[0] + def _get_test_module(self, case_file): + return os.path.basename(case_file).split('.')[0] def _get_input(self, config): while True: @@ -57,23 +51,21 @@ class ManualTestRunner(object): print('Only integer index inputs from above available configuration options are allowed. Please try again.') return options[output] - def _create_config(self, config_options): + def _get_config(self, config_options, test_module): from oeqa.utils.metadata import get_layers from oeqa.utils.commands import get_bb_var from resulttool.resultutils import store_map layers = get_layers(get_bb_var('BBLAYERS')) - self.configuration = {} - self.configuration['LAYERS'] = layers - current_datetime = datetime.datetime.now() - self.starttime = current_datetime.strftime('%Y%m%d%H%M%S') - self.configuration['STARTTIME'] = self.starttime - self.configuration['TEST_TYPE'] = 'manual' - self.configuration['TEST_MODULE'] = self.test_module - - extra_config = set(store_map['manual']) - set(self.configuration) + configurations = {} + configurations['LAYERS'] = layers + configurations['STARTTIME'] = datetime.datetime.now().strftime('%Y%m%d%H%M%S') + configurations['TEST_TYPE'] = 'manual' + configurations['TEST_MODULE'] = test_module + + extra_config = set(store_map['manual']) - set(configurations) for config in sorted(extra_config): - avail_config_options = self._get_available_config_options(config_options, self.test_module, config) + avail_config_options = self._get_available_config_options(config_options, test_module, config) if avail_config_options: print('---------------------------------------------') print('These are available configuration #%s options:' % config) @@ -89,21 +81,19 @@ class ManualTestRunner(object): print('---------------------------------------------') value_conf = self._get_input('Configuration Value') print('---------------------------------------------\n') - self.configuration[config] = value_conf - - def _create_result_id(self): - self.result_id = 'manual_%s_%s' % (self.test_module, self.starttime) + configurations[config] = value_conf + return configurations - def _execute_test_steps(self, test): + def _execute_test_steps(self, case): test_result = {} print('------------------------------------------------------------------------') - print('Executing test case: %s' % test['test']['@alias']) + print('Executing test case: %s' % case['test']['@alias']) print('------------------------------------------------------------------------') - print('You have total %s test steps to be executed.' % len(test['test']['execution'])) + print('You have total %s test steps to be executed.' % len(case['test']['execution'])) print('------------------------------------------------------------------------\n') - for step, _ in sorted(test['test']['execution'].items(), key=lambda x: int(x[0])): - print('Step %s: %s' % (step, test['test']['execution'][step]['action'])) - expected_output = test['test']['execution'][step]['expected_results'] + for step, _ in sorted(case['test']['execution'].items(), key=lambda x: int(x[0])): + print('Step %s: %s' % (step, case['test']['execution'][step]['action'])) + expected_output = case['test']['execution'][step]['expected_results'] if expected_output: print('Expected output: %s' % expected_output) while True: @@ -118,31 +108,37 @@ class ManualTestRunner(object): res = result_types[r] if res == 'FAILED': log_input = input('\nPlease enter the error and the description of the log: (Ex:log:211 Error Bitbake)\n') - test_result.update({test['test']['@alias']: {'status': '%s' % res, 'log': '%s' % log_input}}) + test_result.update({case['test']['@alias']: {'status': '%s' % res, 'log': '%s' % log_input}}) else: - test_result.update({test['test']['@alias']: {'status': '%s' % res}}) + test_result.update({case['test']['@alias']: {'status': '%s' % res}}) break print('Invalid input!') return test_result - def _create_write_dir(self): - basepath = os.environ['BUILDDIR'] - self.write_dir = basepath + '/tmp/log/manual/' + def _get_write_dir(self): + return os.environ['BUILDDIR'] + '/tmp/log/manual/' - def run_test(self, file, config_options_file): - self._get_testcases(file) + def run_test(self, case_file, config_options_file, testcase_config_file): + test_module = self._get_test_module(case_file) + cases = load_json_file(case_file) config_options = {} if config_options_file: config_options = load_json_file(config_options_file) - self._create_config(config_options) - self._create_result_id() - self._create_write_dir() + configurations = self._get_config(config_options, test_module) + result_id = 'manual_%s_%s' % (test_module, configurations['STARTTIME']) test_results = {} - print('\nTotal number of test cases in this test suite: %s\n' % len(self.jdata)) - for t in self.jdata: - test_result = self._execute_test_steps(t) + if testcase_config_file: + test_case_config = load_json_file(testcase_config_file) + test_case_to_execute = test_case_config['testcases'] + for case in copy.deepcopy(cases) : + if case['test']['@alias'] not in test_case_to_execute: + cases.remove(case) + + print('\nTotal number of test cases in this test suite: %s\n' % len(cases)) + for c in cases: + test_result = self._execute_test_steps(c) test_results.update(test_result) - return self.configuration, self.result_id, self.write_dir, test_results + return configurations, result_id, self._get_write_dir(), test_results def _get_true_false_input(self, input_message): yes_list = ['Y', 'YES'] @@ -156,11 +152,11 @@ class ManualTestRunner(object): return False return True - def make_config_option_file(self, logger, manual_case_file, config_options_file): + def make_config_option_file(self, logger, case_file, config_options_file): config_options = {} if config_options_file: config_options = load_json_file(config_options_file) - new_test_module = os.path.basename(manual_case_file).split('.')[0] + new_test_module = self._get_test_module(case_file) print('Creating configuration options file for test module: %s' % new_test_module) new_config_options = {} @@ -181,8 +177,7 @@ class ManualTestRunner(object): if new_config_options: config_options[new_test_module] = new_config_options if not config_options_file: - self._create_write_dir() - config_options_file = os.path.join(self.write_dir, 'manual_config_options.json') + config_options_file = os.path.join(self._get_write_dir(), 'manual_config_options.json') write_json_file(config_options_file, config_options) logger.info('Configuration option file created at %s' % config_options_file) @@ -191,9 +186,9 @@ def manualexecution(args, logger): if args.make_config_options_file: testrunner.make_config_option_file(logger, args.file, args.config_options_file) return 0 - get_configuration, get_result_id, get_write_dir, get_test_results = testrunner.run_test(args.file, args.config_options_file) + configurations, result_id, write_dir, test_results = testrunner.run_test(args.file, args.config_options_file, args.testcase_config_file) resultjsonhelper = OETestResultJSONHelper() - resultjsonhelper.dump_testresult_file(get_write_dir, get_configuration, get_result_id, get_test_results) + resultjsonhelper.dump_testresult_file(write_dir, configurations, result_id, test_results) return 0 def register_commands(subparsers): @@ -207,3 +202,5 @@ def register_commands(subparsers): help='the config options file to import and used as available configuration option selection or make config option file') parser_build.add_argument('-m', '--make-config-options-file', action='store_true', help='make the configuration options file based on provided inputs') + parser_build.add_argument('-t', '--testcase-config-file', default='', + help='the testcase configuration file to enable user to run a selected set of test case') \ No newline at end of file diff --git a/poky/scripts/lib/resulttool/merge.py b/poky/scripts/lib/resulttool/merge.py index 3e4b7a38a..70d23a48f 100644 --- a/poky/scripts/lib/resulttool/merge.py +++ b/poky/scripts/lib/resulttool/merge.py @@ -3,21 +3,15 @@ # Copyright (c) 2019, Intel Corporation. # Copyright (c) 2019, Linux Foundation # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import os import json import resulttool.resultutils as resultutils def merge(args, logger): - if os.path.isdir(args.target_results): + if resultutils.is_url(args.target_results) or os.path.isdir(args.target_results): results = resultutils.load_resultsdata(args.target_results, configmap=resultutils.store_map) resultutils.append_resultsdata(results, args.base_results, configmap=resultutils.store_map) resultutils.save_resultsdata(results, args.target_results) @@ -31,12 +25,12 @@ def merge(args, logger): def register_commands(subparsers): """Register subcommands from this plugin""" - parser_build = subparsers.add_parser('merge', help='merge test result files/directories', - description='merge the results from multiple files/directories into the target file or directory', + parser_build = subparsers.add_parser('merge', help='merge test result files/directories/URLs', + description='merge the results from multiple files/directories/URLs into the target file or directory', group='setup') parser_build.set_defaults(func=merge) parser_build.add_argument('base_results', - help='the results file/directory to import') + help='the results file/directory/URL to import') parser_build.add_argument('target_results', help='the target file or directory to merge the base_results with') diff --git a/poky/scripts/lib/resulttool/regression.py b/poky/scripts/lib/resulttool/regression.py index bdf531ded..9f952951b 100644 --- a/poky/scripts/lib/resulttool/regression.py +++ b/poky/scripts/lib/resulttool/regression.py @@ -3,15 +3,9 @@ # Copyright (c) 2019, Intel Corporation. # Copyright (c) 2019, Linux Foundation # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import resulttool.resultutils as resultutils import json @@ -64,7 +58,7 @@ def regression_common(args, logger, base_results, target_results): if a in target_results: base = list(base_results[a].keys()) target = list(target_results[a].keys()) - # We may have multiple base/targets which are for different configurations. Start by + # We may have multiple base/targets which are for different configurations. Start by # removing any pairs which match for c in base.copy(): for b in target.copy(): @@ -161,9 +155,9 @@ def register_commands(subparsers): group='analysis') parser_build.set_defaults(func=regression) parser_build.add_argument('base_result', - help='base result file/directory for the comparison') + help='base result file/directory/URL for the comparison') parser_build.add_argument('target_result', - help='target result file/directory to compare with') + help='target result file/directory/URL to compare with') parser_build.add_argument('-b', '--base-result-id', default='', help='(optional) filter the base results to this result ID') parser_build.add_argument('-t', '--target-result-id', default='', diff --git a/poky/scripts/lib/resulttool/report.py b/poky/scripts/lib/resulttool/report.py index 90086209e..cb6b1cf94 100644 --- a/poky/scripts/lib/resulttool/report.py +++ b/poky/scripts/lib/resulttool/report.py @@ -3,15 +3,9 @@ # Copyright (c) 2019, Intel Corporation. # Copyright (c) 2019, Linux Foundation # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import os import glob import json @@ -23,6 +17,8 @@ import oeqa.utils.gitarchive as gitarchive class ResultsTextReport(object): def __init__(self): self.ptests = {} + self.ltptests = {} + self.ltpposixtests = {} self.result_types = {'passed': ['PASSED', 'passed'], 'failed': ['FAILED', 'failed', 'ERROR', 'error', 'UNKNOWN'], 'skipped': ['SKIPPED', 'skipped']} @@ -57,6 +53,69 @@ class ResultsTextReport(object): if status in self.result_types[tk]: self.ptests[suite][tk] += 1 + def handle_ltptest_result(self, k, status, result): + if k == 'ltpresult.sections': + # Ensure tests without any test results still show up on the report + for suite in result['ltpresult.sections']: + if suite not in self.ltptests: + self.ltptests[suite] = {'passed': 0, 'failed': 0, 'skipped': 0, 'duration' : '-', 'failed_testcases': []} + if 'duration' in result['ltpresult.sections'][suite]: + self.ltptests[suite]['duration'] = result['ltpresult.sections'][suite]['duration'] + if 'timeout' in result['ltpresult.sections'][suite]: + self.ltptests[suite]['duration'] += " T" + return + try: + _, suite, test = k.split(".", 2) + except ValueError: + return + # Handle 'glib-2.0' + if 'ltpresult.sections' in result and suite not in result['ltpresult.sections']: + try: + _, suite, suite1, test = k.split(".", 3) + print("split2: %s %s %s" % (suite, suite1, test)) + if suite + "." + suite1 in result['ltpresult.sections']: + suite = suite + "." + suite1 + except ValueError: + pass + if suite not in self.ltptests: + self.ltptests[suite] = {'passed': 0, 'failed': 0, 'skipped': 0, 'duration' : '-', 'failed_testcases': []} + for tk in self.result_types: + if status in self.result_types[tk]: + self.ltptests[suite][tk] += 1 + + def handle_ltpposixtest_result(self, k, status, result): + if k == 'ltpposixresult.sections': + # Ensure tests without any test results still show up on the report + for suite in result['ltpposixresult.sections']: + if suite not in self.ltpposixtests: + self.ltpposixtests[suite] = {'passed': 0, 'failed': 0, 'skipped': 0, 'duration' : '-', 'failed_testcases': []} + if 'duration' in result['ltpposixresult.sections'][suite]: + self.ltpposixtests[suite]['duration'] = result['ltpposixresult.sections'][suite]['duration'] + return + try: + _, suite, test = k.split(".", 2) + except ValueError: + return + # Handle 'glib-2.0' + if 'ltpposixresult.sections' in result and suite not in result['ltpposixresult.sections']: + try: + _, suite, suite1, test = k.split(".", 3) + if suite + "." + suite1 in result['ltpposixresult.sections']: + suite = suite + "." + suite1 + except ValueError: + pass + if suite not in self.ltpposixtests: + self.ltpposixtests[suite] = {'passed': 0, 'failed': 0, 'skipped': 0, 'duration' : '-', 'failed_testcases': []} + for tk in self.result_types: + if status in self.result_types[tk]: + self.ltpposixtests[suite][tk] += 1 + + def get_aggregated_test_result(self, logger, testresult): + test_count_report = {'passed': 0, 'failed': 0, 'skipped': 0, 'failed_testcases': []} + def get_aggregated_test_result(self, logger, testresult): + test_count_report = {'passed': 0, 'failed': 0, 'skipped': 0, 'failed_testcases': []} + def get_aggregated_test_result(self, logger, testresult): + test_count_report = {'passed': 0, 'failed': 0, 'skipped': 0, 'failed_testcases': []} def get_aggregated_test_result(self, logger, testresult): test_count_report = {'passed': 0, 'failed': 0, 'skipped': 0, 'failed_testcases': []} result = testresult.get('result', []) @@ -69,6 +128,10 @@ class ResultsTextReport(object): test_count_report['failed_testcases'].append(k) if k.startswith("ptestresult."): self.handle_ptest_result(k, test_status, result) + if k.startswith("ltpresult."): + self.handle_ltptest_result(k, test_status, result) + if k.startswith("ltpposixresult."): + self.handle_ltpposixtest_result(k, test_status, result) return test_count_report def print_test_report(self, template_file_name, test_count_reports): @@ -79,9 +142,11 @@ class ResultsTextReport(object): template = env.get_template(template_file_name) havefailed = False haveptest = bool(self.ptests) + haveltp = bool(self.ltptests) + haveltpposix = bool(self.ltpposixtests) reportvalues = [] cols = ['passed', 'failed', 'skipped'] - maxlen = {'passed' : 0, 'failed' : 0, 'skipped' : 0, 'result_id': 0, 'testseries' : 0, 'ptest' : 0 } + maxlen = {'passed' : 0, 'failed' : 0, 'skipped' : 0, 'result_id': 0, 'testseries' : 0, 'ptest' : 0 ,'ltptest': 0, 'ltpposixtest': 0} for line in test_count_reports: total_tested = line['passed'] + line['failed'] + line['skipped'] vals = {} @@ -100,10 +165,20 @@ class ResultsTextReport(object): for ptest in self.ptests: if len(ptest) > maxlen['ptest']: maxlen['ptest'] = len(ptest) + for ltptest in self.ltptests: + if len(ltptest) > maxlen['ltptest']: + maxlen['ltptest'] = len(ltptest) + for ltpposixtest in self.ltpposixtests: + if len(ltpposixtest) > maxlen['ltpposixtest']: + maxlen['ltpposixtest'] = len(ltpposixtest) output = template.render(reportvalues=reportvalues, havefailed=havefailed, haveptest=haveptest, ptests=self.ptests, + haveltp=haveltp, + haveltpposix=haveltpposix, + ltptests=self.ltptests, + ltpposixtests=self.ltpposixtests, maxlen=maxlen) print(output) @@ -143,7 +218,7 @@ def register_commands(subparsers): group='analysis') parser_build.set_defaults(func=report) parser_build.add_argument('source_dir', - help='source file/directory that contain the test result files to summarise') + help='source file/directory/URL that contain the test result files to summarise') parser_build.add_argument('--branch', '-B', default='master', help="Branch to find commit in") parser_build.add_argument('--commit', help="Revision to report") parser_build.add_argument('-t', '--tag', default='', diff --git a/poky/scripts/lib/resulttool/resultutils.py b/poky/scripts/lib/resulttool/resultutils.py index ad40ac849..ea4ab42d9 100644 --- a/poky/scripts/lib/resulttool/resultutils.py +++ b/poky/scripts/lib/resulttool/resultutils.py @@ -3,19 +3,15 @@ # Copyright (c) 2019, Intel Corporation. # Copyright (c) 2019, Linux Foundation # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import os import json import scriptpath import copy +import urllib.request +import posixpath scriptpath.add_oe_lib_path() flatten_map = { @@ -40,20 +36,33 @@ store_map = { "manual": ['TEST_TYPE', 'TEST_MODULE', 'MACHINE', 'IMAGE_BASENAME'] } +def is_url(p): + """ + Helper for determining if the given path is a URL + """ + return p.startswith('http://') or p.startswith('https://') + # # Load the json file and append the results data into the provided results dict # def append_resultsdata(results, f, configmap=store_map): if type(f) is str: - with open(f, "r") as filedata: - data = json.load(filedata) + if is_url(f): + with urllib.request.urlopen(f) as response: + data = json.loads(response.read().decode('utf-8')) + url = urllib.parse.urlparse(f) + testseries = posixpath.basename(posixpath.dirname(url.path)) + else: + with open(f, "r") as filedata: + data = json.load(filedata) + testseries = os.path.basename(os.path.dirname(f)) else: data = f for res in data: if "configuration" not in data[res] or "result" not in data[res]: raise ValueError("Test results data without configuration or result section?") if "TESTSERIES" not in data[res]["configuration"]: - data[res]["configuration"]["TESTSERIES"] = os.path.basename(os.path.dirname(f)) + data[res]["configuration"]["TESTSERIES"] = testseries testtype = data[res]["configuration"].get("TEST_TYPE") if testtype not in configmap: raise ValueError("Unknown test type %s" % testtype) @@ -69,7 +78,7 @@ def append_resultsdata(results, f, configmap=store_map): # def load_resultsdata(source, configmap=store_map): results = {} - if os.path.isfile(source): + if is_url(source) or os.path.isfile(source): append_resultsdata(results, source, configmap) return results for root, dirs, files in os.walk(source): @@ -152,3 +161,19 @@ def git_get_result(repo, tags): append_resultsdata(results, obj) return results + +def test_run_results(results): + """ + Convenient generator function that iterates over all test runs that have a + result section. + + Generates a tuple of: + (result json file path, test run name, test run (dict), test run "results" (dict)) + for each test run that has a "result" section + """ + for path in results: + for run_name, test_run in results[path].items(): + if not 'result' in test_run: + continue + yield path, run_name, test_run, test_run['result'] + diff --git a/poky/scripts/lib/resulttool/store.py b/poky/scripts/lib/resulttool/store.py index e4a080752..06505aecc 100644 --- a/poky/scripts/lib/resulttool/store.py +++ b/poky/scripts/lib/resulttool/store.py @@ -3,15 +3,9 @@ # Copyright (c) 2019, Intel Corporation. # Copyright (c) 2019, Linux Foundation # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import tempfile import os import subprocess @@ -29,7 +23,7 @@ def store(args, logger): try: results = {} logger.info('Reading files from %s' % args.source) - if os.path.isfile(args.source): + if resultutils.is_url(args.source) or os.path.isfile(args.source): resultutils.append_resultsdata(results, args.source) else: for root, dirs, files in os.walk(args.source): @@ -92,7 +86,7 @@ def register_commands(subparsers): group='setup') parser_build.set_defaults(func=store) parser_build.add_argument('source', - help='source file or directory that contain the test result files to be stored') + help='source file/directory/URL that contain the test result files to be stored') parser_build.add_argument('git_dir', help='the location of the git repository to store the results in') parser_build.add_argument('-a', '--all', action='store_true', diff --git a/poky/scripts/lib/resulttool/template/test_report_full_text.txt b/poky/scripts/lib/resulttool/template/test_report_full_text.txt index 590f35c7d..d2725b8d0 100644 --- a/poky/scripts/lib/resulttool/template/test_report_full_text.txt +++ b/poky/scripts/lib/resulttool/template/test_report_full_text.txt @@ -25,6 +25,40 @@ PTest Result Summary There was no ptest data {% endif %} +{% if haveltp %} +============================================================================================================== +Ltp Test Result Summary +============================================================================================================== +-------------------------------------------------------------------------------------------------------------- +{{ 'Recipe'.ljust(maxlen['ltptest']) }} | {{ 'Passed'.ljust(maxlen['passed']) }} | {{ 'Failed'.ljust(maxlen['failed']) }} | {{ 'Skipped'.ljust(maxlen['skipped']) }} | {{ 'Time(s)'.ljust(10) }} +-------------------------------------------------------------------------------------------------------------- +{% for ltptest in ltptests |sort %} +{{ ltptest.ljust(maxlen['ltptest']) }} | {{ (ltptests[ltptest]['passed']|string).ljust(maxlen['passed']) }} | {{ (ltptests[ltptest]['failed']|string).ljust(maxlen['failed']) }} | {{ (ltptests[ltptest]['skipped']|string).ljust(maxlen['skipped']) }} | {{ (ltptests[ltptest]['duration']|string) }} +{% endfor %} +-------------------------------------------------------------------------------------------------------------- + +{% else %} +There was no LTP Test data +{% endif %} + +{% if haveltpposix %} +============================================================================================================== +Ltp Posix Result Summary +============================================================================================================== +-------------------------------------------------------------------------------------------------------------- +{{ 'Recipe'.ljust(maxlen['ltpposixtest']) }} | {{ 'Passed'.ljust(maxlen['passed']) }} | {{ 'Failed'.ljust(maxlen['failed']) }} | {{ 'Skipped'.ljust(maxlen['skipped']) }} | {{ 'Time(s)'.ljust(10) }} +-------------------------------------------------------------------------------------------------------------- +{% for ltpposixtest in ltpposixtests |sort %} +{{ ltpposixtest.ljust(maxlen['ltpposixtest']) }} | {{ (ltpposixtests[ltpposixtest]['passed']|string).ljust(maxlen['passed']) }} | {{ (ltpposixtests[ltpposixtest]['failed']|string).ljust(maxlen['failed']) }} | {{ (ltpposixtests[ltpposixtest]['skipped']|string).ljust(maxlen['skipped']) }} | {{ (ltpposixtests[ltpposixtest]['duration']|string) }} +{% endfor %} +-------------------------------------------------------------------------------------------------------------- + +{% else %} +There was no LTP Posix Test data +{% endif %} + + + ============================================================================================================== Failed test cases (sorted by testseries, ID) ============================================================================================================== diff --git a/poky/scripts/lib/scriptpath.py b/poky/scripts/lib/scriptpath.py index d00317e18..f32326db3 100644 --- a/poky/scripts/lib/scriptpath.py +++ b/poky/scripts/lib/scriptpath.py @@ -3,18 +3,8 @@ # Copyright (C) 2012-2014 Intel Corporation # Copyright (C) 2011 Mentor Graphics Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/lib/scriptutils.py b/poky/scripts/lib/scriptutils.py index 0633c7066..e7e7021c2 100644 --- a/poky/scripts/lib/scriptutils.py +++ b/poky/scripts/lib/scriptutils.py @@ -2,18 +2,8 @@ # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import argparse import glob diff --git a/poky/scripts/lib/wic/__init__.py b/poky/scripts/lib/wic/__init__.py index 85876b138..ba2d61406 100644 --- a/poky/scripts/lib/wic/__init__.py +++ b/poky/scripts/lib/wic/__init__.py @@ -3,18 +3,8 @@ # Copyright (c) 2007 Red Hat, Inc. # Copyright (c) 2011 Intel, Inc. # -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the Free -# Software Foundation; version 2 of the License +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., 59 -# Temple Place - Suite 330, Boston, MA 02111-1307, USA. class WicError(Exception): pass diff --git a/poky/scripts/lib/wic/engine.py b/poky/scripts/lib/wic/engine.py index ab33fa604..42e93c3eb 100644 --- a/poky/scripts/lib/wic/engine.py +++ b/poky/scripts/lib/wic/engine.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2013, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION diff --git a/poky/scripts/lib/wic/filemap.py b/poky/scripts/lib/wic/filemap.py index abbf958b8..244c07a71 100644 --- a/poky/scripts/lib/wic/filemap.py +++ b/poky/scripts/lib/wic/filemap.py @@ -1,13 +1,8 @@ +# # Copyright (c) 2012 Intel, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License, version 2, -# as published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. """ This module implements python implements a way to get file block. Two methods diff --git a/poky/scripts/lib/wic/help.py b/poky/scripts/lib/wic/help.py index 64f08052c..3a40fc0ea 100644 --- a/poky/scripts/lib/wic/help.py +++ b/poky/scripts/lib/wic/help.py @@ -1,21 +1,6 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- -# # Copyright (c) 2013, Intel Corporation. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This module implements some basic help invocation functions along diff --git a/poky/scripts/lib/wic/ksparser.py b/poky/scripts/lib/wic/ksparser.py index 08baf7612..62048213b 100644 --- a/poky/scripts/lib/wic/ksparser.py +++ b/poky/scripts/lib/wic/ksparser.py @@ -1,21 +1,8 @@ #!/usr/bin/env python -tt -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2016 Intel, Inc. # -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the Free -# Software Foundation; version 2 of the License -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., 59 -# Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This module provides parser for kickstart format diff --git a/poky/scripts/lib/wic/misc.py b/poky/scripts/lib/wic/misc.py index ee888b478..1f199b9f2 100644 --- a/poky/scripts/lib/wic/misc.py +++ b/poky/scripts/lib/wic/misc.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2013, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This module provides a place to collect various wic-related utils diff --git a/poky/scripts/lib/wic/partition.py b/poky/scripts/lib/wic/partition.py index ca206ece0..01466b258 100644 --- a/poky/scripts/lib/wic/partition.py +++ b/poky/scripts/lib/wic/partition.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2013-2016 Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This module provides the OpenEmbedded partition object definitions. @@ -322,7 +308,7 @@ class Partition(): dosfs_cmd = "mkdosfs %s -i %s %s %s -C %s %d" % \ (label_str, self.fsuuid, size_str, extraopts, rootfs, - max(8250, rootfs_size)) + rootfs_size) exec_native_cmd(dosfs_cmd, native_sysroot) mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (rootfs, rootfs_dir) diff --git a/poky/scripts/lib/wic/pluginbase.py b/poky/scripts/lib/wic/pluginbase.py index 686d2fee3..bfb73ca61 100644 --- a/poky/scripts/lib/wic/pluginbase.py +++ b/poky/scripts/lib/wic/pluginbase.py @@ -2,18 +2,8 @@ # # Copyright (c) 2011 Intel, Inc. # -# This program is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the Free -# Software Foundation; version 2 of the License +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., 59 -# Temple Place - Suite 330, Boston, MA 02111-1307, USA. __all__ = ['ImagerPlugin', 'SourcePlugin'] diff --git a/poky/scripts/lib/wic/plugins/imager/direct.py b/poky/scripts/lib/wic/plugins/imager/direct.py index bb14a334b..67addeff3 100644 --- a/poky/scripts/lib/wic/plugins/imager/direct.py +++ b/poky/scripts/lib/wic/plugins/imager/direct.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2013, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'direct' imager plugin class for 'wic' diff --git a/poky/scripts/lib/wic/plugins/source/bootimg-efi.py b/poky/scripts/lib/wic/plugins/source/bootimg-efi.py index 83a7e189e..652323fa7 100644 --- a/poky/scripts/lib/wic/plugins/source/bootimg-efi.py +++ b/poky/scripts/lib/wic/plugins/source/bootimg-efi.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2014, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'bootimg-efi' source plugin class for 'wic' @@ -258,8 +244,10 @@ class BootimgEFIPlugin(SourcePlugin): # dosfs image, created by mkdosfs bootimg = "%s/boot.img" % cr_workdir - dosfs_cmd = "mkdosfs -n efi -i %s -C %s %d" % \ - (part.fsuuid, bootimg, blocks) + label = part.label if part.label else "ESP" + + dosfs_cmd = "mkdosfs -n %s -i %s -C %s %d" % \ + (label, part.fsuuid, bootimg, blocks) exec_native_cmd(dosfs_cmd, native_sysroot) mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (bootimg, hdddir) diff --git a/poky/scripts/lib/wic/plugins/source/bootimg-partition.py b/poky/scripts/lib/wic/plugins/source/bootimg-partition.py index ddc880be3..138986a71 100644 --- a/poky/scripts/lib/wic/plugins/source/bootimg-partition.py +++ b/poky/scripts/lib/wic/plugins/source/bootimg-partition.py @@ -1,18 +1,5 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'bootimg-partition' source plugin class for diff --git a/poky/scripts/lib/wic/plugins/source/bootimg-pcbios.py b/poky/scripts/lib/wic/plugins/source/bootimg-pcbios.py index 9347aa7fc..6c9f54a89 100644 --- a/poky/scripts/lib/wic/plugins/source/bootimg-pcbios.py +++ b/poky/scripts/lib/wic/plugins/source/bootimg-pcbios.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2014, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'bootimg-pcbios' source plugin class for 'wic' diff --git a/poky/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/poky/scripts/lib/wic/plugins/source/isoimage-isohybrid.py index 170077c22..96d07ff62 100644 --- a/poky/scripts/lib/wic/plugins/source/isoimage-isohybrid.py +++ b/poky/scripts/lib/wic/plugins/source/isoimage-isohybrid.py @@ -1,18 +1,5 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- - -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'isoimage-isohybrid' source plugin class for 'wic' diff --git a/poky/scripts/lib/wic/plugins/source/rawcopy.py b/poky/scripts/lib/wic/plugins/source/rawcopy.py index e86398ac8..df86d6729 100644 --- a/poky/scripts/lib/wic/plugins/source/rawcopy.py +++ b/poky/scripts/lib/wic/plugins/source/rawcopy.py @@ -1,18 +1,5 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import logging diff --git a/poky/scripts/lib/wic/plugins/source/rootfs.py b/poky/scripts/lib/wic/plugins/source/rootfs.py index aec720fb2..e26e95b99 100644 --- a/poky/scripts/lib/wic/plugins/source/rootfs.py +++ b/poky/scripts/lib/wic/plugins/source/rootfs.py @@ -1,21 +1,7 @@ -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2014, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This implements the 'rootfs' source plugin class for 'wic' diff --git a/poky/scripts/lnr b/poky/scripts/lnr index 5fed780eb..a2ac4fec0 100755 --- a/poky/scripts/lnr +++ b/poky/scripts/lnr @@ -1,4 +1,7 @@ #! /usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# # Create a *relative* symlink, just like ln --relative does but without needing # coreutils 8.16. diff --git a/poky/scripts/multilib_header_wrapper.h b/poky/scripts/multilib_header_wrapper.h index 482479078..c81e7ee5e 100644 --- a/poky/scripts/multilib_header_wrapper.h +++ b/poky/scripts/multilib_header_wrapper.h @@ -1,23 +1,7 @@ /* * Copyright (C) 2005-2011 by Wind River Systems, Inc. * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. + * SPDX-License-Identifier: MIT * */ diff --git a/poky/scripts/native-intercept/chown b/poky/scripts/native-intercept/chown index 4f43271c2..399c979f9 100755 --- a/poky/scripts/native-intercept/chown +++ b/poky/scripts/native-intercept/chown @@ -1,2 +1,5 @@ #! /bin/sh +# +# SPDX-License-Identifier: GPL-2.0-only +# echo "Intercept $0: $@ -- do nothing" diff --git a/poky/scripts/oe-build-perf-report b/poky/scripts/oe-build-perf-report index f6fb458c2..21bde7e15 100755 --- a/poky/scripts/oe-build-perf-report +++ b/poky/scripts/oe-build-perf-report @@ -4,15 +4,9 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import argparse import json import logging diff --git a/poky/scripts/oe-build-perf-test b/poky/scripts/oe-build-perf-test index 669470fa9..0b13f2488 100755 --- a/poky/scripts/oe-build-perf-test +++ b/poky/scripts/oe-build-perf-test @@ -4,16 +4,9 @@ # # Copyright (c) 2016, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. -# -"""Build performance test script""" + import argparse import errno import fcntl diff --git a/poky/scripts/oe-buildenv-internal b/poky/scripts/oe-buildenv-internal index 52ce32987..96bb0c3dc 100755 --- a/poky/scripts/oe-buildenv-internal +++ b/poky/scripts/oe-buildenv-internal @@ -4,19 +4,8 @@ # # Copyright (C) 2006-2011 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. +# SPDX-License-Identifier: GPL-2.0-or-later # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA if ! $(return >/dev/null 2>&1) ; then echo 'oe-buildenv-internal: error: this script must be sourced' diff --git a/poky/scripts/oe-check-sstate b/poky/scripts/oe-check-sstate index d06efe436..ca249ca67 100755 --- a/poky/scripts/oe-check-sstate +++ b/poky/scripts/oe-check-sstate @@ -5,18 +5,8 @@ # Copyright 2016 Intel Corporation # Authored-by: Paul Eggleton # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/oe-depends-dot b/poky/scripts/oe-depends-dot index 6c7e9d338..5eb3e1276 100755 --- a/poky/scripts/oe-depends-dot +++ b/poky/scripts/oe-depends-dot @@ -2,18 +2,8 @@ # # Copyright (C) 2018 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA import os import sys diff --git a/poky/scripts/oe-find-native-sysroot b/poky/scripts/oe-find-native-sysroot index cc146b3fd..5146bbf99 100755 --- a/poky/scripts/oe-find-native-sysroot +++ b/poky/scripts/oe-find-native-sysroot @@ -17,18 +17,8 @@ # # Copyright (c) 2010 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. if [ "$1" = '--help' -o "$1" = '-h' -o $# -ne 1 ] ; then echo 'Usage: oe-find-native-sysroot [-h|--help]' diff --git a/poky/scripts/oe-git-archive b/poky/scripts/oe-git-archive index ab1c2b9ad..9305ed0b0 100755 --- a/poky/scripts/oe-git-archive +++ b/poky/scripts/oe-git-archive @@ -4,15 +4,9 @@ # # Copyright (c) 2017, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # + import argparse import logging import os diff --git a/poky/scripts/oe-git-proxy b/poky/scripts/oe-git-proxy index 1800942f3..bb2ed2a46 100755 --- a/poky/scripts/oe-git-proxy +++ b/poky/scripts/oe-git-proxy @@ -13,7 +13,8 @@ # ALL_PROXY=https://proxy.example.com:8080 # # Copyright (c) 2013, Intel Corporation. -# All rights reserved. +# +# SPDX-License-Identifier: GPL-2.0-only # # AUTHORS # Darren Hart diff --git a/poky/scripts/oe-gnome-terminal-phonehome b/poky/scripts/oe-gnome-terminal-phonehome index e02354883..b6b9a3867 100755 --- a/poky/scripts/oe-gnome-terminal-phonehome +++ b/poky/scripts/oe-gnome-terminal-phonehome @@ -1,5 +1,7 @@ #!/bin/sh # +# SPDX-License-Identifier: GPL-2.0-only +# # Gnome terminal won't tell us which PID a given command is run as # or allow a single instance so we can't tell when it completes. # This allows us to figure out the PID of the target so we can tell diff --git a/poky/scripts/oe-pkgdata-util b/poky/scripts/oe-pkgdata-util index 53739b0bf..9cc78d110 100755 --- a/poky/scripts/oe-pkgdata-util +++ b/poky/scripts/oe-pkgdata-util @@ -6,18 +6,7 @@ # # Copyright 2012-2015 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # import sys diff --git a/poky/scripts/oe-publish-sdk b/poky/scripts/oe-publish-sdk index ee33acf90..4b70f436b 100755 --- a/poky/scripts/oe-publish-sdk +++ b/poky/scripts/oe-publish-sdk @@ -1,21 +1,11 @@ #!/usr/bin/env python3 - +# # OpenEmbedded SDK publishing tool - -# Copyright (C) 2015-2016 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# Copyright (C) 2015-2016 Intel Corporation # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/oe-pylint b/poky/scripts/oe-pylint index 74ff4b884..7cc1ccb01 100755 --- a/poky/scripts/oe-pylint +++ b/poky/scripts/oe-pylint @@ -1,5 +1,7 @@ #!/bin/bash # +# SPDX-License-Identifier: GPL-2.0-only +# # Run the pylint3 against our common python module spaces and print a report of potential issues # this_dir=$(dirname $(readlink -f $0)) diff --git a/poky/scripts/oe-run-native b/poky/scripts/oe-run-native index a29e99438..bea5d696d 100755 --- a/poky/scripts/oe-run-native +++ b/poky/scripts/oe-run-native @@ -1,20 +1,8 @@ #!/bin/bash # # Copyright (c) 2016, Intel Corporation. -# All Rights Reserved # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See -# the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, see +# SPDX-License-Identifier: GPL-2.0-or-later # # diff --git a/poky/scripts/oe-selftest b/poky/scripts/oe-selftest index 1bf860a41..57662b2f7 100755 --- a/poky/scripts/oe-selftest +++ b/poky/scripts/oe-selftest @@ -2,18 +2,8 @@ # Copyright (c) 2013-2017 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # DESCRIPTION # This script runs tests defined in meta/lib/oeqa/selftest/ diff --git a/poky/scripts/oe-setup-builddir b/poky/scripts/oe-setup-builddir index 55d73ca1e..30eaa8efb 100755 --- a/poky/scripts/oe-setup-builddir +++ b/poky/scripts/oe-setup-builddir @@ -4,19 +4,8 @@ # # Copyright (C) 2006-2011 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. +# SPDX-License-Identifier: GPL-2.0-or-later # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA if [ -z "$BUILDDIR" ]; then echo >&2 "Error: The build directory (BUILDDIR) must be set!" diff --git a/poky/scripts/oe-test b/poky/scripts/oe-test index 34d9012d1..55985b0b2 100755 --- a/poky/scripts/oe-test +++ b/poky/scripts/oe-test @@ -3,7 +3,9 @@ # OpenEmbedded test tool # # Copyright (C) 2016 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import os import sys diff --git a/poky/scripts/oe-trim-schemas b/poky/scripts/oe-trim-schemas index 7c199ef1d..bf77c8cf6 100755 --- a/poky/scripts/oe-trim-schemas +++ b/poky/scripts/oe-trim-schemas @@ -1,4 +1,7 @@ #! /usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import sys try: diff --git a/poky/scripts/oepydevshell-internal.py b/poky/scripts/oepydevshell-internal.py index 2f7d5d433..96c078ef3 100755 --- a/poky/scripts/oepydevshell-internal.py +++ b/poky/scripts/oepydevshell-internal.py @@ -1,4 +1,7 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import os import sys diff --git a/poky/scripts/opkg-query-helper.py b/poky/scripts/opkg-query-helper.py index ce89491f6..bc3ab4382 100755 --- a/poky/scripts/opkg-query-helper.py +++ b/poky/scripts/opkg-query-helper.py @@ -6,21 +6,8 @@ # # Copyright 2012 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. -# -# - import sys import fileinput diff --git a/poky/scripts/postinst-intercepts/delay_to_first_boot b/poky/scripts/postinst-intercepts/delay_to_first_boot index ecdbef95d..fa8e1caaf 100644 --- a/poky/scripts/postinst-intercepts/delay_to_first_boot +++ b/poky/scripts/postinst-intercepts/delay_to_first_boot @@ -1,2 +1,6 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# + exit 1 diff --git a/poky/scripts/postinst-intercepts/postinst_intercept b/poky/scripts/postinst-intercepts/postinst_intercept index b18e806d4..b91974c88 100755 --- a/poky/scripts/postinst-intercepts/postinst_intercept +++ b/poky/scripts/postinst-intercepts/postinst_intercept @@ -1,5 +1,7 @@ #!/bin/sh # +# SPDX-License-Identifier: MIT +# # This script is called from inside postinstall scriptlets at do_rootfs time. It # actually adds, at the end, the list of packages for which the intercept script # is valid. Also, if one wants to pass any variables to the intercept script from diff --git a/poky/scripts/postinst-intercepts/update_font_cache b/poky/scripts/postinst-intercepts/update_font_cache index e0ec47196..3053c7065 100644 --- a/poky/scripts/postinst-intercepts/update_font_cache +++ b/poky/scripts/postinst-intercepts/update_font_cache @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/postinst-intercepts/update_gio_module_cache b/poky/scripts/postinst-intercepts/update_gio_module_cache index d1f014094..c87fa85db 100644 --- a/poky/scripts/postinst-intercepts/update_gio_module_cache +++ b/poky/scripts/postinst-intercepts/update_gio_module_cache @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/postinst-intercepts/update_gtk_immodules_cache b/poky/scripts/postinst-intercepts/update_gtk_immodules_cache index 395516971..9f07ccca6 100644 --- a/poky/scripts/postinst-intercepts/update_gtk_immodules_cache +++ b/poky/scripts/postinst-intercepts/update_gtk_immodules_cache @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/postinst-intercepts/update_icon_cache b/poky/scripts/postinst-intercepts/update_icon_cache index 9cf2a72a0..212209a9d 100644 --- a/poky/scripts/postinst-intercepts/update_icon_cache +++ b/poky/scripts/postinst-intercepts/update_icon_cache @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/postinst-intercepts/update_pixbuf_cache b/poky/scripts/postinst-intercepts/update_pixbuf_cache index ebea07c35..ea1281447 100644 --- a/poky/scripts/postinst-intercepts/update_pixbuf_cache +++ b/poky/scripts/postinst-intercepts/update_pixbuf_cache @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/postinst-intercepts/update_udev_hwdb b/poky/scripts/postinst-intercepts/update_udev_hwdb index b5cce0a09..c4fb2bffc 100644 --- a/poky/scripts/postinst-intercepts/update_udev_hwdb +++ b/poky/scripts/postinst-intercepts/update_udev_hwdb @@ -1,4 +1,7 @@ #!/bin/sh +# +# SPDX-License-Identifier: MIT +# set -e diff --git a/poky/scripts/pybootchartgui/pybootchartgui.py b/poky/scripts/pybootchartgui/pybootchartgui.py index 7ce1a5be4..1c4062b42 100755 --- a/poky/scripts/pybootchartgui/pybootchartgui.py +++ b/poky/scripts/pybootchartgui/pybootchartgui.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # # This file is part of pybootchartgui. diff --git a/poky/scripts/pybootchartgui/pybootchartgui/draw.py b/poky/scripts/pybootchartgui/pybootchartgui/draw.py index 201ce4577..add5c5388 100644 --- a/poky/scripts/pybootchartgui/pybootchartgui/draw.py +++ b/poky/scripts/pybootchartgui/pybootchartgui/draw.py @@ -19,22 +19,23 @@ import math import re import random import colorsys +import functools from operator import itemgetter class RenderOptions: - def __init__(self, app_options): - # should we render a cumulative CPU time chart - self.cumulative = True - self.charts = True - self.kernel_only = False - self.app_options = app_options + def __init__(self, app_options): + # should we render a cumulative CPU time chart + self.cumulative = True + self.charts = True + self.kernel_only = False + self.app_options = app_options - def proc_tree (self, trace): - if self.kernel_only: - return trace.kernel_tree - else: - return trace.proc_tree + def proc_tree (self, trace): + if self.kernel_only: + return trace.kernel_tree + else: + return trace.proc_tree # Process tree background color. BACK_COLOR = (1.0, 1.0, 1.0, 1.0) @@ -136,11 +137,11 @@ TASK_COLOR_PACKAGE_WRITE = (0.0, 0.50, 0.50, 1.0) # Distinct colors used for different disk volumnes. # If we have more volumns, colors get re-used. VOLUME_COLORS = [ - (1.0, 1.0, 0.00, 1.0), - (0.0, 1.00, 0.00, 1.0), - (1.0, 0.00, 1.00, 1.0), - (0.0, 0.00, 1.00, 1.0), - (0.0, 1.00, 1.00, 1.0), + (1.0, 1.0, 0.00, 1.0), + (0.0, 1.00, 0.00, 1.0), + (1.0, 0.00, 1.00, 1.0), + (0.0, 0.00, 1.00, 1.0), + (0.0, 1.00, 1.00, 1.0), ] # Process states @@ -152,7 +153,7 @@ STATE_STOPPED = 4 STATE_ZOMBIE = 5 STATE_COLORS = [(0, 0, 0, 0), PROC_COLOR_R, PROC_COLOR_S, PROC_COLOR_D, \ - PROC_COLOR_T, PROC_COLOR_Z, PROC_COLOR_X, PROC_COLOR_W] + PROC_COLOR_T, PROC_COLOR_Z, PROC_COLOR_X, PROC_COLOR_W] # CumulativeStats Types STAT_TYPE_CPU = 0 @@ -160,80 +161,80 @@ STAT_TYPE_IO = 1 # Convert ps process state to an int def get_proc_state(flag): - return "RSDTZXW".find(flag) + 1 + return "RSDTZXW".find(flag) + 1 def draw_text(ctx, text, color, x, y): - ctx.set_source_rgba(*color) - ctx.move_to(x, y) - ctx.show_text(text) + ctx.set_source_rgba(*color) + ctx.move_to(x, y) + ctx.show_text(text) def draw_fill_rect(ctx, color, rect): - ctx.set_source_rgba(*color) - ctx.rectangle(*rect) - ctx.fill() + ctx.set_source_rgba(*color) + ctx.rectangle(*rect) + ctx.fill() def draw_rect(ctx, color, rect): - ctx.set_source_rgba(*color) - ctx.rectangle(*rect) - ctx.stroke() + ctx.set_source_rgba(*color) + ctx.rectangle(*rect) + ctx.stroke() def draw_legend_box(ctx, label, fill_color, x, y, s): - draw_fill_rect(ctx, fill_color, (x, y - s, s, s)) - draw_rect(ctx, PROC_BORDER_COLOR, (x, y - s, s, s)) - draw_text(ctx, label, TEXT_COLOR, x + s + 5, y) + draw_fill_rect(ctx, fill_color, (x, y - s, s, s)) + draw_rect(ctx, PROC_BORDER_COLOR, (x, y - s, s, s)) + draw_text(ctx, label, TEXT_COLOR, x + s + 5, y) def draw_legend_line(ctx, label, fill_color, x, y, s): - draw_fill_rect(ctx, fill_color, (x, y - s/2, s + 1, 3)) - ctx.arc(x + (s + 1)/2.0, y - (s - 3)/2.0, 2.5, 0, 2.0 * math.pi) - ctx.fill() - draw_text(ctx, label, TEXT_COLOR, x + s + 5, y) + draw_fill_rect(ctx, fill_color, (x, y - s/2, s + 1, 3)) + ctx.arc(x + (s + 1)/2.0, y - (s - 3)/2.0, 2.5, 0, 2.0 * math.pi) + ctx.fill() + draw_text(ctx, label, TEXT_COLOR, x + s + 5, y) def draw_label_in_box(ctx, color, label, x, y, w, maxx): - label_w = ctx.text_extents(label)[2] - label_x = x + w / 2 - label_w / 2 - if label_w + 10 > w: - label_x = x + w + 5 - if label_x + label_w > maxx: - label_x = x - label_w - 5 - draw_text(ctx, label, color, label_x, y) + label_w = ctx.text_extents(label)[2] + label_x = x + w / 2 - label_w / 2 + if label_w + 10 > w: + label_x = x + w + 5 + if label_x + label_w > maxx: + label_x = x - label_w - 5 + draw_text(ctx, label, color, label_x, y) def draw_sec_labels(ctx, options, rect, sec_w, nsecs): - ctx.set_font_size(AXIS_FONT_SIZE) - prev_x = 0 - for i in range(0, rect[2] + 1, sec_w): - if ((i / sec_w) % nsecs == 0) : - if options.app_options.as_minutes : - label = "%.1f" % (i / sec_w / 60.0) - else : - label = "%d" % (i / sec_w) - label_w = ctx.text_extents(label)[2] - x = rect[0] + i - label_w/2 - if x >= prev_x: - draw_text(ctx, label, TEXT_COLOR, x, rect[1] - 2) - prev_x = x + label_w + ctx.set_font_size(AXIS_FONT_SIZE) + prev_x = 0 + for i in range(0, rect[2] + 1, sec_w): + if ((i / sec_w) % nsecs == 0) : + if options.app_options.as_minutes : + label = "%.1f" % (i / sec_w / 60.0) + else : + label = "%d" % (i / sec_w) + label_w = ctx.text_extents(label)[2] + x = rect[0] + i - label_w/2 + if x >= prev_x: + draw_text(ctx, label, TEXT_COLOR, x, rect[1] - 2) + prev_x = x + label_w def draw_box_ticks(ctx, rect, sec_w): - draw_rect(ctx, BORDER_COLOR, tuple(rect)) - - ctx.set_line_cap(cairo.LINE_CAP_SQUARE) - - for i in range(sec_w, rect[2] + 1, sec_w): - if ((i / sec_w) % 10 == 0) : - ctx.set_line_width(1.5) - elif sec_w < 5 : - continue - else : - ctx.set_line_width(1.0) - if ((i / sec_w) % 30 == 0) : - ctx.set_source_rgba(*TICK_COLOR_BOLD) - else : - ctx.set_source_rgba(*TICK_COLOR) - ctx.move_to(rect[0] + i, rect[1] + 1) - ctx.line_to(rect[0] + i, rect[1] + rect[3] - 1) - ctx.stroke() - ctx.set_line_width(1.0) - - ctx.set_line_cap(cairo.LINE_CAP_BUTT) + draw_rect(ctx, BORDER_COLOR, tuple(rect)) + + ctx.set_line_cap(cairo.LINE_CAP_SQUARE) + + for i in range(sec_w, rect[2] + 1, sec_w): + if ((i / sec_w) % 10 == 0) : + ctx.set_line_width(1.5) + elif sec_w < 5 : + continue + else : + ctx.set_line_width(1.0) + if ((i / sec_w) % 30 == 0) : + ctx.set_source_rgba(*TICK_COLOR_BOLD) + else : + ctx.set_source_rgba(*TICK_COLOR) + ctx.move_to(rect[0] + i, rect[1] + 1) + ctx.line_to(rect[0] + i, rect[1] + rect[3] - 1) + ctx.stroke() + ctx.set_line_width(1.0) + + ctx.set_line_cap(cairo.LINE_CAP_BUTT) def draw_annotations(ctx, proc_tree, times, rect): ctx.set_line_cap(cairo.LINE_CAP_SQUARE) @@ -252,51 +253,51 @@ def draw_annotations(ctx, proc_tree, times, rect): ctx.set_dash([]) def draw_chart(ctx, color, fill, chart_bounds, data, proc_tree, data_range): - ctx.set_line_width(0.5) - x_shift = proc_tree.start_time - - def transform_point_coords(point, x_base, y_base, \ - xscale, yscale, x_trans, y_trans): - x = (point[0] - x_base) * xscale + x_trans - y = (point[1] - y_base) * -yscale + y_trans + chart_bounds[3] - return x, y - - max_x = max (x for (x, y) in data) - max_y = max (y for (x, y) in data) - # avoid divide by zero - if max_y == 0: - max_y = 1.0 - xscale = float (chart_bounds[2]) / (max_x - x_shift) - # If data_range is given, scale the chart so that the value range in - # data_range matches the chart bounds exactly. - # Otherwise, scale so that the actual data matches the chart bounds. - if data_range: - yscale = float(chart_bounds[3]) / (data_range[1] - data_range[0]) - ybase = data_range[0] - else: - yscale = float(chart_bounds[3]) / max_y - ybase = 0 - - first = transform_point_coords (data[0], x_shift, ybase, xscale, yscale, \ - chart_bounds[0], chart_bounds[1]) - last = transform_point_coords (data[-1], x_shift, ybase, xscale, yscale, \ - chart_bounds[0], chart_bounds[1]) - - ctx.set_source_rgba(*color) - ctx.move_to(*first) - for point in data: - x, y = transform_point_coords (point, x_shift, ybase, xscale, yscale, \ - chart_bounds[0], chart_bounds[1]) - ctx.line_to(x, y) - if fill: - ctx.stroke_preserve() - ctx.line_to(last[0], chart_bounds[1]+chart_bounds[3]) - ctx.line_to(first[0], chart_bounds[1]+chart_bounds[3]) - ctx.line_to(first[0], first[1]) - ctx.fill() - else: - ctx.stroke() - ctx.set_line_width(1.0) + ctx.set_line_width(0.5) + x_shift = proc_tree.start_time + + def transform_point_coords(point, x_base, y_base, \ + xscale, yscale, x_trans, y_trans): + x = (point[0] - x_base) * xscale + x_trans + y = (point[1] - y_base) * -yscale + y_trans + chart_bounds[3] + return x, y + + max_x = max (x for (x, y) in data) + max_y = max (y for (x, y) in data) + # avoid divide by zero + if max_y == 0: + max_y = 1.0 + xscale = float (chart_bounds[2]) / (max_x - x_shift) + # If data_range is given, scale the chart so that the value range in + # data_range matches the chart bounds exactly. + # Otherwise, scale so that the actual data matches the chart bounds. + if data_range: + yscale = float(chart_bounds[3]) / (data_range[1] - data_range[0]) + ybase = data_range[0] + else: + yscale = float(chart_bounds[3]) / max_y + ybase = 0 + + first = transform_point_coords (data[0], x_shift, ybase, xscale, yscale, \ + chart_bounds[0], chart_bounds[1]) + last = transform_point_coords (data[-1], x_shift, ybase, xscale, yscale, \ + chart_bounds[0], chart_bounds[1]) + + ctx.set_source_rgba(*color) + ctx.move_to(*first) + for point in data: + x, y = transform_point_coords (point, x_shift, ybase, xscale, yscale, \ + chart_bounds[0], chart_bounds[1]) + ctx.line_to(x, y) + if fill: + ctx.stroke_preserve() + ctx.line_to(last[0], chart_bounds[1]+chart_bounds[3]) + ctx.line_to(first[0], chart_bounds[1]+chart_bounds[3]) + ctx.line_to(first[0], first[1]) + ctx.fill() + else: + ctx.stroke() + ctx.set_line_width(1.0) bar_h = 55 meminfo_bar_h = 2 * bar_h @@ -311,338 +312,344 @@ CUML_HEIGHT = 2000 # Increased value to accomodate CPU and I/O Graphs OPTIONS = None def extents(options, xscale, trace): - start = min(trace.start.keys()) - end = start - - processes = 0 - for proc in trace.processes: - if not options.app_options.show_all and \ - trace.processes[proc][1] - trace.processes[proc][0] < options.app_options.mintime: - continue - - if trace.processes[proc][1] > end: - end = trace.processes[proc][1] - processes += 1 - - if trace.min is not None and trace.max is not None: - start = trace.min - end = trace.max - - w = int ((end - start) * sec_w_base * xscale) + 2 * off_x - h = proc_h * processes + header_h + 2 * off_y - - if options.charts: - if trace.cpu_stats: - h += 30 + bar_h - if trace.disk_stats: - h += 30 + bar_h - if trace.monitor_disk: - h += 30 + bar_h - if trace.mem_stats: - h += meminfo_bar_h - - return (w, h) + start = min(trace.start.keys()) + end = start + + processes = 0 + for proc in trace.processes: + if not options.app_options.show_all and \ + trace.processes[proc][1] - trace.processes[proc][0] < options.app_options.mintime: + continue + + if trace.processes[proc][1] > end: + end = trace.processes[proc][1] + processes += 1 + + if trace.min is not None and trace.max is not None: + start = trace.min + end = trace.max + + w = int ((end - start) * sec_w_base * xscale) + 2 * off_x + h = proc_h * processes + header_h + 2 * off_y + + if options.charts: + if trace.cpu_stats: + h += 30 + bar_h + if trace.disk_stats: + h += 30 + bar_h + if trace.monitor_disk: + h += 30 + bar_h + if trace.mem_stats: + h += meminfo_bar_h + + # Allow for width of process legend and offset + if w < (720 + off_x): + w = 720 + off_x + + return (w, h) def clip_visible(clip, rect): - xmax = max (clip[0], rect[0]) - ymax = max (clip[1], rect[1]) - xmin = min (clip[0] + clip[2], rect[0] + rect[2]) - ymin = min (clip[1] + clip[3], rect[1] + rect[3]) - return (xmin > xmax and ymin > ymax) + xmax = max (clip[0], rect[0]) + ymax = max (clip[1], rect[1]) + xmin = min (clip[0] + clip[2], rect[0] + rect[2]) + ymin = min (clip[1] + clip[3], rect[1] + rect[3]) + return (xmin > xmax and ymin > ymax) def render_charts(ctx, options, clip, trace, curr_y, w, h, sec_w): - proc_tree = options.proc_tree(trace) - - # render bar legend - if trace.cpu_stats: - ctx.set_font_size(LEGEND_FONT_SIZE) - - draw_legend_box(ctx, "CPU (user+sys)", CPU_COLOR, off_x, curr_y+20, leg_s) - draw_legend_box(ctx, "I/O (wait)", IO_COLOR, off_x + 120, curr_y+20, leg_s) - - # render I/O wait - chart_rect = (off_x, curr_y+30, w, bar_h) - if clip_visible (clip, chart_rect): - draw_box_ticks (ctx, chart_rect, sec_w) - draw_annotations (ctx, proc_tree, trace.times, chart_rect) - draw_chart (ctx, IO_COLOR, True, chart_rect, \ - [(sample.time, sample.user + sample.sys + sample.io) for sample in trace.cpu_stats], \ - proc_tree, None) - # render CPU load - draw_chart (ctx, CPU_COLOR, True, chart_rect, \ - [(sample.time, sample.user + sample.sys) for sample in trace.cpu_stats], \ - proc_tree, None) - - curr_y = curr_y + 30 + bar_h - - # render second chart - if trace.disk_stats: - draw_legend_line(ctx, "Disk throughput", DISK_TPUT_COLOR, off_x, curr_y+20, leg_s) - draw_legend_box(ctx, "Disk utilization", IO_COLOR, off_x + 120, curr_y+20, leg_s) - - # render I/O utilization - chart_rect = (off_x, curr_y+30, w, bar_h) - if clip_visible (clip, chart_rect): - draw_box_ticks (ctx, chart_rect, sec_w) - draw_annotations (ctx, proc_tree, trace.times, chart_rect) - draw_chart (ctx, IO_COLOR, True, chart_rect, \ - [(sample.time, sample.util) for sample in trace.disk_stats], \ - proc_tree, None) - - # render disk throughput - max_sample = max (trace.disk_stats, key = lambda s: s.tput) - if clip_visible (clip, chart_rect): - draw_chart (ctx, DISK_TPUT_COLOR, False, chart_rect, \ - [(sample.time, sample.tput) for sample in trace.disk_stats], \ - proc_tree, None) - - pos_x = off_x + ((max_sample.time - proc_tree.start_time) * w / proc_tree.duration) - - shift_x, shift_y = -20, 20 - if (pos_x < off_x + 245): - shift_x, shift_y = 5, 40 - - label = "%dMB/s" % round ((max_sample.tput) / 1024.0) - draw_text (ctx, label, DISK_TPUT_COLOR, pos_x + shift_x, curr_y + shift_y) - - curr_y = curr_y + 30 + bar_h - - # render disk space usage - # - # Draws the amount of disk space used on each volume relative to the - # lowest recorded amount. The graphs for each volume are stacked above - # each other so that total disk usage is visible. - if trace.monitor_disk: - ctx.set_font_size(LEGEND_FONT_SIZE) - # Determine set of volumes for which we have - # information and the minimal amount of used disk - # space for each. Currently samples are allowed to - # not have a values for all volumes; drawing could be - # made more efficient if that wasn't the case. - volumes = set() - min_used = {} - for sample in trace.monitor_disk: - for volume, used in sample.records.items(): - volumes.add(volume) - if volume not in min_used or min_used[volume] > used: - min_used[volume] = used - volumes = sorted(list(volumes)) - disk_scale = 0 - for i, volume in enumerate(volumes): - volume_scale = max([sample.records[volume] - min_used[volume] - for sample in trace.monitor_disk - if volume in sample.records]) - # Does not take length of volume name into account, but fixed offset - # works okay in practice. - draw_legend_box(ctx, '%s (max: %u MiB)' % (volume, volume_scale / 1024 / 1024), - VOLUME_COLORS[i % len(VOLUME_COLORS)], - off_x + i * 250, curr_y+20, leg_s) - disk_scale += volume_scale - - # render used amount of disk space - chart_rect = (off_x, curr_y+30, w, bar_h) - if clip_visible (clip, chart_rect): - draw_box_ticks (ctx, chart_rect, sec_w) - draw_annotations (ctx, proc_tree, trace.times, chart_rect) - for i in range(len(volumes), 0, -1): - draw_chart (ctx, VOLUME_COLORS[(i - 1) % len(VOLUME_COLORS)], True, chart_rect, \ - [(sample.time, - # Sum up used space of all volumes including the current one - # so that the graphs appear as stacked on top of each other. - reduce(lambda x,y: x+y, - [sample.records[volume] - min_used[volume] - for volume in volumes[0:i] - if volume in sample.records], - 0)) - for sample in trace.monitor_disk], \ - proc_tree, [0, disk_scale]) - - curr_y = curr_y + 30 + bar_h - - # render mem usage - chart_rect = (off_x, curr_y+30, w, meminfo_bar_h) - mem_stats = trace.mem_stats - if mem_stats and clip_visible (clip, chart_rect): - mem_scale = max(sample.buffers for sample in mem_stats) - draw_legend_box(ctx, "Mem cached (scale: %u MiB)" % (float(mem_scale) / 1024), MEM_CACHED_COLOR, off_x, curr_y+20, leg_s) - draw_legend_box(ctx, "Used", MEM_USED_COLOR, off_x + 240, curr_y+20, leg_s) - draw_legend_box(ctx, "Buffers", MEM_BUFFERS_COLOR, off_x + 360, curr_y+20, leg_s) - draw_legend_line(ctx, "Swap (scale: %u MiB)" % max([(sample.swap)/1024 for sample in mem_stats]), \ - MEM_SWAP_COLOR, off_x + 480, curr_y+20, leg_s) - draw_box_ticks(ctx, chart_rect, sec_w) - draw_annotations(ctx, proc_tree, trace.times, chart_rect) - draw_chart(ctx, MEM_BUFFERS_COLOR, True, chart_rect, \ - [(sample.time, sample.buffers) for sample in trace.mem_stats], \ - proc_tree, [0, mem_scale]) - draw_chart(ctx, MEM_USED_COLOR, True, chart_rect, \ - [(sample.time, sample.used) for sample in mem_stats], \ - proc_tree, [0, mem_scale]) - draw_chart(ctx, MEM_CACHED_COLOR, True, chart_rect, \ - [(sample.time, sample.cached) for sample in mem_stats], \ - proc_tree, [0, mem_scale]) - draw_chart(ctx, MEM_SWAP_COLOR, False, chart_rect, \ - [(sample.time, float(sample.swap)) for sample in mem_stats], \ - proc_tree, None) - - curr_y = curr_y + meminfo_bar_h - - return curr_y + proc_tree = options.proc_tree(trace) + + # render bar legend + if trace.cpu_stats: + ctx.set_font_size(LEGEND_FONT_SIZE) + + draw_legend_box(ctx, "CPU (user+sys)", CPU_COLOR, off_x, curr_y+20, leg_s) + draw_legend_box(ctx, "I/O (wait)", IO_COLOR, off_x + 120, curr_y+20, leg_s) + + # render I/O wait + chart_rect = (off_x, curr_y+30, w, bar_h) + if clip_visible (clip, chart_rect): + draw_box_ticks (ctx, chart_rect, sec_w) + draw_annotations (ctx, proc_tree, trace.times, chart_rect) + draw_chart (ctx, IO_COLOR, True, chart_rect, \ + [(sample.time, sample.user + sample.sys + sample.io) for sample in trace.cpu_stats], \ + proc_tree, None) + # render CPU load + draw_chart (ctx, CPU_COLOR, True, chart_rect, \ + [(sample.time, sample.user + sample.sys) for sample in trace.cpu_stats], \ + proc_tree, None) + + curr_y = curr_y + 30 + bar_h + + # render second chart + if trace.disk_stats: + draw_legend_line(ctx, "Disk throughput", DISK_TPUT_COLOR, off_x, curr_y+20, leg_s) + draw_legend_box(ctx, "Disk utilization", IO_COLOR, off_x + 120, curr_y+20, leg_s) + + # render I/O utilization + chart_rect = (off_x, curr_y+30, w, bar_h) + if clip_visible (clip, chart_rect): + draw_box_ticks (ctx, chart_rect, sec_w) + draw_annotations (ctx, proc_tree, trace.times, chart_rect) + draw_chart (ctx, IO_COLOR, True, chart_rect, \ + [(sample.time, sample.util) for sample in trace.disk_stats], \ + proc_tree, None) + + # render disk throughput + max_sample = max (trace.disk_stats, key = lambda s: s.tput) + if clip_visible (clip, chart_rect): + draw_chart (ctx, DISK_TPUT_COLOR, False, chart_rect, \ + [(sample.time, sample.tput) for sample in trace.disk_stats], \ + proc_tree, None) + + pos_x = off_x + ((max_sample.time - proc_tree.start_time) * w / proc_tree.duration) + + shift_x, shift_y = -20, 20 + if (pos_x < off_x + 245): + shift_x, shift_y = 5, 40 + + label = "%dMB/s" % round ((max_sample.tput) / 1024.0) + draw_text (ctx, label, DISK_TPUT_COLOR, pos_x + shift_x, curr_y + shift_y) + + curr_y = curr_y + 30 + bar_h + + # render disk space usage + # + # Draws the amount of disk space used on each volume relative to the + # lowest recorded amount. The graphs for each volume are stacked above + # each other so that total disk usage is visible. + if trace.monitor_disk: + ctx.set_font_size(LEGEND_FONT_SIZE) + # Determine set of volumes for which we have + # information and the minimal amount of used disk + # space for each. Currently samples are allowed to + # not have a values for all volumes; drawing could be + # made more efficient if that wasn't the case. + volumes = set() + min_used = {} + for sample in trace.monitor_disk: + for volume, used in sample.records.items(): + volumes.add(volume) + if volume not in min_used or min_used[volume] > used: + min_used[volume] = used + volumes = sorted(list(volumes)) + disk_scale = 0 + for i, volume in enumerate(volumes): + volume_scale = max([sample.records[volume] - min_used[volume] + for sample in trace.monitor_disk + if volume in sample.records]) + # Does not take length of volume name into account, but fixed offset + # works okay in practice. + draw_legend_box(ctx, '%s (max: %u MiB)' % (volume, volume_scale / 1024 / 1024), + VOLUME_COLORS[i % len(VOLUME_COLORS)], + off_x + i * 250, curr_y+20, leg_s) + disk_scale += volume_scale + + # render used amount of disk space + chart_rect = (off_x, curr_y+30, w, bar_h) + if clip_visible (clip, chart_rect): + draw_box_ticks (ctx, chart_rect, sec_w) + draw_annotations (ctx, proc_tree, trace.times, chart_rect) + for i in range(len(volumes), 0, -1): + draw_chart (ctx, VOLUME_COLORS[(i - 1) % len(VOLUME_COLORS)], True, chart_rect, \ + [(sample.time, + # Sum up used space of all volumes including the current one + # so that the graphs appear as stacked on top of each other. + functools.reduce(lambda x,y: x+y, + [sample.records[volume] - min_used[volume] + for volume in volumes[0:i] + if volume in sample.records], + 0)) + for sample in trace.monitor_disk], \ + proc_tree, [0, disk_scale]) + + curr_y = curr_y + 30 + bar_h + + # render mem usage + chart_rect = (off_x, curr_y+30, w, meminfo_bar_h) + mem_stats = trace.mem_stats + if mem_stats and clip_visible (clip, chart_rect): + mem_scale = max(sample.buffers for sample in mem_stats) + draw_legend_box(ctx, "Mem cached (scale: %u MiB)" % (float(mem_scale) / 1024), MEM_CACHED_COLOR, off_x, curr_y+20, leg_s) + draw_legend_box(ctx, "Used", MEM_USED_COLOR, off_x + 240, curr_y+20, leg_s) + draw_legend_box(ctx, "Buffers", MEM_BUFFERS_COLOR, off_x + 360, curr_y+20, leg_s) + draw_legend_line(ctx, "Swap (scale: %u MiB)" % max([(sample.swap)/1024 for sample in mem_stats]), \ + MEM_SWAP_COLOR, off_x + 480, curr_y+20, leg_s) + draw_box_ticks(ctx, chart_rect, sec_w) + draw_annotations(ctx, proc_tree, trace.times, chart_rect) + draw_chart(ctx, MEM_BUFFERS_COLOR, True, chart_rect, \ + [(sample.time, sample.buffers) for sample in trace.mem_stats], \ + proc_tree, [0, mem_scale]) + draw_chart(ctx, MEM_USED_COLOR, True, chart_rect, \ + [(sample.time, sample.used) for sample in mem_stats], \ + proc_tree, [0, mem_scale]) + draw_chart(ctx, MEM_CACHED_COLOR, True, chart_rect, \ + [(sample.time, sample.cached) for sample in mem_stats], \ + proc_tree, [0, mem_scale]) + draw_chart(ctx, MEM_SWAP_COLOR, False, chart_rect, \ + [(sample.time, float(sample.swap)) for sample in mem_stats], \ + proc_tree, None) + + curr_y = curr_y + meminfo_bar_h + + return curr_y def render_processes_chart(ctx, options, trace, curr_y, w, h, sec_w): - chart_rect = [off_x, curr_y+header_h, w, h - 2 * off_y - header_h - leg_s + proc_h] - - draw_legend_box (ctx, "Configure", \ - TASK_COLOR_CONFIGURE, off_x , curr_y + 45, leg_s) - draw_legend_box (ctx, "Compile", \ - TASK_COLOR_COMPILE, off_x+120, curr_y + 45, leg_s) - draw_legend_box (ctx, "Install", \ - TASK_COLOR_INSTALL, off_x+240, curr_y + 45, leg_s) - draw_legend_box (ctx, "Populate Sysroot", \ - TASK_COLOR_SYSROOT, off_x+360, curr_y + 45, leg_s) - draw_legend_box (ctx, "Package", \ - TASK_COLOR_PACKAGE, off_x+480, curr_y + 45, leg_s) - draw_legend_box (ctx, "Package Write", - TASK_COLOR_PACKAGE_WRITE, off_x+600, curr_y + 45, leg_s) - - ctx.set_font_size(PROC_TEXT_FONT_SIZE) - - draw_box_ticks(ctx, chart_rect, sec_w) - draw_sec_labels(ctx, options, chart_rect, sec_w, 30) - - y = curr_y+header_h - - offset = trace.min or min(trace.start.keys()) - for s in sorted(trace.start.keys()): - for val in sorted(trace.start[s]): - if not options.app_options.show_all and \ - trace.processes[val][1] - s < options.app_options.mintime: - continue - task = val.split(":")[1] - #print val - #print trace.processes[val][1] - #print s - x = chart_rect[0] + (s - offset) * sec_w - w = ((trace.processes[val][1] - s) * sec_w) - - #print "proc at %s %s %s %s" % (x, y, w, proc_h) - col = None - if task == "do_compile": - col = TASK_COLOR_COMPILE - elif task == "do_configure": - col = TASK_COLOR_CONFIGURE - elif task == "do_install": - col = TASK_COLOR_INSTALL - elif task == "do_populate_sysroot": - col = TASK_COLOR_SYSROOT - elif task == "do_package": - col = TASK_COLOR_PACKAGE - elif task == "do_package_write_rpm" or \ + chart_rect = [off_x, curr_y+header_h, w, h - curr_y - 1 * off_y - header_h ] + + draw_legend_box (ctx, "Configure", \ + TASK_COLOR_CONFIGURE, off_x , curr_y + 45, leg_s) + draw_legend_box (ctx, "Compile", \ + TASK_COLOR_COMPILE, off_x+120, curr_y + 45, leg_s) + draw_legend_box (ctx, "Install", \ + TASK_COLOR_INSTALL, off_x+240, curr_y + 45, leg_s) + draw_legend_box (ctx, "Populate Sysroot", \ + TASK_COLOR_SYSROOT, off_x+360, curr_y + 45, leg_s) + draw_legend_box (ctx, "Package", \ + TASK_COLOR_PACKAGE, off_x+480, curr_y + 45, leg_s) + draw_legend_box (ctx, "Package Write", \ + TASK_COLOR_PACKAGE_WRITE, off_x+600, curr_y + 45, leg_s) + + ctx.set_font_size(PROC_TEXT_FONT_SIZE) + + draw_box_ticks(ctx, chart_rect, sec_w) + draw_sec_labels(ctx, options, chart_rect, sec_w, 30) + + y = curr_y+header_h + + offset = trace.min or min(trace.start.keys()) + for start in sorted(trace.start.keys()): + for process in sorted(trace.start[start]): + if not options.app_options.show_all and \ + trace.processes[process][1] - start < options.app_options.mintime: + continue + task = process.split(":")[1] + + #print(process) + #print(trace.processes[process][1]) + #print(s) + + x = chart_rect[0] + (start - offset) * sec_w + w = ((trace.processes[process][1] - start) * sec_w) + + #print("proc at %s %s %s %s" % (x, y, w, proc_h)) + col = None + if task == "do_compile": + col = TASK_COLOR_COMPILE + elif task == "do_configure": + col = TASK_COLOR_CONFIGURE + elif task == "do_install": + col = TASK_COLOR_INSTALL + elif task == "do_populate_sysroot": + col = TASK_COLOR_SYSROOT + elif task == "do_package": + col = TASK_COLOR_PACKAGE + elif task == "do_package_write_rpm" or \ task == "do_package_write_deb" or \ task == "do_package_write_ipk": - col = TASK_COLOR_PACKAGE_WRITE - else: - col = WHITE + col = TASK_COLOR_PACKAGE_WRITE + else: + col = WHITE - if col: - draw_fill_rect(ctx, col, (x, y, w, proc_h)) - draw_rect(ctx, PROC_BORDER_COLOR, (x, y, w, proc_h)) + if col: + draw_fill_rect(ctx, col, (x, y, w, proc_h)) + draw_rect(ctx, PROC_BORDER_COLOR, (x, y, w, proc_h)) - draw_label_in_box(ctx, PROC_TEXT_COLOR, val, x, y + proc_h - 4, w, proc_h) - y = y + proc_h + draw_label_in_box(ctx, PROC_TEXT_COLOR, process, x, y + proc_h - 4, w, proc_h) + y = y + proc_h - return curr_y + return curr_y # # Render the chart. # def render(ctx, options, xscale, trace): - (w, h) = extents (options, xscale, trace) - global OPTIONS - OPTIONS = options.app_options + (w, h) = extents (options, xscale, trace) + global OPTIONS + OPTIONS = options.app_options - # x, y, w, h - clip = ctx.clip_extents() + # x, y, w, h + clip = ctx.clip_extents() - sec_w = int (xscale * sec_w_base) - ctx.set_line_width(1.0) - ctx.select_font_face(FONT_NAME) - draw_fill_rect(ctx, WHITE, (0, 0, max(w, MIN_IMG_W), h)) - w -= 2*off_x - curr_y = off_y; + sec_w = int (xscale * sec_w_base) + ctx.set_line_width(1.0) + ctx.select_font_face(FONT_NAME) + draw_fill_rect(ctx, WHITE, (0, 0, max(w, MIN_IMG_W), h)) + w -= 2*off_x + curr_y = off_y; - if options.charts: - curr_y = render_charts (ctx, options, clip, trace, curr_y, w, h, sec_w) + if options.charts: + curr_y = render_charts (ctx, options, clip, trace, curr_y, w, h, sec_w) - curr_y = render_processes_chart (ctx, options, trace, curr_y, w, h, sec_w) + curr_y = render_processes_chart (ctx, options, trace, curr_y, w, h, sec_w) - return + return - proc_tree = options.proc_tree (trace) + proc_tree = options.proc_tree (trace) - # draw the title and headers - if proc_tree.idle: - duration = proc_tree.idle - else: - duration = proc_tree.duration + # draw the title and headers + if proc_tree.idle: + duration = proc_tree.idle + else: + duration = proc_tree.duration - if not options.kernel_only: - curr_y = draw_header (ctx, trace.headers, duration) - else: - curr_y = off_y; + if not options.kernel_only: + curr_y = draw_header (ctx, trace.headers, duration) + else: + curr_y = off_y; - # draw process boxes - proc_height = h - if proc_tree.taskstats and options.cumulative: - proc_height -= CUML_HEIGHT + # draw process boxes + proc_height = h + if proc_tree.taskstats and options.cumulative: + proc_height -= CUML_HEIGHT - draw_process_bar_chart(ctx, clip, options, proc_tree, trace.times, - curr_y, w, proc_height, sec_w) + draw_process_bar_chart(ctx, clip, options, proc_tree, trace.times, + curr_y, w, proc_height, sec_w) - curr_y = proc_height - ctx.set_font_size(SIG_FONT_SIZE) - draw_text(ctx, SIGNATURE, SIG_COLOR, off_x + 5, proc_height - 8) + curr_y = proc_height + ctx.set_font_size(SIG_FONT_SIZE) + draw_text(ctx, SIGNATURE, SIG_COLOR, off_x + 5, proc_height - 8) - # draw a cumulative CPU-time-per-process graph - if proc_tree.taskstats and options.cumulative: - cuml_rect = (off_x, curr_y + off_y, w, CUML_HEIGHT/2 - off_y * 2) - if clip_visible (clip, cuml_rect): - draw_cuml_graph(ctx, proc_tree, cuml_rect, duration, sec_w, STAT_TYPE_CPU) + # draw a cumulative CPU-time-per-process graph + if proc_tree.taskstats and options.cumulative: + cuml_rect = (off_x, curr_y + off_y, w, CUML_HEIGHT/2 - off_y * 2) + if clip_visible (clip, cuml_rect): + draw_cuml_graph(ctx, proc_tree, cuml_rect, duration, sec_w, STAT_TYPE_CPU) - # draw a cumulative I/O-time-per-process graph - if proc_tree.taskstats and options.cumulative: - cuml_rect = (off_x, curr_y + off_y * 100, w, CUML_HEIGHT/2 - off_y * 2) - if clip_visible (clip, cuml_rect): - draw_cuml_graph(ctx, proc_tree, cuml_rect, duration, sec_w, STAT_TYPE_IO) + # draw a cumulative I/O-time-per-process graph + if proc_tree.taskstats and options.cumulative: + cuml_rect = (off_x, curr_y + off_y * 100, w, CUML_HEIGHT/2 - off_y * 2) + if clip_visible (clip, cuml_rect): + draw_cuml_graph(ctx, proc_tree, cuml_rect, duration, sec_w, STAT_TYPE_IO) def draw_process_bar_chart(ctx, clip, options, proc_tree, times, curr_y, w, h, sec_w): - header_size = 0 - if not options.kernel_only: - draw_legend_box (ctx, "Running (%cpu)", - PROC_COLOR_R, off_x , curr_y + 45, leg_s) - draw_legend_box (ctx, "Unint.sleep (I/O)", - PROC_COLOR_D, off_x+120, curr_y + 45, leg_s) - draw_legend_box (ctx, "Sleeping", - PROC_COLOR_S, off_x+240, curr_y + 45, leg_s) - draw_legend_box (ctx, "Zombie", - PROC_COLOR_Z, off_x+360, curr_y + 45, leg_s) - header_size = 45 - - chart_rect = [off_x, curr_y + header_size + 15, - w, h - 2 * off_y - (curr_y + header_size + 15) + proc_h] - ctx.set_font_size (PROC_TEXT_FONT_SIZE) - - draw_box_ticks (ctx, chart_rect, sec_w) - if sec_w > 100: - nsec = 1 - else: - nsec = 5 - draw_sec_labels (ctx, options, chart_rect, sec_w, nsec) - draw_annotations (ctx, proc_tree, times, chart_rect) - - y = curr_y + 60 - for root in proc_tree.process_tree: - draw_processes_recursively(ctx, root, proc_tree, y, proc_h, chart_rect, clip) - y = y + proc_h * proc_tree.num_nodes([root]) + header_size = 0 + if not options.kernel_only: + draw_legend_box (ctx, "Running (%cpu)", + PROC_COLOR_R, off_x , curr_y + 45, leg_s) + draw_legend_box (ctx, "Unint.sleep (I/O)", + PROC_COLOR_D, off_x+120, curr_y + 45, leg_s) + draw_legend_box (ctx, "Sleeping", + PROC_COLOR_S, off_x+240, curr_y + 45, leg_s) + draw_legend_box (ctx, "Zombie", + PROC_COLOR_Z, off_x+360, curr_y + 45, leg_s) + header_size = 45 + + chart_rect = [off_x, curr_y + header_size + 15, + w, h - 2 * off_y - (curr_y + header_size + 15) + proc_h] + ctx.set_font_size (PROC_TEXT_FONT_SIZE) + + draw_box_ticks (ctx, chart_rect, sec_w) + if sec_w > 100: + nsec = 1 + else: + nsec = 5 + draw_sec_labels (ctx, options, chart_rect, sec_w, nsec) + draw_annotations (ctx, proc_tree, times, chart_rect) + + y = curr_y + 60 + for root in proc_tree.process_tree: + draw_processes_recursively(ctx, root, proc_tree, y, proc_h, chart_rect, clip) + y = y + proc_h * proc_tree.num_nodes([root]) def draw_header (ctx, headers, duration): @@ -678,291 +685,291 @@ def draw_header (ctx, headers, duration): return header_y def draw_processes_recursively(ctx, proc, proc_tree, y, proc_h, rect, clip) : - x = rect[0] + ((proc.start_time - proc_tree.start_time) * rect[2] / proc_tree.duration) - w = ((proc.duration) * rect[2] / proc_tree.duration) - - draw_process_activity_colors(ctx, proc, proc_tree, x, y, w, proc_h, rect, clip) - draw_rect(ctx, PROC_BORDER_COLOR, (x, y, w, proc_h)) - ipid = int(proc.pid) - if not OPTIONS.show_all: - cmdString = proc.cmd - else: - cmdString = '' - if (OPTIONS.show_pid or OPTIONS.show_all) and ipid is not 0: - cmdString = cmdString + " [" + str(ipid // 1000) + "]" - if OPTIONS.show_all: - if proc.args: - cmdString = cmdString + " '" + "' '".join(proc.args) + "'" - else: - cmdString = cmdString + " " + proc.exe - - draw_label_in_box(ctx, PROC_TEXT_COLOR, cmdString, x, y + proc_h - 4, w, rect[0] + rect[2]) - - next_y = y + proc_h - for child in proc.child_list: - if next_y > clip[1] + clip[3]: - break - child_x, child_y = draw_processes_recursively(ctx, child, proc_tree, next_y, proc_h, rect, clip) - draw_process_connecting_lines(ctx, x, y, child_x, child_y, proc_h) - next_y = next_y + proc_h * proc_tree.num_nodes([child]) - - return x, y + x = rect[0] + ((proc.start_time - proc_tree.start_time) * rect[2] / proc_tree.duration) + w = ((proc.duration) * rect[2] / proc_tree.duration) + + draw_process_activity_colors(ctx, proc, proc_tree, x, y, w, proc_h, rect, clip) + draw_rect(ctx, PROC_BORDER_COLOR, (x, y, w, proc_h)) + ipid = int(proc.pid) + if not OPTIONS.show_all: + cmdString = proc.cmd + else: + cmdString = '' + if (OPTIONS.show_pid or OPTIONS.show_all) and ipid is not 0: + cmdString = cmdString + " [" + str(ipid // 1000) + "]" + if OPTIONS.show_all: + if proc.args: + cmdString = cmdString + " '" + "' '".join(proc.args) + "'" + else: + cmdString = cmdString + " " + proc.exe + + draw_label_in_box(ctx, PROC_TEXT_COLOR, cmdString, x, y + proc_h - 4, w, rect[0] + rect[2]) + + next_y = y + proc_h + for child in proc.child_list: + if next_y > clip[1] + clip[3]: + break + child_x, child_y = draw_processes_recursively(ctx, child, proc_tree, next_y, proc_h, rect, clip) + draw_process_connecting_lines(ctx, x, y, child_x, child_y, proc_h) + next_y = next_y + proc_h * proc_tree.num_nodes([child]) + + return x, y def draw_process_activity_colors(ctx, proc, proc_tree, x, y, w, proc_h, rect, clip): - if y > clip[1] + clip[3] or y + proc_h + 2 < clip[1]: - return + if y > clip[1] + clip[3] or y + proc_h + 2 < clip[1]: + return - draw_fill_rect(ctx, PROC_COLOR_S, (x, y, w, proc_h)) + draw_fill_rect(ctx, PROC_COLOR_S, (x, y, w, proc_h)) - last_tx = -1 - for sample in proc.samples : - tx = rect[0] + round(((sample.time - proc_tree.start_time) * rect[2] / proc_tree.duration)) + last_tx = -1 + for sample in proc.samples : + tx = rect[0] + round(((sample.time - proc_tree.start_time) * rect[2] / proc_tree.duration)) - # samples are sorted chronologically - if tx < clip[0]: - continue - if tx > clip[0] + clip[2]: - break + # samples are sorted chronologically + if tx < clip[0]: + continue + if tx > clip[0] + clip[2]: + break - tw = round(proc_tree.sample_period * rect[2] / float(proc_tree.duration)) - if last_tx != -1 and abs(last_tx - tx) <= tw: - tw -= last_tx - tx - tx = last_tx - tw = max (tw, 1) # nice to see at least something + tw = round(proc_tree.sample_period * rect[2] / float(proc_tree.duration)) + if last_tx != -1 and abs(last_tx - tx) <= tw: + tw -= last_tx - tx + tx = last_tx + tw = max (tw, 1) # nice to see at least something - last_tx = tx + tw - state = get_proc_state( sample.state ) + last_tx = tx + tw + state = get_proc_state( sample.state ) - color = STATE_COLORS[state] - if state == STATE_RUNNING: - alpha = min (sample.cpu_sample.user + sample.cpu_sample.sys, 1.0) - color = tuple(list(PROC_COLOR_R[0:3]) + [alpha]) -# print "render time %d [ tx %d tw %d ], sample state %s color %s alpha %g" % (sample.time, tx, tw, state, color, alpha) - elif state == STATE_SLEEPING: - continue + color = STATE_COLORS[state] + if state == STATE_RUNNING: + alpha = min (sample.cpu_sample.user + sample.cpu_sample.sys, 1.0) + color = tuple(list(PROC_COLOR_R[0:3]) + [alpha]) +# print "render time %d [ tx %d tw %d ], sample state %s color %s alpha %g" % (sample.time, tx, tw, state, color, alpha) + elif state == STATE_SLEEPING: + continue - draw_fill_rect(ctx, color, (tx, y, tw, proc_h)) + draw_fill_rect(ctx, color, (tx, y, tw, proc_h)) def draw_process_connecting_lines(ctx, px, py, x, y, proc_h): - ctx.set_source_rgba(*DEP_COLOR) - ctx.set_dash([2, 2]) - if abs(px - x) < 3: - dep_off_x = 3 - dep_off_y = proc_h / 4 - ctx.move_to(x, y + proc_h / 2) - ctx.line_to(px - dep_off_x, y + proc_h / 2) - ctx.line_to(px - dep_off_x, py - dep_off_y) - ctx.line_to(px, py - dep_off_y) - else: - ctx.move_to(x, y + proc_h / 2) - ctx.line_to(px, y + proc_h / 2) - ctx.line_to(px, py) - ctx.stroke() - ctx.set_dash([]) + ctx.set_source_rgba(*DEP_COLOR) + ctx.set_dash([2, 2]) + if abs(px - x) < 3: + dep_off_x = 3 + dep_off_y = proc_h / 4 + ctx.move_to(x, y + proc_h / 2) + ctx.line_to(px - dep_off_x, y + proc_h / 2) + ctx.line_to(px - dep_off_x, py - dep_off_y) + ctx.line_to(px, py - dep_off_y) + else: + ctx.move_to(x, y + proc_h / 2) + ctx.line_to(px, y + proc_h / 2) + ctx.line_to(px, py) + ctx.stroke() + ctx.set_dash([]) # elide the bootchart collector - it is quite distorting def elide_bootchart(proc): - return proc.cmd == 'bootchartd' or proc.cmd == 'bootchart-colle' + return proc.cmd == 'bootchartd' or proc.cmd == 'bootchart-colle' class CumlSample: - def __init__(self, proc): - self.cmd = proc.cmd - self.samples = [] - self.merge_samples (proc) - self.color = None - - def merge_samples(self, proc): - self.samples.extend (proc.samples) - self.samples.sort (key = lambda p: p.time) - - def next(self): - global palette_idx - palette_idx += HSV_STEP - return palette_idx - - def get_color(self): - if self.color is None: - i = self.next() % HSV_MAX_MOD - h = 0.0 - if i is not 0: - h = (1.0 * i) / HSV_MAX_MOD - s = 0.5 - v = 1.0 - c = colorsys.hsv_to_rgb (h, s, v) - self.color = (c[0], c[1], c[2], 1.0) - return self.color + def __init__(self, proc): + self.cmd = proc.cmd + self.samples = [] + self.merge_samples (proc) + self.color = None + + def merge_samples(self, proc): + self.samples.extend (proc.samples) + self.samples.sort (key = lambda p: p.time) + + def next(self): + global palette_idx + palette_idx += HSV_STEP + return palette_idx + + def get_color(self): + if self.color is None: + i = self.next() % HSV_MAX_MOD + h = 0.0 + if i is not 0: + h = (1.0 * i) / HSV_MAX_MOD + s = 0.5 + v = 1.0 + c = colorsys.hsv_to_rgb (h, s, v) + self.color = (c[0], c[1], c[2], 1.0) + return self.color def draw_cuml_graph(ctx, proc_tree, chart_bounds, duration, sec_w, stat_type): - global palette_idx - palette_idx = 0 - - time_hash = {} - total_time = 0.0 - m_proc_list = {} - - if stat_type is STAT_TYPE_CPU: - sample_value = 'cpu' - else: - sample_value = 'io' - for proc in proc_tree.process_list: - if elide_bootchart(proc): - continue - - for sample in proc.samples: - total_time += getattr(sample.cpu_sample, sample_value) - if not sample.time in time_hash: - time_hash[sample.time] = 1 - - # merge pids with the same cmd - if not proc.cmd in m_proc_list: - m_proc_list[proc.cmd] = CumlSample (proc) - continue - s = m_proc_list[proc.cmd] - s.merge_samples (proc) - - # all the sample times - times = sorted(time_hash) - if len (times) < 2: - print("degenerate boot chart") - return - - pix_per_ns = chart_bounds[3] / total_time -# print "total time: %g pix-per-ns %g" % (total_time, pix_per_ns) - - # FIXME: we have duplicates in the process list too [!] - why !? - - # Render bottom up, left to right - below = {} - for time in times: - below[time] = chart_bounds[1] + chart_bounds[3] - - # same colors each time we render - random.seed (0) - - ctx.set_line_width(1) - - legends = [] - labels = [] - - # render each pid in order - for cs in m_proc_list.values(): - row = {} - cuml = 0.0 - - # print "pid : %s -> %g samples %d" % (proc.cmd, cuml, len (cs.samples)) - for sample in cs.samples: - cuml += getattr(sample.cpu_sample, sample_value) - row[sample.time] = cuml - - process_total_time = cuml - - # hide really tiny processes - if cuml * pix_per_ns <= 2: - continue - - last_time = times[0] - y = last_below = below[last_time] - last_cuml = cuml = 0.0 - - ctx.set_source_rgba(*cs.get_color()) - for time in times: - render_seg = False - - # did the underlying trend increase ? - if below[time] != last_below: - last_below = below[last_time] - last_cuml = cuml - render_seg = True - - # did we move up a pixel increase ? - if time in row: - nc = round (row[time] * pix_per_ns) - if nc != cuml: - last_cuml = cuml - cuml = nc - render_seg = True - -# if last_cuml > cuml: -# assert fail ... - un-sorted process samples - - # draw the trailing rectangle from the last time to - # before now, at the height of the last segment. - if render_seg: - w = math.ceil ((time - last_time) * chart_bounds[2] / proc_tree.duration) + 1 - x = chart_bounds[0] + round((last_time - proc_tree.start_time) * chart_bounds[2] / proc_tree.duration) - ctx.rectangle (x, below[last_time] - last_cuml, w, last_cuml) - ctx.fill() -# ctx.stroke() - last_time = time - y = below [time] - cuml - - row[time] = y - - # render the last segment - x = chart_bounds[0] + round((last_time - proc_tree.start_time) * chart_bounds[2] / proc_tree.duration) - y = below[last_time] - cuml - ctx.rectangle (x, y, chart_bounds[2] - x, cuml) - ctx.fill() -# ctx.stroke() - - # render legend if it will fit - if cuml > 8: - label = cs.cmd - extnts = ctx.text_extents(label) - label_w = extnts[2] - label_h = extnts[3] -# print "Text extents %g by %g" % (label_w, label_h) - labels.append((label, - chart_bounds[0] + chart_bounds[2] - label_w - off_x * 2, - y + (cuml + label_h) / 2)) - if cs in legends: - print("ARGH - duplicate process in list !") - - legends.append ((cs, process_total_time)) - - below = row - - # render grid-lines over the top - draw_box_ticks(ctx, chart_bounds, sec_w) - - # render labels - for l in labels: - draw_text(ctx, l[0], TEXT_COLOR, l[1], l[2]) - - # Render legends - font_height = 20 - label_width = 300 - LEGENDS_PER_COL = 15 - LEGENDS_TOTAL = 45 - ctx.set_font_size (TITLE_FONT_SIZE) - dur_secs = duration / 100 - cpu_secs = total_time / 1000000000 - - # misleading - with multiple CPUs ... -# idle = ((dur_secs - cpu_secs) / dur_secs) * 100.0 - if stat_type is STAT_TYPE_CPU: - label = "Cumulative CPU usage, by process; total CPU: " \ - " %.5g(s) time: %.3g(s)" % (cpu_secs, dur_secs) - else: - label = "Cumulative I/O usage, by process; total I/O: " \ - " %.5g(s) time: %.3g(s)" % (cpu_secs, dur_secs) - - draw_text(ctx, label, TEXT_COLOR, chart_bounds[0] + off_x, - chart_bounds[1] + font_height) - - i = 0 - legends = sorted(legends, key=itemgetter(1), reverse=True) - ctx.set_font_size(TEXT_FONT_SIZE) - for t in legends: - cs = t[0] - time = t[1] - x = chart_bounds[0] + off_x + int (i/LEGENDS_PER_COL) * label_width - y = chart_bounds[1] + font_height * ((i % LEGENDS_PER_COL) + 2) - str = "%s - %.0f(ms) (%2.2f%%)" % (cs.cmd, time/1000000, (time/total_time) * 100.0) - draw_legend_box(ctx, str, cs.color, x, y, leg_s) - i = i + 1 - if i >= LEGENDS_TOTAL: - break + global palette_idx + palette_idx = 0 + + time_hash = {} + total_time = 0.0 + m_proc_list = {} + + if stat_type is STAT_TYPE_CPU: + sample_value = 'cpu' + else: + sample_value = 'io' + for proc in proc_tree.process_list: + if elide_bootchart(proc): + continue + + for sample in proc.samples: + total_time += getattr(sample.cpu_sample, sample_value) + if not sample.time in time_hash: + time_hash[sample.time] = 1 + + # merge pids with the same cmd + if not proc.cmd in m_proc_list: + m_proc_list[proc.cmd] = CumlSample (proc) + continue + s = m_proc_list[proc.cmd] + s.merge_samples (proc) + + # all the sample times + times = sorted(time_hash) + if len (times) < 2: + print("degenerate boot chart") + return + + pix_per_ns = chart_bounds[3] / total_time +# print "total time: %g pix-per-ns %g" % (total_time, pix_per_ns) + + # FIXME: we have duplicates in the process list too [!] - why !? + + # Render bottom up, left to right + below = {} + for time in times: + below[time] = chart_bounds[1] + chart_bounds[3] + + # same colors each time we render + random.seed (0) + + ctx.set_line_width(1) + + legends = [] + labels = [] + + # render each pid in order + for cs in m_proc_list.values(): + row = {} + cuml = 0.0 + + # print "pid : %s -> %g samples %d" % (proc.cmd, cuml, len (cs.samples)) + for sample in cs.samples: + cuml += getattr(sample.cpu_sample, sample_value) + row[sample.time] = cuml + + process_total_time = cuml + + # hide really tiny processes + if cuml * pix_per_ns <= 2: + continue + + last_time = times[0] + y = last_below = below[last_time] + last_cuml = cuml = 0.0 + + ctx.set_source_rgba(*cs.get_color()) + for time in times: + render_seg = False + + # did the underlying trend increase ? + if below[time] != last_below: + last_below = below[last_time] + last_cuml = cuml + render_seg = True + + # did we move up a pixel increase ? + if time in row: + nc = round (row[time] * pix_per_ns) + if nc != cuml: + last_cuml = cuml + cuml = nc + render_seg = True + +# if last_cuml > cuml: +# assert fail ... - un-sorted process samples + + # draw the trailing rectangle from the last time to + # before now, at the height of the last segment. + if render_seg: + w = math.ceil ((time - last_time) * chart_bounds[2] / proc_tree.duration) + 1 + x = chart_bounds[0] + round((last_time - proc_tree.start_time) * chart_bounds[2] / proc_tree.duration) + ctx.rectangle (x, below[last_time] - last_cuml, w, last_cuml) + ctx.fill() +# ctx.stroke() + last_time = time + y = below [time] - cuml + + row[time] = y + + # render the last segment + x = chart_bounds[0] + round((last_time - proc_tree.start_time) * chart_bounds[2] / proc_tree.duration) + y = below[last_time] - cuml + ctx.rectangle (x, y, chart_bounds[2] - x, cuml) + ctx.fill() +# ctx.stroke() + + # render legend if it will fit + if cuml > 8: + label = cs.cmd + extnts = ctx.text_extents(label) + label_w = extnts[2] + label_h = extnts[3] +# print "Text extents %g by %g" % (label_w, label_h) + labels.append((label, + chart_bounds[0] + chart_bounds[2] - label_w - off_x * 2, + y + (cuml + label_h) / 2)) + if cs in legends: + print("ARGH - duplicate process in list !") + + legends.append ((cs, process_total_time)) + + below = row + + # render grid-lines over the top + draw_box_ticks(ctx, chart_bounds, sec_w) + + # render labels + for l in labels: + draw_text(ctx, l[0], TEXT_COLOR, l[1], l[2]) + + # Render legends + font_height = 20 + label_width = 300 + LEGENDS_PER_COL = 15 + LEGENDS_TOTAL = 45 + ctx.set_font_size (TITLE_FONT_SIZE) + dur_secs = duration / 100 + cpu_secs = total_time / 1000000000 + + # misleading - with multiple CPUs ... +# idle = ((dur_secs - cpu_secs) / dur_secs) * 100.0 + if stat_type is STAT_TYPE_CPU: + label = "Cumulative CPU usage, by process; total CPU: " \ + " %.5g(s) time: %.3g(s)" % (cpu_secs, dur_secs) + else: + label = "Cumulative I/O usage, by process; total I/O: " \ + " %.5g(s) time: %.3g(s)" % (cpu_secs, dur_secs) + + draw_text(ctx, label, TEXT_COLOR, chart_bounds[0] + off_x, + chart_bounds[1] + font_height) + + i = 0 + legends = sorted(legends, key=itemgetter(1), reverse=True) + ctx.set_font_size(TEXT_FONT_SIZE) + for t in legends: + cs = t[0] + time = t[1] + x = chart_bounds[0] + off_x + int (i/LEGENDS_PER_COL) * label_width + y = chart_bounds[1] + font_height * ((i % LEGENDS_PER_COL) + 2) + str = "%s - %.0f(ms) (%2.2f%%)" % (cs.cmd, time/1000000, (time/total_time) * 100.0) + draw_legend_box(ctx, str, cs.color, x, y, leg_s) + i = i + 1 + if i >= LEGENDS_TOTAL: + break diff --git a/poky/scripts/pybootchartgui/pybootchartgui/gui.py b/poky/scripts/pybootchartgui/pybootchartgui/gui.py index 7fedd232d..e1fe91556 100644 --- a/poky/scripts/pybootchartgui/pybootchartgui/gui.py +++ b/poky/scripts/pybootchartgui/pybootchartgui/gui.py @@ -13,64 +13,83 @@ # You should have received a copy of the GNU General Public License # along with pybootchartgui. If not, see . -import gobject -import gtk -import gtk.gdk -import gtk.keysyms +import gi +gi.require_version('Gtk', '3.0') +from gi.repository import Gtk as gtk +from gi.repository import Gtk +from gi.repository import Gdk +from gi.repository import GObject as gobject +from gi.repository import GObject + from . import draw from .draw import RenderOptions -class PyBootchartWidget(gtk.DrawingArea): +class PyBootchartWidget(gtk.DrawingArea, gtk.Scrollable): __gsignals__ = { - 'expose-event': 'override', - 'clicked' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, (gobject.TYPE_STRING, gtk.gdk.Event)), + 'clicked' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, (gobject.TYPE_STRING, Gdk.Event)), 'position-changed' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, (gobject.TYPE_INT, gobject.TYPE_INT)), 'set-scroll-adjustments' : (gobject.SIGNAL_RUN_LAST, gobject.TYPE_NONE, (gtk.Adjustment, gtk.Adjustment)) } + hadjustment = GObject.property(type=Gtk.Adjustment, + default=Gtk.Adjustment(), + flags=GObject.PARAM_READWRITE) + hscroll_policy = GObject.property(type=Gtk.ScrollablePolicy, + default=Gtk.ScrollablePolicy.MINIMUM, + flags=GObject.PARAM_READWRITE) + vadjustment = GObject.property(type=Gtk.Adjustment, + default=Gtk.Adjustment(), + flags=GObject.PARAM_READWRITE) + vscroll_policy = GObject.property(type=Gtk.ScrollablePolicy, + default=Gtk.ScrollablePolicy.MINIMUM, + flags=GObject.PARAM_READWRITE) + def __init__(self, trace, options, xscale): gtk.DrawingArea.__init__(self) self.trace = trace self.options = options - self.set_flags(gtk.CAN_FOCUS) + self.set_can_focus(True) - self.add_events(gtk.gdk.BUTTON_PRESS_MASK | gtk.gdk.BUTTON_RELEASE_MASK) + self.add_events(Gdk.EventMask.BUTTON_PRESS_MASK | Gdk.EventMask.BUTTON_RELEASE_MASK) self.connect("button-press-event", self.on_area_button_press) self.connect("button-release-event", self.on_area_button_release) - self.add_events(gtk.gdk.POINTER_MOTION_MASK | gtk.gdk.POINTER_MOTION_HINT_MASK | gtk.gdk.BUTTON_RELEASE_MASK) + self.add_events(Gdk.EventMask.POINTER_MOTION_MASK | Gdk.EventMask.POINTER_MOTION_HINT_MASK | Gdk.EventMask.BUTTON_RELEASE_MASK) self.connect("motion-notify-event", self.on_area_motion_notify) self.connect("scroll-event", self.on_area_scroll_event) self.connect('key-press-event', self.on_key_press_event) - self.connect('set-scroll-adjustments', self.on_set_scroll_adjustments) self.connect("size-allocate", self.on_allocation_size_changed) self.connect("position-changed", self.on_position_changed) + self.connect("draw", self.on_draw) + self.zoom_ratio = 1.0 self.xscale = xscale self.x, self.y = 0.0, 0.0 self.chart_width, self.chart_height = draw.extents(self.options, self.xscale, self.trace) - self.hadj = None - self.vadj = None - self.hadj_changed_signal_id = None - self.vadj_changed_signal_id = None - - def do_expose_event(self, event): - cr = self.window.cairo_create() - - # set a clip region for the expose event - cr.rectangle( - event.area.x, event.area.y, - event.area.width, event.area.height - ) - cr.clip() - self.draw(cr, self.get_allocation()) - return False - - def draw(self, cr, rect): + self.our_width, self.our_height = self.chart_width, self.chart_height + + self.hadj = gtk.Adjustment(0.0, 0.0, 0.0, 0.0, 0.0, 0.0) + self.vadj = gtk.Adjustment(0.0, 0.0, 0.0, 0.0, 0.0, 0.0) + self.vadj.connect('value-changed', self.on_adjustments_changed) + self.hadj.connect('value-changed', self.on_adjustments_changed) + + def bound_vals(self): + self.x = max(0, self.x) + self.y = max(0, self.y) + self.x = min(self.chart_width - self.our_width, self.x) + self.y = min(self.chart_height - self.our_height, self.y) + + def on_draw(self, darea, cr): + # set a clip region + #cr.rectangle( + # self.x, self.y, + # self.chart_width, self.chart_height + #) + #cr.clip() cr.set_source_rgba(1.0, 1.0, 1.0, 1.0) cr.paint() cr.scale(self.zoom_ratio, self.zoom_ratio) @@ -84,7 +103,7 @@ class PyBootchartWidget(gtk.DrawingArea): def zoom_image (self, zoom_ratio): self.zoom_ratio = zoom_ratio - self._set_scroll_adjustments (self.hadj, self.vadj) + self._set_scroll_adjustments() self.queue_draw() def zoom_to_rect (self, rect): @@ -122,126 +141,101 @@ class PyBootchartWidget(gtk.DrawingArea): def show_toggled(self, button): self.options.app_options.show_all = button.get_property ('active') self.chart_width, self.chart_height = draw.extents(self.options, self.xscale, self.trace) - self._set_scroll_adjustments(self.hadj, self.vadj) + self._set_scroll_adjustments() self.queue_draw() POS_INCREMENT = 100 def on_key_press_event(self, widget, event): - if event.keyval == gtk.keysyms.Left: + if event.keyval == Gdk.keyval_from_name("Left"): self.x -= self.POS_INCREMENT/self.zoom_ratio - elif event.keyval == gtk.keysyms.Right: + elif event.keyval == Gdk.keyval_from_name("Right"): self.x += self.POS_INCREMENT/self.zoom_ratio - elif event.keyval == gtk.keysyms.Up: + elif event.keyval == Gdk.keyval_from_name("Up"): self.y -= self.POS_INCREMENT/self.zoom_ratio - elif event.keyval == gtk.keysyms.Down: + elif event.keyval == Gdk.keyval_from_name("Down"): self.y += self.POS_INCREMENT/self.zoom_ratio else: return False + self.bound_vals() self.queue_draw() self.position_changed() return True def on_area_button_press(self, area, event): if event.button == 2 or event.button == 1: - area.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.FLEUR)) + window = self.get_window() + window.set_cursor(Gdk.Cursor(Gdk.CursorType.FLEUR)) self.prevmousex = event.x self.prevmousey = event.y - if event.type not in (gtk.gdk.BUTTON_PRESS, gtk.gdk.BUTTON_RELEASE): + if event.type not in (Gdk.EventType.BUTTON_PRESS, Gdk.EventType.BUTTON_RELEASE): return False return False def on_area_button_release(self, area, event): if event.button == 2 or event.button == 1: - area.window.set_cursor(gtk.gdk.Cursor(gtk.gdk.ARROW)) + window = self.get_window() + window.set_cursor(Gdk.Cursor(Gdk.CursorType.ARROW)) self.prevmousex = None self.prevmousey = None return True return False def on_area_scroll_event(self, area, event): - if event.state & gtk.gdk.CONTROL_MASK: - if event.direction == gtk.gdk.SCROLL_UP: + if event.state & Gdk.CONTROL_MASK: + if event.direction == Gdk.SCROLL_UP: self.zoom_image(self.zoom_ratio * self.ZOOM_INCREMENT) return True - if event.direction == gtk.gdk.SCROLL_DOWN: + if event.direction == Gdk.SCROLL_DOWN: self.zoom_image(self.zoom_ratio / self.ZOOM_INCREMENT) return True return False def on_area_motion_notify(self, area, event): state = event.state - if state & gtk.gdk.BUTTON2_MASK or state & gtk.gdk.BUTTON1_MASK: + if state & Gdk.ModifierType.BUTTON2_MASK or state & Gdk.ModifierType.BUTTON1_MASK: x, y = int(event.x), int(event.y) # pan the image self.x += (self.prevmousex - x)/self.zoom_ratio self.y += (self.prevmousey - y)/self.zoom_ratio + self.bound_vals() self.queue_draw() self.prevmousex = x self.prevmousey = y self.position_changed() return True - def on_set_scroll_adjustments(self, area, hadj, vadj): - self._set_scroll_adjustments (hadj, vadj) - def on_allocation_size_changed(self, widget, allocation): self.hadj.page_size = allocation.width self.hadj.page_increment = allocation.width * 0.9 self.vadj.page_size = allocation.height self.vadj.page_increment = allocation.height * 0.9 + self.our_width = allocation.width + if self.chart_width < self.our_width: + self.our_width = self.chart_width + self.our_height = allocation.height + if self.chart_height < self.our_height: + self.our_height = self.chart_height + self._set_scroll_adjustments() def _set_adj_upper(self, adj, upper): - changed = False - value_changed = False - - if adj.upper != upper: - adj.upper = upper - changed = True - - max_value = max(0.0, upper - adj.page_size) - if adj.value > max_value: - adj.value = max_value - value_changed = True - - if changed: - adj.changed() - if value_changed: - adj.value_changed() - - def _set_scroll_adjustments(self, hadj, vadj): - if hadj == None: - hadj = gtk.Adjustment(0.0, 0.0, 0.0, 0.0, 0.0, 0.0) - if vadj == None: - vadj = gtk.Adjustment(0.0, 0.0, 0.0, 0.0, 0.0, 0.0) - - if self.hadj_changed_signal_id != None and \ - self.hadj != None and hadj != self.hadj: - self.hadj.disconnect (self.hadj_changed_signal_id) - if self.vadj_changed_signal_id != None and \ - self.vadj != None and vadj != self.vadj: - self.vadj.disconnect (self.vadj_changed_signal_id) - - if hadj != None: - self.hadj = hadj - self._set_adj_upper (self.hadj, self.zoom_ratio * self.chart_width) - self.hadj_changed_signal_id = self.hadj.connect('value-changed', self.on_adjustments_changed) - - if vadj != None: - self.vadj = vadj - self._set_adj_upper (self.vadj, self.zoom_ratio * self.chart_height) - self.vadj_changed_signal_id = self.vadj.connect('value-changed', self.on_adjustments_changed) + + if adj.get_upper() != upper: + adj.set_upper(upper) + + def _set_scroll_adjustments(self): + self._set_adj_upper (self.hadj, self.zoom_ratio * (self.chart_width - self.our_width)) + self._set_adj_upper (self.vadj, self.zoom_ratio * (self.chart_height - self.our_height)) def on_adjustments_changed(self, adj): - self.x = self.hadj.value / self.zoom_ratio - self.y = self.vadj.value / self.zoom_ratio + self.x = self.hadj.get_value() / self.zoom_ratio + self.y = self.vadj.get_value() / self.zoom_ratio self.queue_draw() def on_position_changed(self, widget, x, y): - self.hadj.value = x * self.zoom_ratio - self.vadj.value = y * self.zoom_ratio - -PyBootchartWidget.set_set_scroll_adjustments_signal('set-scroll-adjustments') + self.hadj.set_value(x * self.zoom_ratio) + #self.hadj.value_changed() + self.vadj.set_value(y * self.zoom_ratio) class PyBootchartShell(gtk.VBox): ui = ''' @@ -260,7 +254,7 @@ class PyBootchartShell(gtk.VBox): def __init__(self, window, trace, options, xscale): gtk.VBox.__init__(self) - self.widget = PyBootchartWidget(trace, options, xscale) + self.widget2 = PyBootchartWidget(trace, options, xscale) # Create a UIManager instance uimanager = self.uimanager = gtk.UIManager() @@ -275,12 +269,12 @@ class PyBootchartShell(gtk.VBox): # Create actions actiongroup.add_actions(( - ('Expand', gtk.STOCK_ADD, None, None, None, self.widget.on_expand), - ('Contract', gtk.STOCK_REMOVE, None, None, None, self.widget.on_contract), - ('ZoomIn', gtk.STOCK_ZOOM_IN, None, None, None, self.widget.on_zoom_in), - ('ZoomOut', gtk.STOCK_ZOOM_OUT, None, None, None, self.widget.on_zoom_out), - ('ZoomFit', gtk.STOCK_ZOOM_FIT, 'Fit Width', None, None, self.widget.on_zoom_fit), - ('Zoom100', gtk.STOCK_ZOOM_100, None, None, None, self.widget.on_zoom_100), + ('Expand', gtk.STOCK_ADD, None, None, None, self.widget2.on_expand), + ('Contract', gtk.STOCK_REMOVE, None, None, None, self.widget2.on_contract), + ('ZoomIn', gtk.STOCK_ZOOM_IN, None, None, None, self.widget2.on_zoom_in), + ('ZoomOut', gtk.STOCK_ZOOM_OUT, None, None, None, self.widget2.on_zoom_out), + ('ZoomFit', gtk.STOCK_ZOOM_FIT, 'Fit Width', None, None, self.widget2.on_zoom_fit), + ('Zoom100', gtk.STOCK_ZOOM_100, None, None, None, self.widget2.on_zoom_100), )) # Add the actiongroup to the uimanager @@ -290,29 +284,33 @@ class PyBootchartShell(gtk.VBox): uimanager.add_ui_from_string(self.ui) # Scrolled window - scrolled = gtk.ScrolledWindow() - scrolled.add(self.widget) + scrolled = gtk.ScrolledWindow(self.widget2.hadj, self.widget2.vadj) + scrolled.add(self.widget2) + + #scrolled.set_hadjustment() + #scrolled.set_vadjustment(self.widget2.vadj) + scrolled.set_policy(gtk.PolicyType.ALWAYS, gtk.PolicyType.ALWAYS) # toolbar / h-box hbox = gtk.HBox(False, 8) # Create a Toolbar toolbar = uimanager.get_widget('/ToolBar') - hbox.pack_start(toolbar, True, True) + hbox.pack_start(toolbar, True, True, 0) if not options.kernel_only: # Misc. options button = gtk.CheckButton("Show more") - button.connect ('toggled', self.widget.show_toggled) + button.connect ('toggled', self.widget2.show_toggled) button.set_active(options.app_options.show_all) - hbox.pack_start (button, False, True) + hbox.pack_start (button, False, True, 0) - self.pack_start(hbox, False) - self.pack_start(scrolled) + self.pack_start(hbox, False, True, 0) + self.pack_start(scrolled, True, True, 0) self.show_all() def grab_focus(self, window): - window.set_focus(self.widget) + window.set_focus(self.widget2) class PyBootchartWindow(gtk.Window): diff --git a/poky/scripts/pybootchartgui/pybootchartgui/parsing.py b/poky/scripts/pybootchartgui/pybootchartgui/parsing.py index bcfb2da56..ef2d3d309 100644 --- a/poky/scripts/pybootchartgui/pybootchartgui/parsing.py +++ b/poky/scripts/pybootchartgui/pybootchartgui/parsing.py @@ -267,7 +267,7 @@ def _parse_headers(file): value = line.strip() headers[last] += value return headers, last - return reduce(parse, file.read().decode('utf-8').split('\n'), (defaultdict(str),''))[0] + return reduce(parse, file.read().split('\n'), (defaultdict(str),''))[0] def _parse_timed_blocks(file): """Parses (ie., splits) a file into so-called timed-blocks. A @@ -281,7 +281,7 @@ def _parse_timed_blocks(file): return (int(lines[0]), lines[1:]) except ValueError: raise ParseError("expected a timed-block, but timestamp '%s' is not an integer" % lines[0]) - blocks = file.read().decode('utf-8').split('\n\n') + blocks = file.read().split('\n\n') return [parse(block) for block in blocks if block.strip() and not block.endswith(' not running\n')] def _parse_proc_ps_log(writer, file): @@ -577,7 +577,7 @@ def _parse_dmesg(writer, file): processMap['k-boot'] = kernel base_ts = False max_ts = 0 - for line in file.read().decode('utf-8').split('\n'): + for line in file.read().split('\n'): t = timestamp_re.match (line) if t is None: # print "duff timestamp " + line @@ -665,7 +665,7 @@ def _parse_pacct(writer, file): def _parse_paternity_log(writer, file): parent_map = {} parent_map[0] = 0 - for line in file.read().decode('utf-8').split('\n'): + for line in file.read().split('\n'): if not line: continue elems = line.split(' ') # @@ -678,7 +678,7 @@ def _parse_paternity_log(writer, file): def _parse_cmdline_log(writer, file): cmdLines = {} - for block in file.read().decode('utf-8').split('\n\n'): + for block in file.read().split('\n\n'): lines = block.split('\n') if len (lines) >= 3: # print "Lines '%s'" % (lines[0]) @@ -751,7 +751,7 @@ def parse_file(writer, state, filename): if state.filename is None: state.filename = filename basename = os.path.basename(filename) - with open(filename, "rb") as file: + with open(filename, "r") as file: return _do_parse(writer, state, filename, file) def parse_paths(writer, state, paths): diff --git a/poky/scripts/pythondeps b/poky/scripts/pythondeps index 3e13a587e..be21dd84e 100755 --- a/poky/scripts/pythondeps +++ b/poky/scripts/pythondeps @@ -1,5 +1,7 @@ #!/usr/bin/env python3 # +# SPDX-License-Identifier: GPL-2.0-only +# # Determine dependencies of python scripts or available python modules in a search path. # # Given the -d argument and a filename/filenames, returns the modules imported by those files. diff --git a/poky/scripts/recipetool b/poky/scripts/recipetool index 3a3c9b744..e2d585d2c 100755 --- a/poky/scripts/recipetool +++ b/poky/scripts/recipetool @@ -4,18 +4,8 @@ # # Copyright (C) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import sys import os diff --git a/poky/scripts/relocate_sdk.py b/poky/scripts/relocate_sdk.py index c752fa2c6..8c0fdb986 100755 --- a/poky/scripts/relocate_sdk.py +++ b/poky/scripts/relocate_sdk.py @@ -2,18 +2,7 @@ # # Copyright (c) 2012 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION # This script is called by the SDK installer script. It replaces the dynamic diff --git a/poky/scripts/resulttool b/poky/scripts/resulttool index 18ac10192..fc282bda6 100755 --- a/poky/scripts/resulttool +++ b/poky/scripts/resulttool @@ -25,14 +25,7 @@ # # Copyright (c) 2019, Intel Corporation. # -# This program is free software; you can redistribute it and/or modify it -# under the terms and conditions of the GNU General Public License, -# version 2, as published by the Free Software Foundation. -# -# This program is distributed in the hope it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for -# more details. +# SPDX-License-Identifier: GPL-2.0-only # import os @@ -49,6 +42,7 @@ import resulttool.store import resulttool.regression import resulttool.report import resulttool.manualexecution +import resulttool.log logger = scriptutils.logger_create('resulttool') def main(): @@ -66,6 +60,7 @@ def main(): subparsers.add_subparser_group('analysis', 'analysis', 100) resulttool.regression.register_commands(subparsers) resulttool.report.register_commands(subparsers) + resulttool.log.register_commands(subparsers) args = parser.parse_args() if args.debug: diff --git a/poky/scripts/rpm2cpio.sh b/poky/scripts/rpm2cpio.sh index cf23472ba..876c53c5d 100755 --- a/poky/scripts/rpm2cpio.sh +++ b/poky/scripts/rpm2cpio.sh @@ -1,5 +1,4 @@ #!/bin/sh -efu - # This file comes from rpm 4.x distribution fatal() { diff --git a/poky/scripts/runqemu b/poky/scripts/runqemu index c0e569c44..39bed038d 100755 --- a/poky/scripts/runqemu +++ b/poky/scripts/runqemu @@ -5,18 +5,8 @@ # Copyright (C) 2006-2011 Linux Foundation # Copyright (c) 2016 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. import os import sys @@ -1329,7 +1319,8 @@ def main(): logger.info("SIGTERM received") os.kill(config.qemupid, signal.SIGTERM) config.cleanup() - subprocess.check_call(["tput", "smam"]) + # Deliberately ignore the return code of 'tput smam'. + subprocess.call(["tput", "smam"]) signal.signal(signal.SIGTERM, sigterm_handler) config.check_args() @@ -1351,7 +1342,8 @@ def main(): return 1 finally: config.cleanup() - subprocess.check_call(["tput", "smam"]) + # Deliberately ignore the return code of 'tput smam'. + subprocess.call(["tput", "smam"]) if __name__ == "__main__": sys.exit(main()) diff --git a/poky/scripts/runqemu-addptable2image b/poky/scripts/runqemu-addptable2image index f0195ad8a..ca2942725 100755 --- a/poky/scripts/runqemu-addptable2image +++ b/poky/scripts/runqemu-addptable2image @@ -4,20 +4,8 @@ # # Copyright (C) 2006-2007 OpenedHand Ltd. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. +# SPDX-License-Identifier: GPL-2.0-or-later # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - IMAGE=$1 IMAGEOUT=$2 diff --git a/poky/scripts/runqemu-export-rootfs b/poky/scripts/runqemu-export-rootfs index 70cdcdbb1..384c09171 100755 --- a/poky/scripts/runqemu-export-rootfs +++ b/poky/scripts/runqemu-export-rootfs @@ -2,18 +2,8 @@ # # Copyright (c) 2005-2009 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA usage() { echo "Usage: $0 {start|stop|restart} " diff --git a/poky/scripts/runqemu-extract-sdk b/poky/scripts/runqemu-extract-sdk index 4da3eb10a..8a4ee90a1 100755 --- a/poky/scripts/runqemu-extract-sdk +++ b/poky/scripts/runqemu-extract-sdk @@ -7,18 +7,8 @@ # # Copyright (c) 2010 Intel Corp. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA function usage() { echo "Usage: $0 " diff --git a/poky/scripts/runqemu-gen-tapdevs b/poky/scripts/runqemu-gen-tapdevs index 869fee261..a6ee4517d 100755 --- a/poky/scripts/runqemu-gen-tapdevs +++ b/poky/scripts/runqemu-gen-tapdevs @@ -9,18 +9,8 @@ # # Copyright (C) 2010 Intel Corp. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. uid=`id -u` gid=`id -g` diff --git a/poky/scripts/runqemu-ifdown b/poky/scripts/runqemu-ifdown index 248696858..a104c37bf 100755 --- a/poky/scripts/runqemu-ifdown +++ b/poky/scripts/runqemu-ifdown @@ -13,18 +13,8 @@ # # Copyright (c) 2006-2011 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. usage() { echo "sudo $(basename $0) " diff --git a/poky/scripts/runqemu-ifup b/poky/scripts/runqemu-ifup index 59a15eaa2..bb661740c 100755 --- a/poky/scripts/runqemu-ifup +++ b/poky/scripts/runqemu-ifup @@ -20,18 +20,8 @@ # # Copyright (c) 2006-2011 Linux Foundation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# SPDX-License-Identifier: GPL-2.0-only # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. usage() { echo "sudo $(basename $0) " diff --git a/poky/scripts/send-error-report b/poky/scripts/send-error-report index 0ed7cc905..cfbcaa52c 100755 --- a/poky/scripts/send-error-report +++ b/poky/scripts/send-error-report @@ -6,6 +6,9 @@ # Copyright (C) 2013 Intel Corporation # Author: Andreea Proca # Author: Michael Wood +# +# SPDX-License-Identifier: GPL-2.0-only +# import urllib.request, urllib.error import sys diff --git a/poky/scripts/send-pull-request b/poky/scripts/send-pull-request index 883deacb0..70b5a5cfb 100755 --- a/poky/scripts/send-pull-request +++ b/poky/scripts/send-pull-request @@ -1,21 +1,8 @@ #!/bin/bash # # Copyright (c) 2010-2011, Intel Corporation. -# All Rights Reserved -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See -# the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# SPDX-License-Identifier: GPL-2.0-or-later # # diff --git a/poky/scripts/sstate-cache-management.sh b/poky/scripts/sstate-cache-management.sh index 2ab450ab5..f1706a222 100755 --- a/poky/scripts/sstate-cache-management.sh +++ b/poky/scripts/sstate-cache-management.sh @@ -2,18 +2,7 @@ # Copyright (c) 2012 Wind River Systems, Inc. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# See the GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# SPDX-License-Identifier: GPL-2.0-only # # Global vars diff --git a/poky/scripts/sstate-diff-machines.sh b/poky/scripts/sstate-diff-machines.sh index 27c6a3300..1d721eb87 100755 --- a/poky/scripts/sstate-diff-machines.sh +++ b/poky/scripts/sstate-diff-machines.sh @@ -1,5 +1,7 @@ #!/bin/bash - +# +# SPDX-License-Identifier: GPL-2.0-only +# # Used to compare sstate checksums between MACHINES. # Execute script and compare generated list.M files. # Using bash to have PIPESTATUS variable. diff --git a/poky/scripts/sstate-sysroot-cruft.sh b/poky/scripts/sstate-sysroot-cruft.sh index d9917f515..fbf1ca3c4 100755 --- a/poky/scripts/sstate-sysroot-cruft.sh +++ b/poky/scripts/sstate-sysroot-cruft.sh @@ -1,5 +1,7 @@ #!/bin/sh - +# +# SPDX-License-Identifier: GPL-2.0-only +# # Used to find files installed in sysroot which are not tracked by sstate manifest # Global vars diff --git a/poky/scripts/sysroot-relativelinks.py b/poky/scripts/sysroot-relativelinks.py index ffe254728..56e36f3ad 100755 --- a/poky/scripts/sysroot-relativelinks.py +++ b/poky/scripts/sysroot-relativelinks.py @@ -1,4 +1,8 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# + import sys import os diff --git a/poky/scripts/task-time b/poky/scripts/task-time index e58040a9b..bcd1e2581 100755 --- a/poky/scripts/task-time +++ b/poky/scripts/task-time @@ -1,4 +1,7 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import argparse import os diff --git a/poky/scripts/test-reexec b/poky/scripts/test-reexec index 30e792c7d..fccdac4da 100755 --- a/poky/scripts/test-reexec +++ b/poky/scripts/test-reexec @@ -3,21 +3,8 @@ # Test Script for task re-execution # # Copyright 2012 Intel Corporation -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# SPDX-License-Identifier: GPL-2.0-or-later # # DESCRIPTION # This script is intended to address issues for re-execution of diff --git a/poky/scripts/test-remote-image b/poky/scripts/test-remote-image index 27b1cae38..d209d2285 100755 --- a/poky/scripts/test-remote-image +++ b/poky/scripts/test-remote-image @@ -1,19 +1,9 @@ #!/usr/bin/env python3 - -# Copyright (c) 2014 Intel Corporation # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. +# Copyright (c) 2014 Intel Corporation # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# SPDX-License-Identifier: GPL-2.0-only # -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # DESCRIPTION # This script is used to test public autobuilder images on remote hardware. diff --git a/poky/scripts/tiny/dirsize.py b/poky/scripts/tiny/dirsize.py index ddccc5a8c..501516b0d 100755 --- a/poky/scripts/tiny/dirsize.py +++ b/poky/scripts/tiny/dirsize.py @@ -1,22 +1,8 @@ #!/usr/bin/env python3 # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # +# SPDX-License-Identifier: GPL-2.0-or-later # # Display details of the root filesystem size, broken up by directory. # Allows for limiting by size to focus on the larger files. diff --git a/poky/scripts/tiny/ksize.py b/poky/scripts/tiny/ksize.py index ea1ca7ff2..bc11919f4 100755 --- a/poky/scripts/tiny/ksize.py +++ b/poky/scripts/tiny/ksize.py @@ -1,22 +1,8 @@ #!/usr/bin/env python3 # # Copyright (c) 2011, Intel Corporation. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # +# SPDX-License-Identifier: GPL-2.0-or-later # # Display details of the kernel build size, broken up by built-in.o. Sort # the objects by size. Run from the top level kernel build directory. diff --git a/poky/scripts/tiny/ksum.py b/poky/scripts/tiny/ksum.py index d4f389215..f38ae055d 100755 --- a/poky/scripts/tiny/ksum.py +++ b/poky/scripts/tiny/ksum.py @@ -1,22 +1,8 @@ #!/usr/bin/env python -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2016, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION 'ksum.py' generates a combined summary of vmlinux and # module sizes for a built kernel, as a quick tool for comparing the diff --git a/poky/scripts/verify-bashisms b/poky/scripts/verify-bashisms index a979bd296..fb0cc719e 100755 --- a/poky/scripts/verify-bashisms +++ b/poky/scripts/verify-bashisms @@ -1,4 +1,7 @@ #!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-only +# import sys, os, subprocess, re, shutil diff --git a/poky/scripts/wic b/poky/scripts/wic index b4b7212cf..1d89fb2ed 100755 --- a/poky/scripts/wic +++ b/poky/scripts/wic @@ -1,22 +1,8 @@ #!/usr/bin/env python3 -# ex:ts=4:sw=4:sts=4:et -# -*- tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- # # Copyright (c) 2013, Intel Corporation. -# All rights reserved. # -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License version 2 as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program; if not, write to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# SPDX-License-Identifier: GPL-2.0-only # # DESCRIPTION 'wic' is the OpenEmbedded Image Creator that users can # use to generate bootable images. Invoking it without any arguments @@ -426,7 +412,7 @@ def expandtype(rules): if rules == 'auto': return {} result = {} - for rule in rules.split('-'): + for rule in rules.split(','): try: part, size = rule.split(':') except ValueError: @@ -501,6 +487,9 @@ subcommands = { def init_parser(parser): parser.add_argument("--version", action="version", version="%(prog)s {version}".format(version=__version__)) + parser.add_argument("-D", "--debug", dest="debug", action="store_true", + default=False, help="output debug information") + subparsers = parser.add_subparsers(dest='command', help=hlp.wic_usage) for subcmd in subcommands: subparser = subparsers.add_parser(subcmd, help=subcommands[subcmd][2]) @@ -514,6 +503,8 @@ def main(argv): init_parser(parser) args = parser.parse_args(argv) + if args.debug: + logger.setLevel(logging.DEBUG) if "command" in vars(args): if args.command == "help": diff --git a/poky/scripts/yocto-check-layer b/poky/scripts/yocto-check-layer index 106c95525..010830f84 100755 --- a/poky/scripts/yocto-check-layer +++ b/poky/scripts/yocto-check-layer @@ -3,7 +3,9 @@ # Yocto Project layer checking tool # # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# import os import sys diff --git a/poky/scripts/yocto-check-layer-wrapper b/poky/scripts/yocto-check-layer-wrapper index b5df9ce98..2e3b69903 100755 --- a/poky/scripts/yocto-check-layer-wrapper +++ b/poky/scripts/yocto-check-layer-wrapper @@ -6,7 +6,9 @@ # script to avoid a contaminated environment. # # Copyright (C) 2017 Intel Corporation -# Released under the MIT license (see COPYING.MIT) +# +# SPDX-License-Identifier: MIT +# if [ -z "$BUILDDIR" ]; then echo "Please source oe-init-build-env before run this script." -- cgit v1.2.3