summaryrefslogtreecommitdiff
path: root/poky
diff options
context:
space:
mode:
authorAndrew Geissler <geissonator@yahoo.com>2022-05-27 19:33:10 +0300
committerAndrew Geissler <andrew@geissonator.com>2022-06-11 15:18:26 +0300
commitd583833a9a54248703bfc1ec48e2c98515f06899 (patch)
treed43be51238c5a5ef7bebd40912974b5ceff435c9 /poky
parentf7a3395e850d59f92b1f42550ec244f567df39eb (diff)
downloadopenbmc-d583833a9a54248703bfc1ec48e2c98515f06899.tar.xz
subtree updates
meta-security: 93f2146211..7628a3e90b: Anton Antonov (3): Parsec-service: Update installation procedure Parsec-service: Fix arm32 build meta-parsec: Update Parsec runtime tests Armin Kuster (20): fscrypt: add distro_check on pam meta-security: move perl and python recipes to dynamic layers structure packagegroup-core-security: remove pkgs packagegroup-core-security: add perl pkgs grps packagegroup-core-security: add dynamic python pkgs arpwatch: add postfix to pkg config suricata: drop nfnetlink from pkg config packagegroup-core-security.bb: fix suricata inclusion layer.conf: fix up layer dependancies. ima-evm-utils: Update to 1.4 aide: Update 01.17.4 ossec-hids: update to 3.7.0 suricata: update to 5.0.5 samhain: update to 4.4.9 tpm2-pkcs11: tpm2-pkcs11 module missing tpm2-tools: Add missing rdepends oeqa/cases/tpm2: fix and enhance test suite meta-parsec: Add pkg grps meta-parsec: add build image. oeqa: add parsec runtime tests Jeremy A. Puhlman (2): aide: Add depend on audit when audit is enabled. lib-perl: prefix man pages to avoid conflicting with base perl Josh Harley (1): Add EROFS support to dm-verity-img class Lei Maohui (1): layer.conf: Added BBFILES_DYNAMIC for dynamic-layers. meta-openembedded: 77c2fda04e..a9e6d16e66: Alejandro Enedino Hernandez Samaniego (1): cryptsetup: Add luks2 configure options defaults Alex Kiernan (2): ulogd2: Add recipe libcoap: Add recipe Armin Kuster (13): meta-python-image: Fix build depends crda: move to a dynamic-layer for python cyrus-sasl: move from meta-networking to meta-oe netplan: move from meta-networking to meta-oe nvmetcli: move recipe to meta-oe packagegroup-meta-oe: update pkg group python3-ldap: move to meta-python packagegroup-meta-python.bb: update pkg group firewalld: move to dynamic meta-python layer packagegroup-meta-networking: update pkg group meta-networking: drop meta-python layer depends meta-gnome: fix layer depends. layer.conf: Post release codename changes Bartosz Golaszewski (19): python3-pyfanotify: new package python3-toolz: new package python3-cytoolz: new package python3-decouple: new package python3-eth-hash: new package python3-eth-typing: new package python3-eth-utils: new package python3-eth-keys: new package python3-eth-keyfile: new package python3-hexbytes: new package python3-rlp: new package python3-eth-rlp: new package python3-parsimonious: new package python3-eth-abi: new package python3-eth-account: new package python3-lru-dict: new package python3-web3: new package python3-inotify: new package speedtest-cli: drop the recipe Changqing Li (1): zabbix: upgrade 5.2.6 -> 6.0.4 Chase Qi (1): kernel-selftest: install kselftest runner Claudius Heine (1): btrfsmaintenance: add recipe for btrfsmaintenance scripts Denys Dmytriyenko (2): devmem2: reinstate previous patches, removed by mistake devmem2: add support for different page sizes Diego Sueiro (1): bats: upgrade 1.6.0 -> 1.6.1 Gianfranco (3): sdbus-c++-libsystemd: Bump SRCREV to last commit of 250-stable branch sdbus-c++: Bump version from 1.00 to 1.1.0 libmtp: Add doxygen-native dependency in case documentation build is enabled in PACKAGECONFIG. This fixes a FTBFS due to missing dependency. Gianfranco Costamagna (1): vboxguestdrivers: upgrade 6.1.32 -> 6.1.34 Jiaqing Zhao (2): openldap: Remove libgcrypt dependency openldap: Upgrade 2.5.9 -> 2.5.12 Joerg Vehlow (1): jq: Fix typo OE_EXTRACONF -> EXTRA_OECONF Julien STEPHAN (1): libcamera: fix packaging Kai Kang (3): conntrack-tools: fix postinst script wxwidgets: enable to use private fonts python3-wxgtk4: backport patch to fix svg issue Khem Raj (12): ufw: Fix packaging errors found with ppc64 libcereal: Enable for glibc/ppc mimic: Use special rateconv.c license makedumpfile: Use right TARGET for ppc32 evince: Add dbus to depnedencies on non-x11 builds evolution-data-server: Do not pass --library-path to gir compiler python3-wxgtk4: Needs x11 for sip module zfs: Fix build on musl systems zfs: Disable on riscv32 zfs: Disable on mips zfs: Make systemd and sysvinit into packageconfigs sdbus-c++: Link with libatomic on mips/ppc32 Markus Volk (1): minidlna: fix obsolete license warning Martin Jansa (1): ostree: prevent ostree-native depending on target virtual/kernel to provide kernel-module-overlay Michael Opdenacker (1): devmem2: update SRC_URI according to redirect Mingli Yu (1): s-nail: Set VAL_MTA Nicolas Dechesne (1): imlib2: update SRC_URI Peter Kjellerstedt (1): libwebsockets: Avoid absolute paths in *.cmake files in the sysroot Portia (1): cpulimit: introduce support for this package Randy MacLeod (1): intel-speed-select: Add libnl dependency and extend CFLAGS Richard Neill (1): bats: Add patch to fix false-negatives caused by teardown code Ross Burton (1): Revert "python3-cbor2: upgrade 5.4.2 -> 5.4.3" Samuli Piippo (1): python3-qface: upgrade 2.0.7 -> 2.0.8 Teresa Remmet (1): meta-networking: Add meta-python to BBFILES_DYNAMIC Vyacheslav Yurkov (1): polkit: add udisks2 rule Windel Bouwman (1): Add zfs recipe Xu Huan (17): python3-astroid: upgrade 2.11.2 -> 2.11.3 python3-bitstruct: upgrade 8.14.0 -> 8.14.1 python3-cachecontrol: upgrade 0.12.10 -> 0.12.11 python3-engineio: upgrade 4.3.1 -> 4.3.2 python3-flask-socketio: upgrade 5.1.1 -> 5.1.2 python3-google-api-python-client: upgrade 2.43.0 -> 2.45.0 python3-graphviz: upgrade 0.19.2 -> 0.20 python3-cbor2: upgrade 5.4.2 -> 5.4.3 python3-click: upgrade 8.1.2 -> 8.1.3 python3-flask-login: upgrade 0.6.0 -> 0.6.1 python3-flask: upgrade 2.1.1 -> 2.1.2 python3-google-api-core: upgrade 2.7.1 -> 2.7.3 python3-google-auth: upgrade 2.6.3 -> 2.6.6 python3-mypy: upgrade 0.942 -> 0.950 python3-pyalsaaudio: upgrade 0.9.0 -> 0.9.2 python3-grpcio-tools: upgrade 1.45.0 -> 1.46.0 python3-pychromecast: upgrade 11.0.0 -> 12.1.1 Yi Zhao (1): networkmanager: fix parallel build failure wangmy (41): python3-sentry-sdk: upgrade 1.5.8 -> 1.5.10 python3-socketio: upgrade 5.5.2 -> 5.6.0 python3-textparser: upgrade 0.23.0 -> 0.24.0 python3-twisted: upgrade 22.2.0 -> 22.4.0 python3-websockets: upgrade 10.2 -> 10.3 fuse3: upgrade 3.10.5 -> 3.11.0 zenity: upgrade 3.42.0 -> 3.42.1 babeld: upgrade 1.11 -> 1.12 cifs-utils: upgrade 6.14 -> 6.15 nbdkit: upgrade 1.31.1 -> 1.31.2 stunnel: upgrade 5.63 -> 5.64 tgt: upgrade 1.0.79 -> 1.0.82 wolfssl: upgrade 5.2.0 -> 5.3.0 ctags: upgrade 5.9.20220417.0 -> 5.9.20220501.0 freerdp: upgrade 2.6.1 -> 2.7.0 fwupd-efi: upgrade 1.2 -> 1.3 htop: upgrade 3.1.2 -> 3.2.0 hwdata: upgrade 0.358 -> 0.359 icewm: upgrade 2.9.6 -> 2.9.7 iwd: upgrade 1.26 -> 1.27 jemalloc: upgrade 5.2.1 -> 5.3.0 libmbim: upgrade 1.26.2 -> 1.26.4 libyang: upgrade 2.0.164 -> 2.0.194 nano: upgrade 6.2 -> 6.3 phoronix-test-suite: upgrade 10.8.2 -> 10.8.3 php: upgrade 8.1.4 -> 8.1.5 pkcs11-helper: upgrade 1.28.0 -> 1.29.0 poppler: upgrade 22.04.0 -> 22.05.0 toybox: upgrade 0.8.6 -> 0.8.7 unixodbc: upgrade 2.3.9 -> 2.3.11 xmlsec1: upgrade 1.2.33 -> 1.2.34 gtk4: upgrade 4.6.3 -> 4.6.4 nbdkit: upgrade 1.31.2 -> 1.31.5 ctags: upgrade 5.9.20220501.0 -> 5.9.20220508.0 openjpeg: upgrade 2.4.0 -> 2.5.0 php: upgrade 8.1.5 -> 8.1.6 postgresql: upgrade 14.2 -> 14.3 phpmyadmin: upgrade 5.1.3 -> 5.2.0 python3-aiohue: upgrade 3.0.11 -> 4.4.1 python3-awesomeversion : add recipe python3-traitlets: upgrade 5.1.1 -> 5.2.0 zhengrq.fnst (12): glibmm-2.68: upgrade 2.70.0 -> 2.72.1 gnome-text-editor: upgrade 42.0 -> 42.1 apitrace: upgrade 10.0 -> 11.0 libconfig-general-perl: upgrade 2.63 -> 2.65 gpsd: upgrade 3.23.1 -> 3.24 mbw: upgrade 1.4 -> 1.5 gtk4: upgrade 4.6.2 -> 4.6.3 python3-antlr4-runtime: upgrade 4.9.2 -> 4.10 python3-booleanpy: upgrade 3.8 -> 4.0 python3-pika: upgrade 1.2.0 -> 1.2.1 python3-autobahn: upgrade 22.3.2 -> 22.4.2 python3-bitarray: upgrade 2.4.1 -> 2.5.0 zhengruoqin (7): python3-imageio: upgrade 2.17.0 -> 2.18.0 python3-langtable: upgrade 0.0.57 -> 0.0.58 python3-paramiko: upgrade 2.10.3 -> 2.10.4 python3-protobuf: upgrade 3.20.0 -> 3.20.1 python3-pylint: upgrade 2.13.5 -> 2.13.7 python3-pymongo: upgrade 4.1.0 -> 4.1.1 python3-regex: upgrade 2022.3.15 -> 2022.4.24 poky: 9e55696042..13d70e57f8: Alex Kiernan (7): eudev: Upgrade 3.2.10 -> 3.2.11 eudev: Add PACKAGECONFIG for manpages & selinux pypi.bbclass: Set CVE_PRODUCT to PYPI_PACKAGE openssh: Add openssh-sftp-server to openssh RDEPENDS eudev: Convert dependencies to PACKAGECONFIG eudev: Cleanup redundant configuration eudev: Use PACKAGE_BEFORE_PN/${PN}, clean up spaces Alexander Kanavin (106): systemd: upgrade 250.4 -> 250.5 python3-cryptography: upgrade 36.0.2 -> 37.0.1 util-linux: upgrade 2.37.4 -> 2.38 vulkan: upgrade 1.3.204.1 -> 1.3.211.0 libnl: upgrade 3.5.0 -> 3.6.0 libsdl2: upgrade 2.0.20 -> 2.0.22 mesa: upgrade 22.0.0 -> 22.0.2 python3-babel: upgrade 2.9.1 -> 2.10.1 python3-mako: upgrade 1.1.6 -> 1.2.0 python3-pygments: upgrade 2.11.2 -> 2.12.0 at-spi2-core: upgrade 2.44.0 -> 2.44.1 bind: upgrade 9.18.1 -> 9.18.2 cronie: upgrade 1.6.0 -> 1.6.1 diffoscope: upgrade 208 -> 211 dnf: upgrade 4.11.1 -> 4.12.0 ell: upgrade 0.49 -> 0.50 epiphany: upgrade 42.0 -> 42.2 ffmpeg: upgrade 5.0 -> 5.0.1 fribidi: upgrade 1.0.11 -> 1.0.12 harfbuzz: upgrade 4.2.0 -> 4.2.1 libinput: upgrade 1.19.3 -> 1.19.4 libmnl: upgrade 1.0.4 -> 1.0.5 libnotify: upgrade 0.7.9 -> 0.7.11 libpipeline: upgrade 1.5.5 -> 1.5.6 libseccomp: upgrade 2.5.3 -> 2.5.4 libx11: upgrade 1.7.5 -> 1.8 lttng-tools: upgrade 2.13.4 -> 2.13.7 mmc-utils: upgrade to latest revision neard: upgrade 0.16 -> 0.18 pango: upgrade 1.50.6 -> 1.50.7 parted: upgrade 3.4 -> 3.5 piglit: upgrade to latest revision python3-cryptography-vectors: upgrade 36.0.2 -> 37.0.1 python3-dtschema: upgrade 2022.1 -> 2022.4 python3-hypothesis: upgrade 6.44.0 -> 6.46.0 python3-jinja2: upgrade 3.1.1 -> 3.1.2 python3-pygobject: upgrade 3.42.0 -> 3.42.1 python3-pytest: upgrade 7.1.1 -> 7.1.2 repo: upgrade 2.23 -> 2.24.1 sqlite3: upgrade 3.38.2 -> 3.38.3 vala: upgrade 0.56.0 -> 0.56.1 vte: upgrade 0.66.2 -> 0.68.0 webkitgtk: upgrade 2.36.0 -> 2.36.1 xorgproto: upgrade 2021.5 -> 2022.1 xwayland: upgrade 22.1.0 -> 22.1.1 sysvinit: update 3.02 -> 3.04 pciutils: update 3.7.0 -> 3.8.0 elfutils: update 0.186 -> 0.187 git: update 2.35.3 -> 2.36.0 libdnf: update 0.66.0 -> 0.67.0 llvm: update 14.0.1 -> 14.0.3 rsync: update 3.2.3 -> 3.2.4 lsof: update 4.94.0 -> 4.95.0 libhandy: update 1.5.0 -> 1.6.2 librsvg: update 2.54.0 -> 2.54.1 xauth: update 1.1.1 -> 1.1.2 gnupg: update 2.3.4 -> 2.3.6 qemu: update 6.2.0 -> 7.0.0 stress-ng: disable apparmor from the correct spot coreutils: update 9.0 -> 9.1 python3-setuptools: upgrade 59.5.0 -> 62.3.1 go: upgrade 1.18.1 -> 1.18.2 iptables: upgrade 1.8.7 -> 1.8.8 gnu-config: update to latest version u-boot: upgrade 2022.01 -> 2022.04 python3-pip: update 22.0.4 -> 22.1 libxcb: update 1.14 -> 1.15 xcb-proto: upgrade 1.14.1 -> 1.15 systemtap: update 4.6 -> 4.7 vulkan-samples: update to latest revision curl: upgrade 7.83.0 -> 7.83.1 diffoscope: upgrade 211 -> 212 git: upgrade 2.36.0 -> 2.36.1 gnutls: upgrade 3.7.4 -> 3.7.5 gst-devtools: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-libav: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-omx: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-plugins-bad: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-plugins-base: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-plugins-good: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-plugins-ugly: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-python: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-rtsp-server: upgrade 1.20.1 -> 1.20.2 gstreamer1.0: upgrade 1.20.1 -> 1.20.2 gstreamer1.0-vaapi: upgrade 1.20.1 -> 1.20.2 libcgroup: upgrade 2.0.1 -> 2.0.2 libnotify: upgrade 0.7.11 -> 0.7.12 librsvg: upgrade 2.54.1 -> 2.54.3 mesa: upgrade 22.0.2 -> 22.0.3 mobile-broadband-provider-info: upgrade 20220315 -> 20220511 piglit: upgrade to latest revision psmisc: upgrade 23.4 -> 23.5 python3-bcrypt: upgrade 3.2.0 -> 3.2.2 python3-cryptography: upgrade 37.0.1 -> 37.0.2 python3-cryptography-vectors: upgrade 37.0.1 -> 37.0.2 python3-hypothesis: upgrade 6.46.0 -> 6.46.4 python3-jsonschema: upgrade 4.4.0 -> 4.5.1 python3-markdown: upgrade 3.3.6 -> 3.3.7 python3-more-itertools: upgrade 8.12.0 -> 8.13.0 python3-pbr: upgrade 5.8.1 -> 5.9.0 python3-pyparsing: upgrade 3.0.8 -> 3.0.9 repo: upgrade 2.24.1 -> 2.25 sqlite3: upgrade 3.38.3 -> 3.38.5 stress-ng: upgrade 0.14.00 -> 0.14.01 python3-setuptools-rust: update 1.1.2 -> 1.3.0 python3: use built-in distutils for ptest, rather than setuptools' 'fork' Andrej Valek (1): kernel: add missing path to search for debug files Arkadiusz Drabczyk (1): overview-manual: fix a forgotten link Aryaman Gupta (1): e2fsprogs: update upstream status Bruce Ashfield (23): linux-yocto/5.15: arm: poky-tiny cleanup and fixes linux-yocto/5.10: update to v5.10.110 linux-yocto/5.10: base: enable kernel crypto userspace API linux-yocto/5.15: update to v5.15.33 linux-yocto/5.15: base: enable kernel crypto userspace API linux-yocto/5.15: kasan: fix BUG: sleeping function called from invalid context linux-yocto/5.15: fix ppc boot linux-yocto/5.15: netfilter: conntrack: avoid useless indirection during conntrack destruction linux-yocto/5.10: update to v5.10.112 linux-yocto/5.15: update to v5.15.35 linux-yocto/5.15: Fix CVE-2022-28796 linux-yocto: enable powerpc debug fragment linux-yocto/5.15: fix -standard kernel build issue linux-yocto/5.15: update to v5.15.36 linux-yocto/5.15: fix qemuarm graphical boot strace: fix ptest failure in landlock yocto-bsps: update to v5.15.36 yocto-bsps: update to v5.10.113 linux-yocto/5.15: update to v5.15.37 linux-yocto/5.10: update to v5.10.113 linux-yocto/5.15: update to v5.15.38 linux-yocto/5.10: update to v5.10.114 lttng-modules: fix build against 5.18-rc7+ Changqing Li (1): eudev: create static-nodes in init script Chanho Park (2): externalsrc.bbclass: support crate fetcher on externalsrc cargo_common.bbclass: enable bitbake vendoring for externalsrc Claudius Heine (3): classes: rootfs-postcommands: add skip option to overlayfs_qa_check overlayfs: add docs about skipping QA check & service dependencies wic: added fspassno parameter to partition Davide Gardenal (4): cve-check: add JSON format to summary output cve-check: fix symlinks where link and output path are equal rootfs-postcommands: fix symlinks where link and output path are equal openssl: minor security upgrade 3.0.2 -> 3.0.3 Dmitry Baryshkov (3): linux-firmware: upgrade 20220411 -> 20220509 linux-firmware: package new Qualcomm firmware image.bbclass: allow overriding dependency on virtual/kernel:do_deploy Felix Moessbauer (1): wic/plugins/rootfs: Fix permissions when splitting rootfs folders across partitions Gunjan Gupta (2): bitbake: fetch2/osc: Small fixes for osc fetcher bitbake: fetch2/osc: Add support to query latest revision Jacob Kroon (1): Revert "image.bbclass: allow overriding dependency on virtual/kernel:do_deploy" Jiaqing Zhao (5): libxml2: Upgrade 2.9.13 -> 2.9.14 systemd: Drop 0001-test-parse-argument-Include-signal.h.patch systemd: Remove __compare_fn_t type in musl-specific patch systemd: Drop 0002-don-t-use-glibc-specific-qsort_r.patch systemd: Correct path returned in sd_path_lookup() Jon Mason (1): qemuarmv5: use arm-versatile-926ejs KMACHINE Kai Kang (1): wpa-supplicant: update config for gnutls Khem Raj (15): qemu: Add packageconfig for libbpf support linux-yocto: Enable powerpc-debug fragment for ppc64 LE musl: Upgrade to tip of trunk systemd: Fix build regression with latest update gcc: upgrade 11.3 -> 12.1 libstd-rs: Forward port rust libc patches gdb: Upgrade to 12.1 bash: build with bash_cv_getcwd_malloc=yes on musl too ovmf: Fix native build with gcc-12 elfutils: Disable stringop-overflow warning for build host musl-locales: Switch SRC_URI to new location systemd: Drop redundant musl patches systemd: Document future actions needed for set of musl patches systemd: Drop 0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch systemd: Update patch status Konrad Weihmann (1): linux-firmware: replace mkdir by install Kory Maincent (1): images_types: isolate the write of UBI configuration Leon Anavi (1): image_types/runqemu-addptable2image: Fix a minor typo Markus Volk (2): mesa.inc: package 00-radv-defaults.conf libsdl2: add PACKAGECONFIG for libusb1 and remove obsolete options Marta Rybczynska (3): cve-update-db-native: update the CVE database once a day only cve-update-db-native: let the user to drive the update interval cve-check: Fix report generation Martin Jansa (1): bitbake: osc: fix DeprecationWarning Michael Halstead (5): releases: update to include 3.1.16 scripts/autobuilder-worker-prereq-tests: update to use yocto 4.0 scripts/autobuilder-worker-prereq-tests: add additional limit testing releases: update to include 3.4.4 releases: include 4.0.1 Michael Opdenacker (12): MAINTAINERS.md: no more need for a prelink-cross maintainer dev-manual: further gdb usage simplifications doc/Makefile: fix epub and latexpdf targets manuals: fix name capitalization issues doc: standards for project and file names manuals: improve the width of diagrams manuals: improve documentation for TEMPLATECONF overview-manual: remove confusing and unnecessary paragraph about site.conf manuals: add quoting to references to bitbake.conf manuals: add missing space in appends manuals: add documentation for WKS_FILES migration guides: release notes for 3.4.3 and 3.4.4 Mingli Yu (1): python3-cryptography: remove --benchmark-disable option Peter Kjellerstedt (4): base-passwd: Regenerate the patches base-passwd: Update to 3.5.52 base-passwd: Update the status for two patches librsvg: Drop the dependency on libcroco Quentin Schulz (2): docs: set_versions.py: remove hardknott from active releases list docs: set_versions.py: show release name in switchers.js Raphael Teller (1): kernel.bbclass: Do not overwrite recipe's custom postinst Richard Purdie (25): bitbake: cookerdata: Change emphasis in error message to be clearer to users cairo: Add missing GPLv3 license checksum entry libgcrypt: Drop GPLv3 license after upstream changes base: Avoid circular references to our own scripts scripts: Make git intercept global scripts/git: Ensure we don't have circular references abi_version/sstate: Bump hashequiv and sstate versions due to git changes vim: Upgrade 8.2.4681 -> 8.2.4912 package: Ensure we track whether PRSERV was active or not libgcrypt: Fix reproducibility issues in ptest liberror-perl: Update sstate/equiv versions to clean cache freetype: Upgrade 2.12.0 -> 2.12.1 bitbake: fetch/git : Use cat as pager pciutils: Add make-native dependency sanity: Don't warn about make 4.2.1 for mint bitbake: build: Add clean_stamp API function to allow removal of task stamps staging: Fix rare sysroot corruption issue selftest/imagefeatures/overlayfs: Always append to DISTRO_FEATURES udev-extraconf/initrdscripts/parted: Rename mount.blacklist -> mount.ignorelist layer.conf: Don't use indirect help2man-native dependencies rust-common: Fix sstate signatures between arm hf and non-hf rust-common: Drop LLVM_TARGET and simplify rust-common: Fix native signature dependency issues scripts/patchreview: Add commit to stored json data scripts/patchreview: Make json output human parsable Robert Joslyn (1): powerpc: Remove invalid GLIBC_EXTRA_OECONF Roland Hieber (1): bitbake: cache: correctly handle file names containing colons Ross Burton (4): oeqa/selftest: add test for git working correctly inside pseudo Revert "bitbake.conf: mark all directories as safe for git to read" kernel-yocto.bbclass: say what SRC_URI entry is being dropped oeqa/selftest/cve_check: add tests for recipe and image reports Rouven Czerwinski (1): kbd: fix pam DISTRO_FEATURES check Samuli Piippo (1): binutils: Bump to latest 2.38 release branch Schmidt, Adriaan (1): bitbake: bitbake-diffsigs: break on first dependent task difference Simone Weiss (1): libgcrypt: Add ptest Steve Sakoman (2): virgl: skip headless test on alma 8.6 python3: fix reproducibility issue with python3-core Sundeep KOKKONDA (3): dev-manual: improvements for gdbserver configuration rust-common: Ensure sstate signatures have correct dependencues for do_rust_gen_targets rust-common: Fix for target definitions returning 'NoneType' for arm Thomas Epperson (1): dev-manual: fix documentation for bmaptool usage Thomas Perrot (1): man-pages: add an alternative link name for crypt_r.3 Tomasz Dziendzielski (1): bitbake: data: Do not depend on vardepvalueexclude flag Trevor Woerner (1): DISTRO_FEATURES: remove uclibc remnants Zoltán Böszörményi (2): npm.bbclass: Fix file permissions before opening it for writing npm.bbclass: Don't create /usr/lib/node symlink leimaohui (1): cve-check.bbclass: Added do_populate_sdk[recrdeptask]. wangmy (1): librepo: upgrade 1.14.2 -> 1.14.3 meta-raspberrypi: c97a9e34ab..62a84833d9: Andrei Gherzan (1): Revert "kmod: Enable xz compression" Khem Raj (3): rpi-config: Add option to enable One-wire interface linux-firmware-rpidistro: Create brcmfmac43455-sdio.raspberrypi,4-model-b.bin symlink linux-raspberrypi: Upgrade to 5.15.38 Signed-off-by: Andrew Geissler <geissonator@yahoo.com> Change-Id: If15534d7da5bfa78ef2224bb09ff1a8eb96a0e10
Diffstat (limited to 'poky')
-rw-r--r--poky/MAINTAINERS.md1
-rw-r--r--poky/bitbake/lib/bb/build.py14
-rw-r--r--poky/bitbake/lib/bb/cache.py2
-rw-r--r--poky/bitbake/lib/bb/cookerdata.py2
-rw-r--r--poky/bitbake/lib/bb/data.py2
-rw-r--r--poky/bitbake/lib/bb/fetch2/git.py2
-rw-r--r--poky/bitbake/lib/bb/fetch2/osc.py48
-rw-r--r--poky/bitbake/lib/bb/siggen.py1
-rw-r--r--poky/documentation/Makefile2
-rw-r--r--poky/documentation/brief-yoctoprojectqs/index.rst4
-rw-r--r--poky/documentation/bsp-guide/bsp.rst1
-rw-r--r--poky/documentation/conf.py6
-rw-r--r--poky/documentation/dev-manual/common-tasks.rst70
-rw-r--r--poky/documentation/dev-manual/start.rst2
-rw-r--r--poky/documentation/kernel-dev/common.rst4
-rw-r--r--poky/documentation/kernel-dev/concepts-appx.rst5
-rw-r--r--poky/documentation/kernel-dev/intro.rst2
-rw-r--r--poky/documentation/migration-guides/migration-2.2.rst2
-rw-r--r--poky/documentation/migration-guides/migration-2.7.rst2
-rw-r--r--poky/documentation/migration-guides/migration-3.0.rst2
-rw-r--r--poky/documentation/migration-guides/migration-3.2.rst6
-rw-r--r--poky/documentation/migration-guides/migration-3.3.rst4
-rw-r--r--poky/documentation/migration-guides/migration-3.4.rst2
-rw-r--r--poky/documentation/migration-guides/release-3.4.rst2
-rw-r--r--poky/documentation/migration-guides/release-notes-3.4.1.rst2
-rw-r--r--poky/documentation/migration-guides/release-notes-3.4.3.rst197
-rw-r--r--poky/documentation/migration-guides/release-notes-3.4.4.rst155
-rw-r--r--poky/documentation/overview-manual/concepts.rst41
-rw-r--r--poky/documentation/overview-manual/development-environment.rst5
-rw-r--r--poky/documentation/overview-manual/yp-intro.rst10
-rw-r--r--poky/documentation/profile-manual/usage.rst28
-rw-r--r--poky/documentation/ref-manual/devtool-reference.rst3
-rw-r--r--poky/documentation/ref-manual/structure.rst8
-rw-r--r--poky/documentation/ref-manual/tasks.rst2
-rw-r--r--poky/documentation/ref-manual/variables.rst40
-rw-r--r--poky/documentation/releases.rst3
-rw-r--r--poky/documentation/sdk-manual/appendix-obtain.rst3
-rw-r--r--poky/documentation/sdk-manual/extensible.rst6
-rw-r--r--poky/documentation/sdk-manual/intro.rst2
-rw-r--r--poky/documentation/sdk-manual/working-projects.rst2
-rwxr-xr-xpoky/documentation/set_versions.py8
-rw-r--r--poky/documentation/sphinx/yocto-vars.py2
-rw-r--r--poky/documentation/standards.md34
-rw-r--r--poky/documentation/test-manual/intro.rst9
-rw-r--r--poky/documentation/toaster-manual/intro.rst2
-rw-r--r--poky/documentation/toaster-manual/setup-and-use.rst2
-rw-r--r--poky/documentation/toaster-manual/start.rst2
-rw-r--r--poky/documentation/what-i-wish-id-known.rst3
-rw-r--r--poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb15
-rw-r--r--poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend16
-rw-r--r--poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend16
-rw-r--r--poky/meta/classes/base.bbclass4
-rw-r--r--poky/meta/classes/cargo_common.bbclass2
-rw-r--r--poky/meta/classes/cve-check.bbclass73
-rw-r--r--poky/meta/classes/externalsrc.bbclass2
-rw-r--r--poky/meta/classes/image.bbclass6
-rw-r--r--poky/meta/classes/image_types.bbclass33
-rw-r--r--poky/meta/classes/kernel-yocto.bbclass2
-rw-r--r--poky/meta/classes/kernel.bbclass3
-rw-r--r--poky/meta/classes/npm.bbclass6
-rw-r--r--poky/meta/classes/overlayfs.bbclass18
-rw-r--r--poky/meta/classes/package.bbclass3
-rw-r--r--poky/meta/classes/pypi.bbclass2
-rw-r--r--poky/meta/classes/rootfs-postcommands.bbclass24
-rw-r--r--poky/meta/classes/rust-common.bbclass3
-rw-r--r--poky/meta/classes/sanity.bbclass2
-rw-r--r--poky/meta/classes/sstate.bbclass2
-rw-r--r--poky/meta/classes/staging.bbclass24
-rw-r--r--poky/meta/conf/abi_version.conf2
-rw-r--r--poky/meta/conf/bitbake.conf8
-rw-r--r--poky/meta/conf/distro/include/default-distrovars.inc2
-rw-r--r--poky/meta/conf/distro/include/maintainers.inc4
-rw-r--r--poky/meta/conf/distro/include/ptest-packagelists.inc1
-rw-r--r--poky/meta/conf/distro/include/tcmode-default.inc8
-rw-r--r--poky/meta/conf/layer.conf1
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppc603e.inc3
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppc7400.inc3
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppce300c3.inc3
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppce500mc.inc3
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppce5500.inc3
-rw-r--r--poky/meta/conf/machine/include/powerpc/tune-ppce6500.inc4
-rw-r--r--poky/meta/conf/machine/qemuarmv5.conf4
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/cve_check.py77
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/git.py15
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/imagefeatures.py2
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/overlayfs.py36
-rw-r--r--poky/meta/lib/oeqa/selftest/cases/runtime_test.py2
-rw-r--r--poky/meta/recipes-bsp/pciutils/pciutils/configure.patch46
-rw-r--r--poky/meta/recipes-bsp/pciutils/pciutils_3.8.0.bb (renamed from poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb)8
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot-common.inc2
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot-tools.inc4
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.04.bb (renamed from poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.01.bb)0
-rw-r--r--poky/meta/recipes-bsp/u-boot/u-boot_2022.04.bb (renamed from poky/meta/recipes-bsp/u-boot/u-boot_2022.01.bb)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-avoid-start-failure-with-bind-user.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-avoid-start-failure-with-bind-user.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-named-lwresd-V-and-start-log-hide-build-options.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-named-lwresd-V-and-start-log-hide-build-options.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/bind-ensure-searching-for-json-headers-searches-sysr.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/bind-ensure-searching-for-json-headers-searches-sysr.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/bind9 (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/bind9)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/conf.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/conf.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/generate-rndc-key.sh (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/generate-rndc-key.sh)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/init.d-add-support-for-read-only-rootfs.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/init.d-add-support-for-read-only-rootfs.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/make-etc-initd-bind-stop-work.patch (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/make-etc-initd-bind-stop-work.patch)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind-9.18.2/named.service (renamed from poky/meta/recipes-connectivity/bind/bind-9.18.1/named.service)0
-rw-r--r--poky/meta/recipes-connectivity/bind/bind_9.18.2.bb (renamed from poky/meta/recipes-connectivity/bind/bind_9.18.1.bb)2
-rw-r--r--poky/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb4
-rw-r--r--poky/meta/recipes-connectivity/neard/neard_0.18.bb (renamed from poky/meta/recipes-connectivity/neard/neard_0.16.bb)2
-rw-r--r--poky/meta/recipes-connectivity/openssh/openssh_9.0p1.bb2
-rw-r--r--poky/meta/recipes-connectivity/openssl/openssl_3.0.3.bb (renamed from poky/meta/recipes-connectivity/openssl/openssl_3.0.2.bb)2
-rw-r--r--poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb5
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0001-Add-a-shutdown-group.patch26
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch23
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch21
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0004-Add-an-input-group-for-the-dev-input-devices.patch23
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0005-Add-kvm-group.patch (renamed from poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch)2
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0006-Make-it-possible-to-build-without-debconf-support.patch129
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/0007-Make-it-possible-to-disable-the-generation-of-the-do.patch46
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/add_shutdown.patch19
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/disable-docs.patch24
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/disable-shell.patch57
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/input.patch22
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/nobash.patch15
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd/noshadow.patch14
-rw-r--r--poky/meta/recipes-core/base-passwd/base-passwd_3.5.52.bb (renamed from poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb)28
-rw-r--r--poky/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch64
-rw-r--r--poky/meta/recipes-core/coreutils/coreutils/e8b56ebd536e82b15542a00c888109471936bfda.patch93
-rw-r--r--poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch37
-rw-r--r--poky/meta/recipes-core/coreutils/coreutils_9.1.bb (renamed from poky/meta/recipes-core/coreutils/coreutils_9.0.bb)7
-rw-r--r--poky/meta/recipes-core/ell/ell_0.50.bb (renamed from poky/meta/recipes-core/ell/ell_0.49.bb)2
-rw-r--r--poky/meta/recipes-core/initrdscripts/files/init-install-efi-testfs.sh2
-rw-r--r--poky/meta/recipes-core/initrdscripts/files/init-install-efi.sh2
-rw-r--r--poky/meta/recipes-core/initrdscripts/files/init-install-testfs.sh2
-rw-r--r--poky/meta/recipes-core/initrdscripts/files/init-install.sh2
-rw-r--r--poky/meta/recipes-core/kbd/kbd_2.4.0.bb2
-rw-r--r--poky/meta/recipes-core/libcgroup/libcgroup_2.0.2.bb (renamed from poky/meta/recipes-core/libcgroup/libcgroup_2.0.1.bb)2
-rw-r--r--poky/meta/recipes-core/libxml/libxml2/CVE-2022-23308-fix-regression.patch99
-rw-r--r--poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch21
-rw-r--r--poky/meta/recipes-core/libxml/libxml2_2.9.14.bb (renamed from poky/meta/recipes-core/libxml/libxml2_2.9.13.bb)5
-rw-r--r--poky/meta/recipes-core/meta/cve-update-db-native.bb12
-rw-r--r--poky/meta/recipes-core/musl/musl-locales_git.bb21
-rw-r--r--poky/meta/recipes-core/musl/musl_git.bb2
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning-1.patch51
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning.patch49
-rw-r--r--poky/meta/recipes-core/ovmf/ovmf_git.bb6
-rw-r--r--poky/meta/recipes-core/systemd/systemd-boot_250.5.bb (renamed from poky/meta/recipes-core/systemd/systemd-boot_250.4.bb)0
-rw-r--r--poky/meta/recipes-core/systemd/systemd.inc2
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch98
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch73
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch10
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-resolve-Use-sockaddr-pointer-type-for-bind.patch46
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch42
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0001-test-parse-argument-Include-signal.h.patch27
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch10
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch157
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-comparison_fn_t.patch (renamed from poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch)41
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch20
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch159
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch12
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch20
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch9
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0010-Use-uintmax_t-for-handling-rlim_t.patch16
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch4
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch18
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch4
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch4
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch10
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch33
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0017-missing_type.h-add-__compar_d_fn_t-definition.patch28
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0018-avoid-redefinition-of-prctl_mm_map-structure.patch2
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0019-Handle-missing-LOCK_EX.patch24
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch36
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch8
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch239
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0025-Handle-__cpu_mask-usage.patch4
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch16
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch11
-rw-r--r--poky/meta/recipes-core/systemd/systemd/0029-network-enable-KeepConfiguration-when-running-on-net.patch253
-rw-r--r--poky/meta/recipes-core/systemd/systemd_250.5.bb (renamed from poky/meta/recipes-core/systemd/systemd_250.4.bb)12
-rw-r--r--poky/meta/recipes-core/sysvinit/sysvinit/0001-Fixed-compile-error-on-GNU-Hurd.patch28
-rw-r--r--poky/meta/recipes-core/sysvinit/sysvinit_3.04.bb (renamed from poky/meta/recipes-core/sysvinit/sysvinit_3.02.bb)3
-rw-r--r--poky/meta/recipes-core/udev/eudev/0001-build-Remove-dead-g-i-r-configuration.patch155
-rw-r--r--poky/meta/recipes-core/udev/eudev/0014-Revert-rules-remove-firmware-loading-rules.patch28
-rw-r--r--poky/meta/recipes-core/udev/eudev/Revert-udev-remove-userspace-firmware-loading-suppor.patch364
-rw-r--r--poky/meta/recipes-core/udev/eudev/init37
-rw-r--r--poky/meta/recipes-core/udev/eudev_3.2.11.bb (renamed from poky/meta/recipes-core/udev/eudev_3.2.10.bb)63
-rw-r--r--poky/meta/recipes-core/udev/udev-extraconf/mount.ignorelist (renamed from poky/meta/recipes-core/udev/udev-extraconf/mount.blacklist)0
-rw-r--r--poky/meta/recipes-core/udev/udev-extraconf/mount.sh4
-rw-r--r--poky/meta/recipes-core/udev/udev-extraconf_1.1.bb10
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux-libuuid_2.38.bb (renamed from poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.4.bb)0
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux.inc2
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux/run-ptest3
-rw-r--r--poky/meta/recipes-core/util-linux/util-linux_2.38.bb (renamed from poky/meta/recipes-core/util-linux/util-linux_2.37.4.bb)2
-rw-r--r--poky/meta/recipes-devtools/binutils/binutils-2.38.inc2
-rw-r--r--poky/meta/recipes-devtools/cargo/cargo-cross-canadian.inc2
-rw-r--r--poky/meta/recipes-devtools/dnf/dnf_4.12.0.bb (renamed from poky/meta/recipes-devtools/dnf/dnf_4.11.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/extents.patch2
-rw-r--r--poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb (renamed from poky/meta/recipes-devtools/elfutils/elfutils_0.186.bb)8
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-debuginfod-client.c-use-long-for-cache-ti.patch45
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-fix-compilation-on-platforms-without-erro.patch54
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch8
-rw-r--r--poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-12.1.inc (renamed from poky/meta/recipes-devtools/gcc/gcc-11.3.inc)83
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross-canadian_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-cross_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-cross_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-crosssdk_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime.inc2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-runtime_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-runtime_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-sanitizers_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc-source_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc-source_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-42574.patch2282
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-46195.patch128
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch10
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-CVE-2021-42574.patch1765
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch52
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch15
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0003-CVE-2021-42574.patch142
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0004-CVE-2021-42574.patch573
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch)12
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0004-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch)16
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0005-cpp-honor-sysroot.patch)18
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch)201
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0007-gcc-Fix-argument-list-too-long-error.patch42
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0008-libtool.patch2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch6
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch14
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch50
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0012-Ensure-target-gcc-headers-can-be-included.patch)30
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0013-Don-t-search-host-directory-during-relink-if-inst_pr.patch)2
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0015-Makefile.in-Ensure-build-CPP-CPPFLAGS-is-used-for-bu.patch204
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0014-libcc1-fix-libcc1-s-install-path-and-rpath.patch)10
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0017-handle-sysroot-support-for-nativesdk-gcc.patch)88
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch)16
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch)14
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0023-Re-introduce-spe-commandline-options.patch)6
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch25
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0024-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch)28
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch26
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0025-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch)72
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0026-mingw32-Enable-operation_not_supported.patch)4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0022-sync-gcc-stddef.h-with-musl.patch88
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0023-libatomic-Do-not-enforce-march-on-aarch64.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0027-libatomic-Do-not-enforce-march-on-aarch64.patch)4
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0024-Fix-install-path-of-linux64.h.patch (renamed from poky/meta/recipes-devtools/gcc/gcc/0029-Fix-install-path-of-linux64.h.patch)6
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0025-Move-sched.h-include-ahead-of-user-headers.patch56
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc/0028-debug-101473-apply-debug-prefix-maps-before-checksum.patch101
-rw-r--r--poky/meta/recipes-devtools/gcc/gcc_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/gcc_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc-initial_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc-initial_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgcc_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/libgcc_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gcc/libgfortran_12.1.bb (renamed from poky/meta/recipes-devtools/gcc/libgfortran_11.3.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb-cross_12.1.bb (renamed from poky/meta/recipes-devtools/gdb/gdb-cross_11.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb.inc14
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch10
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch11
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch)14
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch)8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch)10
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch)6
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch)8
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch (renamed from poky/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch)10
-rw-r--r--poky/meta/recipes-devtools/gdb/gdb_12.1.bb (renamed from poky/meta/recipes-devtools/gdb/gdb_11.2.bb)0
-rw-r--r--poky/meta/recipes-devtools/git/git/0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch12
-rw-r--r--poky/meta/recipes-devtools/git/git_2.36.1.bb (renamed from poky/meta/recipes-devtools/git/git_2.35.3.bb)2
-rw-r--r--poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb4
-rw-r--r--poky/meta/recipes-devtools/go/go-1.18.2.inc (renamed from poky/meta/recipes-devtools/go/go-1.18.1.inc)2
-rw-r--r--poky/meta/recipes-devtools/go/go-binary-native_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-binary-native_1.18.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/go/go-cross-canadian_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-cross-canadian_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-cross_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-cross_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-crosssdk_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-crosssdk_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-native_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-native_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go-runtime_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go-runtime_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/go/go_1.18.2.bb (renamed from poky/meta/recipes-devtools/go/go_1.18.1.bb)0
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf/0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch10
-rw-r--r--poky/meta/recipes-devtools/libdnf/libdnf_0.67.0.bb (renamed from poky/meta/recipes-devtools/libdnf/libdnf_0.66.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/librepo/librepo_1.14.3.bb (renamed from poky/meta/recipes-devtools/librepo/librepo_1.14.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/llvm/llvm_git.bb4
-rw-r--r--poky/meta/recipes-devtools/mmc/mmc-utils_git.bb2
-rw-r--r--poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb4
-rw-r--r--poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch6
-rw-r--r--poky/meta/recipes-devtools/python/python3-babel_2.10.1.bb (renamed from poky/meta/recipes-devtools/python/python3-babel_2.9.1.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-bcrypt_3.2.2.bb (renamed from poky/meta/recipes-devtools/python/python3-bcrypt_3.2.0.bb)3
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography-vectors_37.0.2.bb (renamed from poky/meta/recipes-devtools/python/python3-cryptography-vectors_36.0.2.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography/0001-Cargo.toml-specify-pem-version.patch12
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch40
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography/fix-leak-metric.patch36
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb123
-rw-r--r--poky/meta/recipes-devtools/python/python3-cryptography_37.0.2.bb119
-rw-r--r--poky/meta/recipes-devtools/python/python3-dtschema_2022.4.bb (renamed from poky/meta/recipes-devtools/python/python3-dtschema_2022.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-hypothesis_6.46.4.bb (renamed from poky/meta/recipes-devtools/python/python3-hypothesis_6.44.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-jinja2_3.1.2.bb (renamed from poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-jsonschema_4.5.1.bb (renamed from poky/meta/recipes-devtools/python/python3-jsonschema_4.4.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-mako_1.2.0.bb (renamed from poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb)6
-rw-r--r--poky/meta/recipes-devtools/python/python3-markdown_3.3.7.bb (renamed from poky/meta/recipes-devtools/python/python3-markdown_3.3.6.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-more-itertools_8.13.0.bb (renamed from poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pbr_5.9.0.bb4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pip_22.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pip_22.0.4.bb)5
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygments_2.12.0.bb (renamed from poky/meta/recipes-devtools/python/python3-pygments_2.11.2.bb)4
-rw-r--r--poky/meta/recipes-devtools/python/python3-pygobject_3.42.1.bb (renamed from poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pyparsing_3.0.9.bb (renamed from poky/meta/recipes-devtools/python/python3-pyparsing_3.0.8.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb (renamed from poky/meta/recipes-devtools/python/python3-pytest_7.1.1.bb)2
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools-rust_1.3.0.bb (renamed from poky/meta/recipes-devtools/python/python3-setuptools-rust-native_1.1.2.bb)6
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb2
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch35
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch60
-rw-r--r--poky/meta/recipes-devtools/python/python3-setuptools_62.3.1.bb (renamed from poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb)8
-rw-r--r--poky/meta/recipes-devtools/python/python3/run-ptest2
-rw-r--r--poky/meta/recipes-devtools/python/python3_3.10.4.bb5
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-native_6.2.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu-system-native_6.2.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu.inc32
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-acpi-tpm-Add-missing-device-identification-objects.patch83
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-ppc-Include-asm-ptrace.h-for-pt_regs-struct-definiti.patch92
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch)17
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch141
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-riscv-Set-5.4-as-minimum-kernel-version-for-riscv32.patch40
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0001-vhost-vsock-detach-the-virqueue-element-in-case-of-e.patch60
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch)59
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0002-virtio-net-fix-map-leaking-on-error-during-receive.patch43
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch)17
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch)11
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch)16
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/mmap2.patch)23
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/determinism.patch)24
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0001-tests-meson.build-use-relative-path-to-refer-to-file.patch)20
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/0001-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch)9
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch (renamed from poky/meta/recipes-devtools/qemu/qemu/pvrdma.patch)32
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/cross.patch15
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu/no-ps2.patch123
-rw-r--r--poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb (renamed from poky/meta/recipes-devtools/qemu/qemu_6.2.0.bb)0
-rw-r--r--poky/meta/recipes-devtools/repo/repo_2.25.bb (renamed from poky/meta/recipes-devtools/repo/repo_2.23.bb)2
-rw-r--r--poky/meta/recipes-devtools/rsync/files/0001-rsync-ssl-Verify-the-hostname-in-the-certificate-whe.patch31
-rw-r--r--poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch12
-rw-r--r--poky/meta/recipes-devtools/rsync/rsync_3.2.4.bb (renamed from poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb)17
-rw-r--r--poky/meta/recipes-devtools/rust/libstd-rs/0001-Add-400-series-syscalls-to-musl-riscv64-definitions.patch6
-rw-r--r--poky/meta/recipes-devtools/rust/libstd-rs/0001-Update-checksums-for-modified-vendored-libc.patch15
-rw-r--r--poky/meta/recipes-devtools/rust/rust-common.inc38
-rw-r--r--poky/meta/recipes-devtools/rust/rust-cross-canadian-common.inc1
-rw-r--r--poky/meta/recipes-devtools/strace/strace/0001-landlock-update-expected-string.patch67
-rw-r--r--poky/meta/recipes-devtools/strace/strace_5.17.bb1
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.56.0.bb3
-rw-r--r--poky/meta/recipes-devtools/vala/vala_0.56.1.bb3
-rw-r--r--poky/meta/recipes-extended/cronie/cronie_1.6.1.bb (renamed from poky/meta/recipes-extended/cronie/cronie_1.6.0.bb)2
-rw-r--r--poky/meta/recipes-extended/iptables/iptables/0001-iptables-xshared.h-add-missing-sys.types.h-include.patch30
-rw-r--r--poky/meta/recipes-extended/iptables/iptables/format-security.patch30
-rw-r--r--poky/meta/recipes-extended/iptables/iptables_1.8.8.bb (renamed from poky/meta/recipes-extended/iptables/iptables_1.8.7.bb)11
-rw-r--r--poky/meta/recipes-extended/libmnl/libmnl_1.0.5.bb (renamed from poky/meta/recipes-extended/libmnl/libmnl_1.0.4.bb)3
-rw-r--r--poky/meta/recipes-extended/libpipeline/libpipeline_1.5.6.bb (renamed from poky/meta/recipes-extended/libpipeline/libpipeline_1.5.5.bb)2
-rw-r--r--poky/meta/recipes-extended/lsof/files/lsof-remove-host-information.patch12
-rw-r--r--poky/meta/recipes-extended/lsof/lsof_4.95.0.bb (renamed from poky/meta/recipes-extended/lsof/lsof_4.94.0.bb)2
-rw-r--r--poky/meta/recipes-extended/man-pages/man-pages_5.13.bb7
-rw-r--r--poky/meta/recipes-extended/parted/files/check-vfat.patch51
-rw-r--r--poky/meta/recipes-extended/parted/files/run-ptest6
-rw-r--r--poky/meta/recipes-extended/parted/parted_3.5.bb (renamed from poky/meta/recipes-extended/parted/parted_3.4.bb)4
-rw-r--r--poky/meta/recipes-extended/psmisc/psmisc_23.5.bb (renamed from poky/meta/recipes-extended/psmisc/psmisc_23.4.bb)2
-rw-r--r--poky/meta/recipes-extended/stress-ng/stress-ng/0001-Makefile-quote-CC.patch41
-rw-r--r--poky/meta/recipes-extended/stress-ng/stress-ng_0.14.01.bb (renamed from poky/meta/recipes-extended/stress-ng/stress-ng_0.14.00.bb)8
-rw-r--r--poky/meta/recipes-gnome/epiphany/epiphany_42.2.bb (renamed from poky/meta/recipes-gnome/epiphany/epiphany_42.0.bb)2
-rw-r--r--poky/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch37
-rw-r--r--poky/meta/recipes-gnome/libhandy/libhandy_1.6.2.bb (renamed from poky/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb)9
-rw-r--r--poky/meta/recipes-gnome/libnotify/libnotify_0.7.12.bb (renamed from poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb)3
-rw-r--r--poky/meta/recipes-gnome/librsvg/librsvg/0001-Disable-docs.patch24
-rw-r--r--poky/meta/recipes-gnome/librsvg/librsvg_2.54.3.bb (renamed from poky/meta/recipes-gnome/librsvg/librsvg_2.54.0.bb)9
-rw-r--r--poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb5
-rw-r--r--poky/meta/recipes-graphics/freetype/freetype_2.12.1.bb (renamed from poky/meta/recipes-graphics/freetype/freetype_2.12.0.bb)2
-rw-r--r--poky/meta/recipes-graphics/glslang/glslang_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/glslang/glslang_1.3.204.1.bb)2
-rw-r--r--poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.1.bb (renamed from poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.0.bb)2
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch10
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2/0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch46
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2/0001-video-restore-ability-to-disable-fb-accel-via-hint.patch36
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2/optional-libunwind-generic.patch18
-rw-r--r--poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb (renamed from poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb)10
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa-gl_22.0.3.bb (renamed from poky/meta/recipes-graphics/mesa/mesa-gl_22.0.0.bb)0
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa.inc4
-rw-r--r--poky/meta/recipes-graphics/mesa/mesa_22.0.3.bb (renamed from poky/meta/recipes-graphics/mesa/mesa_22.0.0.bb)0
-rw-r--r--poky/meta/recipes-graphics/pango/pango_1.50.7.bb (renamed from poky/meta/recipes-graphics/pango/pango_1.50.6.bb)2
-rw-r--r--poky/meta/recipes-graphics/piglit/piglit_git.bb2
-rw-r--r--poky/meta/recipes-graphics/spir/spirv-headers_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/spir/spirv-headers_1.3.204.1.bb)2
-rw-r--r--poky/meta/recipes-graphics/spir/spirv-tools_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/spir/spirv-tools_1.3.204.1.bb)4
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.204.1.bb)2
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.204.1.bb)4
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb2
-rw-r--r--poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.211.0.bb (renamed from poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.204.1.bb)4
-rw-r--r--poky/meta/recipes-graphics/wayland/libinput_1.19.4.bb (renamed from poky/meta/recipes-graphics/wayland/libinput_1.19.3.bb)2
-rw-r--r--poky/meta/recipes-graphics/xorg-app/xauth_1.1.2.bb (renamed from poky/meta/recipes-graphics/xorg-app/xauth_1.1.1.bb)3
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libx11_1.8.bb (renamed from poky/meta/recipes-graphics/xorg-lib/libx11_1.7.5.bb)2
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libxcb/disable-check.patch25
-rw-r--r--poky/meta/recipes-graphics/xorg-lib/libxcb_1.15.bb (renamed from poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb)6
-rw-r--r--poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.15.bb (renamed from poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb)2
-rw-r--r--poky/meta/recipes-graphics/xorg-proto/xorgproto_2022.1.bb (renamed from poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.5.bb)2
-rw-r--r--poky/meta/recipes-graphics/xwayland/xwayland_22.1.1.bb (renamed from poky/meta/recipes-graphics/xwayland/xwayland_22.1.0.bb)2
-rw-r--r--poky/meta/recipes-kernel/linux-firmware/files/0001-Makefile-replace-mkdir-by-install.patch84
-rw-r--r--poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220509.bb (renamed from poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220411.bb)22
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb8
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb6
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb27
-rw-r--r--poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb29
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-sched-tracing-Append-prev_state-to-tp-args-inste.patch59
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-modules_2.13.3.bb1
-rw-r--r--poky/meta/recipes-kernel/lttng/lttng-tools_2.13.7.bb (renamed from poky/meta/recipes-kernel/lttng/lttng-tools_2.13.4.bb)11
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28778-gcc-warning-tweak-for-sprintf-precision-para.patch45
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28804-tune-default-stap-s-buffer-size-on-small-RAM.patch84
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap/0001-gcc12-c-compatibility-re-tweak-for-rhel6-use-functio.patch49
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap_git.bb6
-rw-r--r--poky/meta/recipes-kernel/systemtap/systemtap_git.inc6
-rw-r--r--poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.1.bb (renamed from poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.2.bb (renamed from poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.1.bb)2
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk/add_missing_include.patch19
-rw-r--r--poky/meta/recipes-sato/webkit/webkitgtk_2.36.1.bb (renamed from poky/meta/recipes-sato/webkit/webkitgtk_2.36.0.bb)3
-rw-r--r--poky/meta/recipes-support/atk/at-spi2-core_2.44.1.bb (renamed from poky/meta/recipes-support/atk/at-spi2-core_2.44.0.bb)6
-rw-r--r--poky/meta/recipes-support/atk/files/08036a4c4491eea57d7b713bb4440f541584204b.patch40
-rw-r--r--poky/meta/recipes-support/curl/curl_7.83.1.bb (renamed from poky/meta/recipes-support/curl/curl_7.83.0.bb)2
-rw-r--r--poky/meta/recipes-support/diffoscope/diffoscope_212.bb (renamed from poky/meta/recipes-support/diffoscope/diffoscope_208.bb)2
-rw-r--r--poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb (renamed from poky/meta/recipes-support/fribidi/fribidi_1.0.11.bb)2
-rw-r--r--poky/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch6
-rw-r--r--poky/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch29
-rw-r--r--poky/meta/recipes-support/gnupg/gnupg/relocate.patch18
-rw-r--r--poky/meta/recipes-support/gnupg/gnupg_2.3.6.bb (renamed from poky/meta/recipes-support/gnupg/gnupg_2.3.4.bb)3
-rw-r--r--poky/meta/recipes-support/gnutls/gnutls_3.7.5.bb (renamed from poky/meta/recipes-support/gnutls/gnutls_3.7.4.bb)2
-rw-r--r--poky/meta/recipes-support/libgcrypt/files/run-ptest3
-rw-r--r--poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb27
-rw-r--r--poky/meta/recipes-support/libnl/files/fa7f97f8982544c4fcb403893bae6701230d5165.patch48
-rw-r--r--poky/meta/recipes-support/libnl/libnl_3.6.0.bb (renamed from poky/meta/recipes-support/libnl/libnl_3.5.0.bb)7
-rw-r--r--poky/meta/recipes-support/libseccomp/libseccomp_2.5.4.bb (renamed from poky/meta/recipes-support/libseccomp/libseccomp_2.5.3.bb)4
-rw-r--r--poky/meta/recipes-support/sqlite/sqlite3_3.38.5.bb (renamed from poky/meta/recipes-support/sqlite/sqlite3_3.38.2.bb)2
-rw-r--r--poky/meta/recipes-support/vim/vim.inc4
-rw-r--r--poky/meta/recipes-support/vte/vte_0.68.0.bb (renamed from poky/meta/recipes-support/vte/vte_0.66.2.bb)2
-rw-r--r--poky/meta/site/common-musl3
-rwxr-xr-xpoky/scripts/autobuilder-worker-prereq-tests21
-rwxr-xr-xpoky/scripts/contrib/patchreview.py3
-rwxr-xr-xpoky/scripts/git (renamed from poky/scripts/git-intercept/git)9
-rw-r--r--poky/scripts/lib/wic/help.py6
-rw-r--r--poky/scripts/lib/wic/ksparser.py1
-rw-r--r--poky/scripts/lib/wic/partition.py1
-rw-r--r--poky/scripts/lib/wic/plugins/imager/direct.py3
-rw-r--r--poky/scripts/lib/wic/plugins/source/rootfs.py5
-rwxr-xr-xpoky/scripts/runqemu-addptable2image2
448 files changed, 3985 insertions, 9641 deletions
diff --git a/poky/MAINTAINERS.md b/poky/MAINTAINERS.md
index 36a9bde90c..505c2e234d 100644
--- a/poky/MAINTAINERS.md
+++ b/poky/MAINTAINERS.md
@@ -53,7 +53,6 @@ Maintainers needed
* wic
* Patchwork
* Patchtest
-* Prelink-cross
* Matchbox
* Sato
* Autobuilder
diff --git a/poky/bitbake/lib/bb/build.py b/poky/bitbake/lib/bb/build.py
index af60c3d8f5..55f68b98c5 100644
--- a/poky/bitbake/lib/bb/build.py
+++ b/poky/bitbake/lib/bb/build.py
@@ -835,11 +835,7 @@ def stamp_cleanmask_internal(taskname, d, file_name):
return [cleanmask, cleanmask.replace(taskflagname, taskflagname + "_setscene")]
-def make_stamp(task, d, file_name = None):
- """
- Creates/updates a stamp for a given task
- (d can be a data dict or dataCache)
- """
+def clean_stamp(task, d, file_name = None):
cleanmask = stamp_cleanmask_internal(task, d, file_name)
for mask in cleanmask:
for name in glob.glob(mask):
@@ -850,6 +846,14 @@ def make_stamp(task, d, file_name = None):
if name.endswith('.taint'):
continue
os.unlink(name)
+ return
+
+def make_stamp(task, d, file_name = None):
+ """
+ Creates/updates a stamp for a given task
+ (d can be a data dict or dataCache)
+ """
+ clean_stamp(task, d, file_name)
stamp = stamp_internal(task, d, file_name)
# Remove the file and recreate to force timestamp
diff --git a/poky/bitbake/lib/bb/cache.py b/poky/bitbake/lib/bb/cache.py
index fcb15796cc..92e9a3ced7 100644
--- a/poky/bitbake/lib/bb/cache.py
+++ b/poky/bitbake/lib/bb/cache.py
@@ -619,7 +619,7 @@ class Cache(NoCache):
for f in flist:
if not f:
continue
- f, exist = f.split(":")
+ f, exist = f.rsplit(":", 1)
if (exist == "True" and not os.path.exists(f)) or (exist == "False" and os.path.exists(f)):
self.logger.debug2("%s's file checksum list file %s changed",
fn, f)
diff --git a/poky/bitbake/lib/bb/cookerdata.py b/poky/bitbake/lib/bb/cookerdata.py
index fe5696c704..d54ac932e5 100644
--- a/poky/bitbake/lib/bb/cookerdata.py
+++ b/poky/bitbake/lib/bb/cookerdata.py
@@ -248,7 +248,7 @@ class CookerDataBuilder(object):
for k in cookercfg.env:
self.savedenv.setVar(k, cookercfg.env[k])
if k in bb.data_smart.bitbake_renamed_vars:
- bb.error('Variable %s from the shell environment has been renamed to %s' % (k, bb.data_smart.bitbake_renamed_vars[k]))
+ bb.error('Shell environment variable %s has been renamed to %s' % (k, bb.data_smart.bitbake_renamed_vars[k]))
bb.fatal("Exiting to allow enviroment variables to be corrected")
filtered_keys = bb.utils.approved_variables()
diff --git a/poky/bitbake/lib/bb/data.py b/poky/bitbake/lib/bb/data.py
index 62ec214762..c09d9b04bb 100644
--- a/poky/bitbake/lib/bb/data.py
+++ b/poky/bitbake/lib/bb/data.py
@@ -277,6 +277,8 @@ def build_dependencies(key, keys, shelldeps, varflagsexcl, ignored_vars, d):
try:
if key[-1] == ']':
vf = key[:-1].split('[')
+ if vf[1] == "vardepvalueexclude":
+ return deps, ""
value, parser = d.getVarFlag(vf[0], vf[1], False, retparser=True)
deps |= parser.references
deps = deps | (keys & parser.execs)
diff --git a/poky/bitbake/lib/bb/fetch2/git.py b/poky/bitbake/lib/bb/fetch2/git.py
index bdcfa4978c..23f8c0da8f 100644
--- a/poky/bitbake/lib/bb/fetch2/git.py
+++ b/poky/bitbake/lib/bb/fetch2/git.py
@@ -243,7 +243,7 @@ class Git(FetchMethod):
for name in ud.names:
ud.unresolvedrev[name] = 'HEAD'
- ud.basecmd = d.getVar("FETCHCMD_git") or "git -c core.fsyncobjectfiles=0 -c gc.autoDetach=false"
+ ud.basecmd = d.getVar("FETCHCMD_git") or "git -c core.fsyncobjectfiles=0 -c gc.autoDetach=false -c core.pager=cat"
write_tarballs = d.getVar("BB_GENERATE_MIRROR_TARBALLS") or "0"
ud.write_tarballs = write_tarballs != "0" or ud.rebaseable
diff --git a/poky/bitbake/lib/bb/fetch2/osc.py b/poky/bitbake/lib/bb/fetch2/osc.py
index 99a529e5bf..86f8ddf47b 100644
--- a/poky/bitbake/lib/bb/fetch2/osc.py
+++ b/poky/bitbake/lib/bb/fetch2/osc.py
@@ -9,6 +9,7 @@ Based on the svn "Fetch" implementation.
import logging
import os
+import re
import bb
from bb.fetch2 import FetchMethod
from bb.fetch2 import FetchError
@@ -36,6 +37,7 @@ class Osc(FetchMethod):
# Create paths to osc checkouts
oscdir = d.getVar("OSCDIR") or (d.getVar("DL_DIR") + "/osc")
relpath = self._strip_leading_slashes(ud.path)
+ ud.oscdir = oscdir
ud.pkgdir = os.path.join(oscdir, ud.host)
ud.moddir = os.path.join(ud.pkgdir, relpath, ud.module)
@@ -49,7 +51,7 @@ class Osc(FetchMethod):
else:
ud.revision = ""
- ud.localfile = d.expand('%s_%s_%s.tar.gz' % (ud.module.replace('/', '.'), ud.path.replace('/', '.'), ud.revision))
+ ud.localfile = d.expand('%s_%s_%s.tar.gz' % (ud.module.replace('/', '.'), relpath.replace('/', '.'), ud.revision))
def _buildosccommand(self, ud, d, command):
"""
@@ -59,26 +61,49 @@ class Osc(FetchMethod):
basecmd = d.getVar("FETCHCMD_osc") or "/usr/bin/env osc"
- proto = ud.parm.get('protocol', 'ocs')
+ proto = ud.parm.get('protocol', 'https')
options = []
config = "-c %s" % self.generate_config(ud, d)
- if ud.revision:
+ if getattr(ud, 'revision', ''):
options.append("-r %s" % ud.revision)
coroot = self._strip_leading_slashes(ud.path)
if command == "fetch":
- osccmd = "%s %s co %s/%s %s" % (basecmd, config, coroot, ud.module, " ".join(options))
+ osccmd = "%s %s -A %s://%s co %s/%s %s" % (basecmd, config, proto, ud.host, coroot, ud.module, " ".join(options))
elif command == "update":
- osccmd = "%s %s up %s" % (basecmd, config, " ".join(options))
+ osccmd = "%s %s -A %s://%s up %s" % (basecmd, config, proto, ud.host, " ".join(options))
+ elif command == "api_source":
+ osccmd = "%s %s -A %s://%s api source/%s/%s" % (basecmd, config, proto, ud.host, coroot, ud.module)
else:
raise FetchError("Invalid osc command %s" % command, ud.url)
return osccmd
+ def _latest_revision(self, ud, d, name):
+ """
+ Fetch latest revision for the given package
+ """
+ api_source_cmd = self._buildosccommand(ud, d, "api_source")
+
+ output = runfetchcmd(api_source_cmd, d)
+ match = re.match(r'<directory ?.* rev="(\d+)".*>', output)
+ if match is None:
+ raise FetchError("Unable to parse osc response", ud.url)
+ return match.groups()[0]
+
+ def _revision_key(self, ud, d, name):
+ """
+ Return a unique key for the url
+ """
+ # Collapse adjacent slashes
+ slash_re = re.compile(r"/+")
+ rev = getattr(ud, 'revision', "latest")
+ return "osc:%s%s.%s.%s" % (ud.host, slash_re.sub(".", ud.path), name, rev)
+
def download(self, ud, d):
"""
Fetch url
@@ -86,7 +111,7 @@ class Osc(FetchMethod):
logger.debug2("Fetch: checking for module directory '" + ud.moddir + "'")
- if os.access(os.path.join(d.getVar('OSCDIR'), ud.path, ud.module), os.R_OK):
+ if os.access(ud.moddir, os.R_OK):
oscupdatecmd = self._buildosccommand(ud, d, "update")
logger.info("Update "+ ud.url)
# update sources there
@@ -114,20 +139,23 @@ class Osc(FetchMethod):
Generate a .oscrc to be used for this run.
"""
- config_path = os.path.join(d.getVar('OSCDIR'), "oscrc")
+ config_path = os.path.join(ud.oscdir, "oscrc")
+ if not os.path.exists(ud.oscdir):
+ bb.utils.mkdirhier(ud.oscdir)
+
if (os.path.exists(config_path)):
os.remove(config_path)
f = open(config_path, 'w')
+ proto = ud.parm.get('protocol', 'https')
f.write("[general]\n")
- f.write("apisrv = %s\n" % ud.host)
- f.write("scheme = http\n")
+ f.write("apiurl = %s://%s\n" % (proto, ud.host))
f.write("su-wrapper = su -c\n")
f.write("build-root = %s\n" % d.getVar('WORKDIR'))
f.write("urllist = %s\n" % d.getVar("OSCURLLIST"))
f.write("extra-pkgs = gzip\n")
f.write("\n")
- f.write("[%s]\n" % ud.host)
+ f.write("[%s://%s]\n" % (proto, ud.host))
f.write("user = %s\n" % ud.parm["user"])
f.write("pass = %s\n" % ud.parm["pswd"])
f.close()
diff --git a/poky/bitbake/lib/bb/siggen.py b/poky/bitbake/lib/bb/siggen.py
index 9fa568f614..08eca7860e 100644
--- a/poky/bitbake/lib/bb/siggen.py
+++ b/poky/bitbake/lib/bb/siggen.py
@@ -1026,6 +1026,7 @@ def compare_sigfiles(a, b, recursecb=None, color=False, collapsed=False):
# If a dependent hash changed, might as well print the line above and then defer to the changes in
# that hash since in all likelyhood, they're the same changes this task also saw.
output = [output[-1]] + recout
+ break
a_taint = a_data.get('taint', None)
b_taint = b_data.get('taint', None)
diff --git a/poky/documentation/Makefile b/poky/documentation/Makefile
index 33bbca0bab..9fb6814c8f 100644
--- a/poky/documentation/Makefile
+++ b/poky/documentation/Makefile
@@ -47,9 +47,11 @@ clean:
@rm -rf $(BUILDDIR) $(PNGs) $(PDFs) poky.yaml sphinx-static/switchers.js
epub: $(PNGs)
+ $(SOURCEDIR)/set_versions.py
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
latexpdf: $(PDFs)
+ $(SOURCEDIR)/set_versions.py
@$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
all: html epub latexpdf
diff --git a/poky/documentation/brief-yoctoprojectqs/index.rst b/poky/documentation/brief-yoctoprojectqs/index.rst
index 12cab1db76..7179f25022 100644
--- a/poky/documentation/brief-yoctoprojectqs/index.rst
+++ b/poky/documentation/brief-yoctoprojectqs/index.rst
@@ -424,9 +424,9 @@ information including the website, wiki pages, and user manuals:
development documentation, and access to a rich Yocto Project
Development Community into which you can tap.
-- **Video Seminar:** The `Introduction to the Yocto Project and Bitbake, Part 1
+- **Video Seminar:** The `Introduction to the Yocto Project and BitBake, Part 1
<https://youtu.be/yuE7my3KOpo>`__ and
- `Introduction to the Yocto Project and Bitbake, Part 2
+ `Introduction to the Yocto Project and BitBake, Part 2
<https://youtu.be/iZ05TTyzGHk>`__ videos offer a video seminar
introducing you to the most important aspects of developing a
custom embedded Linux distribution with the Yocto Project.
diff --git a/poky/documentation/bsp-guide/bsp.rst b/poky/documentation/bsp-guide/bsp.rst
index 8ec7f2957e..280b160807 100644
--- a/poky/documentation/bsp-guide/bsp.rst
+++ b/poky/documentation/bsp-guide/bsp.rst
@@ -725,6 +725,7 @@ workflow.
.. image:: figures/bsp-dev-flow.png
:align: center
+ :width: 70%
#. *Set up Your Host Development System to Support Development Using the
Yocto Project*: See the ":ref:`dev-manual/start:preparing the build host`"
diff --git a/poky/documentation/conf.py b/poky/documentation/conf.py
index a7cdf415f8..baf550e3e3 100644
--- a/poky/documentation/conf.py
+++ b/poky/documentation/conf.py
@@ -19,7 +19,7 @@ try:
import yaml
except ImportError:
sys.stderr.write("The Yocto Project Sphinx documentation requires PyYAML.\
- \nPlease make sure to install pyyaml python package.\n")
+ \nPlease make sure to install pyyaml Python package.\n")
sys.exit(1)
# current_version = "dev"
@@ -108,7 +108,7 @@ extlinks = {
'oe_layer': ('https://layers.openembedded.org/layerindex/branch/master/layer%s', None),
}
-# Intersphinx config to use cross reference with Bitbake user manual
+# Intersphinx config to use cross reference with BitBake user manual
intersphinx_mapping = {
'bitbake': ('https://docs.yoctoproject.org/bitbake/' + bitbake_version, None)
}
@@ -129,7 +129,7 @@ try:
}
except ImportError:
sys.stderr.write("The Sphinx sphinx_rtd_theme HTML theme was not found.\
- \nPlease make sure to install the sphinx_rtd_theme python package.\n")
+ \nPlease make sure to install the sphinx_rtd_theme Python package.\n")
sys.exit(1)
html_logo = 'sphinx-static/YoctoProject_Logo_RGB.jpg'
diff --git a/poky/documentation/dev-manual/common-tasks.rst b/poky/documentation/dev-manual/common-tasks.rst
index b228c75aab..ca6d594386 100644
--- a/poky/documentation/dev-manual/common-tasks.rst
+++ b/poky/documentation/dev-manual/common-tasks.rst
@@ -1125,6 +1125,7 @@ The remainder of the section provides details for the steps.
.. image:: figures/recipe-workflow.png
:align: center
+ :width: 50%
Locate or Automatically Create a Base Recipe
--------------------------------------------
@@ -3618,7 +3619,7 @@ Yocto Project Overview and Concepts Manual.
The following figure and list overviews the build process:
.. image:: figures/bitbake-build-flow.png
- :align: center
+ :width: 100%
1. *Set up Your Host Development System to Support Development Using the
Yocto Project*: See the ":doc:`start`" section for options on how to get a
@@ -3736,6 +3737,7 @@ Follow these steps to set up and execute multiple configuration builds:
.. image:: figures/multiconfig_files.png
:align: center
+ :width: 50%
The reason for this required file hierarchy is because the :term:`BBPATH`
variable is not constructed until the layers are parsed.
@@ -4826,7 +4828,7 @@ configuration would be as follows::
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "x86"
- IMAGE_INSTALL:append = "lib32-glib-2.0"
+ IMAGE_INSTALL:append = " lib32-glib-2.0"
This example enables an additional library named
``lib32`` alongside the normal target packages. When combining these
@@ -5392,7 +5394,7 @@ create the properly partitioned image.
The ``wic`` command generates partitioned images from existing
OpenEmbedded build artifacts. Image generation is driven by partitioning
-commands contained in an Openembedded kickstart file (``.wks``)
+commands contained in an OpenEmbedded kickstart file (``.wks``)
specified either directly on the command line or as one of a selection
of canned kickstart files as shown with the ``wic list images`` command
in the
@@ -5464,7 +5466,7 @@ system needs to meet the following requirements:
- You need to have the build artifacts already available, which
typically means that you must have already created an image using the
- Openembedded build system (e.g. ``core-image-minimal``). While it
+ OpenEmbedded build system (e.g. ``core-image-minimal``). While it
might seem redundant to generate an image in order to create an image
using Wic, the current version of Wic requires the artifacts in the
form generated by the OpenEmbedded build system.
@@ -5479,7 +5481,9 @@ system needs to meet the following requirements:
variable.
- Include the name of the :ref:`wic kickstart file <openembedded-kickstart-wks-reference>`
- as part of the :term:`WKS_FILE` variable
+ as part of the :term:`WKS_FILE` variable. If multiple candidate files can
+ be provided by different layers, specify all the possible names through the
+ :term:`WKS_FILES` variable instead.
Getting Help
------------
@@ -5546,7 +5550,7 @@ Operational Modes
-----------------
You can use Wic in two different modes, depending on how much control
-you need for specifying the Openembedded build artifacts that are used
+you need for specifying the OpenEmbedded build artifacts that are used
for creating the image: Raw and Cooked:
- *Raw Mode:* You explicitly specify build artifacts through Wic
@@ -5880,7 +5884,7 @@ Directory onto a USB stick, or whatever media for which you built your
image, and boot from the media. You can write the image by using
``bmaptool`` or ``dd``::
- $ oe-run-native bmaptool copy mkefidisk-201804191017-sda.direct /dev/sdX
+ $ oe-run-native bmap-tools-native bmaptool copy mkefidisk-201804191017-sda.direct /dev/sdX
or ::
@@ -6432,10 +6436,10 @@ files (i.e. ``local.conf`` and ``bblayers.conf``) that are created in a
new build directory.
The OpenEmbedded build system uses the environment variable
-``TEMPLATECONF`` to locate the directory from which it gathers
+:term:`TEMPLATECONF` to locate the directory from which it gathers
configuration information that ultimately ends up in the
:term:`Build Directory` ``conf`` directory.
-By default, ``TEMPLATECONF`` is set as follows in the ``poky``
+By default, :term:`TEMPLATECONF` is set as follows in the ``poky``
repository::
TEMPLATECONF=${TEMPLATECONF:-meta-poky/conf}
@@ -6450,7 +6454,7 @@ list of BitBake targets when running the setup script.
To override these default configuration files with configurations you
want used within every new Build Directory, simply set the
-``TEMPLATECONF`` variable to your directory. The ``TEMPLATECONF``
+:term:`TEMPLATECONF` variable to your directory. The :term:`TEMPLATECONF`
variable is set in the ``.templateconf`` file, which is in the top-level
:term:`Source Directory` folder
(e.g. ``poky``). Edit the ``.templateconf`` so that it can locate your
@@ -6490,7 +6494,7 @@ either of the setup scripts::
Changing the listed common targets is as easy as editing your version of
``conf-notes.txt`` in your custom template configuration directory and
-making sure you have ``TEMPLATECONF`` set to your directory.
+making sure you have :term:`TEMPLATECONF` set to your directory.
Conserving Disk Space
=====================
@@ -7691,7 +7695,7 @@ On a browser,
go to ``http://192.168.7.2:3000`` and you see the following:
.. image:: figures/cute-files-npm-example.png
- :align: center
+ :width: 100%
You can find the recipe in ``workspace/recipes/cute-files``. You can use
the recipe in any layer you choose.
@@ -8215,6 +8219,7 @@ variable. Here is an example abbreviated listing:
.. image:: figures/buildhistory.png
:align: center
+ :width: 50%
At the top level, there is a ``metadata-revs`` file that lists the
revisions of the repositories for the enabled layers when the build was
@@ -8555,7 +8560,7 @@ instruction in the ``README`` file
Here is a sample screenshot of the interface:
.. image:: figures/buildhistory-web.png
- :align: center
+ :width: 100%
Performing Automated Runtime Testing
====================================
@@ -9214,7 +9219,7 @@ section:
to run specific tasks in the build chain. It can be useful to run
tasks "out-of-order" when trying isolate build issues.
-- ":ref:`dev-manual/common-tasks:general bitbake problems`" describes how
+- ":ref:`dev-manual/common-tasks:general BitBake problems`" describes how
to use BitBake's ``-D`` debug output option to reveal more about what
BitBake is doing during the build.
@@ -9409,7 +9414,7 @@ format and can be converted to images (e.g. using the ``dot`` tool from
- DOT files use a plain text format. The graphs generated using the
``bitbake -g`` command are often so large as to be difficult to
- read without special pruning (e.g. with Bitbake's ``-I`` option)
+ read without special pruning (e.g. with BitBake's ``-I`` option)
and processing. Despite the form and size of the graphs, the
corresponding ``.dot`` files can still be possible to read and
provide useful information.
@@ -10177,10 +10182,9 @@ debugger.
2. *Configure the system to include gdbserver in the target filesystem:*
- Make the following addition in either your ``local.conf`` file or in
- an image recipe::
+ Make the following addition in your ``local.conf`` file::
- IMAGE_INSTALL:append = " gdbserver"
+ EXTRA_IMAGE_FEATURES:append = " tools-debug"
The change makes
sure the ``gdbserver`` package is included.
@@ -10227,14 +10231,14 @@ debugger.
$ mkdir debugfs
$ cd debugfs
- $ tar xvfj build-dir/tmp-glibc/deploy/images/machine/image.rootfs.tar.bz2
- $ tar xvfj build-dir/tmp-glibc/deploy/images/machine/image-dbg.rootfs.tar.bz2
+ $ tar xvfj build-dir/tmp/deploy/images/machine/image.rootfs.tar.bz2
+ $ tar xvfj build-dir/tmp/deploy/images/machine/image-dbg.rootfs.tar.bz2
5. *Set up GDB:*
Install the SDK (if you built one) and then source the correct
environment file. Sourcing the environment file puts the SDK in your
- ``PATH`` environment variable.
+ ``PATH`` environment variable and sets ``$GDB`` to the SDK's debugger.
If you are using the build system, Gdb is located in
`build-dir`\ ``/tmp/sysroots/``\ `host`\ ``/usr/bin/``\ `architecture`\ ``/``\ `architecture`\ ``-gdb``
@@ -10313,24 +10317,20 @@ debug on the target hardware.
To support this kind of debugging, you need do the following:
-- Ensure that GDB is on the target. You can do this by adding "gdb" to
- :term:`IMAGE_INSTALL`::
-
- IMAGE_INSTALL:append = " gdb"
-
- Alternatively, you can add "tools-debug" to :term:`IMAGE_FEATURES`::
+- Ensure that GDB is on the target. You can do this by making
+ the following addition to your ``local.conf`` file::
- IMAGE_FEATURES:append = " tools-debug"
+ EXTRA_IMAGE_FEATURES:append = " tools-debug"
-- Ensure that debug symbols are present. You can make sure these
- symbols are present by installing ``-dbg``::
+- Ensure that debug symbols are present. You can do so by adding the
+ corresponding ``-dbg`` package to :term:`IMAGE_INSTALL`::
- IMAGE_INSTALL:append = "packagename-dbg"
+ IMAGE_INSTALL:append = " packagename-dbg"
- Alternatively, you can do the following to include
+ Alternatively, you can add the following to ``local.conf`` to include
all the debug symbols::
- IMAGE_FEATURES:append = " dbg-pkgs"
+ EXTRA_IMAGE_FEATURES:append = " dbg-pkgs"
.. note::
@@ -10565,7 +10565,7 @@ used testing branches for OpenEmbedded-Core are as follows:
- *poky "master-next" branch:* This branch is part of the
:yocto_git:`poky </poky/>` repository and combines proposed
- changes to bitbake, the core metadata and the poky distro.
+ changes to BitBake, the core metadata and the poky distro.
Similarly, stable branches maintained by the project may have corresponding
``-next`` branches which collect proposed changes. For example,
@@ -11442,7 +11442,7 @@ this function, you have to follow the following steps:
Please choose one that you want to use and enable the spdx task. You have to
add some config options in ``local.conf`` file in your :term:`Build
Directory`. Here is an example showing how to generate spdx files
- during bitbake using the fossology-python.bbclass::
+ during BitBake using the fossology-python.bbclass::
# Select fossology-python.bbclass.
INHERIT += "fossology-python"
diff --git a/poky/documentation/dev-manual/start.rst b/poky/documentation/dev-manual/start.rst
index 96fabac1aa..8cf3ebe316 100644
--- a/poky/documentation/dev-manual/start.rst
+++ b/poky/documentation/dev-manual/start.rst
@@ -496,7 +496,7 @@ your Yocto Project build host:
6. *Optimize your WSLv2 storage often:* Due to the way storage is
handled on WSLv2, the storage space used by the undelying Linux
- distribution is not reflected immedately, and since bitbake heavily
+ distribution is not reflected immedately, and since BitBake heavily
uses storage, after several builds, you may be unaware you are
running out of space. WSLv2 uses a VHDX file for storage, this issue
can be easily avoided by manually optimizing this file often, this
diff --git a/poky/documentation/kernel-dev/common.rst b/poky/documentation/kernel-dev/common.rst
index a5dd02ccf2..dc3345a520 100644
--- a/poky/documentation/kernel-dev/common.rst
+++ b/poky/documentation/kernel-dev/common.rst
@@ -1062,7 +1062,7 @@ Section.
contents::
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
- SRC_URI:append = "file://0001-calibrate.c-Added-some-printk-statements.patch"
+ SRC_URI:append = " file://0001-calibrate.c-Added-some-printk-statements.patch"
The :term:`FILESEXTRAPATHS` and :term:`SRC_URI` statements
enable the OpenEmbedded build system to find the patch file.
@@ -1560,7 +1560,7 @@ source directory. Follow these steps to clean up the version string:
on building the kernel image when using ``devtool``, see the
":ref:`kernel-dev/common:using \`\`devtool\`\` to patch the kernel`"
section. For
- information on building the kernel image when using Bitbake, see the
+ information on building the kernel image when using BitBake, see the
":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`"
section.
diff --git a/poky/documentation/kernel-dev/concepts-appx.rst b/poky/documentation/kernel-dev/concepts-appx.rst
index 910318e0f9..b3a2f3abbf 100644
--- a/poky/documentation/kernel-dev/concepts-appx.rst
+++ b/poky/documentation/kernel-dev/concepts-appx.rst
@@ -221,7 +221,7 @@ the line-by-line code ``diff`` level is now a trivial operation.
The following illustration shows the conceptual Yocto Linux kernel.
.. image:: figures/kernel-architecture-overview.png
- :align: center
+ :width: 100%
In the illustration, the "Kernel.org Branch Point" marks the specific
spot (or Linux kernel release) from which the Yocto Linux kernel is
@@ -318,12 +318,13 @@ tree specific to your kernel from which to generate the new kernel
image.
The following figure shows the temporary file structure created on your
-host system when you build the kernel using Bitbake. This
+host system when you build the kernel using BitBake. This
:term:`Build Directory` contains all the
source files used during the build.
.. image:: figures/kernel-overview-2-generic.png
:align: center
+ :width: 70%
Again, for additional information on the Yocto Project kernel's
architecture and its branching strategy, see the
diff --git a/poky/documentation/kernel-dev/intro.rst b/poky/documentation/kernel-dev/intro.rst
index e406f6e47f..b9ce7f241c 100644
--- a/poky/documentation/kernel-dev/intro.rst
+++ b/poky/documentation/kernel-dev/intro.rst
@@ -106,7 +106,7 @@ modification workflow. The illustration and accompanying list provide
general information and references for further information.
.. image:: figures/kernel-dev-flow.png
- :align: center
+ :width: 100%
1. *Set up Your Host Development System to Support Development Using the
Yocto Project*: See the ":doc:`/dev-manual/start`" section in
diff --git a/poky/documentation/migration-guides/migration-2.2.rst b/poky/documentation/migration-guides/migration-2.2.rst
index 10aa2d0684..fe7bc2cf55 100644
--- a/poky/documentation/migration-guides/migration-2.2.rst
+++ b/poky/documentation/migration-guides/migration-2.2.rst
@@ -70,7 +70,7 @@ Metadata Must Now Use Python 3 Syntax
The metadata is now required to use Python 3 syntax. For help preparing
metadata, see any of the many Python 3 porting guides available.
-Alternatively, you can reference the conversion commits for Bitbake and
+Alternatively, you can reference the conversion commits for BitBake and
you can use :term:`OpenEmbedded-Core (OE-Core)` as a guide for changes. Following are
particular areas of interest:
diff --git a/poky/documentation/migration-guides/migration-2.7.rst b/poky/documentation/migration-guides/migration-2.7.rst
index ae70353bf7..1b8f1ce1bb 100644
--- a/poky/documentation/migration-guides/migration-2.7.rst
+++ b/poky/documentation/migration-guides/migration-2.7.rst
@@ -15,7 +15,7 @@ The following changes have been made to BitBake:
functions (e.g. ``def funcname:``) in the metadata for tab
indentation. If found, BitBake produces a warning.
-- Bitbake now checks
+- BitBake now checks
:term:`BBFILE_COLLECTIONS` for duplicate
entries and triggers an error if any are found.
diff --git a/poky/documentation/migration-guides/migration-3.0.rst b/poky/documentation/migration-guides/migration-3.0.rst
index 50d6758e71..1219edf921 100644
--- a/poky/documentation/migration-guides/migration-3.0.rst
+++ b/poky/documentation/migration-guides/migration-3.0.rst
@@ -152,7 +152,7 @@ by ``CVE_CHECK_WHITELIST`` (replaced by :term:`CVE_CHECK_IGNORE` in version 3.5)
.. _migration-3.0-bitbake-changes:
-Bitbake Changes
+BitBake Changes
---------------
The following BitBake changes have occurred.
diff --git a/poky/documentation/migration-guides/migration-3.2.rst b/poky/documentation/migration-guides/migration-3.2.rst
index d593effe97..a376eced52 100644
--- a/poky/documentation/migration-guides/migration-3.2.rst
+++ b/poky/documentation/migration-guides/migration-3.2.rst
@@ -86,7 +86,7 @@ value to be explicitly prepended to package names being added as
dependencies (e.g. in :term:`RDEPENDS` and :term:`RRECOMMENDS` values)
where the dependency is conditionally added.
-If you have anonymous python or in-line python conditionally adding
+If you have anonymous Python or in-line Python conditionally adding
dependencies in your custom recipes, and you intend for those recipes to
work with multilib, then you will need to ensure that ``${MLPREFIX}``
is prefixed on the package names in the dependencies, for example
@@ -149,7 +149,7 @@ the upstream documentation for ``dhcpcd`` and ``kea`` for further details.
Packaging changes
-----------------
-- ``python3``: the ``urllib`` python package has now moved into the core package, as it is used more commonly than just netclient (e.g. email, xml, mimetypes, pydoc). In addition, the ``pathlib`` module is now also part of the core package.
+- ``python3``: the ``urllib`` Python package has now moved into the core package, as it is used more commonly than just netclient (e.g. email, xml, mimetypes, pydoc). In addition, the ``pathlib`` module is now also part of the core package.
- ``iptables``: ``iptables-apply`` and ``ip6tables-apply`` have been split out to their own package to avoid a bash dependency in the main ``iptables`` package
@@ -283,7 +283,7 @@ Image artifact name variables now centralised in image-artifact-names class
---------------------------------------------------------------------------
The defaults for the following image artifact name variables have been moved
-from bitbake.conf to a new ``image-artifact-names`` class:
+from ``bitbake.conf`` to a new ``image-artifact-names`` class:
- :term:`IMAGE_BASENAME`
- :term:`IMAGE_LINK_NAME`
diff --git a/poky/documentation/migration-guides/migration-3.3.rst b/poky/documentation/migration-guides/migration-3.3.rst
index 1eb494c286..22562dacd4 100644
--- a/poky/documentation/migration-guides/migration-3.3.rst
+++ b/poky/documentation/migration-guides/migration-3.3.rst
@@ -76,7 +76,7 @@ Some example recipes where this change has been made: ``gpgme``, ``libcap-ng``,
.. _migration-3.3-distutils-path:
-``setup.py`` path for python modules
+``setup.py`` path for Python modules
------------------------------------
In a Python module, sometimes ``setup.py`` can be buried deep in the
@@ -133,7 +133,7 @@ unless you want to take advantage of the improved granularity:
- ``procps``: split ``ps`` and ``sysctl`` into their own packages
- ``rpm``: split build and extra functionality into separate packages
- ``sudo``: split ``sudo`` binary into ``sudo-sudo`` and libs into ``sudo-lib``
-- ``systemtap``: examples, python scripts and runtime material split out
+- ``systemtap``: examples, Python scripts and runtime material split out
- ``util-linux``: ``libuuid`` has been split out to its own
``util-linux-libuuid`` recipe (and corresponding packages) to avoid circular
dependencies if ``libgcrypt`` support is enabled in ``util-linux``.
diff --git a/poky/documentation/migration-guides/migration-3.4.rst b/poky/documentation/migration-guides/migration-3.4.rst
index d57c955eb4..8db43a1454 100644
--- a/poky/documentation/migration-guides/migration-3.4.rst
+++ b/poky/documentation/migration-guides/migration-3.4.rst
@@ -233,7 +233,7 @@ Image / SDK generation changes
Miscellaneous
~~~~~~~~~~~~~
-- Certificates are now properly checked when bitbake fetches sources
+- Certificates are now properly checked when BitBake fetches sources
over HTTPS. If you receive errors as a result for your custom recipes,
you will need to use a mirror or address the issue with the operators
of the server in question.
diff --git a/poky/documentation/migration-guides/release-3.4.rst b/poky/documentation/migration-guides/release-3.4.rst
index 81476c4adb..66023108c7 100644
--- a/poky/documentation/migration-guides/release-3.4.rst
+++ b/poky/documentation/migration-guides/release-3.4.rst
@@ -7,4 +7,6 @@ Release 3.4 (honister)
release-notes-3.4
release-notes-3.4.1
release-notes-3.4.2
+ release-notes-3.4.3
+ release-notes-3.4.4
diff --git a/poky/documentation/migration-guides/release-notes-3.4.1.rst b/poky/documentation/migration-guides/release-notes-3.4.1.rst
index b122887661..0503f29b2c 100644
--- a/poky/documentation/migration-guides/release-notes-3.4.1.rst
+++ b/poky/documentation/migration-guides/release-notes-3.4.1.rst
@@ -46,7 +46,7 @@ Fixes in 3.4.1
- bitbake: tests/fetch: Update pcre.org address after github changes
- bitbake: tests/runqueue: Ensure hashserv exits before deleting files
- bitbake: utils: Handle lockfile filenames that are too long for filesystems
-- bootchart2: Don't compile python modules
+- bootchart2: Don't compile Python modules
- build-appliance-image: Update to honister head revision
- buildhistory: Fix package output files for SDKs
- busybox: 1.34.0 -> 1.34.1
diff --git a/poky/documentation/migration-guides/release-notes-3.4.3.rst b/poky/documentation/migration-guides/release-notes-3.4.3.rst
new file mode 100644
index 0000000000..5e118d9b02
--- /dev/null
+++ b/poky/documentation/migration-guides/release-notes-3.4.3.rst
@@ -0,0 +1,197 @@
+Release notes for 3.4.3 (honister)
+----------------------------------
+
+Security Fixes in 3.4.3
+~~~~~~~~~~~~~~~~~~~~~~~
+
+- ghostscript: fix :cve:`2021-3781`
+- ghostscript: fix :cve:`2021-45949`
+- tiff: Add backports for two CVEs from upstream (:cve:`2022-0561` & :cve:`2022-0562`)
+- gcc : Fix :cve:`2021-46195`
+- virglrenderer: fix `CVE-2022-0135 <https://security-tracker.debian.org/tracker/CVE-2022-0135>`__ and `CVE-2022-0175 <https://security-tracker.debian.org/tracker/CVE-2022-0175>`__
+- binutils: Add fix for :cve:`2021-45078`
+
+
+Fixes in 3.4.3
+~~~~~~~~~~~~~~
+
+- Revert "cve-check: add lockfile to task"
+- asciidoc: update git repository
+- bitbake: build: Tweak exception handling for setscene tasks
+- bitbake: contrib: Fix hash server Dockerfile dependencies
+- bitbake: cooker: Improve parsing failure from handled exception usability
+- bitbake: data_smart: Fix overrides file/line message additions
+- bitbake: fetch2: ssh: username and password are optional
+- bitbake: tests/fetch: Handle upstream master -> main branch change
+- bitbake: utils: Ensure shell function failure in python logging is correct
+- build-appliance-image: Update to honister head revision
+- build-appliance-image: Update to honister head revision
+- coreutils: remove obsolete ignored CVE list
+- crate-fetch: fix setscene failures
+- cups: Add --with-dbusdir to EXTRA_OECONF for deterministic build
+- cve-check: create directory of CVE_CHECK_MANIFEST before copy
+- cve-check: get_cve_info should open the database read-only
+- default-distrovars.inc: Switch connectivity check to a yoctoproject.org page
+- depmodwrapper-cross: add config directory option
+- devtool: deploy-target: Remove stripped binaries in pseudo context
+- devtool: explicitly set main or master branches in upgrades when available
+- docs: fix hardcoded link warning messages
+- documentation: conf.py: update for 3.4.2
+- documentation: prepare for 3.4.3 release
+- expat: Upgrade to 2.4.7
+- gcc-target: fix glob to remove gcc-<version> binary
+- gcsections: add nativesdk-cairo to exclude list
+- go: update to 1.16.15
+- gst-devtools: 1.18.5 -> 1.18.6
+- gst-examples: 1.18.5 -> 1.18.6
+- gstreamer1.0-libav: 1.18.5 -> 1.18.6
+- gstreamer1.0-omx: 1.18.5 -> 1.18.6
+- gstreamer1.0-plugins-bad: 1.18.5 -> 1.18.6
+- gstreamer1.0-plugins-base: 1.18.5 -> 1.18.6
+- gstreamer1.0-plugins-good: 1.18.5 -> 1.18.6
+- gstreamer1.0-plugins-ugly: 1.18.5 -> 1.18.6
+- gstreamer1.0-python: 1.18.5 -> 1.18.6
+- gstreamer1.0-rtsp-server: 1.18.5 -> 1.18.6
+- gstreamer1.0-vaapi: 1.18.5 -> 1.18.6
+- gstreamer1.0: 1.18.5 -> 1.18.6
+- harfbuzz: upgrade 2.9.0 -> 2.9.1
+- initramfs-framework: unmount automounts before switch_root
+- kernel-devsrc: do not copy Module.symvers file during install
+- libarchive : update to 3.5.3
+- libpcap: Disable DPDK explicitly
+- libxml-parser-perl: Add missing RDEPENDS
+- linux-firmware: upgrade 20211216 -> 20220209
+- linux-yocto/5.10: Fix ramoops/ftrace
+- linux-yocto/5.10: features/zram: remove CONFIG_ZRAM_DEF_COMP
+- linux-yocto/5.10: fix dssall build error with binutils 2.3.8
+- linux-yocto/5.10: ppc/riscv: fix build with binutils 2.3.8
+- linux-yocto/5.10: update genericx86* machines to v5.10.99
+- linux-yocto/5.10: update to v5.10.103
+- mc: fix build if ncurses have been configured without wide characters
+- oeqa/buildtools: Switch to our webserver instead of example.com
+- patch.py: Prevent git repo reinitialization
+- perl: Improve and update module RPDEPENDS
+- poky.conf: bump version for 3.4.3 honister release
+- qemuboot: Fix build error if UNINATIVE_LOADER is unset
+- quilt: Disable external sendmail for deterministic build
+- recipetool: Fix circular reference in SRC_URI
+- releases: update to include 3.3.5
+- releases: update to include 3.4.2
+- rootfs-postcommands: amend systemd_create_users add user to group check
+- ruby: update 3.0.2 -> 3.0.3
+- scripts/runqemu-ifdown: Don't treat the last iptables command as special
+- sdk: fix search for dynamic loader
+- selftest: recipetool: Correct the URI for socat
+- sstate: inside the threadedpool don't write to the shared localdata
+- uninative: Upgrade to 3.5
+- util-linux: upgrade to 2.37.4
+- vim: Update to 8.2.4524 for further CVE fixes
+- wic: Use custom kernel path if provided
+- wireless-regdb: upgrade 2021.08.28 -> 2022.02.18
+- zip: modify when match.S is built
+
+Contributors to 3.4.3
+~~~~~~~~~~~~~~~~~~~~~
+
+- Alexander Kanavin
+- Anuj Mittal
+- Bill Pittman
+- Bruce Ashfield
+- Chee Yang Lee
+- Christian Eggers
+- Daniel Gomez
+- Daniel Müller
+- Daniel Wagenknecht
+- Florian Amstutz
+- Joe Slater
+- Jose Quaresma
+- Justin Bronder
+- Lee Chee Yang
+- Michael Halstead
+- Michael Opdenacker
+- Oleksandr Ocheretnyi
+- Oleksandr Suvorov
+- Pavel Zhukov
+- Peter Kjellerstedt
+- Richard Purdie
+- Robert Yang
+- Ross Burton
+- Sakib Sajal
+- Saul Wold
+- Sean Anderson
+- Stefan Herbrechtsmeier
+- Tamizharasan Kumar
+- Tean Cunningham
+- Zoltán Böszörményi
+- pgowda
+- wangmy
+
+Repositories / Downloads for 3.4.3
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+poky
+
+- Repository Location: https://git.yoctoproject.org/poky/
+- Branch: :yocto_git:`honister </poky/log/?h=honister>`
+- Tag: `yocto-3.4.3 <https://git.yoctoproject.org/poky/tag/?h=yocto-3.4.3>`__
+- Git Revision: :yocto_git:`ee68ae307fd951b9de6b31dc6713ea29186b7749 </poky/commit/?id=ee68ae307fd951b9de6b31dc6713ea29186b7749>`
+- Release Artefact: poky-ee68ae307fd951b9de6b31dc6713ea29186b7749
+- sha: 92c3d73c3e74f0e1d5c2ab2836ce3a3accbe47772cea70df3755845e0db1379b
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.3/poky-ee68ae307fd951b9de6b31dc6713ea29186b7749.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.3/poky-ee68ae307fd951b9de6b31dc6713ea29186b7749.tar.bz2
+
+openembedded-core
+
+- Repository Location: :oe_git:`/openembedded-core`
+- Branch: :oe_git:`honister </openembedded-core/log/?h=honister>`
+- Tag: :oe_git:`yocto-3.4.3 </openembedded-core/tag/?h=yocto-3.4.3>`
+- Git Revision: :oe_git:`ebca8f3ac9372b7ebb3d39e8f7f930b63b481448 </openembedded-core/commit/?id=ebca8f3ac9372b7ebb3d39e8f7f930b63b481448>`
+- Release Artefact: oecore-ebca8f3ac9372b7ebb3d39e8f7f930b63b481448
+- sha: f28e503f6f6c0bcd9192dbd528f8e3c7bcea504c089117e0094d9a4f315f4b9f
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.3/oecore-ebca8f3ac9372b7ebb3d39e8f7f930b63b481448.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.3/oecore-ebca8f3ac9372b7ebb3d39e8f7f930b63b481448.tar.bz2
+
+meta-mingw
+
+- Repository Location: https://git.yoctoproject.org/meta-mingw
+- Branch: :yocto_git:`honister </meta-mingw/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.3 </meta-mingw/tag/?h=yocto-3.4.3>`
+- Git Revision: :yocto_git:`f5d761cbd5c957e4405c5d40b0c236d263c916a8 </meta-mingw/commit/?id=f5d761cbd5c957e4405c5d40b0c236d263c916a8>`
+- Release Artefact: meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8
+- sha: d4305d638ef80948584526c8ca386a8cf77933dffb8a3b8da98d26a5c40fcc11
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.3/meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.3/meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8.tar.bz2
+
+meta-gplv2
+
+- Repository Location: https://git.yoctoproject.org/meta-gplv2
+- Branch: :yocto_git:`honister </meta-gplv2/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.3 </meta-gplv2/tag/?h=yocto-3.4.3>`
+- Git Revision: :yocto_git:`f04e4369bf9dd3385165281b9fa2ed1043b0e400 </meta-gplv2/commit/?id=f04e4369bf9dd3385165281b9fa2ed1043b0e400>`
+- Release Artefact: meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400
+- sha: ef8e2b1ec1fb43dbee4ff6990ac736315c7bc2d8c8e79249e1d337558657d3fe
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.3/meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.3/meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400.tar.bz2
+
+bitbake
+
+- Repository Location: :oe_git:`/bitbake`
+- Branch: :oe_git:`1.52 </bitbake/log/?h=1.52>`
+- Tag: :oe_git:`yocto-3.4.3 </bitbake/tag/?h=yocto-3.4.3>`
+- Git Revision: :oe_git:`43dcb2b2a2b95a5c959be57bca94fb7190ea6257 </bitbake/commit/?id=43dcb2b2a2b95a5c959be57bca94fb7190ea6257>`
+- Release Artefact: bitbake-43dcb2b2a2b95a5c959be57bca94fb7190ea6257
+- sha: 92497ff97fed81dcc6d3e202969fb63ca983a8f5d9d91cafc6aee88312f79cf9
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.3/bitbake-43dcb2b2a2b95a5c959be57bca94fb7190ea6257.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.3/bitbake-43dcb2b2a2b95a5c959be57bca94fb7190ea6257.tar.bz2
+
+yocto-docs
+
+- Repository Location: https://git.yoctoproject.org/yocto-docs
+- Branch: :yocto_git:`honister </yocto-docs/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.3 </yocto-docs/tag/?h=yocto-3.4.3>`
+- Git Revision: :yocto_git:`15f46f97d9cad558c19fc1dc19cfbe3720271d04 </yocto-docs/commit/?15f46f97d9cad558c19fc1dc19cfbe3720271d04>`
diff --git a/poky/documentation/migration-guides/release-notes-3.4.4.rst b/poky/documentation/migration-guides/release-notes-3.4.4.rst
new file mode 100644
index 0000000000..91beba0062
--- /dev/null
+++ b/poky/documentation/migration-guides/release-notes-3.4.4.rst
@@ -0,0 +1,155 @@
+Release notes for 3.4.4 (honister)
+----------------------------------
+
+Security Fixes in 3.4.4
+~~~~~~~~~~~~~~~~~~~~~~~
+
+- tiff: fix :cve:`2022-0865`, :cve:`2022-0891`, :cve:`2022-0907`, :cve:`2022-0908`, :cve:`2022-0909` and :cve:`2022-0924`
+- xz: fix `CVE-2022-1271 <https://security-tracker.debian.org/tracker/CVE-2022-1271>`__
+- unzip: fix `CVE-2021-4217 <https://security-tracker.debian.org/tracker/CVE-2021-4217>`__
+- zlib: fix :cve:`2018-25032`
+- grub: ignore :cve:`2021-46705`
+
+Fixes in 3.4.4
+~~~~~~~~~~~~~~
+
+- alsa-tools: Ensure we install correctly
+- bitbake.conf: mark all directories as safe for git to read
+- bitbake: knotty: display active tasks when printing keepAlive() message
+- bitbake: knotty: reduce keep-alive timeout from 5000s (83 minutes) to 10 minutes
+- bitbake: server/process: Disable gc around critical section
+- bitbake: server/xmlrpcserver: Add missing xmlrpcclient import
+- bitbake: toaster: Fix IMAGE_INSTALL issues with _append vs :append
+- bitbake: toaster: fixtures replace gatesgarth
+- build-appliance-image: Update to honister head revision
+- conf.py/poky.yaml: Move version information to poky.yaml and read in conf.py
+- conf/machine: fix QEMU x86 sound options
+- devupstream: fix handling of SRC_URI
+- documentation: update for 3.4.4 release
+- externalsrc/devtool: Fix to work with fixed export funcition flags handling
+- gmp: add missing COPYINGv3
+- gnu-config: update SRC_URI
+- libxml2: fix CVE-2022-23308 regression
+- libxml2: move to gitlab.gnome.org
+- libxml2: update to 2.9.13
+- libxshmfence: Correct LICENSE to HPND
+- license_image.bbclass: close package.manifest file
+- linux-firmware: correct license for ar3k firmware
+- linux-firmware: upgrade 20220310 -> 20220411
+- linux-yocto-rt/5.10: update to -rt61
+- linux-yocto/5.10: cfg/debug: add configs for kcsan
+- linux-yocto/5.10: split vtpm for more granular inclusion
+- linux-yocto/5.10: update to v5.10.109
+- linux-yocto: nohz_full boot arg fix
+- oe-pkgdata-util: Adapt to the new variable override syntax
+- oeqa/selftest/devtool: ensure Git username is set before upgrade tests
+- poky.conf: bump version for 3.4.4 release
+- pseudo: Add patch to workaround paths with crazy lengths
+- pseudo: Fix handling of absolute links
+- sanity: Add warning for local hasheqiv server with remote sstate mirrors
+- scripts/runqemu: Fix memory limits for qemux86-64
+- shadow-native: Simplify and fix syslog disable patch
+- tiff: Add marker for CVE-2022-1056 being fixed
+- toaster: Fix broken overrides usage
+- u-boot: Inherit pkgconfig
+- uninative: Upgrade to 3.6 with gcc 12 support
+- vim: Upgrade 8.2.4524 -> 8.2.4681
+- virglrenderer: update SRC_URI
+- webkitgtk: update to 2.32.4
+- wireless-regdb: upgrade 2022.02.18 -> 2022.04.08
+
+Known Issues
+~~~~~~~~~~~~
+
+There were a couple of known autobuilder intermittent bugs that occurred during release testing but these are not regressions in the release.
+
+Contributors to 3.4.4
+~~~~~~~~~~~~~~~~~~~~~
+
+- Alexandre Belloni
+- Anuj Mittal
+- Bruce Ashfield
+- Chee Yang Lee
+- Dmitry Baryshkov
+- Joe Slater
+- Konrad Weihmann
+- Martin Jansa
+- Michael Opdenacker
+- Minjae Kim
+- Peter Kjellerstedt
+- Ralph Siemsen
+- Richard Purdie
+- Ross Burton
+- Tim Orling
+- wangmy
+- zhengruoqin
+
+Repositories / Downloads for 3.4.4
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+poky
+
+- Repository Location: https://git.yoctoproject.org/poky/
+- Branch: :yocto_git:`honister </poky/log/?h=honister>`
+- Tag: `yocto-3.4.4 <https://git.yoctoproject.org/poky/tag/?h=yocto-3.4.4>`__
+- Git Revision: :yocto_git:`780eeec8851950ee6ac07a2a398ba937206bd2e4 </poky/commit/?id=780eeec8851950ee6ac07a2a398ba937206bd2e4>`
+- Release Artefact: poky-780eeec8851950ee6ac07a2a398ba937206bd2e4
+- sha: 09558927064454ec2492da376156b716d9fd14aae57196435d742db7bfdb4b95
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.4/poky-780eeec8851950ee6ac07a2a398ba937206bd2e4.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.4/poky-780eeec8851950ee6ac07a2a398ba937206bd2e4.tar.bz2
+
+openembedded-core
+
+- Repository Location: :oe_git:`/openembedded-core`
+- Branch: :oe_git:`honister </openembedded-core/log/?h=honister>`
+- Tag: :oe_git:`yocto-3.4.4 </openembedded-core/tag/?h=yocto-3.4.4>`
+- Git Revision: :oe_git:`1a6f5e27249afb6fb4d47c523b62b5dd2482a69d </openembedded-core/commit/?id=1a6f5e27249afb6fb4d47c523b62b5dd2482a69d>`
+- Release Artefact: oecore-1a6f5e27249afb6fb4d47c523b62b5dd2482a69d
+- sha: b8354ca457756384139a579b9e51f1ba854013c99add90c0c4c6ef68421fede5
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.4/oecore-1a6f5e27249afb6fb4d47c523b62b5dd2482a69d.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.4/oecore-1a6f5e27249afb6fb4d47c523b62b5dd2482a69d.tar.bz2
+
+meta-mingw
+
+- Repository Location: https://git.yoctoproject.org/meta-mingw
+- Branch: :yocto_git:`honister </meta-mingw/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.4 </meta-mingw/tag/?h=yocto-3.4.4>`
+- Git Revision: :yocto_git:`f5d761cbd5c957e4405c5d40b0c236d263c916a8 </meta-mingw/commit/?id=f5d761cbd5c957e4405c5d40b0c236d263c916a8>`
+- Release Artefact: meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8
+- sha: d4305d638ef80948584526c8ca386a8cf77933dffb8a3b8da98d26a5c40fcc11
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.4/meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8.tar.bz2
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.4/meta-mingw-f5d761cbd5c957e4405c5d40b0c236d263c916a8.tar.bz2
+
+meta-gplv2
+
+- Repository Location: https://git.yoctoproject.org/meta-gplv2
+- Branch: :yocto_git:`honister </meta-gplv2/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.4 </meta-gplv2/tag/?h=yocto-3.4.4>`
+- Git Revision: :yocto_git:`f04e4369bf9dd3385165281b9fa2ed1043b0e400 </meta-gplv2/commit/?id=f04e4369bf9dd3385165281b9fa2ed1043b0e400>`
+- Release Artefact: meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400
+- sha: ef8e2b1ec1fb43dbee4ff6990ac736315c7bc2d8c8e79249e1d337558657d3fe
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.4/meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.4/meta-gplv2-f04e4369bf9dd3385165281b9fa2ed1043b0e400.tar.bz2
+
+bitbake
+
+- Repository Location: :oe_git:`/bitbake`
+- Branch: :oe_git:`1.52 </bitbake/log/?h=1.52>`
+- Tag: :oe_git:`yocto-3.4.4 </bitbake/tag/?h=yocto-3.4.3>`
+- Git Revision: :oe_git:`c2d8f9b2137bd4a98eb0f51519493131773e7517 </bitbake/commit/?id=c2d8f9b2137bd4a98eb0f51519493131773e7517>`
+- Release Artefact: bitbake-c2d8f9b2137bd4a98eb0f51519493131773e7517
+- sha: a8b6217f2d63975bbf49f430e11046608023ee2827faa893b15d9a0d702cf833
+- Download Locations:
+ http://downloads.yoctoproject.org/releases/yocto/yocto-3.4.4/bitbake-c2d8f9b2137bd4a98eb0f51519493131773e7517.tar.bz2,
+ http://mirrors.kernel.org/yocto/yocto/yocto-3.4.4/bitbake-c2d8f9b2137bd4a98eb0f51519493131773e7517.tar.bz2
+
+yocto-docs
+
+- Repository Location: https://git.yoctoproject.org/yocto-docs
+- Branch: :yocto_git:`honister </yocto-docs/log/?h=honister>`
+- Tag: :yocto_git:`yocto-3.4.4 </yocto-docs/tag/?h=yocto-3.4.4>`
+- Git Revision: :yocto_git:`5ead7d39aaf9044078dff27f462e29a8e31d89e4 </yocto-docs/commit/?5ead7d39aaf9044078dff27f462e29a8e31d89e4>`
diff --git a/poky/documentation/overview-manual/concepts.rst b/poky/documentation/overview-manual/concepts.rst
index 6c341976f9..016577e07e 100644
--- a/poky/documentation/overview-manual/concepts.rst
+++ b/poky/documentation/overview-manual/concepts.rst
@@ -166,7 +166,7 @@ remainder of this section expands on the fundamental input, output,
process, and metadata logical blocks that make up the workflow.
.. image:: figures/YP-flow-diagram.png
- :align: center
+ :width: 100%
In general, the build's workflow consists of several functional areas:
@@ -209,7 +209,7 @@ Configuration" box of the :ref:`general workflow
figure <overview-manual/concepts:openembedded build system concepts>`:
.. image:: figures/user-configuration.png
- :align: center
+ :width: 100%
BitBake needs some basic configuration files in order to complete a
build. These files are ``*.conf`` files. The minimally necessary ones
@@ -313,7 +313,7 @@ section in the Yocto Project Development Tasks Manual.
The files ``site.conf`` and ``auto.conf`` are not created by the
environment initialization script. If you want the ``site.conf`` file,
-you need to create that yourself. The ``auto.conf`` file is typically
+you need to create it yourself. The ``auto.conf`` file is typically
created by an autobuilder:
- *site.conf:* You can use the ``conf/site.conf`` configuration
@@ -321,17 +321,7 @@ created by an autobuilder:
you had several build environments and they shared some common
features. You can set these default build properties here. A good
example is perhaps the packaging format to use through the
- :term:`PACKAGE_CLASSES`
- variable.
-
- One useful scenario for using the ``conf/site.conf`` file is to
- extend your :term:`BBPATH` variable
- to include the path to a ``conf/site.conf``. Then, when BitBake looks
- for Metadata using :term:`BBPATH`, it finds the ``conf/site.conf`` file
- and applies your common configurations found in the file. To override
- configurations in a particular build directory, alter the similar
- configurations within that build directory's ``conf/local.conf``
- file.
+ :term:`PACKAGE_CLASSES` variable.
- *auto.conf:* The file is usually created and written to by an
autobuilder. The settings put into the file are typically the same as
@@ -401,6 +391,7 @@ layers from the :ref:`general workflow figure
.. image:: figures/layer-input.png
:align: center
+ :width: 70%
In general, all layers have a similar structure. They all contain a
licensing file (e.g. ``COPYING.MIT``) if the layer is to be distributed,
@@ -551,6 +542,7 @@ area of the :ref:`general workflow figure <overview-manual/concepts:openembedded
.. image:: figures/source-input.png
:align: center
+ :width: 70%
Upstream Project Releases
~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -629,7 +621,7 @@ This section looks a little closer into the package feeds area used by
the build system. Here is a more detailed look at the area:
.. image:: figures/package-feeds.png
- :align: center
+ :width: 100%
Package feeds are an intermediary step in the build process. The
OpenEmbedded build system provides classes to generate different package
@@ -702,7 +694,7 @@ The first stages of building a recipe are to fetch and unpack the source
code:
.. image:: figures/source-fetching.png
- :align: center
+ :width: 100%
The :ref:`ref-tasks-fetch` and
:ref:`ref-tasks-unpack` tasks fetch
@@ -790,7 +782,7 @@ Once source code is fetched and unpacked, BitBake locates patch files
and applies them to the source files:
.. image:: figures/patching.png
- :align: center
+ :width: 100%
The :ref:`ref-tasks-patch` task uses a
recipe's :term:`SRC_URI` statements
@@ -831,7 +823,7 @@ compile the source code. Once compilation occurs, the files are copied
to a holding area (staged) in preparation for packaging:
.. image:: figures/configuration-compile-autoreconf.png
- :align: center
+ :width: 100%
This step in the build process consists of the following tasks:
@@ -889,7 +881,7 @@ After source code is configured, compiled, and staged, the build system
analyzes the results and splits the output into packages:
.. image:: figures/analysis-for-package-splitting.png
- :align: center
+ :width: 100%
The :ref:`ref-tasks-package` and
:ref:`ref-tasks-packagedata`
@@ -968,7 +960,7 @@ Once packages are split and stored in the Package Feeds area, the build
system uses BitBake to generate the root filesystem image:
.. image:: figures/image-generation.png
- :align: center
+ :width: 100%
The image generation process consists of several stages and depends on
several tasks and variables. The
@@ -1086,7 +1078,7 @@ Development Kit (SDK) installer scripts for both the standard SDK and
the extensible SDK (eSDK):
.. image:: figures/sdk-generation.png
- :align: center
+ :width: 100%
.. note::
@@ -1262,6 +1254,7 @@ this output:
.. image:: figures/images.png
:align: center
+ :width: 75%
.. note::
@@ -1321,7 +1314,7 @@ SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK
closer look at this output:
.. image:: figures/sdk.png
- :align: center
+ :width: 100%
The specific form of this output is a set of files that includes a
self-extracting SDK installer (``*.sh``), host and target manifest
@@ -1439,7 +1432,7 @@ The following figure shows a high-level build environment regarding
toolchain construction and use.
.. image:: figures/cross-development-toolchains.png
- :align: center
+ :width: 100%
Most of the work occurs on the Build Host. This is the machine used to
build images and generally work within the the Yocto Project
@@ -2146,7 +2139,7 @@ dependencies, you must manually declare the dependencies.
By default, ``foo-dev`` also has an :term:`RDEPENDS`-style dependency on
``foo``, because the default value of ``RDEPENDS:${PN}-dev`` (set in
- bitbake.conf) includes "${PN}".
+ ``bitbake.conf``) includes "${PN}".
To ensure that the dependency chain is never broken, ``-dev`` and
``-dbg`` packages are always generated by default, even if the
diff --git a/poky/documentation/overview-manual/development-environment.rst b/poky/documentation/overview-manual/development-environment.rst
index e171d7aaa3..f1001e0bd3 100644
--- a/poky/documentation/overview-manual/development-environment.rst
+++ b/poky/documentation/overview-manual/development-environment.rst
@@ -176,7 +176,7 @@ development:
repositories for each of these areas.
.. image:: figures/source-repos.png
- :align: center
+ :width: 100%
For steps on how to view and access these upstream Git repositories,
see the ":ref:`dev-manual/start:accessing source repositories`"
@@ -191,6 +191,7 @@ development:
.. image:: figures/index-downloads.png
:align: center
+ :width: 50%
For steps on how to view and access these files, see the
":ref:`dev-manual/start:accessing index of releases`"
@@ -205,7 +206,7 @@ development:
:yocto_dl:`Index of /releases: </releases>` area.
.. image:: figures/yp-download.png
- :align: center
+ :width: 100%
For steps on how to use the "DOWNLOADS" page, see the
":ref:`dev-manual/start:using the downloads page`"
diff --git a/poky/documentation/overview-manual/yp-intro.rst b/poky/documentation/overview-manual/yp-intro.rst
index e574dfa5b8..a2e0862459 100644
--- a/poky/documentation/overview-manual/yp-intro.rst
+++ b/poky/documentation/overview-manual/yp-intro.rst
@@ -24,7 +24,7 @@ software customizations and build interchange for multiple hardware
platforms as well as software stacks that can be maintained and scaled.
.. image:: figures/key-dev-elements.png
- :align: center
+ :width: 100%
For further introductory information on the Yocto Project, you might be
interested in this
@@ -638,7 +638,7 @@ these items that make up the Poky repository in the
The following figure illustrates what generally comprises Poky:
.. image:: figures/poky-reference-distribution.png
- :align: center
+ :width: 100%
- BitBake is a task executor and scheduler that is the heart of the
OpenEmbedded build system.
@@ -688,8 +688,8 @@ Sato.
One of the most powerful properties of Poky is that every aspect of a
build is controlled by the metadata. You can use metadata to augment
-these base image types by adding metadata
-`layers <overview-manual/yp-intro:the yocto project layer model>` that extend
+these base image types by adding metadata :ref:`layers
+<overview-manual/yp-intro:the yocto project layer model>` that extend
functionality.
These layers can provide, for example, an additional software stack for
an image type, add a board support package (BSP) for additional
@@ -720,7 +720,7 @@ accomplish image and SDK generation. The following figure overviews that
workflow:
.. image:: figures/YP-flow-diagram.png
- :align: center
+ :width: 100%
Following is a brief summary of the "workflow":
diff --git a/poky/documentation/profile-manual/usage.rst b/poky/documentation/profile-manual/usage.rst
index fb1553d70d..0ff9d921fd 100644
--- a/poky/documentation/profile-manual/usage.rst
+++ b/poky/documentation/profile-manual/usage.rst
@@ -197,6 +197,7 @@ in an interactive UI::
.. image:: figures/perf-wget-flat-stripped.png
:align: center
+ :width: 70%
The above screenshot displays a 'flat' profile, one entry for each
'bucket' corresponding to the functions that were profiled during the
@@ -230,6 +231,7 @@ but the entire callchain to the sampled function as well::
.. image:: figures/perf-wget-g-copy-to-user-expanded-stripped.png
:align: center
+ :width: 70%
Using the callgraph view, we can actually see not only which functions
took the most time, but we can also see a summary of how those functions
@@ -266,6 +268,7 @@ busybox.
.. image:: figures/perf-wget-g-copy-from-user-expanded-stripped.png
:align: center
+ :width: 70%
The above screenshot shows the other half of the journey for the data -
from the wget program's userspace buffers to disk. To get the buffers to
@@ -283,6 +286,7 @@ let's expand the first entry containing BusyBox:
.. image:: figures/perf-wget-busybox-expanded-stripped.png
:align: center
+ :width: 70%
Again, before we expanded we saw that the function was labeled with a
hex value instead of a symbol as with most of the kernel entries.
@@ -330,6 +334,7 @@ their functions symbolically:
.. image:: figures/perf-wget-busybox-debuginfo.png
:align: center
+ :width: 70%
If we expand one of the entries and press 'enter' on a leaf node, we're
presented with a menu of actions we can take to get more information
@@ -337,6 +342,7 @@ related to that entry:
.. image:: figures/perf-wget-busybox-dso-zoom-menu.png
:align: center
+ :width: 70%
One of these actions allows us to show a view that displays a
busybox-centric view of the profiled functions (in this case we've also
@@ -344,6 +350,7 @@ expanded all the nodes using the 'E' key):
.. image:: figures/perf-wget-busybox-dso-zoom.png
:align: center
+ :width: 70%
Finally, we can see that now that the BusyBox debuginfo is installed,
the previously unresolved symbol in the ``sys_clock_gettime()`` entry
@@ -354,6 +361,7 @@ function:
.. image:: figures/perf-wget-g-copy-to-user-expanded-debuginfo.png
:align: center
+ :width: 70%
At the lowest level of detail, we can dive down to the assembly level
and see which instructions caused the most overhead in a function.
@@ -362,6 +370,7 @@ with a menu:
.. image:: figures/perf-wget-busybox-annotate-menu.png
:align: center
+ :width: 70%
Selecting 'Annotate udhcpc_main', we get a detailed listing of
percentages by instruction for the udhcpc_main function. From the
@@ -370,6 +379,7 @@ taken up by a couple tests and the move of a constant (1) to a register:
.. image:: figures/perf-wget-busybox-annotate-udhcpc.png
:align: center
+ :width: 70%
As a segue into tracing, let's try another profile using a different
counter, something other than the default 'cycles'.
@@ -593,6 +603,7 @@ and tell perf to do a profile using it as the sampling event::
.. image:: figures/sched-wakeup-profile.png
:align: center
+ :width: 70%
The screenshot above shows the results of running a profile using
sched:sched_switch tracepoint, which shows the relative costs of various
@@ -740,7 +751,7 @@ entry/exit events we recorded::
root@crownbay:~# perf script -g python
generated Python script: perf-script.py
-The skeleton script simply creates a python function for each event type in the
+The skeleton script simply creates a Python function for each event type in the
perf.data file. The body of each function simply prints the event name along
with its parameters. For example:
@@ -859,7 +870,7 @@ goes a little way to support the idea mentioned previously that given
the right kind of trace data, higher-level profiling-type summaries can
be derived from it.
-Documentation on using the `'perf script' python
+Documentation on using the `'perf script' Python
binding <https://linux.die.net/man/1/perf-script-python>`__.
System-Wide Tracing and Profiling
@@ -894,6 +905,7 @@ other processes running on the system as well:
.. image:: figures/perf-systemwide.png
:align: center
+ :width: 70%
In the snapshot above, we can see callchains that originate in libc, and
a callchain from Xorg that demonstrates that we're using a proprietary X
@@ -911,6 +923,7 @@ record a profile::
.. image:: figures/perf-report-cycles-u.png
:align: center
+ :width: 70%
Notice in the screenshot above, we see only userspace entries ([.])
@@ -921,6 +934,7 @@ the entries associated with the libc-xxx.so DSO.
.. image:: figures/perf-systemwide-libc.png
:align: center
+ :width: 70%
We can also use the system-wide -a switch to do system-wide tracing.
Here we'll trace a couple of scheduler events::
@@ -1116,6 +1130,7 @@ callgraphs from starting a few programs during those 30 seconds:
.. image:: figures/perf-probe-do_fork-profile.png
:align: center
+ :width: 70%
.. admonition:: Tying it Together
@@ -1149,7 +1164,7 @@ section can be found here:
- The `'perf script'
manpage <https://linux.die.net/man/1/perf-script>`__.
-- Documentation on using the `'perf script' python
+- Documentation on using the `'perf script' Python
binding <https://linux.die.net/man/1/perf-script-python>`__.
- The top-level `perf(1) manpage <https://linux.die.net/man/1/perf>`__.
@@ -1684,6 +1699,7 @@ events (or even one or more complete subsystems) to trace:
.. image:: figures/kernelshark-choose-events.png
:align: center
+ :width: 70%
Note that these are exactly the same sets of events described in the
previous trace events subsystem section, and in fact is where trace-cmd
@@ -1699,6 +1715,7 @@ will turn into the 'Stop' button after the trace has started):
.. image:: figures/kernelshark-output-display.png
:align: center
+ :width: 70%
Notice that the right-hand pane shows the exact trace-cmd command-line
that's used to run the trace, along with the results of the trace-cmd
@@ -1710,12 +1727,14 @@ detailed event listing below that:
.. image:: figures/kernelshark-i915-display.png
:align: center
+ :width: 70%
Here's another example, this time a display resulting from tracing 'all
events':
.. image:: figures/kernelshark-all.png
:align: center
+ :width: 70%
The tool is pretty self-explanatory, but for more detailed information
on navigating through the data, see the `kernelshark
@@ -1974,6 +1993,7 @@ with profiling data:
.. image:: figures/sysprof-copy-to-user.png
:align: center
+ :width: 70%
The left pane shows a list of functions and processes. Selecting one of
those expands that function in the right pane, showing all its callees.
@@ -1988,6 +2008,7 @@ in the perf display shown in the perf section of this page.
.. image:: figures/sysprof-copy-from-user.png
:align: center
+ :width: 70%
Similarly, the above is a snapshot of the Sysprof display of a
copy-from-user callchain.
@@ -1999,6 +2020,7 @@ left pane. In this case, the lower pane is showing all the callers of
.. image:: figures/sysprof-callers.png
:align: center
+ :width: 70%
Double-clicking on one of those functions will in turn change the focus
to the selected function, and so on.
diff --git a/poky/documentation/ref-manual/devtool-reference.rst b/poky/documentation/ref-manual/devtool-reference.rst
index a1a8bcdc98..10ca70a2b3 100644
--- a/poky/documentation/ref-manual/devtool-reference.rst
+++ b/poky/documentation/ref-manual/devtool-reference.rst
@@ -126,8 +126,7 @@ common working area used across the tool.
The following figure shows the workspace structure:
.. image:: figures/build-workspace-directory.png
- :align: center
- :scale: 70%
+ :scale: 100%
.. code-block:: none
diff --git a/poky/documentation/ref-manual/structure.rst b/poky/documentation/ref-manual/structure.rst
index 262b041ea6..12a085552f 100644
--- a/poky/documentation/ref-manual/structure.rst
+++ b/poky/documentation/ref-manual/structure.rst
@@ -261,7 +261,7 @@ OpenEmbedded build system creates it from ``local.conf.sample`` when you
:ref:`structure-core-script`.
The source ``local.conf.sample`` file used depends on the
-``$TEMPLATECONF`` script variable, which defaults to ``meta-poky/conf/``
+:term:`TEMPLATECONF` script variable, which defaults to ``meta-poky/conf/``
when you are building from the Yocto Project development environment,
and to ``meta/conf/`` when you are building from the OpenEmbedded-Core
environment. Because the script variable points to the source of the
@@ -278,7 +278,7 @@ file, it uses ``sed`` to substitute final
.. note::
- You can see how the ``TEMPLATECONF`` variable is used by looking at the
+ You can see how the :term:`TEMPLATECONF` variable is used by looking at the
``scripts/oe-setup-builddir`` script in the :term:`Source Directory`.
You can find the Yocto Project version of the ``local.conf.sample`` file in
the ``meta-poky/conf`` directory.
@@ -300,7 +300,7 @@ you ``source`` the top-level build environment setup script (i.e.
:ref:`structure-core-script`).
As with the ``local.conf`` file, the source ``bblayers.conf.sample``
-file used depends on the ``$TEMPLATECONF`` script variable, which
+file used depends on the :term:`TEMPLATECONF` script variable, which
defaults to ``meta-poky/conf/`` when you are building from the Yocto
Project development environment, and to ``meta/conf/`` when you are
building from the OpenEmbedded-Core environment. Because the script
@@ -315,7 +315,7 @@ Once the build process gets the sample file, it uses ``sed`` to substitute final
.. note::
- You can see how the ``TEMPLATECONF`` variable ``scripts/oe-setup-builddir``
+ You can see how the :term:`TEMPLATECONF` variable is defined by the ``scripts/oe-setup-builddir``
script in the :term:`Source Directory`. You can find the Yocto Project
version of the ``bblayers.conf.sample`` file in the ``meta-poky/conf/``
directory.
diff --git a/poky/documentation/ref-manual/tasks.rst b/poky/documentation/ref-manual/tasks.rst
index a2b8763e7c..cb08a75c90 100644
--- a/poky/documentation/ref-manual/tasks.rst
+++ b/poky/documentation/ref-manual/tasks.rst
@@ -522,7 +522,7 @@ scratch is guaranteed.
Starts a shell in which an interactive Python interpreter allows you to
interact with the BitBake build environment. From within this shell, you
can directly examine and set bits from the data store and execute
-functions as if within the BitBake environment. See the ":ref:`dev-manual/common-tasks:using a python development shell`" section in
+functions as if within the BitBake environment. See the ":ref:`dev-manual/common-tasks:using a Python development shell`" section in
the Yocto Project Development Tasks Manual for more information about
using ``pydevshell``.
diff --git a/poky/documentation/ref-manual/variables.rst b/poky/documentation/ref-manual/variables.rst
index f8808cc052..367b4674e2 100644
--- a/poky/documentation/ref-manual/variables.rst
+++ b/poky/documentation/ref-manual/variables.rst
@@ -3551,7 +3551,7 @@ system and gives an overview of their function and contents.
For more information on :term:`INHERIT`, see the
:ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:\`\`inherit\`\` configuration directive`"
- section in the Bitbake User Manual.
+ section in the BitBake User Manual.
:term:`INHERIT_DISTRO`
Lists classes that will be inherited at the distribution level. It is
@@ -4064,10 +4064,10 @@ system and gives an overview of their function and contents.
statements add specific configurations to targeted machine types::
KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
- KERNEL_FEATURES:append = "${KERNEL_EXTRA_FEATURES}"
- KERNEL_FEATURES:append:qemuall = "cfg/virtio.scc"
- KERNEL_FEATURES:append:qemux86 = " cfg/sound.scc cfg/paravirt_kvm.scc"
- KERNEL_FEATURES:append:qemux86-64 = "cfg/sound.scc"
+ KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
+ KERNEL_FEATURES:append:qemuall = " cfg/virtio.scc"
+ KERNEL_FEATURES:append:qemux86 = " cfg/sound.scc cfg/paravirt_kvm.scc"
+ KERNEL_FEATURES:append:qemux86-64 = " cfg/sound.scc"
:term:`KERNEL_FIT_LINK_NAME`
The link name of the kernel flattened image tree (FIT) image. This
@@ -4255,7 +4255,7 @@ system and gives an overview of their function and contents.
SRCREV_machine:core2-32-intel-common = "43b9eced9ba8a57add36af07736344dcc383f711"
KMACHINE:core2-32-intel-common = "intel-core2-32"
KBRANCH:core2-32-intel-common = "standard/base"
- KERNEL_FEATURES:append:core2-32-intel-common = "${KERNEL_FEATURES_INTEL_COMMON}"
+ KERNEL_FEATURES:append:core2-32-intel-common = " ${KERNEL_FEATURES_INTEL_COMMON}"
The :term:`KMACHINE` statement says
that the kernel understands the machine name as "intel-core2-32".
@@ -7899,6 +7899,21 @@ system and gives an overview of their function and contents.
toolchain. You can use ``meta-sourcery`` as a template for adding
support for other external toolchains.
+ :term:`TEMPLATECONF`
+ Specifies the directory used by the build system to find templates
+ from which to build the ``bblayers.conf`` and ``local.conf`` files.
+ Use this variable if you wish to customize such files, and the default
+ BitBake targets shown when sourcing the ``oe-init-build-env`` script.
+
+ For details, see the
+ :ref:`dev-manual/common-tasks:creating a custom template configuration directory`
+ section in the Yocto Project Development Tasks manual.
+
+ .. note::
+
+ You must set this variable in the external environment in order
+ for it to work.
+
:term:`TEST_EXPORT_DIR`
The location the OpenEmbedded build system uses to export tests when
the :term:`TEST_EXPORT_ONLY` variable is set
@@ -8752,6 +8767,19 @@ system and gives an overview of their function and contents.
previous example, some-native-tool would be replaced with an actual
native tool on which the build would depend.
+ :term:`WKS_FILES`
+ Specifies a list of candidate Wic kickstart files to be used by the
+ OpenEmbedded build system to create a partitioned image. Only the
+ first one that is found, from left to right, will be used.
+
+ This is only useful when there are multiple ``.wks`` files that can be
+ used to produce an image. A typical case is when multiple layers are
+ used for different hardware platforms, each supplying a different
+ ``.wks`` file. In this case, you specify all possible ones through
+ :term:`WKS_FILES`.
+
+ If only one ``.wks`` file is used, set :term:`WKS_FILE` instead.
+
:term:`WORKDIR`
The pathname of the work directory in which the OpenEmbedded build
system builds a recipe. This directory is located within the
diff --git a/poky/documentation/releases.rst b/poky/documentation/releases.rst
index cfc3a7b1de..08984b2b6b 100644
--- a/poky/documentation/releases.rst
+++ b/poky/documentation/releases.rst
@@ -16,6 +16,7 @@ Release Series 4.0 (kirkstone)
******************************
- :yocto_docs:`4.0 Documentation </4.0>`
+- :yocto_docs:`4.0.1 Documentation </4.0.1>`
******************************
Release Series 3.4 (honister)
@@ -25,6 +26,7 @@ Release Series 3.4 (honister)
- :yocto_docs:`3.4.1 Documentation </3.4.1>`
- :yocto_docs:`3.4.2 Documentation </3.4.2>`
- :yocto_docs:`3.4.3 Documentation </3.4.3>`
+- :yocto_docs:`3.4.4 Documentation </3.4.4>`
******************************
Release Series 3.3 (hardknott)
@@ -58,6 +60,7 @@ Release Series 3.1 (dunfell)
- :yocto_docs:`3.1.13 Documentation </3.1.13>`
- :yocto_docs:`3.1.14 Documentation </3.1.14>`
- :yocto_docs:`3.1.15 Documentation </3.1.15>`
+- :yocto_docs:`3.1.16 Documentation </3.1.16>`
==========================
Outdated Release Manuals
diff --git a/poky/documentation/sdk-manual/appendix-obtain.rst b/poky/documentation/sdk-manual/appendix-obtain.rst
index 841abac5aa..ece378c75e 100644
--- a/poky/documentation/sdk-manual/appendix-obtain.rst
+++ b/poky/documentation/sdk-manual/appendix-obtain.rst
@@ -265,8 +265,7 @@ install the Standard SDK by running the ``*.sh`` SDK installation
script:
.. image:: figures/sdk-installed-standard-sdk-directory.png
- :scale: 80%
- :align: center
+ :scale: 100%
The installed SDK consists of an environment setup script for the SDK, a
configuration file for the target, a version file for the target, and
diff --git a/poky/documentation/sdk-manual/extensible.rst b/poky/documentation/sdk-manual/extensible.rst
index c5970f74fa..6bb262273d 100644
--- a/poky/documentation/sdk-manual/extensible.rst
+++ b/poky/documentation/sdk-manual/extensible.rst
@@ -233,7 +233,7 @@ shows common development flows you would use with the ``devtool add``
command:
.. image:: figures/sdk-devtool-add-flow.png
- :align: center
+ :width: 100%
1. *Generating the New Recipe*: The top part of the flow shows three
scenarios by which you could use ``devtool add`` to generate a recipe
@@ -401,7 +401,7 @@ diagram shows common development flows for the ``devtool modify``
command:
.. image:: figures/sdk-devtool-modify-flow.png
- :align: center
+ :width: 100%
1. *Preparing to Modify the Code*: The top part of the flow shows three
scenarios by which you could use ``devtool modify`` to prepare to
@@ -620,7 +620,7 @@ The following diagram shows the common development flow used with the
``devtool upgrade`` command:
.. image:: figures/sdk-devtool-upgrade-flow.png
- :align: center
+ :width: 100%
1. *Initiate the Upgrade*: The top part of the flow shows the typical
scenario by which you use the ``devtool upgrade`` command. The
diff --git a/poky/documentation/sdk-manual/intro.rst b/poky/documentation/sdk-manual/intro.rst
index 802d3f3d42..ce00538b2a 100644
--- a/poky/documentation/sdk-manual/intro.rst
+++ b/poky/documentation/sdk-manual/intro.rst
@@ -149,7 +149,7 @@ SDK Development Model
Fundamentally, the SDK fits into the development process as follows:
.. image:: figures/sdk-environment.png
- :align: center
+ :width: 100%
The SDK is installed on any machine and can be used to develop applications,
images, and kernels. An SDK can even be used by a QA Engineer or Release
diff --git a/poky/documentation/sdk-manual/working-projects.rst b/poky/documentation/sdk-manual/working-projects.rst
index 276daa9bb6..efef5c8bd2 100644
--- a/poky/documentation/sdk-manual/working-projects.rst
+++ b/poky/documentation/sdk-manual/working-projects.rst
@@ -19,6 +19,7 @@ The following figure presents a simple Autotools workflow.
.. image:: figures/sdk-autotools-flow.png
:align: center
+ :width: 70%
Follow these steps to create a simple Autotools-based "Hello World"
project:
@@ -168,6 +169,7 @@ variables and Makefile variables during development.
.. image:: figures/sdk-makefile-flow.png
:align: center
+ :width: 70%
The main point of this section is to explain the following three cases
regarding variable behavior:
diff --git a/poky/documentation/set_versions.py b/poky/documentation/set_versions.py
index cd02cc739e..c409d5ea86 100755
--- a/poky/documentation/set_versions.py
+++ b/poky/documentation/set_versions.py
@@ -23,7 +23,7 @@ ourversion = None
if len(sys.argv) == 2:
ourversion = sys.argv[1]
-activereleases = ["kirkstone", "honister", "hardknott", "dunfell"]
+activereleases = ["kirkstone", "honister", "dunfell"]
devbranch = "langdale"
ltsseries = ["kirkstone", "dunfell"]
@@ -211,7 +211,7 @@ with open("sphinx-static/switchers.js.in", "r") as r, open("sphinx-static/switch
w.write(str(list(release_series.keys())))
continue
if "VERSIONS_PLACEHOLDER" in line:
- w.write(" 'dev': { 'title': 'dev (%s)', 'obsolete': false,},\n" % release_series[devbranch])
+ w.write(" 'dev': { 'title': 'Unstable (dev)', 'obsolete': false,},\n")
for branch in activereleases + ([ourseries] if ourseries not in activereleases else []):
if branch == devbranch:
continue
@@ -223,9 +223,9 @@ with open("sphinx-static/switchers.js.in", "r") as r, open("sphinx-static/switch
if branch_versions[-1] != "0":
version = version + "." + branch_versions[-1]
versions.append(version)
- w.write(" '%s': {'title': '%s', 'obsolete': %s,},\n" % (version, version, str(branch not in activereleases).lower()))
+ w.write(" '%s': {'title': '%s (%s)', 'obsolete': %s,},\n" % (version, branch.capitalize(), version, str(branch not in activereleases).lower()))
if ourversion not in versions and ourseries != devbranch:
- w.write(" '%s': {'title': '%s', 'obsolete': %s,},\n" % (ourversion, ourversion, str(ourseries not in activereleases).lower()))
+ w.write(" '%s': {'title': '%s (%s)', 'obsolete': %s,},\n" % (ourversion, ourseries.capitalize(), ourversion, str(ourseries not in activereleases).lower()))
else:
w.write(line)
diff --git a/poky/documentation/sphinx/yocto-vars.py b/poky/documentation/sphinx/yocto-vars.py
index 8795eee0a0..643c0df904 100644
--- a/poky/documentation/sphinx/yocto-vars.py
+++ b/poky/documentation/sphinx/yocto-vars.py
@@ -13,7 +13,7 @@ try:
import yaml
except ImportError:
sys.stderr.write("The Yocto Project Sphinx documentation requires PyYAML.\
- \nPlease make sure to install pyyaml python package.\n")
+ \nPlease make sure to install pyyaml Python package.\n")
sys.exit(1)
__version__ = '1.0'
diff --git a/poky/documentation/standards.md b/poky/documentation/standards.md
index a2274f6d6e..81aff5f193 100644
--- a/poky/documentation/standards.md
+++ b/poky/documentation/standards.md
@@ -7,7 +7,29 @@ It is currently a work in progress.
## Text standards
-This section has not been filled yet
+### Project names
+
+Project names should be capitalized in the same
+way they are on Wikipedia, in particular:
+
+* BitBake
+* OpenEmbedded
+
+There are exceptions in which such names can be used
+in lower case:
+
+* When referring to a package name
+* When referring to the corresponding command name
+* When used in a cross-reference title. Such
+ titles are usually in lower case.
+
+### File names
+
+File names should be quoted as in the below example:
+
+ ``conf/local.conf``
+
+Using "conf/local/conf" would be wrong.
## ReStructured Text Syntax standards
@@ -26,8 +48,14 @@ To include a screenshot in PNG format:
.. image:: figures/user-configuration.png
:align: center
-Depending on the size of the image, you may also shrink it
-to prevent it from filling the whole page width:
+A diagram with many details usually needs to use
+the whole page width to be readable on all media.
+In this case, the `:align:` directive is unnecessary:
+
+ :scale: 100%
+
+Conversely, you may also shrink some images to
+to prevent them from filling the whole page width:
:scale: 50%
diff --git a/poky/documentation/test-manual/intro.rst b/poky/documentation/test-manual/intro.rst
index 9c1a93cd40..eb9ebe2d5f 100644
--- a/poky/documentation/test-manual/intro.rst
+++ b/poky/documentation/test-manual/intro.rst
@@ -72,7 +72,7 @@ simple JSON files.
.. note::
The project uses Buildbot for historical reasons but also because
- many of the project developers have knowledge of python. It is
+ many of the project developers have knowledge of Python. It is
possible to use the outer layers from another Continuous Integration
(CI) system such as
`Jenkins <https://en.wikipedia.org/wiki/Jenkins_(software)>`__
@@ -83,6 +83,7 @@ topology that includes a controller and a cluster of workers:
.. image:: figures/ab-test-cluster.png
:align: center
+ :width: 70%
Yocto Project Tests - Types of Testing Overview
===============================================
@@ -335,12 +336,12 @@ A simple test example from ``lib/bb/tests/data.py`` is::
self.assertEqual(str(val), "value_of_foo")
In this example, a ``DataExpansions`` class of tests is created,
-derived from standard python unittest. The class has a common ``setUp``
+derived from standard Python unittest. The class has a common ``setUp``
function which is shared by all the tests in the class. A simple test is
then added to test that when a variable is expanded, the correct value
is found.
-Bitbake selftests are straightforward python unittest. Refer to the
+BitBake selftests are straightforward Python unittest. Refer to the
Python unittest documentation for additional information on writing
these tests at: https://docs.python.org/3/library/unittest.html.
@@ -468,7 +469,7 @@ following::
In this example, if nativesdk-python3-core has been installed into the SDK, the code runs
the python3 interpreter with a basic command to check it is working
-correctly. The test would only run if python3 is installed in the SDK.
+correctly. The test would only run if Python3 is installed in the SDK.
``oe-build-perf-test``
----------------------
diff --git a/poky/documentation/toaster-manual/intro.rst b/poky/documentation/toaster-manual/intro.rst
index 57e5b2bb7b..a324744b7d 100644
--- a/poky/documentation/toaster-manual/intro.rst
+++ b/poky/documentation/toaster-manual/intro.rst
@@ -92,6 +92,7 @@ suited for a single user developing on a single build host.
.. image:: figures/simple-configuration.png
:align: center
+ :width: 70%
Toaster as a hosted service is suited for multiple users developing
across several build hosts. When Toaster is set up as a hosted service,
@@ -99,3 +100,4 @@ its components can be spread across several machines:
.. image:: figures/hosted-service.png
:align: center
+ :width: 50%
diff --git a/poky/documentation/toaster-manual/setup-and-use.rst b/poky/documentation/toaster-manual/setup-and-use.rst
index 1e1a314d66..72a15b5f2d 100644
--- a/poky/documentation/toaster-manual/setup-and-use.rst
+++ b/poky/documentation/toaster-manual/setup-and-use.rst
@@ -311,7 +311,7 @@ Perform the following steps to install Toaster:
migrations). The next line sets the Toaster root directory
``TOASTER_DIR`` and the location of the Toaster configuration file
``TOASTER_CONF``, which is relative to ``TOASTER_DIR``. The
- ``TEMPLATECONF`` value reflects the contents of
+ :term:`TEMPLATECONF` value reflects the contents of
``poky/.templateconf``, and by default, should include the string
"poky". For more information on the Toaster configuration file, see
the ":ref:`toaster-manual/reference:Configuring Toaster`" section.
diff --git a/poky/documentation/toaster-manual/start.rst b/poky/documentation/toaster-manual/start.rst
index cab5d1f673..2d6474852a 100644
--- a/poky/documentation/toaster-manual/start.rst
+++ b/poky/documentation/toaster-manual/start.rst
@@ -40,7 +40,7 @@ command::
$ pip3 install --user -r bitbake/toaster-requirements.txt
The previous command installs the necessary Toaster modules into a local
-python 3 cache in your ``$HOME`` directory. The caches is actually
+Python 3 cache in your ``$HOME`` directory. The caches is actually
located in ``$HOME/.local``. To see what packages have been installed
into your ``$HOME`` directory, do the following::
diff --git a/poky/documentation/what-i-wish-id-known.rst b/poky/documentation/what-i-wish-id-known.rst
index dec5617173..46c5cf19f9 100644
--- a/poky/documentation/what-i-wish-id-known.rst
+++ b/poky/documentation/what-i-wish-id-known.rst
@@ -98,6 +98,7 @@ contact us with other suggestions.
be going wrong.
.. image:: figures/yp-how-it-works-new-diagram.png
+ :width: 100%
#. **Know that you can generate a dependency graph and learn how to do it:**
A dependency graph shows dependencies between recipes, tasks, and targets.
@@ -179,7 +180,7 @@ contact us with other suggestions.
* understand devtool and how it simplifies your workflow
* improve build speeds with shared downloads and shared state cache
* generate and understand a dependency graph
- * generate and understand bitbake environment
+ * generate and understand BitBake environment
* build an Extensible SDK for applications development
#. **Depending on what you primary interests are with the Yocto Project, you
diff --git a/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb b/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
index cc5d7eae5a..fa3041b7d8 100644
--- a/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
+++ b/poky/meta-selftest/recipes-test/git-submodule-test/git-submodule-test.bb
@@ -7,3 +7,18 @@ INHIBIT_DEFAULT_DEPS = "1"
SRC_URI = "gitsm://git.yoctoproject.org/git-submodule-test;branch=master"
SRCREV = "a2885dd7d25380d23627e7544b7bbb55014b16ee"
+
+S = "${WORKDIR}/git"
+
+do_test_git_as_user() {
+ cd ${S}
+ git status
+}
+addtask test_git_as_user after do_unpack
+
+fakeroot do_test_git_as_root() {
+ cd ${S}
+ git status
+}
+do_test_git_as_root[depends] += "virtual/fakeroot-native:do_populate_sysroot"
+addtask test_git_as_root after do_unpack
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
index 4f4ec0f210..94192afffe 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.10.bbappend
@@ -7,17 +7,17 @@ KMACHINE:genericx86 ?= "common-pc"
KMACHINE:genericx86-64 ?= "common-pc-64"
KMACHINE:beaglebone-yocto ?= "beaglebone"
-SRCREV_machine:genericx86 ?= "c0b313d988a16b25c1ee730bfe7393c462ee8a5c"
-SRCREV_machine:genericx86-64 ?= "c0b313d988a16b25c1ee730bfe7393c462ee8a5c"
-SRCREV_machine:edgerouter ?= "4ab94e777d8b41ee1ee4c279259e9733bc8049b1"
-SRCREV_machine:beaglebone-yocto ?= "941cc9c3849f96f7eaf109b1e35e05ba366aca56"
+SRCREV_machine:genericx86 ?= "a8b4c628f382412e5e7df5750f2be711df95fa06"
+SRCREV_machine:genericx86-64 ?= "a8b4c628f382412e5e7df5750f2be711df95fa06"
+SRCREV_machine:edgerouter ?= "43577894d2295a92fce760dc403b97527fb55835"
+SRCREV_machine:beaglebone-yocto ?= "8038166b729c192d06f1eb37ab6868a5769f8bc5"
COMPATIBLE_MACHINE:genericx86 = "genericx86"
COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE:edgerouter = "edgerouter"
COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
-LINUX_VERSION:genericx86 = "5.10.99"
-LINUX_VERSION:genericx86-64 = "5.10.99"
-LINUX_VERSION:edgerouter = "5.10.63"
-LINUX_VERSION:beaglebone-yocto = "5.10.63"
+LINUX_VERSION:genericx86 = "5.10.113"
+LINUX_VERSION:genericx86-64 = "5.10.113"
+LINUX_VERSION:edgerouter = "5.10.113"
+LINUX_VERSION:beaglebone-yocto = "5.10.113"
diff --git a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend
index ff85e2e64b..85d02a46e4 100644
--- a/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend
+++ b/poky/meta-yocto-bsp/recipes-kernel/linux/linux-yocto_5.15.bbappend
@@ -7,17 +7,17 @@ KMACHINE:genericx86 ?= "common-pc"
KMACHINE:genericx86-64 ?= "common-pc-64"
KMACHINE:beaglebone-yocto ?= "beaglebone"
-SRCREV_machine:genericx86 ?= "7f685244afb3acd13e94968312580b63d7296705"
-SRCREV_machine:genericx86-64 ?= "7f685244afb3acd13e94968312580b63d7296705"
-SRCREV_machine:edgerouter ?= "5a8ec126c297dd9e410eb23685003f670f8f3d57"
-SRCREV_machine:beaglebone-yocto ?= "5a8ec126c297dd9e410eb23685003f670f8f3d57"
+SRCREV_machine:genericx86 ?= "ebfb1822e9f9726d8c587fc0f60cfed43fa0873e"
+SRCREV_machine:genericx86-64 ?= "ebfb1822e9f9726d8c587fc0f60cfed43fa0873e"
+SRCREV_machine:edgerouter ?= "b978686694c3e41968821d6cc2a2a371fd9c2fb0"
+SRCREV_machine:beaglebone-yocto ?= "4c875cf1376178dfab4913aa1350cab50bb093d3"
COMPATIBLE_MACHINE:genericx86 = "genericx86"
COMPATIBLE_MACHINE:genericx86-64 = "genericx86-64"
COMPATIBLE_MACHINE:edgerouter = "edgerouter"
COMPATIBLE_MACHINE:beaglebone-yocto = "beaglebone-yocto"
-LINUX_VERSION:genericx86 = "5.15.22"
-LINUX_VERSION:genericx86-64 = "5.15.22"
-LINUX_VERSION:edgerouter = "5.15.1"
-LINUX_VERSION:beaglebone-yocto = "5.15.1"
+LINUX_VERSION:genericx86 = "5.15.36"
+LINUX_VERSION:genericx86-64 = "5.15.36"
+LINUX_VERSION:edgerouter = "5.15.36"
+LINUX_VERSION:beaglebone-yocto = "5.15.36"
diff --git a/poky/meta/classes/base.bbclass b/poky/meta/classes/base.bbclass
index 3515720bf9..bdb3ac33c6 100644
--- a/poky/meta/classes/base.bbclass
+++ b/poky/meta/classes/base.bbclass
@@ -115,6 +115,10 @@ def setup_hosttools_dir(dest, toolsvar, d, fatal=True):
tools = d.getVar(toolsvar).split()
origbbenv = d.getVar("BB_ORIGENV", False)
path = origbbenv.getVar("PATH")
+ # Need to ignore our own scripts directories to avoid circular links
+ for p in path.split(":"):
+ if p.endswith("/scripts"):
+ path = path.replace(p, "/ignoreme")
bb.utils.mkdirhier(dest)
notfound = []
for tool in tools:
diff --git a/poky/meta/classes/cargo_common.bbclass b/poky/meta/classes/cargo_common.bbclass
index 90fad75415..39f32829fd 100644
--- a/poky/meta/classes/cargo_common.bbclass
+++ b/poky/meta/classes/cargo_common.bbclass
@@ -45,7 +45,7 @@ cargo_common_do_configure () {
directory = "${CARGO_VENDORING_DIRECTORY}"
EOF
- if [ -z "${EXTERNALSRC}" ] && [ ${CARGO_DISABLE_BITBAKE_VENDORING} = "0" ]; then
+ if [ ${CARGO_DISABLE_BITBAKE_VENDORING} = "0" ]; then
cat <<- EOF >> ${CARGO_HOME}/config
[source.crates-io]
diff --git a/poky/meta/classes/cve-check.bbclass b/poky/meta/classes/cve-check.bbclass
index 7cf206299b..3729d9cba8 100644
--- a/poky/meta/classes/cve-check.bbclass
+++ b/poky/meta/classes/cve-check.bbclass
@@ -79,6 +79,30 @@ CVE_CHECK_LAYER_INCLUDELIST ??= ""
# set to "alphabetical" for version using single alphabetical character as increment release
CVE_VERSION_SUFFIX ??= ""
+def generate_json_report(d, out_path, link_path):
+ if os.path.exists(d.getVar("CVE_CHECK_SUMMARY_INDEX_PATH")):
+ import json
+ from oe.cve_check import cve_check_merge_jsons
+
+ bb.note("Generating JSON CVE summary")
+ index_file = d.getVar("CVE_CHECK_SUMMARY_INDEX_PATH")
+ summary = {"version":"1", "package": []}
+ with open(index_file) as f:
+ filename = f.readline()
+ while filename:
+ with open(filename.rstrip()) as j:
+ data = json.load(j)
+ cve_check_merge_jsons(summary, data)
+ filename = f.readline()
+
+ with open(out_path, "w") as f:
+ json.dump(summary, f, indent=2)
+
+ if link_path != out_path:
+ if os.path.exists(os.path.realpath(link_path)):
+ os.remove(link_path)
+ os.symlink(os.path.basename(out_path), link_path)
+
python cve_save_summary_handler () {
import shutil
import datetime
@@ -97,10 +121,17 @@ python cve_save_summary_handler () {
if cve_summary_file and os.path.exists(cve_summary_file):
cvefile_link = os.path.join(cvelogpath, cve_summary_name)
+ # if the paths are the same don't create the link
+ if cvefile_link != cve_summary_file:
+ if os.path.exists(os.path.realpath(cvefile_link)):
+ os.remove(cvefile_link)
+ os.symlink(os.path.basename(cve_summary_file), cvefile_link)
- if os.path.exists(os.path.realpath(cvefile_link)):
- os.remove(cvefile_link)
- os.symlink(os.path.basename(cve_summary_file), cvefile_link)
+ if d.getVar("CVE_CHECK_FORMAT_JSON") == "1":
+ json_summary_link_name = os.path.join(cvelogpath, d.getVar("CVE_CHECK_SUMMARY_FILE_NAME_JSON"))
+ json_summary_name = os.path.join(cvelogpath, "%s-%s.json" % (cve_summary_name, timestamp))
+ generate_json_report(d, json_summary_name, json_summary_link_name)
+ bb.plain("Complete CVE JSON report summary created at: %s" % json_summary_link_name)
}
addhandler cve_save_summary_handler
@@ -169,35 +200,25 @@ python cve_check_write_rootfs_manifest () {
if manifest_name and os.path.exists(manifest_name):
manifest_link = os.path.join(deploy_dir, "%s.cve" % link_name)
- # If we already have another manifest, update symlinks
- if os.path.exists(os.path.realpath(manifest_link)):
- os.remove(manifest_link)
- os.symlink(os.path.basename(manifest_name), manifest_link)
+ # if they are the same don't create the link
+ if manifest_link != manifest_name:
+ # If we already have another manifest, update symlinks
+ if os.path.exists(os.path.realpath(manifest_link)):
+ os.remove(manifest_link)
+ os.symlink(os.path.basename(manifest_name), manifest_link)
bb.plain("Image CVE report stored in: %s" % manifest_name)
- if os.path.exists(d.getVar("CVE_CHECK_SUMMARY_INDEX_PATH")):
- import json
- bb.note("Generating JSON CVE manifest")
- deploy_dir = d.getVar("DEPLOY_DIR_IMAGE")
- link_name = d.getVar("IMAGE_LINK_NAME")
- manifest_name = d.getVar("CVE_CHECK_MANIFEST_JSON")
- index_file = d.getVar("CVE_CHECK_SUMMARY_INDEX_PATH")
- manifest = {"version":"1", "package": []}
- with open(index_file) as f:
- filename = f.readline()
- while filename:
- with open(filename.rstrip()) as j:
- data = json.load(j)
- cve_check_merge_jsons(manifest, data)
- filename = f.readline()
-
- with open(manifest_name, "w") as f:
- json.dump(manifest, f, indent=2)
- bb.plain("Image CVE report stored in: %s" % manifest_name)
+ if d.getVar("CVE_CHECK_FORMAT_JSON") == "1":
+ link_path = os.path.join(deploy_dir, "%s.json" % link_name)
+ manifest_path = d.getVar("CVE_CHECK_MANIFEST_JSON")
+ bb.note("Generating JSON CVE manifest")
+ generate_json_report(d, manifest_path, link_path)
+ bb.plain("Image CVE JSON report stored in: %s" % link_path)
}
ROOTFS_POSTPROCESS_COMMAND:prepend = "${@'cve_check_write_rootfs_manifest; ' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
do_rootfs[recrdeptask] += "${@'do_cve_check' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
+do_populate_sdk[recrdeptask] += "${@'do_cve_check' if d.getVar('CVE_CHECK_CREATE_MANIFEST') == '1' else ''}"
def check_cves(d, patched_cves):
"""
diff --git a/poky/meta/classes/externalsrc.bbclass b/poky/meta/classes/externalsrc.bbclass
index b2f216f361..90792a737b 100644
--- a/poky/meta/classes/externalsrc.bbclass
+++ b/poky/meta/classes/externalsrc.bbclass
@@ -68,7 +68,7 @@ python () {
url_data = fetch.ud[url]
parm = url_data.parm
if (url_data.type == 'file' or
- url_data.type == 'npmsw' or
+ url_data.type == 'npmsw' or url_data.type == 'crate' or
'type' in parm and parm['type'] == 'kmeta'):
local_srcuri.append(url)
diff --git a/poky/meta/classes/image.bbclass b/poky/meta/classes/image.bbclass
index 47776db2b0..2139a7e576 100644
--- a/poky/meta/classes/image.bbclass
+++ b/poky/meta/classes/image.bbclass
@@ -133,11 +133,11 @@ def rootfs_variables(d):
do_rootfs[vardeps] += "${@rootfs_variables(d)}"
# This is needed to have kernel image in DEPLOY_DIR.
-# This follow many common usecases and user expectations.
+# This follows many common usecases and user expectations.
# But if you are building an image which doesn't need the kernel image at all,
# you can unset this variable manually.
-KERNELDEPLOYDEPEND ?= "virtual/kernel:do_deploy"
-do_build[depends] += "${KERNELDEPMODDEPEND}"
+KERNEL_DEPLOY_DEPEND ?= "virtual/kernel:do_deploy"
+do_build[depends] += "${KERNEL_DEPLOY_DEPEND}"
python () {
diff --git a/poky/meta/classes/image_types.bbclass b/poky/meta/classes/image_types.bbclass
index 960dab1a60..0ffea91195 100644
--- a/poky/meta/classes/image_types.bbclass
+++ b/poky/meta/classes/image_types.bbclass
@@ -81,7 +81,7 @@ oe_mkext234fs () {
bbdebug 1 Executing "dd if=/dev/zero of=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype seek=$ROOTFS_SIZE count=$COUNT bs=1024"
dd if=/dev/zero of=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype seek=$ROOTFS_SIZE count=$COUNT bs=1024
bbdebug 1 "Actual Rootfs size: `du -s ${IMAGE_ROOTFS}`"
- bbdebug 1 "Actual Partion size: `stat -c '%s' ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype`"
+ bbdebug 1 "Actual Partition size: `stat -c '%s' ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype`"
bbdebug 1 Executing "mkfs.$fstype -F $extra_imagecmd ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype -d ${IMAGE_ROOTFS}"
mkfs.$fstype -F $extra_imagecmd ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.$fstype -d ${IMAGE_ROOTFS}
# Error codes 0-3 indicate successfull operation of fsck (no errors or errors corrected)
@@ -142,6 +142,24 @@ UBI_VOLNAME ?= "${MACHINE}-rootfs"
UBI_VOLTYPE ?= "dynamic"
UBI_IMGTYPE ?= "ubifs"
+write_ubi_config() {
+ if [ -z "$1" ]; then
+ local vname=""
+ else
+ local vname="_$1"
+ fi
+
+ cat <<EOF > ubinize${vname}-${IMAGE_NAME}.cfg
+[ubifs]
+mode=ubi
+image=${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.${UBI_IMGTYPE}
+vol_id=0
+vol_type=${UBI_VOLTYPE}
+vol_name=${UBI_VOLNAME}
+vol_flags=autoresize
+EOF
+}
+
multiubi_mkfs() {
local mkubifs_args="$1"
local ubinize_args="$2"
@@ -151,19 +169,8 @@ multiubi_mkfs() {
bbfatal "MKUBIFS_ARGS and UBINIZE_ARGS have to be set, see http://www.linux-mtd.infradead.org/faq/ubifs.html for details"
fi
- if [ -z "$3" ]; then
- local vname=""
- else
- local vname="_$3"
- fi
+ write_ubi_config "$3"
- echo \[ubifs\] > ubinize${vname}-${IMAGE_NAME}.cfg
- echo mode=ubi >> ubinize${vname}-${IMAGE_NAME}.cfg
- echo image=${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.${UBI_IMGTYPE} >> ubinize${vname}-${IMAGE_NAME}.cfg
- echo vol_id=0 >> ubinize${vname}-${IMAGE_NAME}.cfg
- echo vol_type=${UBI_VOLTYPE} >> ubinize${vname}-${IMAGE_NAME}.cfg
- echo vol_name=${UBI_VOLNAME} >> ubinize${vname}-${IMAGE_NAME}.cfg
- echo vol_flags=autoresize >> ubinize${vname}-${IMAGE_NAME}.cfg
if [ -n "$vname" ]; then
mkfs.ubifs -r ${IMAGE_ROOTFS} -o ${IMGDEPLOYDIR}/${IMAGE_NAME}${vname}${IMAGE_NAME_SUFFIX}.ubifs ${mkubifs_args}
fi
diff --git a/poky/meta/classes/kernel-yocto.bbclass b/poky/meta/classes/kernel-yocto.bbclass
index fb30c7cc05..b276ded775 100644
--- a/poky/meta/classes/kernel-yocto.bbclass
+++ b/poky/meta/classes/kernel-yocto.bbclass
@@ -192,7 +192,7 @@ do_kernel_metadata() {
if [ -n "$in_tree_defconfig" ]; then
sccs_defconfig=$in_tree_defconfig
if [ -n "$src_uri_defconfig" ]; then
- bbwarn "[NOTE]: defconfig was supplied both via KBUILD_DEFCONFIG and SRC_URI. Dropping SRC_URI defconfig"
+ bbwarn "[NOTE]: defconfig was supplied both via KBUILD_DEFCONFIG and SRC_URI. Dropping SRC_URI entry $src_uri_defconfig"
fi
else
# if we didn't have an in-tree one, make our defconfig the one
diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass
index 8299b394a7..5d2f17c3be 100644
--- a/poky/meta/classes/kernel.bbclass
+++ b/poky/meta/classes/kernel.bbclass
@@ -110,7 +110,7 @@ python __anonymous () {
d.setVar('PKG:%s-image-%s' % (kname,typelower), '%s-image-%s-${KERNEL_VERSION_PKG_NAME}' % (kname, typelower))
d.setVar('ALLOW_EMPTY:%s-image-%s' % (kname, typelower), '1')
- d.setVar('pkg_postinst:%s-image-%s' % (kname,typelower), """set +e
+ d.prependVar('pkg_postinst:%s-image-%s' % (kname,typelower), """set +e
if [ -n "$D" ]; then
ln -sf %s-${KERNEL_VERSION} $D/${KERNEL_IMAGEDEST}/%s > /dev/null 2>&1
else
@@ -649,6 +649,7 @@ FILES:${KERNEL_PACKAGE_NAME}-image = ""
FILES:${KERNEL_PACKAGE_NAME}-dev = "/${KERNEL_IMAGEDEST}/System.map* /${KERNEL_IMAGEDEST}/Module.symvers* /${KERNEL_IMAGEDEST}/config* ${KERNEL_SRC_PATH} ${nonarch_base_libdir}/modules/${KERNEL_VERSION}/build"
FILES:${KERNEL_PACKAGE_NAME}-vmlinux = "/${KERNEL_IMAGEDEST}/vmlinux-${KERNEL_VERSION_NAME}"
FILES:${KERNEL_PACKAGE_NAME}-modules = ""
+FILES:${KERNEL_PACKAGE_NAME}-dbg = "/usr/lib/debug /usr/src/debug"
RDEPENDS:${KERNEL_PACKAGE_NAME} = "${KERNEL_PACKAGE_NAME}-base (= ${EXTENDPKGV})"
# Allow machines to override this dependency if kernel image files are
# not wanted in images as standard
diff --git a/poky/meta/classes/npm.bbclass b/poky/meta/classes/npm.bbclass
index ba50fcac20..dbfc2e728e 100644
--- a/poky/meta/classes/npm.bbclass
+++ b/poky/meta/classes/npm.bbclass
@@ -81,6 +81,7 @@ python npm_do_configure() {
import json
import re
import shlex
+ import stat
import tempfile
from bb.fetch2.npm import NpmEnvironment
from bb.fetch2.npm import npm_unpack
@@ -202,6 +203,7 @@ python npm_do_configure() {
if has_shrinkwrap_file:
_update_manifest("devDependencies")
+ os.chmod(cached_manifest_file, os.stat(cached_manifest_file).st_mode | stat.S_IWUSR)
with open(cached_manifest_file, "w") as f:
json.dump(cached_manifest, f, indent=2)
@@ -305,10 +307,6 @@ npm_do_install() {
# Remove the shrinkwrap file which does not need to be packed
rm -f ${D}/${nonarch_libdir}/node_modules/*/npm-shrinkwrap.json
rm -f ${D}/${nonarch_libdir}/node_modules/@*/*/npm-shrinkwrap.json
-
- # node(1) is using /usr/lib/node as default include directory and npm(1) is
- # using /usr/lib/node_modules as install directory. Let's make both happy.
- ln -fs node_modules ${D}/${nonarch_libdir}/node
}
FILES:${PN} += " \
diff --git a/poky/meta/classes/overlayfs.bbclass b/poky/meta/classes/overlayfs.bbclass
index 29fced2ca7..f7069edd41 100644
--- a/poky/meta/classes/overlayfs.bbclass
+++ b/poky/meta/classes/overlayfs.bbclass
@@ -16,10 +16,18 @@
#
# OVERLAYFS_MOUNT_POINT[data] ?= "/data"
#
-# The class assumes you have a data.mount systemd unit defined in your
-# systemd-machine-units recipe and installed to the image.
+# Per default the class assumes you have a corresponding fstab entry or systemd
+# mount unit (data.mount in this case) for this mount point installed on the
+# image, for instance via a wks script or the systemd-machine-units recipe.
#
-# Then you can specify writable directories on a recipe base
+# If the mount point is handled somewhere else, e.g. custom boot or preinit
+# scripts or in a initramfs, then this QA check can be skipped by adding
+# mount-configured to the related OVERLAYFS_QA_SKIP flag:
+#
+# OVERLAYFS_QA_SKIP[data] = "mount-configured"
+#
+# To use the overlayfs, you just have to specify writable directories inside
+# their recipe:
#
# OVERLAYFS_WRITABLE_PATHS[data] = "/usr/share/my-custom-application"
#
@@ -30,6 +38,10 @@
# OVERLAYFS_MOUNT_POINT[mnt-overlay] = "/mnt/overlay"
# OVERLAYFS_WRITABLE_PATHS[mnt-overlay] = "/usr/share/another-application"
#
+# If your recipe deploys a systemd service, then it should require and be
+# started after the ${PN}-overlays.service to make sure that all overlays are
+# mounted beforehand.
+#
# Note: the class does not support /etc directory itself, because systemd depends on it
# For /etc directory use overlayfs-etc class
diff --git a/poky/meta/classes/package.bbclass b/poky/meta/classes/package.bbclass
index 44fbc32df6..62050a18b8 100644
--- a/poky/meta/classes/package.bbclass
+++ b/poky/meta/classes/package.bbclass
@@ -662,7 +662,10 @@ def runtime_mapping_rename (varname, pkg, d):
# Used by do_packagedata (and possibly other routines post do_package)
#
+PRSERV_ACTIVE = "${@bool(d.getVar("PRSERV_HOST"))}"
+PRSERV_ACTIVE[vardepvalue] = "${PRSERV_ACTIVE}"
package_get_auto_pr[vardepsexclude] = "BB_TASKDEPDATA"
+package_get_auto_pr[vardeps] += "PRSERV_ACTIVE"
python package_get_auto_pr() {
import oe.prservice
diff --git a/poky/meta/classes/pypi.bbclass b/poky/meta/classes/pypi.bbclass
index 9405d58601..5fa7b8a6ae 100644
--- a/poky/meta/classes/pypi.bbclass
+++ b/poky/meta/classes/pypi.bbclass
@@ -24,3 +24,5 @@ S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}"
UPSTREAM_CHECK_URI ?= "https://pypi.org/project/${PYPI_PACKAGE}/"
UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P<pver>(\d+[\.\-_]*)+)/"
+
+CVE_PRODUCT ?= "python:${PYPI_PACKAGE}"
diff --git a/poky/meta/classes/rootfs-postcommands.bbclass b/poky/meta/classes/rootfs-postcommands.bbclass
index 7b92df69c5..d302c23cf4 100644
--- a/poky/meta/classes/rootfs-postcommands.bbclass
+++ b/poky/meta/classes/rootfs-postcommands.bbclass
@@ -267,9 +267,10 @@ python write_image_manifest () {
if os.path.exists(manifest_name) and link_name:
manifest_link = deploy_dir + "/" + link_name + ".manifest"
- if os.path.lexists(manifest_link):
- os.remove(manifest_link)
- os.symlink(os.path.basename(manifest_name), manifest_link)
+ if manifest_link != manifest_name:
+ if os.path.lexists(manifest_link):
+ os.remove(manifest_link)
+ os.symlink(os.path.basename(manifest_name), manifest_link)
}
# Can be used to create /etc/timestamp during image construction to give a reasonably
@@ -339,9 +340,10 @@ python write_image_test_data() {
if os.path.exists(testdata_name) and link_name:
testdata_link = os.path.join(deploy_dir, "%s.testdata.json" % link_name)
- if os.path.lexists(testdata_link):
- os.remove(testdata_link)
- os.symlink(os.path.basename(testdata_name), testdata_link)
+ if testdata_link != testdata_name:
+ if os.path.lexists(testdata_link):
+ os.remove(testdata_link)
+ os.symlink(os.path.basename(testdata_name), testdata_link)
}
write_image_test_data[vardepsexclude] += "TOPDIR"
@@ -398,6 +400,10 @@ python overlayfs_qa_check() {
allUnitExist = True;
for mountPoint in overlayMountPoints:
+ qaSkip = (d.getVarFlag("OVERLAYFS_QA_SKIP", mountPoint) or "").split()
+ if "mount-configured" in qaSkip:
+ continue
+
mountPath = d.getVarFlag('OVERLAYFS_MOUNT_POINT', mountPoint)
if mountPath in fstabDevices:
continue
@@ -407,8 +413,10 @@ python overlayfs_qa_check() {
for dirpath in searchpaths):
continue
- bb.warn('Mount path %s not found in fstat and unit %s not found '
- 'in systemd unit directories' % (mountPath, mountUnit))
+ bb.warn(f'Mount path {mountPath} not found in fstab and unit '
+ f'{mountUnit} not found in systemd unit directories.')
+ bb.warn(f'Skip this check by setting OVERLAYFS_QA_SKIP[{mountPoint}] = '
+ '"mount-configured"')
allUnitExist = False;
if not allUnitExist:
diff --git a/poky/meta/classes/rust-common.bbclass b/poky/meta/classes/rust-common.bbclass
index 02a538258a..cb811ac5da 100644
--- a/poky/meta/classes/rust-common.bbclass
+++ b/poky/meta/classes/rust-common.bbclass
@@ -117,8 +117,11 @@ RUST_BUILD_ARCH = "${@oe.rust.arch_to_rust_arch(d.getVar('BUILD_ARCH'))}"
# its likely best to not use the triple suffix due to potential confusion.
RUST_BUILD_SYS = "${@rust_base_triple(d, 'BUILD')}"
+RUST_BUILD_SYS[vardepvalue] = "${RUST_BUILD_SYS}"
RUST_HOST_SYS = "${@rust_base_triple(d, 'HOST')}"
+RUST_HOST_SYS[vardepvalue] = "${RUST_HOST_SYS}"
RUST_TARGET_SYS = "${@rust_base_triple(d, 'TARGET')}"
+RUST_TARGET_SYS[vardepvalue] = "${RUST_TARGET_SYS}"
# wrappers to get around the fact that Rust needs a single
# binary but Yocto's compiler and linker commands have
diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass
index c72a7b3ed3..b416918013 100644
--- a/poky/meta/classes/sanity.bbclass
+++ b/poky/meta/classes/sanity.bbclass
@@ -470,7 +470,7 @@ def check_make_version(sanity_data):
if bb.utils.vercmp_string_op(version, "4.2.1", "=="):
distro = oe.lsb.distro_identifier()
- if "ubuntu" in distro or "debian" in distro:
+ if "ubuntu" in distro or "debian" in distro or "linuxmint" in distro:
return None
return "make version 4.2.1 is known to have issues on Centos/OpenSUSE and other non-Ubuntu systems. Please use a buildtools-make-tarball or a newer version of make.\n"
return None
diff --git a/poky/meta/classes/sstate.bbclass b/poky/meta/classes/sstate.bbclass
index 1c0cae4893..3513269bca 100644
--- a/poky/meta/classes/sstate.bbclass
+++ b/poky/meta/classes/sstate.bbclass
@@ -1,4 +1,4 @@
-SSTATE_VERSION = "8"
+SSTATE_VERSION = "10"
SSTATE_ZSTD_CLEVEL ??= "8"
diff --git a/poky/meta/classes/staging.bbclass b/poky/meta/classes/staging.bbclass
index 9fc8f4f283..8372a4574a 100644
--- a/poky/meta/classes/staging.bbclass
+++ b/poky/meta/classes/staging.bbclass
@@ -404,7 +404,9 @@ python extend_recipe_sysroot() {
# All files that we're going to be installing, to find conflicts.
fileset = {}
+ invalidate_tasks = set()
for f in os.listdir(depdir):
+ removed = []
if not f.endswith(".complete"):
continue
f = depdir + "/" + f
@@ -414,6 +416,28 @@ python extend_recipe_sysroot() {
sstate_clean_manifest(depdir + "/" + lnk, d, canrace=True, prefix=workdir)
os.unlink(f)
os.unlink(f.replace(".complete", ""))
+ removed.append(os.path.basename(f.replace(".complete", "")))
+
+ # If we've removed files from the sysroot above, the task that installed them may still
+ # have a stamp file present for the task. This is probably invalid right now but may become
+ # valid again if the user were to change configuration back for example. Since we've removed
+ # the files a task might need, remove the stamp file too to force it to rerun.
+ # YOCTO #14790
+ if removed:
+ for i in glob.glob(depdir + "/index.*"):
+ if i.endswith("." + mytaskname):
+ continue
+ with open(i, "r") as f:
+ for l in f:
+ if l.startswith("TaskDeps:"):
+ continue
+ l = l.strip()
+ if l in removed:
+ invalidate_tasks.add(i.rsplit(".", 1)[1])
+ break
+ for t in invalidate_tasks:
+ bb.note("Invalidating stamps for task %s" % t)
+ bb.build.clean_stamp(t, d)
installed = []
for dep in configuredeps:
diff --git a/poky/meta/conf/abi_version.conf b/poky/meta/conf/abi_version.conf
index 2a08b1208b..c716bd7feb 100644
--- a/poky/meta/conf/abi_version.conf
+++ b/poky/meta/conf/abi_version.conf
@@ -12,4 +12,4 @@ OELAYOUT_ABI = "15"
# a reset of the equivalence, for example when reproducibility issues break the
# existing match data. Distros can also append to this value for the same effect.
#
-HASHEQUIV_HASH_VERSION = "12"
+HASHEQUIV_HASH_VERSION = "14"
diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf
index 1deba8d910..0e939aca4f 100644
--- a/poky/meta/conf/bitbake.conf
+++ b/poky/meta/conf/bitbake.conf
@@ -776,18 +776,10 @@ export PKG_CONFIG_DISABLE_UNINSTALLED = "yes"
export PKG_CONFIG_SYSTEM_LIBRARY_PATH = "${base_libdir}:${libdir}"
export PKG_CONFIG_SYSTEM_INCLUDE_PATH = "${includedir}"
-# Git configuration
-
# Don't allow git to chdir up past WORKDIR so that it doesn't detect the OE
# repository when building a recipe
export GIT_CEILING_DIRECTORIES = "${WORKDIR}"
-# Treat all directories are safe, as during fakeroot tasks git will run as
-# root so recent git releases (eg 2.30.3) will refuse to work on repositories. See
-# https://github.com/git/git/commit/8959555cee7ec045958f9b6dd62e541affb7e7d9 for
-# further details.
-export GIT_CONFIG_PARAMETERS="'safe.directory=*'"
-
###
### Config file processing
###
diff --git a/poky/meta/conf/distro/include/default-distrovars.inc b/poky/meta/conf/distro/include/default-distrovars.inc
index 3edba1b6d0..9f4617be01 100644
--- a/poky/meta/conf/distro/include/default-distrovars.inc
+++ b/poky/meta/conf/distro/include/default-distrovars.inc
@@ -16,7 +16,7 @@ DISTRO_FEATURES_DEFAULT:remove:riscv32 = "seccomp"
# seccomp is not yet ported to ARC
DISTRO_FEATURES_DEFAULT:remove:arc = "seccomp"
-DISTRO_FEATURES_DEFAULT ?= "acl alsa argp bluetooth debuginfod ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp"
+DISTRO_FEATURES_DEFAULT ?= "acl alsa bluetooth debuginfod ext2 ipv4 ipv6 largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 vfat seccomp"
DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT}"
IMAGE_FEATURES ?= ""
diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc
index d518bdd2ad..3990d1d507 100644
--- a/poky/meta/conf/distro/include/maintainers.inc
+++ b/poky/meta/conf/distro/include/maintainers.inc
@@ -190,7 +190,7 @@ RECIPE_MAINTAINER:pn-gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "Khem Raj <r
RECIPE_MAINTAINER:pn-gcc-crosssdk-${SDK_SYS} = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-runtime = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gcc-sanitizers = "Khem Raj <raj.khem@gmail.com>"
-RECIPE_MAINTAINER:pn-gcc-source-11.3.0 = "Khem Raj <raj.khem@gmail.com>"
+RECIPE_MAINTAINER:pn-gcc-source-12.1.0 = "Khem Raj <raj.khem@gmail.com>"
RECIPE_MAINTAINER:pn-gconf = "Ross Burton <ross.burton@arm.com>"
RECIPE_MAINTAINER:pn-gcr = "Alexander Kanavin <alex.kanavin@gmail.com>"
RECIPE_MAINTAINER:pn-gdb = "Khem Raj <raj.khem@gmail.com>"
@@ -664,7 +664,7 @@ RECIPE_MAINTAINER:pn-python3-ruamel-yaml = "Bruce Ashfield <bruce.ashfield@gmail
RECIPE_MAINTAINER:pn-python3-scons = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-semantic-version = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-setuptools = "Oleksandr Kravchuk <open.source@oleksandr-kravchuk.com>"
-RECIPE_MAINTAINER:pn-python3-setuptools-rust-native = "Tim Orling <tim.orling@konsulko.com>"
+RECIPE_MAINTAINER:pn-python3-setuptools-rust = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-setuptools-scm = "Tim Orling <tim.orling@konsulko.com>"
RECIPE_MAINTAINER:pn-python3-six = "Zang Ruochen <zangrc.fnst@fujitsu.com>"
RECIPE_MAINTAINER:pn-python3-smartypants = "Alexander Kanavin <alex.kanavin@gmail.com>"
diff --git a/poky/meta/conf/distro/include/ptest-packagelists.inc b/poky/meta/conf/distro/include/ptest-packagelists.inc
index 54a290871e..a1ead90649 100644
--- a/poky/meta/conf/distro/include/ptest-packagelists.inc
+++ b/poky/meta/conf/distro/include/ptest-packagelists.inc
@@ -87,6 +87,7 @@ PTESTS_SLOW = "\
glib-2.0-ptest \
gstreamer1.0-ptest \
libevent-ptest \
+ libgcrypt-ptest \
lttng-tools-ptest \
openssh-ptest \
openssl-ptest \
diff --git a/poky/meta/conf/distro/include/tcmode-default.inc b/poky/meta/conf/distro/include/tcmode-default.inc
index 68f027a60d..1179ba172f 100644
--- a/poky/meta/conf/distro/include/tcmode-default.inc
+++ b/poky/meta/conf/distro/include/tcmode-default.inc
@@ -16,17 +16,17 @@ PREFERRED_PROVIDER_virtual/${SDK_PREFIX}compilerlibs = "nativesdk-gcc-runtime"
# Default libc config
PREFERRED_PROVIDER_virtual/gettext ??= "gettext"
-GCCVERSION ?= "11.%"
+GCCVERSION ?= "12.%"
SDKGCCVERSION ?= "${GCCVERSION}"
BINUVERSION ?= "2.38%"
-GDBVERSION ?= "11.%"
+GDBVERSION ?= "12.%"
GLIBCVERSION ?= "2.35"
LINUXLIBCVERSION ?= "5.16%"
-QEMUVERSION ?= "6.2%"
+QEMUVERSION ?= "7.0%"
GOVERSION ?= "1.18%"
# This can not use wildcards like 8.0.% since it is also used in mesa to denote
# llvm version being used, so always bump it with llvm recipe version bump
-LLVMVERSION ?= "14.0.1"
+LLVMVERSION ?= "14.0.3"
RUSTVERSION ?= "1.60%"
PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf
index a5d727ef5b..076cba58d1 100644
--- a/poky/meta/conf/layer.conf
+++ b/poky/meta/conf/layer.conf
@@ -103,6 +103,7 @@ SSTATE_EXCLUDEDEPS_SYSROOT += "\
.*->quilt-native \
^(?!gtk-doc-native).*->xmlto-native \
.*->gperf-native \
+ .*->help2man-native \
.*->gtk-doc-native \
.*->texinfo-native \
.*->perlcross-native \
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppc603e.inc b/poky/meta/conf/machine/include/powerpc/tune-ppc603e.inc
index 8beec00f24..28680bdb3c 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppc603e.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppc603e.inc
@@ -9,6 +9,3 @@ AVAILTUNES += "ppc603e"
TUNE_FEATURES:tune-ppc603e = "m32 fpu-hard ppc603e bigendian"
TUNE_PKGARCH:tune-ppc603e = "ppc603e"
PACKAGE_EXTRA_ARCHS:tune-ppc603e = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppc603e"
-
-# glibc configure options to get 603e specific library (for sqrt)
-GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppc603e', '-with-cpu=603e', '', d)}"
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppc7400.inc b/poky/meta/conf/machine/include/powerpc/tune-ppc7400.inc
index 1e2c9fc2ce..49b94f5ee1 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppc7400.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppc7400.inc
@@ -9,6 +9,3 @@ AVAILTUNES += "ppc7400"
TUNE_FEATURES:tune-ppc7400 = "m32 fpu-hard ppc7400 altivec bigendian"
TUNE_PKGARCH:tune-ppc7400 = "ppc7400"
PACKAGE_EXTRA_ARCHS:tune-ppc7400 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppc7400"
-
-# glibc configure options to get 7400 specific library (for sqrt)
-#GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppc7400', '--with-cpu=power4', '', d)}"
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppce300c3.inc b/poky/meta/conf/machine/include/powerpc/tune-ppce300c3.inc
index b74b6ad976..31aff51af3 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppce300c3.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppce300c3.inc
@@ -11,9 +11,6 @@ TUNE_PKGARCH:tune-ppce300c3 = "ppce300c3"
PACKAGE_EXTRA_ARCHS:tune-ppce300c3 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce300c3"
TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'ppce300c3', ' -mcpu=e300c3', '', d)}"
-# glibc config options to make use of e300c3 (603e) specific sqrt/sqrtf routines
-GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppce300c3', '--with-cpu=e300c3', '', d)}"
-
# soft-float
TUNEVALID[ppce300c3-nf] = "Enable ppce300c3 specific processor optimizations (no fpu)"
TUNE_FEATURES:tune-ppce300c3-nf = "${TUNE_FEATURES:tune-powerpc-nf} ppce300c3-nf"
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppce500mc.inc b/poky/meta/conf/machine/include/powerpc/tune-ppce500mc.inc
index e3524a10ca..036f8b2631 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppce500mc.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppce500mc.inc
@@ -10,8 +10,5 @@ TUNE_FEATURES:tune-ppce500mc = "m32 fpu-hard ppce500mc bigendian"
TUNE_PKGARCH:tune-ppce500mc = "ppce500mc"
PACKAGE_EXTRA_ARCHS:tune-ppce500mc = "${PACKAGE_EXTRA_ARCHS:tune-powerpc} ppce500mc"
-# glibc configure options to get e500mc specific library (for sqrt)
-GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'ppce500mc', '-with-cpu=e500mc', '', d)}"
-
# pass -mcpu=e500mc for ppce500mc kernel cross compile
TARGET_CC_KERNEL_ARCH = "-mcpu=e500mc"
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppce5500.inc b/poky/meta/conf/machine/include/powerpc/tune-ppce5500.inc
index 2cf7b1737c..4915b81ee4 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppce5500.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppce5500.inc
@@ -16,8 +16,5 @@ BASE_LIB:tune-ppc64e5500 = "lib64"
TUNE_PKGARCH:tune-ppc64e5500 = "ppc64e5500"
PACKAGE_EXTRA_ARCHS:tune-ppc64e5500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64e5500"
-# glibc configure options to get e5500 specific library (for sqrt)
-GLIBC_EXTRA_OECONF += "${@bb.utils.contains('TUNE_FEATURES', 'e5500', '--with-cpu=e5500', '', d)}"
-
# QEMU usermode fails with invalid instruction error (YOCTO: #10304)
MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'e5500', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/include/powerpc/tune-ppce6500.inc b/poky/meta/conf/machine/include/powerpc/tune-ppce6500.inc
index e78de350ad..f6310ab4c4 100644
--- a/poky/meta/conf/machine/include/powerpc/tune-ppce6500.inc
+++ b/poky/meta/conf/machine/include/powerpc/tune-ppce6500.inc
@@ -16,9 +16,5 @@ BASE_LIB:tune-ppc64e6500 = "lib64"
TUNE_PKGARCH:tune-ppc64e6500 = "ppc64e6500"
PACKAGE_EXTRA_ARCHS:tune-ppc64e6500 = "${PACKAGE_EXTRA_ARCHS:tune-powerpc64} ppc64e6500"
-# glibc configure options to get e6500 specific library
-GLIBC_EXTRA_OECONF:powerpc64 += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
-GLIBC_EXTRA_OECONF:powerpc += "${@bb.utils.contains('TUNE_FEATURES', 'e6500', '--with-cpu=e6500', '', d)}"
-
# QEMU usermode fails with invalid instruction error (YOCTO: #10304)
MACHINE_FEATURES_BACKFILL_CONSIDERED:append = "${@bb.utils.contains('TUNE_FEATURES', 'e6500', ' qemu-usermode', '', d)}"
diff --git a/poky/meta/conf/machine/qemuarmv5.conf b/poky/meta/conf/machine/qemuarmv5.conf
index 2dad504c99..abdae5f361 100644
--- a/poky/meta/conf/machine/qemuarmv5.conf
+++ b/poky/meta/conf/machine/qemuarmv5.conf
@@ -15,7 +15,7 @@ QB_MACHINE = "-machine versatilepb"
QB_KERNEL_CMDLINE_APPEND = "vmalloc=256"
QB_GRAPHICS = "-device virtio-gpu-pci"
QB_OPT_APPEND = "-device qemu-xhci -device usb-tablet -device usb-kbd"
-PREFERRED_VERSION_linux-yocto ??= "5.15%"
QB_DTB = "${@oe.utils.version_less_or_equal('PREFERRED_VERSION_linux-yocto', '4.7', '', 'zImage-versatile-pb.dtb', d)}"
-KMACHINE:qemuarmv5 = "qemuarm"
+PREFERRED_VERSION_linux-yocto ??= "5.15%"
+KMACHINE:qemuarmv5 = "arm-versatile-926ejs"
diff --git a/poky/meta/lib/oeqa/selftest/cases/cve_check.py b/poky/meta/lib/oeqa/selftest/cases/cve_check.py
index d1947baffc..2f26f606d7 100644
--- a/poky/meta/lib/oeqa/selftest/cases/cve_check.py
+++ b/poky/meta/lib/oeqa/selftest/cases/cve_check.py
@@ -1,9 +1,13 @@
-from oe.cve_check import Version
+import json
+import os
from oeqa.selftest.case import OESelftestTestCase
+from oeqa.utils.commands import bitbake, get_bb_vars
class CVECheck(OESelftestTestCase):
def test_version_compare(self):
+ from oe.cve_check import Version
+
result = Version("100") > Version("99")
self.assertTrue( result, msg="Failed to compare version '100' > '99'")
result = Version("2.3.1") > Version("2.2.3")
@@ -42,3 +46,74 @@ class CVECheck(OESelftestTestCase):
self.assertTrue( result ,msg="Failed to compare version with suffix '1.0p2' > '1.0p1'")
result = Version("1.0_patch2","patch") < Version("1.0_patch3","patch")
self.assertTrue( result ,msg="Failed to compare version with suffix '1.0_patch2' < '1.0_patch3'")
+
+
+ def test_recipe_report_json(self):
+ config = """
+INHERIT += "cve-check"
+CVE_CHECK_FORMAT_JSON = "1"
+"""
+ self.write_config(config)
+
+ vars = get_bb_vars(["CVE_CHECK_SUMMARY_DIR", "CVE_CHECK_SUMMARY_FILE_NAME_JSON"])
+ summary_json = os.path.join(vars["CVE_CHECK_SUMMARY_DIR"], vars["CVE_CHECK_SUMMARY_FILE_NAME_JSON"])
+ recipe_json = os.path.join(vars["CVE_CHECK_SUMMARY_DIR"], "m4-native_cve.json")
+
+ try:
+ os.remove(summary_json)
+ os.remove(recipe_json)
+ except FileNotFoundError:
+ pass
+
+ bitbake("m4-native -c cve_check")
+
+ def check_m4_json(filename):
+ with open(filename) as f:
+ report = json.load(f)
+ self.assertEqual(report["version"], "1")
+ self.assertEqual(len(report["package"]), 1)
+ package = report["package"][0]
+ self.assertEqual(package["name"], "m4-native")
+ found_cves = { issue["id"]: issue["status"] for issue in package["issue"]}
+ self.assertIn("CVE-2008-1687", found_cves)
+ self.assertEqual(found_cves["CVE-2008-1687"], "Patched")
+
+ self.assertExists(summary_json)
+ check_m4_json(summary_json)
+ self.assertExists(recipe_json)
+ check_m4_json(recipe_json)
+
+
+ def test_image_json(self):
+ config = """
+INHERIT += "cve-check"
+CVE_CHECK_FORMAT_JSON = "1"
+"""
+ self.write_config(config)
+
+ vars = get_bb_vars(["CVE_CHECK_DIR", "CVE_CHECK_SUMMARY_DIR", "CVE_CHECK_SUMMARY_FILE_NAME_JSON"])
+ report_json = os.path.join(vars["CVE_CHECK_SUMMARY_DIR"], vars["CVE_CHECK_SUMMARY_FILE_NAME_JSON"])
+ print(report_json)
+ try:
+ os.remove(report_json)
+ except FileNotFoundError:
+ pass
+
+ bitbake("core-image-minimal-initramfs")
+ self.assertExists(report_json)
+
+ # Check that the summary report lists at least one package
+ with open(report_json) as f:
+ report = json.load(f)
+ self.assertEqual(report["version"], "1")
+ self.assertGreater(len(report["package"]), 1)
+
+ # Check that a random recipe wrote a recipe report to deploy/cve/
+ recipename = report["package"][0]["name"]
+ recipe_report = os.path.join(vars["CVE_CHECK_DIR"], recipename + "_cve.json")
+ self.assertExists(recipe_report)
+ with open(recipe_report) as f:
+ report = json.load(f)
+ self.assertEqual(report["version"], "1")
+ self.assertEqual(len(report["package"]), 1)
+ self.assertEqual(report["package"][0]["name"], recipename)
diff --git a/poky/meta/lib/oeqa/selftest/cases/git.py b/poky/meta/lib/oeqa/selftest/cases/git.py
new file mode 100644
index 0000000000..f12874dc7d
--- /dev/null
+++ b/poky/meta/lib/oeqa/selftest/cases/git.py
@@ -0,0 +1,15 @@
+from oeqa.selftest.case import OESelftestTestCase
+from oeqa.utils.commands import bitbake
+
+class GitCheck(OESelftestTestCase):
+ def test_git_intercept(self):
+ """
+ Git binaries with CVE-2022-24765 fixed will refuse to operate on a
+ repository which is owned by a different user. This breaks our
+ do_install task as that runs inside pseudo, so the git repository is
+ owned by the build user but git is running as (fake)root.
+
+ We have an intercept which disables pseudo, so verify that it works.
+ """
+ bitbake("git-submodule-test -c test_git_as_user")
+ bitbake("git-submodule-test -c test_git_as_root")
diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
index 6b94ace4eb..6d010b3e3a 100644
--- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
+++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py
@@ -235,7 +235,7 @@ USERADD_GID_TABLES += "files/static-group"
DISTRO_FEATURES:append = " pam opengl wayland"
# Switch to systemd
-DISTRO_FEATURES += "systemd"
+DISTRO_FEATURES:append = " systemd"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = ""
VIRTUAL-RUNTIME_syslog = ""
diff --git a/poky/meta/lib/oeqa/selftest/cases/overlayfs.py b/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
index 472746a64f..96beb8b869 100644
--- a/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
+++ b/poky/meta/lib/oeqa/selftest/cases/overlayfs.py
@@ -55,18 +55,36 @@ inherit overlayfs
config = """
IMAGE_INSTALL:append = " overlayfs-user"
-DISTRO_FEATURES += "systemd overlayfs"
+DISTRO_FEATURES:append = " systemd overlayfs"
"""
self.write_config(config)
self.add_overlay_conf_to_machine()
res = bitbake('core-image-minimal', ignore_status=True)
- line = getline(res, " Mount path /mnt/overlay not found in fstat and unit mnt-overlay.mount not found in systemd unit directories")
+ line = getline(res, " Mount path /mnt/overlay not found in fstab and unit mnt-overlay.mount not found in systemd unit directories")
self.assertTrue(line and line.startswith("WARNING:"), msg=res.output)
line = getline(res, "Not all mount paths and units are installed in the image")
self.assertTrue(line and line.startswith("ERROR:"), msg=res.output)
+ def test_not_all_units_installed_but_qa_skipped(self):
+ """
+ Summary: Test skipping the QA check
+ Expected: Image is created successfully
+ Author: Claudius Heine <ch@denx.de>
+ """
+
+ config = """
+IMAGE_INSTALL:append = " overlayfs-user"
+DISTRO_FEATURES += "systemd overlayfs"
+OVERLAYFS_QA_SKIP[mnt-overlay] = "mount-configured"
+"""
+
+ self.write_config(config)
+ self.add_overlay_conf_to_machine()
+
+ bitbake('core-image-minimal')
+
def test_mount_unit_not_set(self):
"""
Summary: Test whether mount unit was set properly
@@ -76,7 +94,7 @@ DISTRO_FEATURES += "systemd overlayfs"
config = """
IMAGE_INSTALL:append = " overlayfs-user"
-DISTRO_FEATURES += "systemd overlayfs"
+DISTRO_FEATURES:append = " systemd overlayfs"
"""
self.write_config(config)
@@ -94,7 +112,7 @@ DISTRO_FEATURES += "systemd overlayfs"
config = """
IMAGE_INSTALL:append = " overlayfs-user"
-DISTRO_FEATURES += "systemd overlayfs"
+DISTRO_FEATURES:append = " systemd overlayfs"
"""
wrong_machine_config = """
@@ -118,7 +136,7 @@ OVERLAYFS_MOUNT_POINT[usr-share-overlay] = "/usr/share/overlay"
config = """
IMAGE_INSTALL:append = " overlayfs-user systemd-machine-units"
-DISTRO_FEATURES += "systemd overlayfs"
+DISTRO_FEATURES:append = " systemd overlayfs"
# Use systemd as init manager
VIRTUAL-RUNTIME_init_manager = "systemd"
@@ -253,7 +271,7 @@ class OverlayFSEtcRunTimeTests(OESelftestTestCase):
"""
configBase = """
-DISTRO_FEATURES += "systemd"
+DISTRO_FEATURES:append = " systemd"
# Use systemd as init manager
VIRTUAL-RUNTIME_init_manager = "systemd"
@@ -295,7 +313,7 @@ OVERLAYFS_ETC_DEVICE = "/dev/mmcblk0p1"
"""
config = """
-DISTRO_FEATURES += "systemd"
+DISTRO_FEATURES:append = " systemd"
# Use systemd as init manager
VIRTUAL-RUNTIME_init_manager = "systemd"
@@ -331,7 +349,7 @@ INHERIT += "overlayfs-etc"
"""
config = f"""
-DISTRO_FEATURES += "systemd"
+DISTRO_FEATURES:append = " systemd"
# Use systemd as init manager
VIRTUAL-RUNTIME_init_manager = "systemd"
@@ -373,7 +391,7 @@ OVERLAYFS_ETC_DEVICE = "/dev/sda3"
"""
config = """
-DISTRO_FEATURES += "systemd"
+DISTRO_FEATURES:append = " systemd"
# Use systemd as init manager
VIRTUAL-RUNTIME_init_manager = "systemd"
diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
index 3ece617cb0..8eacde40ad 100644
--- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
+++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py
@@ -252,7 +252,7 @@ class TestImage(OESelftestTestCase):
import subprocess, os
distro = oe.lsb.distro_identifier()
- if distro and distro in ['debian-9', 'debian-10', 'centos-7', 'centos-8', 'ubuntu-16.04', 'ubuntu-18.04', 'almalinux-8.5']:
+ if distro and distro in ['debian-9', 'debian-10', 'centos-7', 'centos-8', 'ubuntu-16.04', 'ubuntu-18.04', 'almalinux-8.5', 'almalinux-8.6']:
self.skipTest('virgl headless cannot be tested with %s' %(distro))
render_hint = """If /dev/dri/renderD* is absent due to lack of suitable GPU, 'modprobe vgem' will create one suitable for mesa llvmpipe software renderer."""
diff --git a/poky/meta/recipes-bsp/pciutils/pciutils/configure.patch b/poky/meta/recipes-bsp/pciutils/pciutils/configure.patch
index e444c13975..cf55b94808 100644
--- a/poky/meta/recipes-bsp/pciutils/pciutils/configure.patch
+++ b/poky/meta/recipes-bsp/pciutils/pciutils/configure.patch
@@ -1,9 +1,14 @@
+From 502c01e180d9085fcbeaf2fb46239999c4f335d2 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <rpurdie@linux.intel.com>
+Date: Wed, 31 Dec 2008 17:20:38 +0000
+Subject: [PATCH] pciutils: Upgarde 2.2.4 -> 3.0.3
+
This patch:
* ensures we link correctly
* allows us to optionally pass target information to configure rather than using uname
* select linux as the platform in most cases we care about
-This is a merge of various tweaks to allow us to build pciutils including
+This is a merge of various tweaks to allow us to build pciutils including
work from:
7/30/2010 - Qing He <qing.he@intel.com>
@@ -13,23 +18,28 @@ Ionut Radu <ionutx.radu@intel.com>
Upstream-Status: Inappropriate [embedded specific]
-Index: pciutils-3.5.6/Makefile
-===================================================================
---- pciutils-3.5.6.orig/Makefile
-+++ pciutils-3.5.6/Makefile
-@@ -96,7 +96,7 @@ example: example.o lib/$(PCILIB)
+---
+ Makefile | 2 +-
+ lib/configure | 14 ++++++++++----
+ 2 files changed, 11 insertions(+), 5 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 9319bb4..78a2d54 100644
+--- a/Makefile
++++ b/Makefile
+@@ -108,7 +108,7 @@ example$(EXEEXT): example.o lib/$(PCILIB)
example.o: example.c $(PCIINC)
- %: %.o
+ %$(EXEEXT): %.o
- $(CC) $(LDFLAGS) $(TARGET_ARCH) $^ $(LDLIBS) -o $@
+ $(CC) $(LDFLAGS) $(TARGET_ARCH) $^ $(LIB_LDLIBS) $(LDLIBS) -o $@
%.8 %.7 %.5: %.man
- M=`echo $(DATE) | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <$< >$@ "s/@TODAY@/$$M/;s/@VERSION@/pciutils-$(VERSION)/;s#@IDSDIR@#$(IDSDIR)#"
-Index: pciutils-3.5.6/lib/configure
-===================================================================
---- pciutils-3.5.6.orig/lib/configure
-+++ pciutils-3.5.6/lib/configure
+ M=`echo $(DATE) | sed 's/-01-/-January-/;s/-02-/-February-/;s/-03-/-March-/;s/-04-/-April-/;s/-05-/-May-/;s/-06-/-June-/;s/-07-/-July-/;s/-08-/-August-/;s/-09-/-September-/;s/-10-/-October-/;s/-11-/-November-/;s/-12-/-December-/;s/\(.*\)-\(.*\)-\(.*\)/\3 \2 \1/'` ; sed <$< >$@ "s/@TODAY@/$$M/;s/@VERSION@/pciutils-$(VERSION)/;s#@IDSDIR@#$(IDSDIR)#;s#@PCI_IDS@#$(PCI_IDS)#"
+diff --git a/lib/configure b/lib/configure
+index 45a416a..1afdaa6 100755
+--- a/lib/configure
++++ b/lib/configure
@@ -9,6 +9,10 @@ echo_n() {
printf '%s' "$*"
}
@@ -38,7 +48,7 @@ Index: pciutils-3.5.6/lib/configure
+IDSDIR=$2
+DNS=yes
+
- if [ -z "$VERSION" -o -z "$IDSDIR" ] ; then
+ if [ -z "$VERSION" ] ; then
echo >&2 "Please run the configure script from the top-level Makefile"
exit 1
@@ -16,8 +20,8 @@ fi
@@ -56,12 +66,12 @@ Index: pciutils-3.5.6/lib/configure
proc=`/usr/sbin/lsdev -C -c processor -S available -F name | head -1`
cpu=`/usr/sbin/lsattr -F value -l $proc -a type | sed 's/_.*//'`
else
-- cpu=`uname -m | sed 's/^i.86$/i386/;s/^sun4u$/sparc64/;s/^i86pc$/i386/;s/^BePC$/i386/;s/^BeMac$/powerpc/;s/^BeBox$/powerpc/'`
-+ cpu=${4:-`uname -m | sed 's/^i.86$/i386/;s/^sun4u$/sparc64/;s/^i86pc$/i386/;s/^BePC$/i386/;s/^BeMac$/powerpc/;s/^BeBox$/powerpc/'`}
+- cpu=`uname -m | sed 's/^i.86-AT386/i386/;s/^i.86$/i386/;s/^sun4u$/sparc64/;s/^i86pc$/i386/;s/^BePC$/i386/;s/^BeMac$/powerpc/;s/^BeBox$/powerpc/'`
++ cpu=${4:-`uname -m | sed 's/^i.86-AT386/i386/;s/^i.86$/i386/;s/^sun4u$/sparc64/;s/^i86pc$/i386/;s/^BePC$/i386/;s/^BeMac$/powerpc/;s/^BeBox$/powerpc/'`}
fi
- if [ "$sys" = "GNU/kFreeBSD" -o "$sys" = "DragonFly" ]
+ if [ "$sys" = "DragonFly" ]
then
-@@ -35,7 +39,7 @@ if [ -z "$HOST" ] ; then
+@@ -43,7 +47,7 @@ if [ -z "$HOST" ] ; then
then
sys=cygwin
fi
@@ -70,7 +80,7 @@ Index: pciutils-3.5.6/lib/configure
fi
[ -n "$RELEASE" ] && rel="${RELEASE}"
# CAVEAT: tr on Solaris is a bit weird and the extra [] is otherwise harmless.
-@@ -44,6 +48,8 @@ cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+@@ -52,6 +56,8 @@ cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
sys=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
echo " $host $rel $cpu $sys"
diff --git a/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb b/poky/meta/recipes-bsp/pciutils/pciutils_3.8.0.bb
index 7d1740f665..f3a67d97e4 100644
--- a/poky/meta/recipes-bsp/pciutils/pciutils_3.7.0.bb
+++ b/poky/meta/recipes-bsp/pciutils/pciutils_3.8.0.bb
@@ -6,12 +6,15 @@ SECTION = "console/utils"
LICENSE = "GPL-2.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "zlib kmod"
+# Can drop make-native when all systems have make 4.3
+# https://git.savannah.gnu.org/cgit/make.git/commit/?id=b90fabc8d6f34fb37d428dc0fb1b8b1951a9fbed
+# causes space issues in lib/libpci.pc
+DEPENDS = "zlib kmod make-native"
SRC_URI = "${KERNELORG_MIRROR}/software/utils/pciutils/pciutils-${PV}.tar.xz \
file://configure.patch"
-SRC_URI[sha256sum] = "9d40b97be8b6a2cdf96aead5a61881d1f7e4e0da9544a9bac4fba1ae9dcd40eb"
+SRC_URI[sha256sum] = "91edbd0429a84705c9ad156d4ff38ccc724d41ea54c4c5b88e38e996f8a34f05"
inherit multilib_header pkgconfig
@@ -46,7 +49,6 @@ do_install () {
oe_runmake DESTDIR=${D} install install-lib
install -d ${D}${bindir}
- ln -s ../sbin/lspci ${D}${bindir}/lspci
oe_multilib_header pci/config.h
}
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
index d366f10398..8fc33608d0 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-common.inc
@@ -12,7 +12,7 @@ PE = "1"
# We use the revision in order to avoid having to fetch it from the
# repo during parse
-SRCREV = "d637294e264adfeb29f390dfc393106fd4d41b17"
+SRCREV = "e4b6ebd3de982ae7185dbf689a030e73fd06e0d2"
SRC_URI = "git://source.denx.de/u-boot/u-boot.git;protocol=https;branch=master"
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc b/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
index 7eda6a0897..a8d7fab46d 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-tools.inc
@@ -1,5 +1,5 @@
SUMMARY = "U-Boot bootloader tools"
-DEPENDS += "openssl"
+DEPENDS += "gnutls openssl util-linux"
PROVIDES = "${MLPREFIX}u-boot-mkimage ${MLPREFIX}u-boot-mkenvimage"
PROVIDES:class-native = "u-boot-mkimage-native u-boot-mkenvimage-native"
@@ -38,7 +38,7 @@ do_compile () {
# (i.e. creating a hardlink dirties the index)
cd ${S}; git diff; cd ${B}
- oe_runmake -C ${S} sandbox_defconfig O=${B}
+ oe_runmake -C ${S} tools-only_defconfig O=${B}
# Disable CONFIG_CMD_LICENSE, license.h is not used by tools and
# generating it requires bin2header tool, which for target build
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.04.bb
index 7eaf721ca8..7eaf721ca8 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.01.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot-tools_2022.04.bb
diff --git a/poky/meta/recipes-bsp/u-boot/u-boot_2022.01.bb b/poky/meta/recipes-bsp/u-boot/u-boot_2022.04.bb
index 0d2464d74b..0d2464d74b 100644
--- a/poky/meta/recipes-bsp/u-boot/u-boot_2022.01.bb
+++ b/poky/meta/recipes-bsp/u-boot/u-boot_2022.04.bb
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-avoid-start-failure-with-bind-user.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-avoid-start-failure-with-bind-user.patch
index ec1bc7b567..ec1bc7b567 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-avoid-start-failure-with-bind-user.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-avoid-start-failure-with-bind-user.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-named-lwresd-V-and-start-log-hide-build-options.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-named-lwresd-V-and-start-log-hide-build-options.patch
index 4c10f33f04..4c10f33f04 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/0001-named-lwresd-V-and-start-log-hide-build-options.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/0001-named-lwresd-V-and-start-log-hide-build-options.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/bind-ensure-searching-for-json-headers-searches-sysr.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/bind-ensure-searching-for-json-headers-searches-sysr.patch
index f1abd179e8..f1abd179e8 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/bind-ensure-searching-for-json-headers-searches-sysr.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/bind-ensure-searching-for-json-headers-searches-sysr.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/bind9 b/poky/meta/recipes-connectivity/bind/bind-9.18.2/bind9
index 968679ff7f..968679ff7f 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/bind9
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/bind9
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/conf.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/conf.patch
index aa3642acec..aa3642acec 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/conf.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/conf.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/generate-rndc-key.sh b/poky/meta/recipes-connectivity/bind/bind-9.18.2/generate-rndc-key.sh
index 633e29c0e6..633e29c0e6 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/generate-rndc-key.sh
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/generate-rndc-key.sh
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/init.d-add-support-for-read-only-rootfs.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/init.d-add-support-for-read-only-rootfs.patch
index 11db95ede1..11db95ede1 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/init.d-add-support-for-read-only-rootfs.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/init.d-add-support-for-read-only-rootfs.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/make-etc-initd-bind-stop-work.patch b/poky/meta/recipes-connectivity/bind/bind-9.18.2/make-etc-initd-bind-stop-work.patch
index 146f3e35db..146f3e35db 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/make-etc-initd-bind-stop-work.patch
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/make-etc-initd-bind-stop-work.patch
diff --git a/poky/meta/recipes-connectivity/bind/bind-9.18.1/named.service b/poky/meta/recipes-connectivity/bind/bind-9.18.2/named.service
index cda56ef015..cda56ef015 100644
--- a/poky/meta/recipes-connectivity/bind/bind-9.18.1/named.service
+++ b/poky/meta/recipes-connectivity/bind/bind-9.18.2/named.service
diff --git a/poky/meta/recipes-connectivity/bind/bind_9.18.1.bb b/poky/meta/recipes-connectivity/bind/bind_9.18.2.bb
index 6aa832f8f5..1c77aceb9f 100644
--- a/poky/meta/recipes-connectivity/bind/bind_9.18.1.bb
+++ b/poky/meta/recipes-connectivity/bind/bind_9.18.2.bb
@@ -20,7 +20,7 @@ SRC_URI = "https://ftp.isc.org/isc/bind9/${PV}/${BPN}-${PV}.tar.xz \
file://0001-avoid-start-failure-with-bind-user.patch \
"
-SRC_URI[sha256sum] = "57c7afd871694d615cb4defb1c1bd6ed023350943d7458414db8d493ef560427"
+SRC_URI[sha256sum] = "2e4b38779bba0a23ee634fdf7c525fd9794c41d692bfd83cda25823a2a3ed969"
UPSTREAM_CHECK_URI = "https://ftp.isc.org/isc/bind9/"
# follow the ESV versions divisible by 2
diff --git a/poky/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb b/poky/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb
index 781b9216c5..e6f216e5cb 100644
--- a/poky/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb
+++ b/poky/meta/recipes-connectivity/mobile-broadband-provider-info/mobile-broadband-provider-info_git.bb
@@ -5,8 +5,8 @@ SECTION = "network"
LICENSE = "PD"
LIC_FILES_CHKSUM = "file://COPYING;md5=87964579b2a8ece4bc6744d2dc9a8b04"
-SRCREV = "4cbb44a9fe26aa6f0b28beb79f9488b37c097b5e"
-PV = "20220315"
+SRCREV = "3d5c8d0f7e0264768a2c000d0fd4b4d4a991e041"
+PV = "20220511"
PE = "1"
SRC_URI = "git://gitlab.gnome.org/GNOME/mobile-broadband-provider-info.git;protocol=https;branch=main"
diff --git a/poky/meta/recipes-connectivity/neard/neard_0.16.bb b/poky/meta/recipes-connectivity/neard/neard_0.18.bb
index bc9ce07d79..23e999acc4 100644
--- a/poky/meta/recipes-connectivity/neard/neard_0.16.bb
+++ b/poky/meta/recipes-connectivity/neard/neard_0.18.bb
@@ -15,7 +15,7 @@ SRC_URI = "git://git.kernel.org/pub/scm/network/nfc/neard.git;protocol=git;branc
file://0001-Add-header-dependency-to-nciattach.o.patch \
"
-SRCREV = "949795024f7625420e93e288c56e194cb9a3e74a"
+SRCREV = "c781008d3786e03173f0a0f5dfcc0545c787d7fc"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-connectivity/openssh/openssh_9.0p1.bb b/poky/meta/recipes-connectivity/openssh/openssh_9.0p1.bb
index 975faed547..b63ea2b137 100644
--- a/poky/meta/recipes-connectivity/openssh/openssh_9.0p1.bb
+++ b/poky/meta/recipes-connectivity/openssh/openssh_9.0p1.bb
@@ -158,7 +158,7 @@ FILES:${PN}-sftp-server = "${libexecdir}/sftp-server"
FILES:${PN}-misc = "${bindir}/ssh* ${libexecdir}/ssh*"
FILES:${PN}-keygen = "${bindir}/ssh-keygen"
-RDEPENDS:${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen"
+RDEPENDS:${PN} += "${PN}-scp ${PN}-ssh ${PN}-sshd ${PN}-keygen ${PN}-sftp-server"
RDEPENDS:${PN}-sshd += "${PN}-keygen ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam-plugin-keyinit pam-plugin-loginuid', '', d)}"
RRECOMMENDS:${PN}-sshd:append:class-target = "\
${@bb.utils.filter('PACKAGECONFIG', 'rng-tools', d)} \
diff --git a/poky/meta/recipes-connectivity/openssl/openssl_3.0.2.bb b/poky/meta/recipes-connectivity/openssl/openssl_3.0.3.bb
index a809666aa7..fd88ae807d 100644
--- a/poky/meta/recipes-connectivity/openssl/openssl_3.0.2.bb
+++ b/poky/meta/recipes-connectivity/openssl/openssl_3.0.3.bb
@@ -18,7 +18,7 @@ SRC_URI:append:class-nativesdk = " \
file://environment.d-openssl.sh \
"
-SRC_URI[sha256sum] = "98e91ccead4d4756ae3c9cde5e09191a8e586d9f4d50838e7ec09d6411dfdb63"
+SRC_URI[sha256sum] = "ee0078adcef1de5f003c62c80cc96527721609c6f3bb42b7795df31f8b558c0b"
inherit lib_package multilib_header multilib_script ptest perlnative
MULTILIB_SCRIPTS = "${PN}-bin:${bindir}/c_rehash"
diff --git a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
index aee56578d2..4e27b92bc6 100644
--- a/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
+++ b/poky/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant_2.10.bb
@@ -35,12 +35,15 @@ EXTRA_OEMAKE = "'LIBDIR=${libdir}' 'INCDIR=${includedir}' 'BINDIR=${sbindir}'"
do_configure () {
${MAKE} -C wpa_supplicant clean
- sed -e '/CONFIG_TLS=/d' <wpa_supplicant/defconfig >wpa_supplicant/.config
+ sed -e '/^CONFIG_TLS=/d' <wpa_supplicant/defconfig >wpa_supplicant/.config
if ${@ bb.utils.contains('PACKAGECONFIG', 'openssl', 'true', 'false', d) }; then
echo 'CONFIG_TLS=openssl' >>wpa_supplicant/.config
elif ${@ bb.utils.contains('PACKAGECONFIG', 'gnutls', 'true', 'false', d) }; then
echo 'CONFIG_TLS=gnutls' >>wpa_supplicant/.config
+ sed -i -e 's/\(^CONFIG_DPP=\)/#\1/' \
+ -e 's/\(^CONFIG_EAP_PWD=\)/#\1/' \
+ -e 's/\(^CONFIG_SAE=\)/#\1/' wpa_supplicant/.config
fi
# For rebuild
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0001-Add-a-shutdown-group.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0001-Add-a-shutdown-group.patch
new file mode 100644
index 0000000000..e50efc9623
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0001-Add-a-shutdown-group.patch
@@ -0,0 +1,26 @@
+From 8f3ace87df3aaad85946c22cae240532ea3e73b8 Mon Sep 17 00:00:00 2001
+From: Saul Wold <sgw@linux.intel.com>
+Date: Fri, 29 Apr 2022 13:32:27 +0000
+Subject: [PATCH] Add a shutdown group
+
+We need to have a shutdown group to allow the shutdown icon to work
+correctly. Any users that want to use shutdown like the xuser should
+be added to this group.
+
+Upstream-Status: Inappropriate [Embedded]
+Signed-off-by: Saul Wold <sgw@linux.intel.com>
+---
+ group.master | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/group.master b/group.master
+index ad1dd2d..1b5e2fb 100644
+--- a/group.master
++++ b/group.master
+@@ -35,5 +35,6 @@ sasl:*:45:
+ plugdev:*:46:
+ staff:*:50:
+ games:*:60:
++shutdown:*:70:
+ users:*:100:
+ nogroup:*:65534:
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch
new file mode 100644
index 0000000000..09f8cfea9c
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch
@@ -0,0 +1,23 @@
+From 4411fc0df77566d52bee11ec0bad4be30a96e99e Mon Sep 17 00:00:00 2001
+From: Scott Garman <scott.a.garman@intel.com>
+Date: Fri, 29 Apr 2022 13:32:27 +0000
+Subject: [PATCH] Use /bin/sh instead of /bin/bash for the root user
+
+/bin/bash may not be included in some images such as minimal.
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+---
+ passwd.master | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/passwd.master b/passwd.master
+index 7cd4e24..041685a 100644
+--- a/passwd.master
++++ b/passwd.master
+@@ -1,4 +1,4 @@
+-root:*:0:0:root:/root:/bin/bash
++root:*:0:0:root:/root:/bin/sh
+ daemon:*:1:1:daemon:/usr/sbin:/usr/sbin/nologin
+ bin:*:2:2:bin:/bin:/usr/sbin/nologin
+ sys:*:3:3:sys:/dev:/usr/sbin/nologin
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch
new file mode 100644
index 0000000000..06222ab04c
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch
@@ -0,0 +1,21 @@
+From 13a1a284a134d18a454625a5b4485c0d99079ae9 Mon Sep 17 00:00:00 2001
+From: Scott Garman <scott.a.garman@intel.com>
+Date: Fri, 29 Apr 2022 13:32:28 +0000
+Subject: [PATCH] Remove "*" for root since we do not have an /etc/shadow
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Scott Garman <scott.a.garman@intel.com>
+---
+ passwd.master | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/passwd.master b/passwd.master
+index 041685a..31a84d4 100644
+--- a/passwd.master
++++ b/passwd.master
+@@ -1,4 +1,4 @@
+-root:*:0:0:root:/root:/bin/sh
++root::0:0:root:/root:/bin/sh
+ daemon:*:1:1:daemon:/usr/sbin:/usr/sbin/nologin
+ bin:*:2:2:bin:/bin:/usr/sbin/nologin
+ sys:*:3:3:sys:/dev:/usr/sbin/nologin
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0004-Add-an-input-group-for-the-dev-input-devices.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0004-Add-an-input-group-for-the-dev-input-devices.patch
new file mode 100644
index 0000000000..394a0f01d3
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0004-Add-an-input-group-for-the-dev-input-devices.patch
@@ -0,0 +1,23 @@
+From c5f012750f8102ff54af73ccc2d2b7bfa1f26db4 Mon Sep 17 00:00:00 2001
+From: Darren Hart <dvhart@linux.intel.com>
+Date: Fri, 29 Apr 2022 13:32:28 +0000
+Subject: [PATCH] Add an input group for the /dev/input/* devices
+
+Upstream-Status: Inappropriate [configuration]
+Signed-off-by: Darren Hart <dvhart@linux.intel.com>
+---
+ group.master | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/group.master b/group.master
+index 1b5e2fb..cea9d60 100644
+--- a/group.master
++++ b/group.master
+@@ -12,6 +12,7 @@ uucp:*:10:
+ man:*:12:
+ proxy:*:13:
+ kmem:*:15:
++input:*:19:
+ dialout:*:20:
+ fax:*:21:
+ voice:*:22:
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0005-Add-kvm-group.patch
index 113d5151e7..72e6ee333c 100644
--- a/poky/meta/recipes-core/base-passwd/base-passwd/kvm.patch
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0005-Add-kvm-group.patch
@@ -1,4 +1,4 @@
-From 6355278b9f744291864c373a32a8da8f84aaaf37 Mon Sep 17 00:00:00 2001
+From 6cf19461fb31d7a7a3010629aae9aab49c26a01b Mon Sep 17 00:00:00 2001
From: Jacob Kroon <jacob.kroon@gmail.com>
Date: Wed, 30 Jan 2019 04:53:48 +0000
Subject: [PATCH] Add kvm group
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0006-Make-it-possible-to-build-without-debconf-support.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0006-Make-it-possible-to-build-without-debconf-support.patch
new file mode 100644
index 0000000000..6e236993f5
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0006-Make-it-possible-to-build-without-debconf-support.patch
@@ -0,0 +1,129 @@
+From 236d6c8c0dd7e15d9a9795813b94bc87ce09eec5 Mon Sep 17 00:00:00 2001
+From: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+Date: Fri, 29 Apr 2022 19:32:29 +0200
+Subject: [PATCH] Make it possible to build without debconf support
+
+Not all systems have the debconfclient library available.
+
+Upstream-Status: Backport [https://salsa.debian.org/debian/base-passwd/-/commit/c72aa5dd25a952da25e307761f4526db2c8c39ec]
+Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+---
+ Makefile.am | 1 -
+ configure.ac | 13 +++++++++++++
+ update-passwd.c | 15 +++++++++++++++
+ 3 files changed, 28 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index 223916f..4bdd769 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -3,7 +3,6 @@ SUBDIRS = doc man
+ sbin_PROGRAMS = update-passwd
+
+ update_passwd_SOURCES = update-passwd.c
+-update_passwd_LDADD = -ldebconfclient
+
+ pkgdata_DATA = passwd.master group.master
+
+diff --git a/configure.ac b/configure.ac
+index 9d1ace5..1e35ad1 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -14,6 +14,19 @@ AC_SYS_LARGEFILE
+ dnl Scan for things we need
+ AC_CHECK_FUNCS([putgrent])
+
++dnl Check for debconf
++AC_MSG_CHECKING([whether to enable debconf support])
++AC_ARG_ENABLE([debconf],
++ [AS_HELP_STRING([--disable-debconf], [disable support for debconf])],
++ [],
++ [enable_debconf=yes])
++AC_MSG_RESULT($enable_debconf)
++AS_IF([test "x$enable_debconf" != xno],
++ [AC_CHECK_LIB([debconfclient], [debconfclient_new], [],
++ [AC_MSG_ERROR(
++ [debconf support not available (use --disable-debconf to disable)])])
++ AC_DEFINE([HAVE_DEBCONF], [1], [Define if you have libdebconfclient])])
++
+ dnl Finally output everything
+ AC_CONFIG_FILES([Makefile doc/Makefile man/Makefile])
+ AC_OUTPUT
+diff --git a/update-passwd.c b/update-passwd.c
+index 3f3dffa..5b49740 100644
+--- a/update-passwd.c
++++ b/update-passwd.c
+@@ -39,7 +39,9 @@
+ #include <stdarg.h>
+ #include <ctype.h>
+
++#ifdef HAVE_DEBCONF
+ #include <cdebconf/debconfclient.h>
++#endif
+
+ #define DEFAULT_PASSWD_MASTER "/usr/share/base-passwd/passwd.master"
+ #define DEFAULT_GROUP_MASTER "/usr/share/base-passwd/group.master"
+@@ -143,6 +145,7 @@ int flag_debconf = 0;
+ const char* user_domain = DEFAULT_DEBCONF_DOMAIN;
+ const char* group_domain = DEFAULT_DEBCONF_DOMAIN;
+
++#ifdef HAVE_DEBCONF
+ struct debconfclient* debconf = NULL;
+
+ /* Abort the program if talking to debconf fails. Use ret exactly once. */
+@@ -162,6 +165,10 @@ struct debconfclient* debconf = NULL;
+ DEBCONF_CHECK(debconf_register(debconf, (template), (question)))
+ #define DEBCONF_SUBST(question, var, value) \
+ DEBCONF_CHECK(debconf_subst(debconf, (question), (var), (value)))
++#else
++#define DEBCONF_REGISTER(template, question)
++#define DEBCONF_SUBST(question, var, value)
++#endif
+
+
+ /* malloc() with out-of-memory checking.
+@@ -621,6 +628,7 @@ void version() {
+ * flag. Aborts the problem on any failure.
+ */
+ int ask_debconf(const char* priority, const char* question) {
++#ifdef HAVE_DEBCONF
+ int ret;
+ const char* response;
+
+@@ -640,6 +648,9 @@ int ask_debconf(const char* priority, const char* question) {
+ return 1;
+ else
+ return 0;
++#else
++ return 0;
++#endif
+ }
+
+
+@@ -1427,6 +1438,7 @@ int main(int argc, char** argv) {
+ /* If DEBIAN_HAS_FRONTEND is set in the environment, we're running under
+ * debconf. Enable debconf prompting unless --dry-run was also given.
+ */
++#ifdef HAVE_DEBCONF
+ if (getenv("DEBIAN_HAS_FRONTEND")!=NULL && !opt_dryrun) {
+ debconf=debconfclient_new();
+ if (debconf==NULL) {
+@@ -1435,6 +1447,7 @@ int main(int argc, char** argv) {
+ }
+ flag_debconf=1;
+ }
++#endif
+
+ if (read_passwd(&master_accounts, master_passwd)!=0)
+ return 2;
+@@ -1480,8 +1493,10 @@ int main(int argc, char** argv) {
+ if (!unlock_files())
+ return 5;
+
++#ifdef HAVE_DEBCONF
+ if (debconf!=NULL)
+ debconfclient_delete(debconf);
++#endif
+
+ if (opt_dryrun)
+ return flag_dirty;
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/0007-Make-it-possible-to-disable-the-generation-of-the-do.patch b/poky/meta/recipes-core/base-passwd/base-passwd/0007-Make-it-possible-to-disable-the-generation-of-the-do.patch
new file mode 100644
index 0000000000..5c63599143
--- /dev/null
+++ b/poky/meta/recipes-core/base-passwd/base-passwd/0007-Make-it-possible-to-disable-the-generation-of-the-do.patch
@@ -0,0 +1,46 @@
+From 63e8270141a296843cfe1daba38e1969ac6d75ae Mon Sep 17 00:00:00 2001
+From: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+Date: Sat, 30 Apr 2022 00:35:34 +0200
+Subject: [PATCH] Make it possible to disable the generation of the
+ documentation
+
+Not all systems have docbook and po4a available.
+
+Upstream-Status: Backport [https://salsa.debian.org/debian/base-passwd/-/commit/2a6d16e595c93084e279d0dcbef37d960b44fd1a]
+Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
+---
+ Makefile.am | 2 ++
+ configure.ac | 9 +++++++++
+ 2 files changed, 11 insertions(+)
+
+diff --git a/Makefile.am b/Makefile.am
+index 4bdd769..97b4f42 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -1,4 +1,6 @@
++if ENABLE_DOCS
+ SUBDIRS = doc man
++endif
+
+ sbin_PROGRAMS = update-passwd
+
+diff --git a/configure.ac b/configure.ac
+index 1e35ad1..b98374e 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -27,6 +27,15 @@ AS_IF([test "x$enable_debconf" != xno],
+ [debconf support not available (use --disable-debconf to disable)])])
+ AC_DEFINE([HAVE_DEBCONF], [1], [Define if you have libdebconfclient])])
+
++dnl Check whether to build the documentation
++AC_MSG_CHECKING([whether to build the documentation])
++AC_ARG_ENABLE([docs],
++ [AC_HELP_STRING([--disable-docs], [do not build and install documentation])],
++ [],
++ [enable_docs=yes])
++AC_MSG_RESULT($enable_docs)
++AM_CONDITIONAL(ENABLE_DOCS, test "x$enable_docs" = xyes)
++
+ dnl Finally output everything
+ AC_CONFIG_FILES([Makefile doc/Makefile man/Makefile])
+ AC_OUTPUT
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/add_shutdown.patch b/poky/meta/recipes-core/base-passwd/base-passwd/add_shutdown.patch
deleted file mode 100644
index 5f357d8895..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/add_shutdown.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-
-We need to have a shutdown group to allow the shutdown icon
-to work correctly. Any users that want to use shutdown like
-the xuser should be added to this group.
-
-Upstream-Status: Inappropriate [Embedded]
-
-Signed-off-by: Saul Wold <sgw@linux.intel.com>
-Index: base-passwd-3.5.26/group.master
-===================================================================
---- base-passwd-3.5.26.orig/group.master
-+++ base-passwd-3.5.26/group.master
-@@ -36,5 +36,6 @@ sasl:*:45:
- plugdev:*:46:
- staff:*:50:
- games:*:60:
-+shutdown:*:70:
- users:*:100:
- nogroup:*:65534:
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/disable-docs.patch b/poky/meta/recipes-core/base-passwd/base-passwd/disable-docs.patch
deleted file mode 100644
index 14c08b7484..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/disable-docs.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Disable documentation for now as it uses tools currently not supported
-by OE-Core. It uses sgmltools and po4a.
-
-Upstream-Status: Inappropriate [OE-Core specific]
-Signed-off-by: Saul Wold <sgw@linux.intel.com>
-
-Index: base-passwd-3.5.28/Makefile.in
-===================================================================
---- base-passwd-3.5.28.orig/Makefile.in
-+++ base-passwd-3.5.28/Makefile.in
-@@ -25,13 +25,10 @@ gen_configure = config.cache config.stat
- confdefhs.h config.h Makefile
-
- all: update-passwd
-- $(MAKE) -C doc all
-- $(MAKE) -C man all
-
- install: all
- mkdir -p $(DESTDIR)$(sbindir)
- $(INSTALL) update-passwd $(DESTDIR)$(sbindir)/
-- $(MAKE) -C man install
-
- update-passwd.o: version.h
-
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/disable-shell.patch b/poky/meta/recipes-core/base-passwd/base-passwd/disable-shell.patch
deleted file mode 100644
index dddc93ca35..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/disable-shell.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-From 91e0db96741359173ddf2be083aafcc1a3c32472 Mon Sep 17 00:00:00 2001
-From: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
-Date: Mon, 18 Apr 2022 11:22:43 +0800
-Subject: [PATCH] Disable shell for default users
-
-Change the shell of all global static users other than root (which
-retains /bin/sh) and sync (as /bin/sync is rather harmless) to
-/sbin/nologin (as /usr/sbin/nologin does not exist in openembedded)
-
-Upstream-Status: Backport [https://launchpad.net/ubuntu/+source/base-passwd/3.5.30]
-Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
----
- passwd.master | 32 ++++++++++++++++----------------
- 1 file changed, 16 insertions(+), 16 deletions(-)
-
-diff --git a/passwd.master b/passwd.master
-index e1c32ff..0cd5ffd 100644
---- a/passwd.master
-+++ b/passwd.master
-@@ -1,18 +1,18 @@
- root::0:0:root:/root:/bin/sh
--daemon:*:1:1:daemon:/usr/sbin:/bin/sh
--bin:*:2:2:bin:/bin:/bin/sh
--sys:*:3:3:sys:/dev:/bin/sh
-+daemon:*:1:1:daemon:/usr/sbin:/sbin/nologin
-+bin:*:2:2:bin:/bin:/sbin/nologin
-+sys:*:3:3:sys:/dev:/sbin/nologin
- sync:*:4:65534:sync:/bin:/bin/sync
--games:*:5:60:games:/usr/games:/bin/sh
--man:*:6:12:man:/var/cache/man:/bin/sh
--lp:*:7:7:lp:/var/spool/lpd:/bin/sh
--mail:*:8:8:mail:/var/mail:/bin/sh
--news:*:9:9:news:/var/spool/news:/bin/sh
--uucp:*:10:10:uucp:/var/spool/uucp:/bin/sh
--proxy:*:13:13:proxy:/bin:/bin/sh
--www-data:*:33:33:www-data:/var/www:/bin/sh
--backup:*:34:34:backup:/var/backups:/bin/sh
--list:*:38:38:Mailing List Manager:/var/list:/bin/sh
--irc:*:39:39:ircd:/var/run/ircd:/bin/sh
--gnats:*:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
--nobody:*:65534:65534:nobody:/nonexistent:/bin/sh
-+games:*:5:60:games:/usr/games:/sbin/nologin
-+man:*:6:12:man:/var/cache/man:/sbin/nologin
-+lp:*:7:7:lp:/var/spool/lpd:/sbin/nologin
-+mail:*:8:8:mail:/var/mail:/sbin/nologin
-+news:*:9:9:news:/var/spool/news:/sbin/nologin
-+uucp:*:10:10:uucp:/var/spool/uucp:/sbin/nologin
-+proxy:*:13:13:proxy:/bin:/sbin/nologin
-+www-data:*:33:33:www-data:/var/www:/sbin/nologin
-+backup:*:34:34:backup:/var/backups:/sbin/nologin
-+list:*:38:38:Mailing List Manager:/var/list:/sbin/nologin
-+irc:*:39:39:ircd:/var/run/ircd:/sbin/nologin
-+gnats:*:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/sbin/nologin
-+nobody:*:65534:65534:nobody:/nonexistent:/sbin/nologin
---
-2.32.0
-
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/input.patch b/poky/meta/recipes-core/base-passwd/base-passwd/input.patch
deleted file mode 100644
index 3abbcad5d5..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/input.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-Add an input group for the /dev/input/* devices.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Darren Hart <dvhart@linux.intel.com>
-
----
- group.master | 1 +
- 1 file changed, 1 insertion(+)
-
-Index: base-passwd-3.5.26/group.master
-===================================================================
---- base-passwd-3.5.26.orig/group.master
-+++ base-passwd-3.5.26/group.master
-@@ -12,6 +12,7 @@ uucp:*:10:
- man:*:12:
- proxy:*:13:
- kmem:*:15:
-+input:*:19:
- dialout:*:20:
- fax:*:21:
- voice:*:22:
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/nobash.patch b/poky/meta/recipes-core/base-passwd/base-passwd/nobash.patch
deleted file mode 100644
index b5a692295b..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/nobash.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-use /bin/sh instead of /bin/bash, since the latter may not be included in
-some images such as minimal
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
---- base-passwd/passwd.master~nobash
-+++ base-passwd/passwd.master
-@@ -1,4 +1,4 @@
--root:*:0:0:root:/root:/bin/bash
-+root:*:0:0:root:/root:/bin/sh
- daemon:*:1:1:daemon:/usr/sbin:/bin/sh
- bin:*:2:2:bin:/bin:/bin/sh
- sys:*:3:3:sys:/dev:/bin/sh
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd/noshadow.patch b/poky/meta/recipes-core/base-passwd/base-passwd/noshadow.patch
deleted file mode 100644
index e27bf7d9be..0000000000
--- a/poky/meta/recipes-core/base-passwd/base-passwd/noshadow.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-remove "*" for root since we don't have a /etc/shadow so far.
-
-Upstream-Status: Inappropriate [configuration]
-
-Signed-off-by: Scott Garman <scott.a.garman@intel.com>
-
---- base-passwd/passwd.master~nobash
-+++ base-passwd/passwd.master
-@@ -1,4 +1,4 @@
--root:*:0:0:root:/root:/bin/sh
-+root::0:0:root:/root:/bin/sh
- daemon:*:1:1:daemon:/usr/sbin:/bin/sh
- bin:*:2:2:bin:/bin:/bin/sh
- sys:*:3:3:sys:/dev:/bin/sh
diff --git a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.52.bb
index ef7792ae49..f89752c077 100644
--- a/poky/meta/recipes-core/base-passwd/base-passwd_3.5.29.bb
+++ b/poky/meta/recipes-core/base-passwd/base-passwd_3.5.52.bb
@@ -5,27 +5,30 @@ SECTION = "base"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=eb723b61539feef013de476e68b5c50a"
-RECIPE_NO_UPDATE_REASON = "Version 3.5.38 requires cdebconf for update-passwd utility"
-
-SRC_URI = "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar.gz \
- file://add_shutdown.patch \
- file://nobash.patch \
- file://noshadow.patch \
- file://input.patch \
- file://disable-docs.patch \
- file://kvm.patch \
- file://disable-shell.patch \
+SRC_URI = "https://launchpad.net/debian/+archive/primary/+files/${BPN}_${PV}.tar.xz \
+ file://0001-Add-a-shutdown-group.patch \
+ file://0002-Use-bin-sh-instead-of-bin-bash-for-the-root-user.patch \
+ file://0003-Remove-for-root-since-we-do-not-have-an-etc-shadow.patch \
+ file://0004-Add-an-input-group-for-the-dev-input-devices.patch \
+ file://0005-Add-kvm-group.patch \
+ file://0006-Make-it-possible-to-build-without-debconf-support.patch \
+ file://0007-Make-it-possible-to-disable-the-generation-of-the-do.patch \
"
-SRC_URI[md5sum] = "6beccac48083fe8ae5048acd062e5421"
-SRC_URI[sha256sum] = "f0b66388b2c8e49c15692439d2bee63bcdd4bbbf7a782c7f64accc55986b6a36"
+SRC_URI[sha256sum] = "5dfec6556b5a16ecf14dd3f7c95b591d929270289268123f31a3d6317f95ccea"
# the package is taken from launchpad; that source is static and goes stale
# so we check the latest upstream from a directory that does get updated
UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/b/base-passwd/"
+S = "${WORKDIR}/work"
+
inherit autotools
+EXTRA_OECONF += "--disable-debconf --disable-docs"
+
+NOLOGIN ?= "${base_sbindir}/nologin"
+
do_install () {
install -d -m 755 ${D}${sbindir}
install -o root -g root -p -m 755 ${B}/update-passwd ${D}${sbindir}/
@@ -37,6 +40,7 @@ do_install () {
install -d -m 755 ${D}${datadir}/base-passwd
install -o root -g root -p -m 644 ${S}/passwd.master ${D}${datadir}/base-passwd/
sed -i 's#:/root:#:${ROOT_HOME}:#' ${D}${datadir}/base-passwd/passwd.master
+ sed -i 's#/usr/sbin/nologin#${NOLOGIN}#' ${D}${datadir}/base-passwd/passwd.master
install -o root -g root -p -m 644 ${S}/group.master ${D}${datadir}/base-passwd/
install -d -m 755 ${D}${docdir}/${BPN}
diff --git a/poky/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch b/poky/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch
deleted file mode 100644
index 3c43e1d5da..0000000000
--- a/poky/meta/recipes-core/coreutils/coreutils/0001-uname-report-processor-and-hardware-correctly.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-Upstream-Status: Denied
-
-Subject: uname: report processor and hardware correctly
-
-This patch is rejected by coreutils upstream, but distros like debian and fedora
-uses this patch to make `uname -i' and `uname -p' to not report 'unknown'.
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- src/uname.c | 18 ++++++++++++++++--
- 1 file changed, 16 insertions(+), 2 deletions(-)
-
-diff --git a/src/uname.c b/src/uname.c
-index 39bd28c..c84582d 100644
---- a/src/uname.c
-+++ b/src/uname.c
-@@ -299,13 +299,19 @@ main (int argc, char **argv)
-
- if (toprint & PRINT_PROCESSOR)
- {
-- char const *element = unknown;
-+ char *element = unknown;
- #if HAVE_SYSINFO && defined SI_ARCHITECTURE
- {
- static char processor[257];
- if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
- element = processor;
- }
-+#else
-+ {
-+ static struct utsname u;
-+ uname(&u);
-+ element = u.machine;
-+ }
- #endif
- #ifdef UNAME_PROCESSOR
- if (element == unknown)
-@@ -343,7 +349,7 @@ main (int argc, char **argv)
-
- if (toprint & PRINT_HARDWARE_PLATFORM)
- {
-- char const *element = unknown;
-+ char *element = unknown;
- #if HAVE_SYSINFO && defined SI_PLATFORM
- {
- static char hardware_platform[257];
-@@ -361,6 +367,14 @@ main (int argc, char **argv)
- if (sysctl (mib, 2, hardware_platform, &s, 0, 0) >= 0)
- element = hardware_platform;
- }
-+#else
-+ {
-+ static struct utsname u;
-+ uname(&u);
-+ element = u.machine;
-+ if(strlen(element)==4 && element[0]=='i' && element[2]=='8' && element[3]=='6')
-+ element[1]='3';
-+ }
- #endif
- if (! (toprint == UINT_MAX && element == unknown))
- print_element (element);
---
-1.9.1
-
diff --git a/poky/meta/recipes-core/coreutils/coreutils/e8b56ebd536e82b15542a00c888109471936bfda.patch b/poky/meta/recipes-core/coreutils/coreutils/e8b56ebd536e82b15542a00c888109471936bfda.patch
deleted file mode 100644
index d69ee95e4a..0000000000
--- a/poky/meta/recipes-core/coreutils/coreutils/e8b56ebd536e82b15542a00c888109471936bfda.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From e8b56ebd536e82b15542a00c888109471936bfda Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?P=C3=A1draig=20Brady?= <P@draigBrady.com>
-Date: Fri, 24 Sep 2021 20:57:41 +0100
-Subject: [PATCH] chmod: fix exit status when ignoring symlinks
-
-* src/chmod.c: Reorder enum so CH_NOT_APPLIED
-can be treated as a non error.
-* tests/chmod/ignore-symlink.sh: A new test.
-* tests/local.mk: Reference the new test.
-* NEWS: Mention the bug fix.
-Fixes https://bugs.gnu.org/50784
-
-Upstream-Status: Backport
-Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
----
- src/chmod.c | 4 ++--
- tests/chmod/ignore-symlink.sh | 31 +++++++++++++++++++++++++++++++
- tests/local.mk | 1 +
- 4 files changed, 40 insertions(+), 2 deletions(-)
- create mode 100755 tests/chmod/ignore-symlink.sh
-
-diff --git a/src/chmod.c b/src/chmod.c
-index 37b04f500..57ac47f33 100644
---- a/src/chmod.c
-+++ b/src/chmod.c
-@@ -44,8 +44,8 @@ struct change_status
- enum
- {
- CH_NO_STAT,
-- CH_NOT_APPLIED,
- CH_FAILED,
-+ CH_NOT_APPLIED,
- CH_NO_CHANGE_REQUESTED,
- CH_SUCCEEDED
- }
-@@ -322,7 +322,7 @@ process_file (FTS *fts, FTSENT *ent)
- if ( ! recurse)
- fts_set (fts, ent, FTS_SKIP);
-
-- return CH_NO_CHANGE_REQUESTED <= ch.status;
-+ return CH_NOT_APPLIED <= ch.status;
- }
-
- /* Recursively change the modes of the specified FILES (the last entry
-diff --git a/tests/chmod/ignore-symlink.sh b/tests/chmod/ignore-symlink.sh
-new file mode 100755
-index 000000000..5ce3de816
---- /dev/null
-+++ b/tests/chmod/ignore-symlink.sh
-@@ -0,0 +1,31 @@
-+#!/bin/sh
-+# Test for proper exit code of chmod on a processed symlink.
-+
-+# Copyright (C) 2021 Free Software Foundation, 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, either version 3 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 <https://www.gnu.org/licenses/>.
-+
-+. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
-+print_ver_ chmod
-+
-+mkdir dir || framework_failure_
-+touch dir/f || framework_failure_
-+ln -s f dir/l || framework_failure_
-+
-+# This operation ignores symlinks but should succeed.
-+chmod u+w -R dir 2> out || fail=1
-+
-+compare /dev/null out || fail=1
-+
-+Exit $fail
-diff --git a/tests/local.mk b/tests/local.mk
-index 228d0e368..b5b893fb7 100644
---- a/tests/local.mk
-+++ b/tests/local.mk
-@@ -456,6 +456,7 @@ all_tests = \
- tests/chmod/c-option.sh \
- tests/chmod/equal-x.sh \
- tests/chmod/equals.sh \
-+ tests/chmod/ignore-symlink.sh \
- tests/chmod/inaccessible.sh \
- tests/chmod/octal.sh \
- tests/chmod/setgid.sh \
diff --git a/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch b/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch
deleted file mode 100644
index 4f126ad67c..0000000000
--- a/poky/meta/recipes-core/coreutils/coreutils/fix-selinux-flask.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From b04363018b4b9b45fdf23384f30d02caa5564602 Mon Sep 17 00:00:00 2001
-From: Robert Yang <liezhi.yang@windriver.com>
-Date: Tue, 16 Sep 2014 01:59:08 -0700
-Subject: [PATCH] gnulib-comp.m4: selinux/flask.h should respect to
- with_selinux
-
-Fixed when build with meta-selinux even when --without-selinux:
-runcon.c:49:28: fatal error: selinux/flask.h: No such file or directory
- # include <selinux/flask.h>
- ^
-compilation terminated.
-
-Upstream-Status: Pending
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-
----
- m4/gnulib-comp.m4 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/m4/gnulib-comp.m4 b/m4/gnulib-comp.m4
-index 3857233..c01fb30 100644
---- a/m4/gnulib-comp.m4
-+++ b/m4/gnulib-comp.m4
-@@ -1953,11 +1953,11 @@ AC_DEFUN([gl_INIT],
- AC_LIBOBJ([select])
- fi
- gl_SYS_SELECT_MODULE_INDICATOR([select])
-- AC_CHECK_HEADERS([selinux/flask.h])
- gl_HEADERS_SELINUX_SELINUX_H
- gl_HEADERS_SELINUX_CONTEXT_H
- gl_HEADERS_SELINUX_LABEL_H
- if test "$with_selinux" != no && test "$ac_cv_header_selinux_selinux_h" = yes; then
-+ AC_CHECK_HEADERS([selinux/flask.h])
- AC_LIBOBJ([getfilecon])
- fi
- gl_SERVENT
diff --git a/poky/meta/recipes-core/coreutils/coreutils_9.0.bb b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb
index e4a948c7e5..d57e147a7e 100644
--- a/poky/meta/recipes-core/coreutils/coreutils_9.0.bb
+++ b/poky/meta/recipes-core/coreutils/coreutils_9.1.bb
@@ -6,7 +6,7 @@ HOMEPAGE = "http://www.gnu.org/software/coreutils/"
BUGTRACKER = "http://debbugs.gnu.org/coreutils"
LICENSE = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464 \
- file://src/ls.c;beginline=1;endline=15;md5=3b8fbaee597c8a9bb88d30840d53048c \
+ file://src/ls.c;beginline=1;endline=15;md5=1fe89f62614b5e1f5475ec04d5899bc1 \
"
DEPENDS = "gmp libcap"
DEPENDS:class-native = ""
@@ -15,14 +15,11 @@ inherit autotools gettext texinfo
SRC_URI = "${GNU_MIRROR}/coreutils/${BP}.tar.xz \
file://remove-usr-local-lib-from-m4.patch \
- file://fix-selinux-flask.patch \
- file://0001-uname-report-processor-and-hardware-correctly.patch \
file://0001-local.mk-fix-cross-compiling-problem.patch \
- file://e8b56ebd536e82b15542a00c888109471936bfda.patch \
file://run-ptest \
"
-SRC_URI[sha256sum] = "ce30acdf4a41bc5bb30dd955e9eaa75fa216b4e3deb08889ed32433c7b3b97ce"
+SRC_URI[sha256sum] = "61a1f410d78ba7e7f37a5a4f50e6d1320aca33375484a3255eddf17a38580423"
# http://git.savannah.gnu.org/cgit/coreutils.git/commit/?id=v8.27-101-gf5d7c0842
# runcon is not really a sandbox command, use `runcon ... setsid ...` to avoid this particular issue.
diff --git a/poky/meta/recipes-core/ell/ell_0.49.bb b/poky/meta/recipes-core/ell/ell_0.50.bb
index 9edd6fc92a..243ac01530 100644
--- a/poky/meta/recipes-core/ell/ell_0.49.bb
+++ b/poky/meta/recipes-core/ell/ell_0.50.bb
@@ -16,7 +16,7 @@ inherit autotools pkgconfig
SRC_URI = "https://mirrors.edge.kernel.org/pub/linux/libs/${BPN}/${BPN}-${PV}.tar.xz \
"
-SRC_URI[sha256sum] = "a7ff8ecbc76b187d942dd22b61cb489711400897c790319ffb7e944791687c3f"
+SRC_URI[sha256sum] = "0fe51d51c6eddc2a2784092f1dfdd1143a5ef27f15c274ecfbadd680d3a72fd9"
do_configure:prepend () {
mkdir -p ${S}/build-aux
diff --git a/poky/meta/recipes-core/initrdscripts/files/init-install-efi-testfs.sh b/poky/meta/recipes-core/initrdscripts/files/init-install-efi-testfs.sh
index 1fcd29e54c..4bd6ace7b3 100644
--- a/poky/meta/recipes-core/initrdscripts/files/init-install-efi-testfs.sh
+++ b/poky/meta/recipes-core/initrdscripts/files/init-install-efi-testfs.sh
@@ -138,7 +138,7 @@ touch /ssd/etc/controllerimage
if [ -d /ssd/etc/ ] ; then
# We dont want udev to mount our root device while we're booting...
if [ -d /ssd/etc/udev/ ] ; then
- echo "/dev/${device}" >> /ssd/etc/udev/mount.blacklist
+ echo "/dev/${device}" >> /ssd/etc/udev/mount.ignorelist
fi
fi
diff --git a/poky/meta/recipes-core/initrdscripts/files/init-install-efi.sh b/poky/meta/recipes-core/initrdscripts/files/init-install-efi.sh
index f667518b89..ffd3870199 100644
--- a/poky/meta/recipes-core/initrdscripts/files/init-install-efi.sh
+++ b/poky/meta/recipes-core/initrdscripts/files/init-install-efi.sh
@@ -229,7 +229,7 @@ if [ -d /tgt_root/etc/ ] ; then
echo "UUID=$boot_uuid /boot vfat defaults 1 2" >> /tgt_root/etc/fstab
# We dont want udev to mount our root device while we're booting...
if [ -d /tgt_root/etc/udev/ ] ; then
- echo "${device}" >> /tgt_root/etc/udev/mount.blacklist
+ echo "${device}" >> /tgt_root/etc/udev/mount.ignorelist
fi
fi
diff --git a/poky/meta/recipes-core/initrdscripts/files/init-install-testfs.sh b/poky/meta/recipes-core/initrdscripts/files/init-install-testfs.sh
index 7b49001659..8ab74ddc5d 100644
--- a/poky/meta/recipes-core/initrdscripts/files/init-install-testfs.sh
+++ b/poky/meta/recipes-core/initrdscripts/files/init-install-testfs.sh
@@ -164,7 +164,7 @@ if [ -d /tgt_root/etc/ ] ; then
echo "$bootfs /boot ext3 defaults 1 2" >> /tgt_root/etc/fstab
# We dont want udev to mount our root device while we're booting...
if [ -d /tgt_root/etc/udev/ ] ; then
- echo "/dev/${device}" >> /tgt_root/etc/udev/mount.blacklist
+ echo "/dev/${device}" >> /tgt_root/etc/udev/mount.ignorelist
fi
fi
umount /tgt_root
diff --git a/poky/meta/recipes-core/initrdscripts/files/init-install.sh b/poky/meta/recipes-core/initrdscripts/files/init-install.sh
index e71579631b..df33791ec7 100644
--- a/poky/meta/recipes-core/initrdscripts/files/init-install.sh
+++ b/poky/meta/recipes-core/initrdscripts/files/init-install.sh
@@ -261,7 +261,7 @@ if [ -d /tgt_root/etc/ ] ; then
echo "$bootdev /boot ext3 defaults 1 2" >> /tgt_root/etc/fstab
# We dont want udev to mount our root device while we're booting...
if [ -d /tgt_root/etc/udev/ ] ; then
- echo "${device}" >> /tgt_root/etc/udev/mount.blacklist
+ echo "${device}" >> /tgt_root/etc/udev/mount.ignorelist
fi
fi
umount /tgt_root
diff --git a/poky/meta/recipes-core/kbd/kbd_2.4.0.bb b/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
index 8a68d647e2..4b23f1a89d 100644
--- a/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
+++ b/poky/meta/recipes-core/kbd/kbd_2.4.0.bb
@@ -31,7 +31,7 @@ FILES:${PN}-keymaps = "${datadir}/keymaps"
FILES:${PN}-unimaps = "${datadir}/unimaps"
do_install:append () {
- if [ ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', '', d)} = yes ] \
+ if [ "${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'yes', 'no', d)}" = "yes" ] \
&& [ -f ${D}${sysconfdir}/pam.d/vlock ]; then
mv -f ${D}${sysconfdir}/pam.d/vlock ${D}${sysconfdir}/pam.d/vlock.kbd
fi
diff --git a/poky/meta/recipes-core/libcgroup/libcgroup_2.0.1.bb b/poky/meta/recipes-core/libcgroup/libcgroup_2.0.2.bb
index 857a4e86fd..7ade372cae 100644
--- a/poky/meta/recipes-core/libcgroup/libcgroup_2.0.1.bb
+++ b/poky/meta/recipes-core/libcgroup/libcgroup_2.0.2.bb
@@ -13,7 +13,7 @@ DEPENDS = "bison-native flex-native"
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz"
-SRC_URI[sha256sum] = "2dd9c566a90a053e7a5f47607e225648ba7aa9bb7763514dd4778e2ed530fe90"
+SRC_URI[sha256sum] = "8ef63b32e0aff619547dbb8a25e1f6bab152d7c4864795cf915571a5994d0cf8"
UPSTREAM_CHECK_URI = "https://github.com/libcgroup/libcgroup/releases/"
DEPENDS:append:libc-musl = " fts "
diff --git a/poky/meta/recipes-core/libxml/libxml2/CVE-2022-23308-fix-regression.patch b/poky/meta/recipes-core/libxml/libxml2/CVE-2022-23308-fix-regression.patch
deleted file mode 100644
index e188914613..0000000000
--- a/poky/meta/recipes-core/libxml/libxml2/CVE-2022-23308-fix-regression.patch
+++ /dev/null
@@ -1,99 +0,0 @@
-From 646fe48d1c8a74310c409ddf81fe7df6700052af Mon Sep 17 00:00:00 2001
-From: Nick Wellnhofer <wellnhofer@aevum.de>
-Date: Tue, 22 Feb 2022 11:51:08 +0100
-Subject: [PATCH] Fix --without-valid build
-
-Regressed in commit 652dd12a.
----
- valid.c | 58 ++++++++++++++++++++++++++++-----------------------------
- 1 file changed, 29 insertions(+), 29 deletions(-)
----
-
-From https://github.com/GNOME/libxml2.git
- commit 646fe48d1c8a74310c409ddf81fe7df6700052af
-
-CVE: CVE-2022-23308
-Upstream-Status: Backport
-
-Signed-off-by: Joe Slater <joe.slater@windriver.com>
-
-
-diff --git a/valid.c b/valid.c
-index 8e596f1d..9684683a 100644
---- a/valid.c
-+++ b/valid.c
-@@ -479,35 +479,6 @@ nodeVPop(xmlValidCtxtPtr ctxt)
- return (ret);
- }
-
--/**
-- * xmlValidNormalizeString:
-- * @str: a string
-- *
-- * Normalize a string in-place.
-- */
--static void
--xmlValidNormalizeString(xmlChar *str) {
-- xmlChar *dst;
-- const xmlChar *src;
--
-- if (str == NULL)
-- return;
-- src = str;
-- dst = str;
--
-- while (*src == 0x20) src++;
-- while (*src != 0) {
-- if (*src == 0x20) {
-- while (*src == 0x20) src++;
-- if (*src != 0)
-- *dst++ = 0x20;
-- } else {
-- *dst++ = *src++;
-- }
-- }
-- *dst = 0;
--}
--
- #ifdef DEBUG_VALID_ALGO
- static void
- xmlValidPrintNode(xmlNodePtr cur) {
-@@ -2636,6 +2607,35 @@ xmlDumpNotationTable(xmlBufferPtr buf, xmlNotationTablePtr table) {
- (xmlDictOwns(dict, (const xmlChar *)(str)) == 0))) \
- xmlFree((char *)(str));
-
-+/**
-+ * xmlValidNormalizeString:
-+ * @str: a string
-+ *
-+ * Normalize a string in-place.
-+ */
-+static void
-+xmlValidNormalizeString(xmlChar *str) {
-+ xmlChar *dst;
-+ const xmlChar *src;
-+
-+ if (str == NULL)
-+ return;
-+ src = str;
-+ dst = str;
-+
-+ while (*src == 0x20) src++;
-+ while (*src != 0) {
-+ if (*src == 0x20) {
-+ while (*src == 0x20) src++;
-+ if (*src != 0)
-+ *dst++ = 0x20;
-+ } else {
-+ *dst++ = *src++;
-+ }
-+ }
-+ *dst = 0;
-+}
-+
- static int
- xmlIsStreaming(xmlValidCtxtPtr ctxt) {
- xmlParserCtxtPtr pctxt;
---
-2.35.1
-
diff --git a/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch b/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
index d211f65da3..cc9da88a29 100644
--- a/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
+++ b/poky/meta/recipes-core/libxml/libxml2/libxml-m4-use-pkgconfig.patch
@@ -1,4 +1,4 @@
-From f57da62218cf72c1342da82abafdac6b0a2e4997 Mon Sep 17 00:00:00 2001
+From 7196bce35954c4b46391cb0139aeb15ed628fa54 Mon Sep 17 00:00:00 2001
From: Tony Tascioglu <tony.tascioglu@windriver.com>
Date: Fri, 14 May 2021 11:50:35 -0400
Subject: [PATCH] AM_PATH_XML2 uses xml-config which we disable through
@@ -16,16 +16,18 @@ Rebase to 2.9.9
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Updated to apply cleanly to v2.9.12
-
Signed-off-by: Tony Tascioglu <tony.tascioglu@windriver.com>
+
+Rebase to 2.9.14
+Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
---
- libxml.m4 | 190 ++----------------------------------------------------
- 1 file changed, 5 insertions(+), 185 deletions(-)
+ libxml.m4 | 189 ++----------------------------------------------------
+ 1 file changed, 5 insertions(+), 184 deletions(-)
-Index: libxml2-2.9.13/libxml.m4
-===================================================================
---- libxml2-2.9.13.orig/libxml.m4
-+++ libxml2-2.9.13/libxml.m4
+diff --git a/libxml.m4 b/libxml.m4
+index fc7790c..1c53585 100644
+--- a/libxml.m4
++++ b/libxml.m4
@@ -1,191 +1,12 @@
-# Configure paths for LIBXML2
-# Simon Josefsson 2020-02-12
@@ -223,3 +225,6 @@ Index: libxml2-2.9.13/libxml.m4
- AC_SUBST(XML_LIBS)
- rm -f conf.xmltest
])
+--
+2.34.1
+
diff --git a/poky/meta/recipes-core/libxml/libxml2_2.9.13.bb b/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb
index e361b53bfd..3081ebf92f 100644
--- a/poky/meta/recipes-core/libxml/libxml2_2.9.13.bb
+++ b/poky/meta/recipes-core/libxml/libxml2_2.9.14.bb
@@ -23,11 +23,8 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20080827.tar.gz;subdir=${BP};name=te
file://remove-fuzz-from-ptests.patch \
file://libxml-m4-use-pkgconfig.patch \
"
-# will be in v2.9.14
-#
-SRC_URI += "file://CVE-2022-23308-fix-regression.patch"
-SRC_URI[archive.sha256sum] = "276130602d12fe484ecc03447ee5e759d0465558fbc9d6bd144e3745306ebf0e"
+SRC_URI[archive.sha256sum] = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee"
SRC_URI[testtar.sha256sum] = "96151685cec997e1f9f3387e3626d61e6284d4d6e66e0e440c209286c03e9cc7"
BINCONFIG = "${bindir}/xml2-config"
diff --git a/poky/meta/recipes-core/meta/cve-update-db-native.bb b/poky/meta/recipes-core/meta/cve-update-db-native.bb
index e5822cee58..c8c1cbf115 100644
--- a/poky/meta/recipes-core/meta/cve-update-db-native.bb
+++ b/poky/meta/recipes-core/meta/cve-update-db-native.bb
@@ -13,6 +13,9 @@ deltask do_install
deltask do_populate_sysroot
NVDCVE_URL ?= "https://nvd.nist.gov/feeds/json/cve/1.1/nvdcve-1.1-"
+# CVE database update interval, in seconds. By default: once a day (24*60*60).
+# Use 0 to force the update
+CVE_DB_UPDATE_INTERVAL ?= "86400"
python () {
if not bb.data.inherits_class("cve-check", d):
@@ -43,12 +46,17 @@ python do_fetch() {
if os.path.exists(db_file):
os.remove(db_file)
- # Don't refresh the database more than once an hour
+ # The NVD database changes once a day, so no need to update more frequently
+ # Allow the user to force-update
try:
import time
- if time.time() - os.path.getmtime(db_file) < (60*60):
+ update_interval = int(d.getVar("CVE_DB_UPDATE_INTERVAL"))
+ if (update_interval < 0):
+ update_interval = 0
+ if time.time() - os.path.getmtime(db_file) < update_interval:
bb.debug(2, "Recently updated, skipping")
return
+
except OSError:
pass
diff --git a/poky/meta/recipes-core/musl/musl-locales_git.bb b/poky/meta/recipes-core/musl/musl-locales_git.bb
index 40b20e250d..92532237e0 100644
--- a/poky/meta/recipes-core/musl/musl-locales_git.bb
+++ b/poky/meta/recipes-core/musl/musl-locales_git.bb
@@ -2,15 +2,15 @@
# Released under the MIT license (see COPYING.MIT for the terms)
#
SUMMARY = "Locales support for musl"
-HOMEPAGE = "https://gitlab.com/rilian-la-te/musl-locales"
+HOMEPAGE = "https://git.adelielinux.org/adelie/musl-locales/-/wikis/home"
LICENSE = "MIT & LGPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE;md5=cf5713fba707073020b1db2acaa73e78 \
file://LICENSE.MIT;md5=a4f1c6864a83ddf4b754cdab7d593523"
-SRC_URI = "git://gitlab.com/rilian-la-te/musl-locales;protocol=https;branch=master"
+SRC_URI = "git://git.adelielinux.org/adelie/musl-locales;protocol=https;branch=main"
PV = "1.0+git${SRCPV}"
-SRCREV = "1101fb2bcdd189cd9415b8bd1c775eb43527d25c"
+SRCREV = "cac3dcdccd1d0c08d17f4919d862737d64b76f79"
S = "${WORKDIR}/git"
@@ -28,46 +28,55 @@ python () {
# only locale binaries are under GPL-3.0-or-later others are MIT
LICENSE:${PN} = "LGPL-3.0-or-later"
-LICENSE:locale-base-ch-de = "MIT"
+LICENSE:locale-base-cs-cz = "MIT"
LICENSE:locale-base-de-ch = "MIT"
LICENSE:locale-base-de-de = "MIT"
LICENSE:locale-base-en-gb = "MIT"
LICENSE:locale-base-en-us = "MIT"
LICENSE:locale-base-es-es = "MIT"
+LICENSE:locale-base-fi-fi = "MIT"
LICENSE:locale-base-fr-fr = "MIT"
LICENSE:locale-base-it-it = "MIT"
LICENSE:locale-base-nb-no = "MIT"
LICENSE:locale-base-nl-nl = "MIT"
LICENSE:locale-base-pt-br = "MIT"
+LICENSE:locale-base-pt-pt = "MIT"
LICENSE:locale-base-ru-ru = "MIT"
+LICENSE:locale-base-sr-rs = "MIT"
LICENSE:locale-base-sv-se = "MIT"
-PACKAGES =+ "locale-base-ch-de \
+PACKAGES =+ "locale-base-cs-cz \
locale-base-de-ch \
locale-base-de-de \
locale-base-en-gb \
locale-base-en-us \
locale-base-es-es \
+ locale-base-fi-fi \
locale-base-fr-fr \
locale-base-it-it \
locale-base-nb-no \
locale-base-nl-nl \
locale-base-pt-br \
+ locale-base-pt-pt \
locale-base-ru-ru \
+ locale-base-sr-rs \
locale-base-sv-se \
"
-FILES:locale-base-ch-de += "${datadir}/i18n/locales/musl/ch_DE.UTF-8"
+FILES:locale-base-cs-cz += "${datadir}/i18n/locales/musl/cs_CZ.UTF-8"
FILES:locale-base-de-ch += "${datadir}/i18n/locales/musl/de_CH.UTF-8"
FILES:locale-base-de-de += "${datadir}/i18n/locales/musl/de_DE.UTF-8"
FILES:locale-base-en-gb += "${datadir}/i18n/locales/musl/en_GB.UTF-8"
FILES:locale-base-en-us += "${datadir}/i18n/locales/musl/en_US.UTF-8"
FILES:locale-base-es-es += "${datadir}/i18n/locales/musl/es_ES.UTF-8"
+FILES:locale-base-fi-fi += "${datadir}/i18n/locales/musl/fi_FI.UTF-8"
FILES:locale-base-fr-fr += "${datadir}/i18n/locales/musl/fr_FR.UTF-8"
FILES:locale-base-it-it += "${datadir}/i18n/locales/musl/it_IT.UTF-8"
FILES:locale-base-nb-no += "${datadir}/i18n/locales/musl/nb_NO.UTF-8"
FILES:locale-base-nl-nl += "${datadir}/i18n/locales/musl/nl_NL.UTF-8"
FILES:locale-base-pt-br += "${datadir}/i18n/locales/musl/pt_BR.UTF-8"
+FILES:locale-base-pt-pt += "${datadir}/i18n/locales/musl/pt_PT.UTF-8"
FILES:locale-base-ru-ru += "${datadir}/i18n/locales/musl/ru_RU.UTF-8"
+FILES:locale-base-sr-rs += "${datadir}/i18n/locales/musl/sr_RS.UTF-8"
FILES:locale-base-sv-se += "${datadir}/i18n/locales/musl/sv_SE.UTF-8"
UPSTREAM_CHECK_COMMITS = "1"
diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb
index 4b85401360..fde5fc0cce 100644
--- a/poky/meta/recipes-core/musl/musl_git.bb
+++ b/poky/meta/recipes-core/musl/musl_git.bb
@@ -4,7 +4,7 @@
require musl.inc
inherit linuxloader
-SRCREV = "7a43f6fea9081bdd53d8a11cef9e9fab0348c53d"
+SRCREV = "6e9d2370c7559af80b32a91f20898f41597e093b"
BASEVER = "1.2.3"
diff --git a/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning-1.patch b/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning-1.patch
new file mode 100644
index 0000000000..23366b4d07
--- /dev/null
+++ b/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning-1.patch
@@ -0,0 +1,51 @@
+From b0a0b7b605aeb8106e7b50d1efeb746f401498cc Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Thu, 24 Mar 2022 20:04:35 +0800
+Subject: [PATCH] BaseTools: fix gcc12 warning
+
+Sdk/C/LzmaEnc.c: In function ?LzmaEnc_CodeOneMemBlock?:
+Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*p.rc.outStream? [-Werror=dangling-pointer=]
+ 2828 | p->rc.outStream = &outStream.vt;
+ | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
+Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here
+ 2811 | CLzmaEnc_SeqOutStreamBuf outStream;
+ | ^~~~~~~~~
+Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here
+Sdk/C/LzmaEnc.c:2828:19: error: storing the address of local variable ?outStream? in ?*(CLzmaEnc *)pp.rc.outStream? [-Werror=dangling-pointer=]
+ 2828 | p->rc.outStream = &outStream.vt;
+ | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
+Sdk/C/LzmaEnc.c:2811:28: note: ?outStream? declared here
+ 2811 | CLzmaEnc_SeqOutStreamBuf outStream;
+ | ^~~~~~~~~
+Sdk/C/LzmaEnc.c:2811:28: note: ?pp? declared here
+cc1: all warnings being treated as errors
+
+Upstream-Status: Backport [https://github.com/tianocore/edk2/commit/85021f8cf22d1bd4114803c6c610dea5ef0059f1]
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Reviewed-by: Bob Feng <bob.c.feng@intel.com>
+---
+ BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
+index 4e9b499f8d..4b9f5fa692 100644
+--- a/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
++++ b/BaseTools/Source/C/LzmaCompress/Sdk/C/LzmaEnc.c
+@@ -2825,12 +2825,13 @@ SRes LzmaEnc_CodeOneMemBlock(CLzmaEncHandle pp, BoolInt reInit,
+
+ nowPos64 = p->nowPos64;
+ RangeEnc_Init(&p->rc);
+- p->rc.outStream = &outStream.vt;
+
+ if (desiredPackSize == 0)
+ return SZ_ERROR_OUTPUT_EOF;
+
++ p->rc.outStream = &outStream.vt;
+ res = LzmaEnc_CodeOneBlock(p, desiredPackSize, *unpackSize);
++ p->rc.outStream = NULL;
+
+ *unpackSize = (UInt32)(p->nowPos64 - nowPos64);
+ *destLen -= outStream.rem;
+--
+2.36.1
+
diff --git a/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning.patch b/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning.patch
new file mode 100644
index 0000000000..91c01647db
--- /dev/null
+++ b/poky/meta/recipes-core/ovmf/ovmf/0001-BaseTools-fix-gcc12-warning.patch
@@ -0,0 +1,49 @@
+From 2435c17e56652479315853cec5b91fb0ea0911a3 Mon Sep 17 00:00:00 2001
+From: Gerd Hoffmann <kraxel@redhat.com>
+Date: Thu, 24 Mar 2022 20:04:34 +0800
+Subject: [PATCH] BaseTools: fix gcc12 warning
+
+GenFfs.c:545:5: error: pointer ?InFileHandle? used after ?fclose? [-Werror=use-after-free]
+ 545 | Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
+ | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+GenFfs.c:544:5: note: call to ?fclose? here
+ 544 | fclose (InFileHandle);
+ | ^~~~~~~~~~~~~~~~~~~~~
+
+Upstream-Status: Backport [https://github.com/tianocore/edk2/commit/7b005f344e533cd913c3ca05b266f9872df886d1]
+Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
+Reviewed-by: Bob Feng <bob.c.feng@intel.com>
+---
+ BaseTools/Source/C/GenFfs/GenFfs.c | 2 +-
+ BaseTools/Source/C/GenSec/GenSec.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/BaseTools/Source/C/GenFfs/GenFfs.c b/BaseTools/Source/C/GenFfs/GenFfs.c
+index 949025c333..d78d62ab36 100644
+--- a/BaseTools/Source/C/GenFfs/GenFfs.c
++++ b/BaseTools/Source/C/GenFfs/GenFfs.c
+@@ -542,7 +542,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment)
+ PeFileBuffer = (UINT8 *) malloc (PeFileSize);
+ if (PeFileBuffer == NULL) {
+ fclose (InFileHandle);
+- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile);
+ return EFI_OUT_OF_RESOURCES;
+ }
+ fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle);
+diff --git a/BaseTools/Source/C/GenSec/GenSec.c b/BaseTools/Source/C/GenSec/GenSec.c
+index d54a4f9e0a..b1d05367ec 100644
+--- a/BaseTools/Source/C/GenSec/GenSec.c
++++ b/BaseTools/Source/C/GenSec/GenSec.c
+@@ -1062,7 +1062,7 @@ GetAlignmentFromFile(char *InFile, UINT32 *Alignment)
+ PeFileBuffer = (UINT8 *) malloc (PeFileSize);
+ if (PeFileBuffer == NULL) {
+ fclose (InFileHandle);
+- Error(NULL, 0, 4001, "Resource", "memory cannot be allocated of %s", InFileHandle);
++ Error(NULL, 0, 4001, "Resource", "memory cannot be allocated for %s", InFile);
+ return EFI_OUT_OF_RESOURCES;
+ }
+ fread (PeFileBuffer, sizeof (UINT8), PeFileSize, InFileHandle);
+--
+2.36.1
+
diff --git a/poky/meta/recipes-core/ovmf/ovmf_git.bb b/poky/meta/recipes-core/ovmf/ovmf_git.bb
index b15d40eac8..84e3360a3a 100644
--- a/poky/meta/recipes-core/ovmf/ovmf_git.bb
+++ b/poky/meta/recipes-core/ovmf/ovmf_git.bb
@@ -15,12 +15,18 @@ PACKAGECONFIG += "${@bb.utils.contains('MACHINE_FEATURES', 'tpm2', 'tpm', '', d)
PACKAGECONFIG[secureboot] = ",,,"
PACKAGECONFIG[tpm] = "-D TPM_ENABLE=TRUE,-D TPM_ENABLE=FALSE,,"
+# GCC12 trips on it
+#see https://src.fedoraproject.org/rpms/edk2/blob/rawhide/f/0032-Basetools-turn-off-gcc12-warning.patch
+BUILD_CFLAGS += "-Wno-error=stringop-overflow"
+
SRC_URI = "gitsm://github.com/tianocore/edk2.git;branch=master;protocol=https \
file://0001-ovmf-update-path-to-native-BaseTools.patch \
file://0002-BaseTools-makefile-adjust-to-build-in-under-bitbake.patch \
file://0003-ovmf-Update-to-latest.patch \
file://0005-debug-prefix-map.patch \
file://0006-reproducible.patch \
+ file://0001-BaseTools-fix-gcc12-warning.patch \
+ file://0001-BaseTools-fix-gcc12-warning-1.patch \
"
PV = "edk2-stable202202"
diff --git a/poky/meta/recipes-core/systemd/systemd-boot_250.4.bb b/poky/meta/recipes-core/systemd/systemd-boot_250.5.bb
index b67706b731..b67706b731 100644
--- a/poky/meta/recipes-core/systemd/systemd-boot_250.4.bb
+++ b/poky/meta/recipes-core/systemd/systemd-boot_250.5.bb
diff --git a/poky/meta/recipes-core/systemd/systemd.inc b/poky/meta/recipes-core/systemd/systemd.inc
index ac454b8afd..309105290f 100644
--- a/poky/meta/recipes-core/systemd/systemd.inc
+++ b/poky/meta/recipes-core/systemd/systemd.inc
@@ -14,7 +14,7 @@ LICENSE = "GPL-2.0-only & LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://LICENSE.GPL2;md5=751419260aa954499f7abaabaa882bbe \
file://LICENSE.LGPL2.1;md5=4fbd65380cdd255951079008b364516c"
-SRCREV = "c3aead556847dd2694d559620123b65ff16afe8c"
+SRCREV = "4a31fa2fb040005b73253da75cf84949b8485175"
SRCBRANCH = "v250-stable"
SRC_URI = "git://github.com/systemd/systemd-stable.git;protocol=https;branch=${SRCBRANCH}"
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch b/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch
index 2363679c98..c42c66786f 100644
--- a/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0001-Adjust-for-musl-headers.patch
@@ -1,4 +1,4 @@
-From 4c2e932664ec67662f4a0306cca4a7cd82853bda Mon Sep 17 00:00:00 2001
+From 9a1841402ce3ef21a10a7314a07a615f8196d406 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 21 Jan 2022 22:19:37 -0800
Subject: [PATCH] Adjust for musl headers
@@ -6,6 +6,7 @@ Subject: [PATCH] Adjust for musl headers
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
---
src/libsystemd-network/sd-dhcp6-client.c | 2 +-
src/network/netdev/bareudp.c | 2 +-
@@ -29,6 +30,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/network/netdev/vrf.c | 2 +-
src/network/netdev/vxcan.c | 2 +-
src/network/netdev/vxlan.c | 2 +-
+ src/network/netdev/wireguard.c | 2 +-
src/network/netdev/xfrm.c | 2 +-
src/network/networkd-bridge-mdb.c | 4 ++--
src/network/networkd-dhcp-common.c | 3 ++-
@@ -41,8 +43,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/shared/linux/ethtool.h | 3 ++-
src/shared/netif-util.c | 2 +-
src/udev/udev-builtin-net_id.c | 2 +-
- 34 files changed, 41 insertions(+), 39 deletions(-)
+ 35 files changed, 42 insertions(+), 40 deletions(-)
+diff --git a/src/libsystemd-network/sd-dhcp6-client.c b/src/libsystemd-network/sd-dhcp6-client.c
+index 84bc739bba..ff8cb6bf9d 100644
--- a/src/libsystemd-network/sd-dhcp6-client.c
+++ b/src/libsystemd-network/sd-dhcp6-client.c
@@ -5,7 +5,7 @@
@@ -54,6 +58,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_infiniband.h>
#include "sd-dhcp6-client.h"
+diff --git a/src/network/netdev/bareudp.c b/src/network/netdev/bareudp.c
+index 8ff0eb1360..7e06b8d57d 100644
--- a/src/network/netdev/bareudp.c
+++ b/src/network/netdev/bareudp.c
@@ -2,7 +2,7 @@
@@ -65,6 +71,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "bareudp.h"
#include "netlink-util.h"
+diff --git a/src/network/netdev/batadv.c b/src/network/netdev/batadv.c
+index 15f3aee3a6..ec76428436 100644
--- a/src/network/netdev/batadv.c
+++ b/src/network/netdev/batadv.c
@@ -3,7 +3,7 @@
@@ -76,6 +84,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "batadv.h"
#include "fileio.h"
+diff --git a/src/network/netdev/bond.c b/src/network/netdev/bond.c
+index 5d94aa1d68..4e379a326d 100644
--- a/src/network/netdev/bond.c
+++ b/src/network/netdev/bond.c
@@ -1,7 +1,7 @@
@@ -87,6 +97,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "alloc-util.h"
#include "bond.h"
+diff --git a/src/network/netdev/bridge.c b/src/network/netdev/bridge.c
+index b974f2ae0a..9a5f18d556 100644
--- a/src/network/netdev/bridge.c
+++ b/src/network/netdev/bridge.c
@@ -2,7 +2,7 @@
@@ -98,6 +110,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_bridge.h>
#include "bridge.h"
+diff --git a/src/network/netdev/dummy.c b/src/network/netdev/dummy.c
+index 00df1d2787..77b506b422 100644
--- a/src/network/netdev/dummy.c
+++ b/src/network/netdev/dummy.c
@@ -1,6 +1,6 @@
@@ -108,6 +122,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "dummy.h"
+diff --git a/src/network/netdev/geneve.c b/src/network/netdev/geneve.c
+index 224c17e979..fb79cc13f6 100644
--- a/src/network/netdev/geneve.c
+++ b/src/network/netdev/geneve.c
@@ -2,7 +2,7 @@
@@ -119,6 +135,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "alloc-util.h"
#include "conf-parser.h"
+diff --git a/src/network/netdev/ifb.c b/src/network/netdev/ifb.c
+index d7ff44cb9e..e037629ae4 100644
--- a/src/network/netdev/ifb.c
+++ b/src/network/netdev/ifb.c
@@ -1,7 +1,7 @@
@@ -130,6 +148,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "ifb.h"
+diff --git a/src/network/netdev/ipoib.c b/src/network/netdev/ipoib.c
+index e0ff9e8c62..ab085c1f6d 100644
--- a/src/network/netdev/ipoib.c
+++ b/src/network/netdev/ipoib.c
@@ -1,6 +1,6 @@
@@ -140,6 +160,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_link.h>
#include "ipoib.h"
+diff --git a/src/network/netdev/ipvlan.c b/src/network/netdev/ipvlan.c
+index d15766cd7b..60728b4f94 100644
--- a/src/network/netdev/ipvlan.c
+++ b/src/network/netdev/ipvlan.c
@@ -2,7 +2,7 @@
@@ -151,6 +173,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "conf-parser.h"
#include "ipvlan.h"
+diff --git a/src/network/netdev/macsec.c b/src/network/netdev/macsec.c
+index f1a566a9ca..1f37927a83 100644
--- a/src/network/netdev/macsec.c
+++ b/src/network/netdev/macsec.c
@@ -1,7 +1,7 @@
@@ -162,6 +186,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_ether.h>
#include <linux/if_macsec.h>
#include <linux/genetlink.h>
+diff --git a/src/network/netdev/macvlan.c b/src/network/netdev/macvlan.c
+index c41be6e78f..ee2660c5bf 100644
--- a/src/network/netdev/macvlan.c
+++ b/src/network/netdev/macvlan.c
@@ -2,7 +2,7 @@
@@ -173,6 +199,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "conf-parser.h"
#include "macvlan.h"
+diff --git a/src/network/netdev/netdev.c b/src/network/netdev/netdev.c
+index 8e7fe11c18..701ab2bd69 100644
--- a/src/network/netdev/netdev.c
+++ b/src/network/netdev/netdev.c
@@ -2,7 +2,7 @@
@@ -184,6 +212,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <unistd.h>
#include "alloc-util.h"
+diff --git a/src/network/netdev/netdevsim.c b/src/network/netdev/netdevsim.c
+index 15d5c132f9..a3ffa48b15 100644
--- a/src/network/netdev/netdevsim.c
+++ b/src/network/netdev/netdevsim.c
@@ -1,6 +1,6 @@
@@ -194,6 +224,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "netdevsim.h"
+diff --git a/src/network/netdev/nlmon.c b/src/network/netdev/nlmon.c
+index ff372092e6..eef66811f4 100644
--- a/src/network/netdev/nlmon.c
+++ b/src/network/netdev/nlmon.c
@@ -1,6 +1,6 @@
@@ -204,6 +236,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "nlmon.h"
+diff --git a/src/network/netdev/tunnel.c b/src/network/netdev/tunnel.c
+index 97e534fe99..0302c1cb94 100644
--- a/src/network/netdev/tunnel.c
+++ b/src/network/netdev/tunnel.c
@@ -2,7 +2,7 @@
@@ -215,6 +249,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_tunnel.h>
#include <linux/ip.h>
#include <linux/ip6_tunnel.h>
+diff --git a/src/network/netdev/vcan.c b/src/network/netdev/vcan.c
+index 380547ee1e..137c1adf8a 100644
--- a/src/network/netdev/vcan.c
+++ b/src/network/netdev/vcan.c
@@ -1,6 +1,6 @@
@@ -225,6 +261,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "vcan.h"
+diff --git a/src/network/netdev/veth.c b/src/network/netdev/veth.c
+index c946e81fc0..d1a6be73f9 100644
--- a/src/network/netdev/veth.c
+++ b/src/network/netdev/veth.c
@@ -3,7 +3,7 @@
@@ -236,6 +274,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/veth.h>
#include "netlink-util.h"
+diff --git a/src/network/netdev/vlan.c b/src/network/netdev/vlan.c
+index af3e77963e..efa4b0a164 100644
--- a/src/network/netdev/vlan.c
+++ b/src/network/netdev/vlan.c
@@ -2,7 +2,7 @@
@@ -247,6 +287,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_vlan.h>
#include "parse-util.h"
+diff --git a/src/network/netdev/vrf.c b/src/network/netdev/vrf.c
+index b1b6707441..1c6d1982e1 100644
--- a/src/network/netdev/vrf.c
+++ b/src/network/netdev/vrf.c
@@ -2,7 +2,7 @@
@@ -258,6 +300,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "vrf.h"
+diff --git a/src/network/netdev/vxcan.c b/src/network/netdev/vxcan.c
+index a0ba048eb1..875f2e5901 100644
--- a/src/network/netdev/vxcan.c
+++ b/src/network/netdev/vxcan.c
@@ -1,7 +1,7 @@
@@ -269,6 +313,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "vxcan.h"
+diff --git a/src/network/netdev/vxlan.c b/src/network/netdev/vxlan.c
+index 30b0855598..a065158801 100644
--- a/src/network/netdev/vxlan.c
+++ b/src/network/netdev/vxlan.c
@@ -2,7 +2,7 @@
@@ -280,6 +326,21 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "conf-parser.h"
#include "alloc-util.h"
+diff --git a/src/network/netdev/wireguard.c b/src/network/netdev/wireguard.c
+index 88f668753a..5fc753384b 100644
+--- a/src/network/netdev/wireguard.c
++++ b/src/network/netdev/wireguard.c
+@@ -6,7 +6,7 @@
+ #include <sys/ioctl.h>
+ #include <net/if.h>
+ #include <netinet/in.h>
+-#include <linux/if_arp.h>
++//#include <linux/if_arp.h>
+ #include <linux/ipv6_route.h>
+
+ #include "sd-resolve.h"
+diff --git a/src/network/netdev/xfrm.c b/src/network/netdev/xfrm.c
+index ef5e735b2b..419afd75f2 100644
--- a/src/network/netdev/xfrm.c
+++ b/src/network/netdev/xfrm.c
@@ -1,6 +1,6 @@
@@ -290,6 +351,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "missing_network.h"
#include "xfrm.h"
+diff --git a/src/network/networkd-bridge-mdb.c b/src/network/networkd-bridge-mdb.c
+index 10025a97ae..a0239ea83a 100644
--- a/src/network/networkd-bridge-mdb.c
+++ b/src/network/networkd-bridge-mdb.c
@@ -1,7 +1,5 @@
@@ -309,6 +372,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#define STATIC_BRIDGE_MDB_ENTRIES_PER_NETWORK_MAX 1024U
+diff --git a/src/network/networkd-dhcp-common.c b/src/network/networkd-dhcp-common.c
+index 7996960bd1..e870b9ba26 100644
--- a/src/network/networkd-dhcp-common.c
+++ b/src/network/networkd-dhcp-common.c
@@ -1,7 +1,8 @@
@@ -321,6 +386,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "bus-error.h"
#include "dhcp-identifier.h"
+diff --git a/src/network/networkd-dhcp-prefix-delegation.c b/src/network/networkd-dhcp-prefix-delegation.c
+index 7be9713d46..e830fcd575 100644
--- a/src/network/networkd-dhcp-prefix-delegation.c
+++ b/src/network/networkd-dhcp-prefix-delegation.c
@@ -1,7 +1,5 @@
@@ -340,6 +407,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
bool link_dhcp_pd_is_enabled(Link *link) {
assert(link);
+diff --git a/src/network/networkd-dhcp-server.c b/src/network/networkd-dhcp-server.c
+index 9acfd17d49..3108289602 100644
--- a/src/network/networkd-dhcp-server.c
+++ b/src/network/networkd-dhcp-server.c
@@ -1,7 +1,7 @@
@@ -351,6 +420,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if.h>
#include "sd-dhcp-server.h"
+diff --git a/src/network/networkd-dhcp4.c b/src/network/networkd-dhcp4.c
+index cb9c428ae9..a35d58f3f1 100644
--- a/src/network/networkd-dhcp4.c
+++ b/src/network/networkd-dhcp4.c
@@ -3,7 +3,7 @@
@@ -362,6 +433,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "alloc-util.h"
#include "dhcp-client-internal.h"
+diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c
+index b62a154828..75949e6094 100644
--- a/src/network/networkd-link.c
+++ b/src/network/networkd-link.c
@@ -3,7 +3,7 @@
@@ -373,6 +446,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_link.h>
#include <linux/netdevice.h>
#include <sys/socket.h>
+diff --git a/src/network/networkd-route.c b/src/network/networkd-route.c
+index ee7a535075..ce6ed64133 100644
--- a/src/network/networkd-route.c
+++ b/src/network/networkd-route.c
@@ -1,9 +1,5 @@
@@ -396,6 +471,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
int route_new(Route **ret) {
_cleanup_(route_freep) Route *route = NULL;
+diff --git a/src/network/networkd-setlink.c b/src/network/networkd-setlink.c
+index e00cc1e589..e392c7e1a2 100644
--- a/src/network/networkd-setlink.c
+++ b/src/network/networkd-setlink.c
@@ -2,7 +2,7 @@
@@ -407,6 +484,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/if_bridge.h>
#include "missing_network.h"
+diff --git a/src/shared/linux/ethtool.h b/src/shared/linux/ethtool.h
+index 974d4292e7..fe9b8a9e07 100644
--- a/src/shared/linux/ethtool.h
+++ b/src/shared/linux/ethtool.h
@@ -16,7 +16,8 @@
@@ -419,6 +498,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#ifndef __KERNEL__
#include <limits.h> /* for INT_MAX */
+diff --git a/src/shared/netif-util.c b/src/shared/netif-util.c
+index 603d4de109..7e3531808a 100644
--- a/src/shared/netif-util.c
+++ b/src/shared/netif-util.c
@@ -1,6 +1,6 @@
@@ -429,6 +510,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "arphrd-util.h"
#include "device-util.h"
+diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c
+index 65e003eb15..0b3dc04be0 100644
--- a/src/udev/udev-builtin-net_id.c
+++ b/src/udev/udev-builtin-net_id.c
@@ -18,7 +18,7 @@
@@ -440,14 +523,3 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include <linux/netdevice.h>
#include <linux/pci_regs.h>
---- a/src/network/netdev/wireguard.c
-+++ b/src/network/netdev/wireguard.c
-@@ -6,7 +6,7 @@
- #include <sys/ioctl.h>
- #include <net/if.h>
- #include <netinet/in.h>
--#include <linux/if_arp.h>
-+//#include <linux/if_arp.h>
- #include <linux/ipv6_route.h>
-
- #include "sd-resolve.h"
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch b/poky/meta/recipes-core/systemd/systemd/0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch
new file mode 100644
index 0000000000..31efc4cc4b
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd/0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch
@@ -0,0 +1,73 @@
+From beb0219b71510bc63aed81d2a970a04349d6c616 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Tue, 29 Sep 2020 18:01:41 -0700
+Subject: [PATCH] Move sysusers.d/sysctl.d/binfmt.d/modules-load.d to /usr
+
+These directories are moved to /lib since systemd v246, commit
+4a56315a990b ("path: use ROOTPREFIX properly"), but in oe-core/yocto,
+the old /usr/lib is still being used.
+
+Upstream-Status: Inappropriate (OE-specific)
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
+---
+ src/core/systemd.pc.in | 8 ++++----
+ src/libsystemd/sd-path/sd-path.c | 8 ++++----
+ 2 files changed, 8 insertions(+), 8 deletions(-)
+
+diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
+index fc0f8c34fa..65996bbed8 100644
+--- a/src/core/systemd.pc.in
++++ b/src/core/systemd.pc.in
+@@ -65,16 +65,16 @@ systemdshutdowndir=${systemd_shutdown_dir}
+ tmpfiles_dir=${prefix}/lib/tmpfiles.d
+ tmpfilesdir=${tmpfiles_dir}
+
+-sysusers_dir=${rootprefix}/lib/sysusers.d
++sysusers_dir=${prefix}/lib/sysusers.d
+ sysusersdir=${sysusers_dir}
+
+-sysctl_dir=${rootprefix}/lib/sysctl.d
++sysctl_dir=${prefix}/lib/sysctl.d
+ sysctldir=${sysctl_dir}
+
+-binfmt_dir=${rootprefix}/lib/binfmt.d
++binfmt_dir=${prefix}/lib/binfmt.d
+ binfmtdir=${binfmt_dir}
+
+-modules_load_dir=${rootprefix}/lib/modules-load.d
++modules_load_dir=${prefix}/lib/modules-load.d
+ modulesloaddir=${modules_load_dir}
+
+ catalog_dir=${prefix}/lib/systemd/catalog
+diff --git a/src/libsystemd/sd-path/sd-path.c b/src/libsystemd/sd-path/sd-path.c
+index ff1e0d5f8e..19a001f47e 100644
+--- a/src/libsystemd/sd-path/sd-path.c
++++ b/src/libsystemd/sd-path/sd-path.c
+@@ -362,19 +362,19 @@ static int get_path(uint64_t type, char **buffer, const char **ret) {
+ return 0;
+
+ case SD_PATH_SYSUSERS:
+- *ret = ROOTPREFIX_NOSLASH "/lib/sysusers.d";
++ *ret = "/usr/lib/sysusers.d";
+ return 0;
+
+ case SD_PATH_SYSCTL:
+- *ret = ROOTPREFIX_NOSLASH "/lib/sysctl.d";
++ *ret = "/usr/lib/sysctl.d";
+ return 0;
+
+ case SD_PATH_BINFMT:
+- *ret = ROOTPREFIX_NOSLASH "/lib/binfmt.d";
++ *ret = "/usr/lib/binfmt.d";
+ return 0;
+
+ case SD_PATH_MODULES_LOAD:
+- *ret = ROOTPREFIX_NOSLASH "/lib/modules-load.d";
++ *ret = "/usr/lib/modules-load.d";
+ return 0;
+
+ case SD_PATH_CATALOG:
+--
+2.34.1
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch b/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch
index 03a29b5327..028f50b243 100644
--- a/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0001-pass-correct-parameters-to-getdents64.patch
@@ -1,7 +1,7 @@
-From fbc10748c7c59d82024a4d35146b8dfef8d52927 Mon Sep 17 00:00:00 2001
+From 8c8899b4641125cfe8e7baee32e5c5f452545d2c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 21 Jan 2022 15:15:11 -0800
-Subject: [PATCH 1/2] pass correct parameters to getdents64
+Subject: [PATCH] pass correct parameters to getdents64
Fixes
../git/src/basic/recurse-dir.c:57:40: error: incompatible pointer types passing 'uint8_t *' (aka 'unsigned char *') to parameter of type 'struct dirent *' [-Werror,-Wincompatible-pointer-types]
@@ -14,6 +14,7 @@ Fixes
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
---
src/basic/recurse-dir.c | 2 +-
src/basic/stat-util.c | 2 +-
@@ -33,7 +34,7 @@ index efa1797b7b..797285e3be 100644
return -errno;
if (n == 0)
diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c
-index efac7b002e..9e1fe7f5a0 100644
+index c2269844f8..7cd6c7fa42 100644
--- a/src/basic/stat-util.c
+++ b/src/basic/stat-util.c
@@ -99,7 +99,7 @@ int dir_is_empty_at(int dir_fd, const char *path) {
@@ -45,6 +46,3 @@ index efac7b002e..9e1fe7f5a0 100644
if (n < 0)
return -errno;
---
-2.34.1
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-resolve-Use-sockaddr-pointer-type-for-bind.patch b/poky/meta/recipes-core/systemd/systemd/0001-resolve-Use-sockaddr-pointer-type-for-bind.patch
new file mode 100644
index 0000000000..8567283537
--- /dev/null
+++ b/poky/meta/recipes-core/systemd/systemd/0001-resolve-Use-sockaddr-pointer-type-for-bind.patch
@@ -0,0 +1,46 @@
+From ad1428f29196bcc88ae382ee67ff705928e2be24 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Thu, 5 May 2022 20:25:37 -0700
+Subject: [PATCH] resolve: Use sockaddr pointer type for bind()
+
+bind() expects sockaddr* but SERVER_ADDRESS is sockaddr_in type struct
+
+Fixes errors with clang e.g.
+
+../git/src/resolve/test-resolved-stream.c:112:32: error: incompatible pointer types passing 'struct sockaddr_in *' to parameter of type 'const struct sockaddr *' [-Werror,-Wincompatible-pointer-types]
+ assert_se(bind(bindfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS)) >= 0);
+ ^~~~~~~~~~~~~~~
+../git/src/resolve/test-resolved-stream.c:251:39: error: incompatible pointer types passing 'struct sockaddr_in *' to parameter of type 'const struct sockaddr *' [-Werror,-Wincompatible-pointer-types]
+ r = connect(clientfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS));
+
+Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/23281]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/resolve/test-resolved-stream.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/src/resolve/test-resolved-stream.c b/src/resolve/test-resolved-stream.c
+index f12c729e50..504b532002 100644
+--- a/src/resolve/test-resolved-stream.c
++++ b/src/resolve/test-resolved-stream.c
+@@ -109,7 +109,7 @@ static void *tcp_dns_server(void *p) {
+
+ assert_se((bindfd = socket(AF_INET, SOCK_STREAM | SOCK_CLOEXEC, 0)) >= 0);
+ assert_se(setsockopt(bindfd, SOL_SOCKET, SO_REUSEADDR, &(int){1}, sizeof(int)) >= 0);
+- assert_se(bind(bindfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS)) >= 0);
++ assert_se(bind(bindfd, (struct sockaddr*)&SERVER_ADDRESS, sizeof(SERVER_ADDRESS)) >= 0);
+ assert_se(listen(bindfd, 1) >= 0);
+ assert_se((acceptfd = accept(bindfd, NULL, NULL)) >= 0);
+ server_handle(acceptfd);
+@@ -248,7 +248,7 @@ static void test_dns_stream(bool tls) {
+ assert_se((clientfd = socket(AF_INET, SOCK_STREAM | SOCK_CLOEXEC, 0)) >= 0);
+
+ for (int i = 0; i < 100; i++) {
+- r = connect(clientfd, &SERVER_ADDRESS, sizeof(SERVER_ADDRESS));
++ r = connect(clientfd, (struct sockaddr*)&SERVER_ADDRESS, sizeof(SERVER_ADDRESS));
+ if (r >= 0)
+ break;
+ usleep(EVENT_TIMEOUT_USEC / 100);
+--
+2.36.0
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch b/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch
deleted file mode 100644
index 752824688f..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 58860e0f248576a80ff2af256ba42713c186ae93 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 29 Sep 2020 18:01:41 -0700
-Subject: [PATCH] systemd.pc.in: use ROOTPREFIX without suffixed slash
-
-This complements the commit
-https://github.com/poettering/systemd/commit/b612c26ceb9f56af0271fc9f07c1724d2d260a8a
-
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- src/core/systemd.pc.in | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
-index b5cc8f9..21dbf30 100644
---- a/src/core/systemd.pc.in
-+++ b/src/core/systemd.pc.in
-@@ -65,16 +65,16 @@ systemdshutdowndir=${systemd_shutdown_dir}
- tmpfiles_dir=${prefix}/lib/tmpfiles.d
- tmpfilesdir=${tmpfiles_dir}
-
--sysusers_dir=${rootprefix}/lib/sysusers.d
-+sysusers_dir=${prefix}/lib/sysusers.d
- sysusersdir=${sysusers_dir}
-
--sysctl_dir=${rootprefix}/lib/sysctl.d
-+sysctl_dir=${prefix}/lib/sysctl.d
- sysctldir=${sysctl_dir}
-
--binfmt_dir=${rootprefix}/lib/binfmt.d
-+binfmt_dir=${prefix}/lib/binfmt.d
- binfmtdir=${binfmt_dir}
-
--modules_load_dir=${rootprefix}/lib/modules-load.d
-+modules_load_dir=${prefix}/lib/modules-load.d
- modulesloaddir=${modules_load_dir}
-
- catalog_dir=${prefix}/lib/systemd/catalog
---
-2.25.1
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0001-test-parse-argument-Include-signal.h.patch b/poky/meta/recipes-core/systemd/systemd/0001-test-parse-argument-Include-signal.h.patch
deleted file mode 100644
index 898e8af904..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0001-test-parse-argument-Include-signal.h.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 93c7e482d39cf7765974b3c729d29c1b120a60e3 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 24 May 2021 18:26:27 -0700
-Subject: [PATCH] test-parse-argument: Include signal.h
-
-Fixes
-src/test/test-parse-argument.c:49:29: error: use of undeclared identifier 'SIGABRT'
-
-Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/19718]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
----
- src/test/test-parse-argument.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/test/test-parse-argument.c b/src/test/test-parse-argument.c
-index cf3d54288a..15104e5282 100644
---- a/src/test/test-parse-argument.c
-+++ b/src/test/test-parse-argument.c
-@@ -5,6 +5,7 @@
- #include "parse-argument.h"
- #include "stdio-util.h"
- #include "tests.h"
-+#include <signal.h>
-
- TEST(parse_json_argument) {
- JsonFormatFlags flags = JSON_FORMAT_PRETTY;
diff --git a/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch b/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch
index 7dfa1a0df2..8cf0546450 100644
--- a/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0002-Add-sys-stat.h-for-S_IFDIR.patch
@@ -1,13 +1,14 @@
-From d16f7b37c917b91e951b9313e2c8264c72ed93e5 Mon Sep 17 00:00:00 2001
+From 4b731a5e2547b5292f9a774b849e14c0cf7b3955 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 21 Jan 2022 15:17:37 -0800
-Subject: [PATCH 2/2] Add sys/stat.h for S_IFDIR
+Subject: [PATCH] Add sys/stat.h for S_IFDIR
../git/src/shared/mkdir-label.c:13:61: error: use of undeclared identifier 'S_IFDIR'
r = mac_selinux_create_file_prepare_at(dirfd, path, S_IFDIR);
-Upstream-Status: Pending
+Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/23441]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
---
src/shared/mkdir-label.c | 1 +
1 file changed, 1 insertion(+)
@@ -24,6 +25,3 @@ index d36a6466d7..63b764cd83 100644
int mkdirat_label(int dirfd, const char *path, mode_t mode) {
int r;
---
-2.34.1
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch b/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
deleted file mode 100644
index 5027682df2..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0002-don-t-use-glibc-specific-qsort_r.patch
+++ /dev/null
@@ -1,157 +0,0 @@
-From 5d730902f47498a2866b46875352f6810a01d67c Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Mon, 25 Feb 2019 13:41:41 +0800
-Subject: [PATCH] don't use glibc-specific qsort_r
-
-Upstream-Status: Inappropriate [musl specific]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-[Rebased for v241]
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-[Rebased for v242]
-Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
-[Rebased for v247]
-Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
-
----
- src/basic/sort-util.h | 14 --------------
- src/shared/format-table.c | 36 ++++++++++++++++++++++++------------
- src/shared/hwdb-util.c | 19 ++++++++++++++-----
- 3 files changed, 38 insertions(+), 31 deletions(-)
-
---- a/src/basic/sort-util.h
-+++ b/src/basic/sort-util.h
-@@ -61,18 +61,4 @@ static inline void _qsort_safe(void *bas
- _qsort_safe((p), (n), sizeof((p)[0]), (comparison_fn_t) _func_); \
- })
-
--static inline void qsort_r_safe(void *base, size_t nmemb, size_t size, comparison_userdata_fn_t compar, void *userdata) {
-- if (nmemb <= 1)
-- return;
--
-- assert(base);
-- qsort_r(base, nmemb, size, compar, userdata);
--}
--
--#define typesafe_qsort_r(p, n, func, userdata) \
-- ({ \
-- int (*_func_)(const typeof(p[0])*, const typeof(p[0])*, typeof(userdata)) = func; \
-- qsort_r_safe((p), (n), sizeof((p)[0]), (comparison_userdata_fn_t) _func_, userdata); \
-- })
--
- int cmp_int(const int *a, const int *b);
---- a/src/shared/format-table.c
-+++ b/src/shared/format-table.c
-@@ -1324,30 +1324,32 @@ static int cell_data_compare(TableData *
- return CMP(index_a, index_b);
- }
-
--static int table_data_compare(const size_t *a, const size_t *b, Table *t) {
-+static Table *user_table;
-+static int table_data_compare(const void *x, const void *y) {
-+ const size_t *a = x, *b=y;
- int r;
-
-- assert(t);
-- assert(t->sort_map);
-+ assert(user_table);
-+ assert(user_table->sort_map);
-
- /* Make sure the header stays at the beginning */
-- if (*a < t->n_columns && *b < t->n_columns)
-+ if (*a < user_table->n_columns && *b < user_table->n_columns)
- return 0;
-- if (*a < t->n_columns)
-+ if (*a < user_table->n_columns)
- return -1;
-- if (*b < t->n_columns)
-+ if (*b < user_table->n_columns)
- return 1;
-
- /* Order other lines by the sorting map */
-- for (size_t i = 0; i < t->n_sort_map; i++) {
-+ for (size_t i = 0; i < user_table->n_sort_map; i++) {
- TableData *d, *dd;
-
-- d = t->data[*a + t->sort_map[i]];
-- dd = t->data[*b + t->sort_map[i]];
-+ d = user_table->data[*a + user_table->sort_map[i]];
-+ dd = user_table->data[*b + user_table->sort_map[i]];
-
- r = cell_data_compare(d, *a, dd, *b);
- if (r != 0)
-- return t->reverse_map && t->reverse_map[t->sort_map[i]] ? -r : r;
-+ return user_table->reverse_map && user_table->reverse_map[user_table->sort_map[i]] ? -r : r;
- }
-
- /* Order identical lines by the order there were originally added in */
-@@ -2009,7 +2011,12 @@ int table_print(Table *t, FILE *f) {
- for (size_t i = 0; i < n_rows; i++)
- sorted[i] = i * t->n_columns;
-
-- typesafe_qsort_r(sorted, n_rows, table_data_compare, t);
-+ if (n_rows <= 1)
-+ return 0;
-+ assert(sorted);
-+ user_table = t;
-+ qsort(sorted, n_rows, sizeof(size_t), table_data_compare);
-+ user_table = NULL;
- }
-
- if (t->display_map)
-@@ -2647,7 +2654,12 @@ int table_to_json(Table *t, JsonVariant
- for (size_t i = 0; i < n_rows; i++)
- sorted[i] = i * t->n_columns;
-
-- typesafe_qsort_r(sorted, n_rows, table_data_compare, t);
-+ if (n_rows <= 1)
-+ return 0;
-+ assert(sorted);
-+ user_table = t;
-+ qsort(sorted, n_rows, sizeof(size_t), table_data_compare);
-+ user_table = NULL;
- }
-
- if (t->display_map)
---- a/src/shared/hwdb-util.c
-+++ b/src/shared/hwdb-util.c
-@@ -127,9 +127,13 @@ static struct trie* trie_free(struct tri
-
- DEFINE_TRIVIAL_CLEANUP_FUNC(struct trie*, trie_free);
-
--static int trie_values_cmp(const struct trie_value_entry *a, const struct trie_value_entry *b, struct trie *trie) {
-- return strcmp(trie->strings->buf + a->key_off,
-- trie->strings->buf + b->key_off);
-+static struct trie *trie_node_add_value_trie;
-+static int trie_values_cmp(const void *v1, const void *v2) {
-+ const struct trie_value_entry *a = v1;
-+ const struct trie_value_entry *b = v2;
-+
-+ return strcmp(trie_node_add_value_trie->strings->buf + a->key_off,
-+ trie_node_add_value_trie->strings->buf + b->key_off);
- }
-
- static int trie_node_add_value(struct trie *trie, struct trie_node *node,
-@@ -157,7 +161,10 @@ static int trie_node_add_value(struct tr
- .value_off = v,
- };
-
-- val = typesafe_bsearch_r(&search, node->values, node->values_count, trie_values_cmp, trie);
-+ trie_node_add_value_trie = trie;
-+ val = bsearch(&search, node->values, node->values_count, sizeof(struct trie_value_entry), trie_values_cmp);
-+ trie_node_add_value_trie = NULL;
-+
- if (val) {
- /* At this point we have 2 identical properties on the same match-string.
- * Since we process files in order, we just replace the previous value. */
-@@ -183,7 +190,9 @@ static int trie_node_add_value(struct tr
- .line_number = line_number,
- };
- node->values_count++;
-- typesafe_qsort_r(node->values, node->values_count, trie_values_cmp, trie);
-+ trie_node_add_value_trie = trie;
-+ qsort(node->values, node->values_count, sizeof(struct trie_value_entry), trie_values_cmp);
-+ trie_node_add_value_trie = NULL;
- return 0;
- }
-
diff --git a/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch b/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-comparison_fn_t.patch
index f3edc7d82b..c28c8381e8 100644
--- a/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0003-missing_type.h-add-comparison_fn_t.patch
@@ -1,10 +1,9 @@
-From 3b42a888685aee1776a12cff84a5fe0063378483 Mon Sep 17 00:00:00 2001
+From 5513b918d02900a3a78fd0e0300a118b163edfef Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 13:55:12 +0800
-Subject: [PATCH] missing_type.h: add __compare_fn_t and comparison_fn_t
+Subject: [PATCH] missing_type.h: add comparison_fn_t
-Make it work with musl where comparison_fn_t and __compare_fn_t
-is not provided.
+Make it work with musl where comparison_fn_t and is not provided.
Upstream-Status: Inappropriate [musl specific]
@@ -13,17 +12,19 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
[Rebased for v242]
Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
-
+[Rebased for v250, Drop __compare_fn_t]
+Signed-off-by: Jiaqing Zhao <jiaqing.zhao@linux.intel.com>
---
- src/basic/missing_type.h | 9 +++++++++
+ src/basic/missing_type.h | 4 ++++
src/basic/sort-util.h | 1 +
- src/core/kmod-setup.c | 1 +
src/libsystemd/sd-journal/catalog.c | 1 +
- 4 files changed, 12 insertions(+)
+ 3 files changed, 6 insertions(+)
+diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
+index f6233090a9..6c0456349d 100644
--- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h
-@@ -10,3 +10,12 @@
+@@ -10,3 +10,7 @@
#if !HAVE_CHAR16_T
#define char16_t uint16_t
#endif
@@ -31,11 +32,8 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
+#ifndef __GLIBC__
+typedef int (*comparison_fn_t)(const void *, const void *);
+#endif
-+
-+#ifndef __COMPAR_FN_T
-+#define __COMPAR_FN_T
-+typedef int (*__compar_fn_t)(const void *, const void *);
-+#endif
+diff --git a/src/basic/sort-util.h b/src/basic/sort-util.h
+index 02a6784d99..0b33c83d59 100644
--- a/src/basic/sort-util.h
+++ b/src/basic/sort-util.h
@@ -4,6 +4,7 @@
@@ -46,16 +44,8 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
/* This is the same as glibc's internal __compar_d_fn_t type. glibc exports a public comparison_fn_t, for the
* external type __compar_fn_t, but doesn't do anything similar for __compar_d_fn_t. Let's hence do that
---- a/src/core/kmod-setup.c
-+++ b/src/core/kmod-setup.c
-@@ -10,6 +10,7 @@
- #include "macro.h"
- #include "recurse-dir.h"
- #include "string-util.h"
-+#include "missing_type.h"
-
- #if HAVE_KMOD
- #include "module-util.h"
+diff --git a/src/libsystemd/sd-journal/catalog.c b/src/libsystemd/sd-journal/catalog.c
+index 8fc87b131a..36a6efdbd8 100644
--- a/src/libsystemd/sd-journal/catalog.c
+++ b/src/libsystemd/sd-journal/catalog.c
@@ -28,6 +28,7 @@
@@ -66,3 +56,6 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
const char * const catalog_file_dirs[] = {
"/usr/local/lib/systemd/catalog/",
+--
+2.34.1
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
index d93f630752..1bd538b0c0 100644
--- a/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0004-add-fallback-parse_printf_format-implementation.patch
@@ -1,4 +1,4 @@
-From 3e0df2c22bfd37bc62bf09a01ec498e40d3599de Mon Sep 17 00:00:00 2001
+From 3d9910dcda697b1e361bba49c99050ee0d116742 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Sat, 22 May 2021 20:26:24 +0200
Subject: [PATCH] add fallback parse_printf_format implementation
@@ -22,6 +22,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
create mode 100644 src/basic/parse-printf-format.c
create mode 100644 src/basic/parse-printf-format.h
+diff --git a/meson.build b/meson.build
+index cb9936ee8b..ae53345260 100644
--- a/meson.build
+++ b/meson.build
@@ -686,6 +686,7 @@ endif
@@ -32,9 +34,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
'sys/auxv.h',
'valgrind/memcheck.h',
'valgrind/valgrind.h',
+diff --git a/src/basic/meson.build b/src/basic/meson.build
+index 49e1e7f43e..4131494bfa 100644
--- a/src/basic/meson.build
+++ b/src/basic/meson.build
-@@ -335,6 +335,11 @@ endforeach
+@@ -334,6 +334,11 @@ endforeach
basic_sources += generated_gperf_headers
@@ -46,6 +50,9 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
############################################################
arch_list = [
+diff --git a/src/basic/parse-printf-format.c b/src/basic/parse-printf-format.c
+new file mode 100644
+index 0000000000..49437e5445
--- /dev/null
+++ b/src/basic/parse-printf-format.c
@@ -0,0 +1,273 @@
@@ -322,6 +329,9 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+
+ return last;
+}
+diff --git a/src/basic/parse-printf-format.h b/src/basic/parse-printf-format.h
+new file mode 100644
+index 0000000000..47be7522d7
--- /dev/null
+++ b/src/basic/parse-printf-format.h
@@ -0,0 +1,57 @@
@@ -382,6 +392,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
+size_t parse_printf_format(const char *fmt, size_t n, int *types);
+
+#endif /* HAVE_PRINTF_H */
+diff --git a/src/basic/stdio-util.h b/src/basic/stdio-util.h
+index 69d7062ec6..f55c5aab2c 100644
--- a/src/basic/stdio-util.h
+++ b/src/basic/stdio-util.h
@@ -1,13 +1,13 @@
@@ -399,6 +411,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
#define snprintf_ok(buf, len, fmt, ...) \
({ \
+diff --git a/src/libsystemd/sd-journal/journal-send.c b/src/libsystemd/sd-journal/journal-send.c
+index 1e10ed5524..e6ceba54f9 100644
--- a/src/libsystemd/sd-journal/journal-send.c
+++ b/src/libsystemd/sd-journal/journal-send.c
@@ -2,7 +2,6 @@
@@ -409,7 +423,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
#include <stddef.h>
#include <sys/un.h>
#include <unistd.h>
-@@ -21,6 +20,7 @@
+@@ -25,6 +24,7 @@
#include "stdio-util.h"
#include "string-util.h"
#include "tmpfile-util.h"
diff --git a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
index 36545c2f60..680930ca3c 100644
--- a/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0005-src-basic-missing.h-check-for-missing-strndupa.patch
@@ -1,4 +1,4 @@
-From cef23a651ea200e30e1e6ed2a2564505e3a42d46 Mon Sep 17 00:00:00 2001
+From 106b7bd7186c9d6c1dcd72bd4ca6457d3fa72d0b Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:18:21 +0800
Subject: [PATCH] src/basic/missing.h: check for missing strndupa
@@ -17,7 +17,6 @@ Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
[rebased for systemd 244]
[Rebased for v247]
Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
-
---
meson.build | 1 +
src/backlight/backlight.c | 1 +
@@ -41,6 +40,7 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
src/core/kmod-setup.c | 1 +
src/core/service.c | 1 +
src/coredump/coredump-vacuum.c | 1 +
+ src/fstab-generator/fstab-generator.c | 1 +
src/journal-remote/journal-remote-main.c | 1 +
src/journal/journalctl.c | 1 +
src/libsystemd/sd-bus/bus-message.c | 1 +
@@ -70,11 +70,13 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
src/udev/udev-builtin-path_id.c | 1 +
src/udev/udev-event.c | 1 +
src/udev/udev-rules.c | 1 +
- 51 files changed, 62 insertions(+)
+ 52 files changed, 63 insertions(+)
+diff --git a/meson.build b/meson.build
+index cb9936ee8b..7ab201c6d9 100644
--- a/meson.build
+++ b/meson.build
-@@ -507,6 +507,7 @@ foreach ident : ['secure_getenv', '__sec
+@@ -507,6 +507,7 @@ foreach ident : ['secure_getenv', '__secure_getenv']
endforeach
foreach ident : [
@@ -82,6 +84,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
['memfd_create', '''#include <sys/mman.h>'''],
['gettid', '''#include <sys/types.h>
#include <unistd.h>'''],
+diff --git a/src/backlight/backlight.c b/src/backlight/backlight.c
+index 5a3095cbba..22cfa4d526 100644
--- a/src/backlight/backlight.c
+++ b/src/backlight/backlight.c
@@ -19,6 +19,7 @@
@@ -92,6 +96,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int help(void) {
_cleanup_free_ char *link = NULL;
+diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
+index a626ecf2e2..f7dc6c8421 100644
--- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c
@@ -37,6 +37,7 @@
@@ -102,6 +108,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int cg_enumerate_items(const char *controller, const char *path, FILE **_f, const char *item) {
_cleanup_free_ char *fs = NULL;
+diff --git a/src/basic/env-util.c b/src/basic/env-util.c
+index 885967e7f3..d0b7dc845e 100644
--- a/src/basic/env-util.c
+++ b/src/basic/env-util.c
@@ -19,6 +19,7 @@
@@ -112,6 +120,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
/* We follow bash for the character set. Different shells have different rules. */
#define VALID_BASH_ENV_NAME_CHARS \
+diff --git a/src/basic/log.c b/src/basic/log.c
+index 12071e2ebd..15254c7bbc 100644
--- a/src/basic/log.c
+++ b/src/basic/log.c
@@ -36,6 +36,7 @@
@@ -122,6 +132,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define SNDBUF_SIZE (8*1024*1024)
+diff --git a/src/basic/missing_stdlib.h b/src/basic/missing_stdlib.h
+index 8c76f93eb2..9068bfb4f0 100644
--- a/src/basic/missing_stdlib.h
+++ b/src/basic/missing_stdlib.h
@@ -11,3 +11,15 @@
@@ -140,6 +152,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
+ (char *)memcpy(__new, __old, __len); \
+ })
+#endif
+diff --git a/src/basic/mkdir.c b/src/basic/mkdir.c
+index 51a0d74e87..03569f71f8 100644
--- a/src/basic/mkdir.c
+++ b/src/basic/mkdir.c
@@ -15,6 +15,7 @@
@@ -150,6 +164,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int mkdir_safe_internal(
const char *path,
+diff --git a/src/basic/mountpoint-util.c b/src/basic/mountpoint-util.c
+index 82a33a6829..d947774b40 100644
--- a/src/basic/mountpoint-util.c
+++ b/src/basic/mountpoint-util.c
@@ -13,6 +13,7 @@
@@ -160,6 +176,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#include "mountpoint-util.h"
#include "nulstr-util.h"
#include "parse-util.h"
+diff --git a/src/basic/parse-util.c b/src/basic/parse-util.c
+index 2888ab6523..d941afec2d 100644
--- a/src/basic/parse-util.c
+++ b/src/basic/parse-util.c
@@ -18,6 +18,7 @@
@@ -170,6 +188,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int parse_boolean(const char *v) {
if (!v)
+diff --git a/src/basic/path-lookup.c b/src/basic/path-lookup.c
+index 6fb8c40e7a..c4b59e8518 100644
--- a/src/basic/path-lookup.c
+++ b/src/basic/path-lookup.c
@@ -16,6 +16,7 @@
@@ -180,6 +200,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int xdg_user_runtime_dir(char **ret, const char *suffix) {
const char *e;
+diff --git a/src/basic/percent-util.c b/src/basic/percent-util.c
+index cab9d0eaea..5f6ca258e9 100644
--- a/src/basic/percent-util.c
+++ b/src/basic/percent-util.c
@@ -3,6 +3,7 @@
@@ -190,6 +212,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int parse_parts_value_whole(const char *p, const char *symbol) {
const char *pc, *n;
+diff --git a/src/basic/proc-cmdline.c b/src/basic/proc-cmdline.c
+index 410b8a3eb5..f2c4355609 100644
--- a/src/basic/proc-cmdline.c
+++ b/src/basic/proc-cmdline.c
@@ -15,6 +15,7 @@
@@ -200,6 +224,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int proc_cmdline(char **ret) {
const char *e;
+diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
+index 65f96abb06..e485a0196b 100644
--- a/src/basic/procfs-util.c
+++ b/src/basic/procfs-util.c
@@ -12,6 +12,7 @@
@@ -210,6 +236,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int procfs_get_pid_max(uint64_t *ret) {
_cleanup_free_ char *value = NULL;
+diff --git a/src/basic/time-util.c b/src/basic/time-util.c
+index b659d6905d..020112be24 100644
--- a/src/basic/time-util.c
+++ b/src/basic/time-util.c
@@ -26,6 +26,7 @@
@@ -220,6 +248,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static clockid_t map_clock_id(clockid_t c) {
+diff --git a/src/boot/bless-boot.c b/src/boot/bless-boot.c
+index 9e4b0d1f72..d640316ff7 100644
--- a/src/boot/bless-boot.c
+++ b/src/boot/bless-boot.c
@@ -19,6 +19,7 @@
@@ -230,6 +260,20 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static char **arg_path = NULL;
+diff --git a/src/core/dbus-cgroup.c b/src/core/dbus-cgroup.c
+index f0d8759e85..b4c1053e64 100644
+--- a/src/core/dbus-cgroup.c
++++ b/src/core/dbus-cgroup.c
+@@ -21,6 +21,7 @@
+ #include "parse-util.h"
+ #include "path-util.h"
+ #include "percent-util.h"
++#include "missing_stdlib.h"
+ #include "socket-util.h"
+
+ BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve);
+diff --git a/src/core/dbus-execute.c b/src/core/dbus-execute.c
+index 5c499e5d06..e7ab1bb9a5 100644
--- a/src/core/dbus-execute.c
+++ b/src/core/dbus-execute.c
@@ -44,6 +44,7 @@
@@ -240,6 +284,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
BUS_DEFINE_PROPERTY_GET_ENUM(bus_property_get_exec_output, exec_output, ExecOutput);
static BUS_DEFINE_PROPERTY_GET_ENUM(property_get_exec_input, exec_input, ExecInput);
+diff --git a/src/core/dbus-util.c b/src/core/dbus-util.c
+index 32a2ec0ff9..36be2511e4 100644
--- a/src/core/dbus-util.c
+++ b/src/core/dbus-util.c
@@ -9,6 +9,7 @@
@@ -250,6 +296,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int bus_property_get_triggered_unit(
sd_bus *bus,
+diff --git a/src/core/execute.c b/src/core/execute.c
+index 0b20d386d3..fccfb9268c 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
@@ -102,6 +102,7 @@
@@ -260,16 +308,20 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define IDLE_TIMEOUT_USEC (5*USEC_PER_SEC)
#define IDLE_TIMEOUT2_USEC (1*USEC_PER_SEC)
+diff --git a/src/core/kmod-setup.c b/src/core/kmod-setup.c
+index d054668b8e..9b4caa7651 100644
--- a/src/core/kmod-setup.c
+++ b/src/core/kmod-setup.c
-@@ -11,6 +11,7 @@
+@@ -10,6 +10,7 @@
+ #include "macro.h"
#include "recurse-dir.h"
#include "string-util.h"
- #include "missing_type.h"
+#include "missing_stdlib.h"
#if HAVE_KMOD
#include "module-util.h"
+diff --git a/src/core/service.c b/src/core/service.c
+index 87f0d34c8c..ccda3feb29 100644
--- a/src/core/service.c
+++ b/src/core/service.c
@@ -42,6 +42,7 @@
@@ -280,6 +332,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static const UnitActiveState state_translation_table[_SERVICE_STATE_MAX] = {
[SERVICE_DEAD] = UNIT_INACTIVE,
+diff --git a/src/coredump/coredump-vacuum.c b/src/coredump/coredump-vacuum.c
+index dcf9cc03cd..8f8d992ec2 100644
--- a/src/coredump/coredump-vacuum.c
+++ b/src/coredump/coredump-vacuum.c
@@ -16,6 +16,7 @@
@@ -290,6 +344,20 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define DEFAULT_MAX_USE_LOWER (uint64_t) (1ULL*1024ULL*1024ULL) /* 1 MiB */
#define DEFAULT_MAX_USE_UPPER (uint64_t) (4ULL*1024ULL*1024ULL*1024ULL) /* 4 GiB */
+diff --git a/src/fstab-generator/fstab-generator.c b/src/fstab-generator/fstab-generator.c
+index 9b32383a76..f8d3397a06 100644
+--- a/src/fstab-generator/fstab-generator.c
++++ b/src/fstab-generator/fstab-generator.c
+@@ -29,6 +29,7 @@
+ #include "util.h"
+ #include "virt.h"
+ #include "volatile-util.h"
++#include "missing_stdlib.h"
+
+ typedef enum MountPointFlags {
+ MOUNT_NOAUTO = 1 << 0,
+diff --git a/src/journal-remote/journal-remote-main.c b/src/journal-remote/journal-remote-main.c
+index 3e3646e45f..6a8fc60f6d 100644
--- a/src/journal-remote/journal-remote-main.c
+++ b/src/journal-remote/journal-remote-main.c
@@ -24,6 +24,7 @@
@@ -300,6 +368,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define PRIV_KEY_FILE CERTIFICATE_ROOT "/private/journal-remote.pem"
#define CERT_FILE CERTIFICATE_ROOT "/certs/journal-remote.pem"
+diff --git a/src/journal/journalctl.c b/src/journal/journalctl.c
+index 3c4a7c0a7a..6a792404f2 100644
--- a/src/journal/journalctl.c
+++ b/src/journal/journalctl.c
@@ -73,6 +73,7 @@
@@ -310,6 +380,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define DEFAULT_FSS_INTERVAL_USEC (15*USEC_PER_MINUTE)
#define PROCESS_INOTIFY_INTERVAL 1024 /* Every 1,024 messages processed */
+diff --git a/src/libsystemd/sd-bus/bus-message.c b/src/libsystemd/sd-bus/bus-message.c
+index 96529b422b..ddb5e9c698 100644
--- a/src/libsystemd/sd-bus/bus-message.c
+++ b/src/libsystemd/sd-bus/bus-message.c
@@ -20,6 +20,7 @@
@@ -320,6 +392,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int message_append_basic(sd_bus_message *m, char type, const void *p, const void **stored);
+diff --git a/src/libsystemd/sd-bus/bus-objects.c b/src/libsystemd/sd-bus/bus-objects.c
+index 28d8336718..5d3ce88a53 100644
--- a/src/libsystemd/sd-bus/bus-objects.c
+++ b/src/libsystemd/sd-bus/bus-objects.c
@@ -12,6 +12,7 @@
@@ -330,6 +404,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int node_vtable_get_userdata(
sd_bus *bus,
+diff --git a/src/libsystemd/sd-bus/bus-socket.c b/src/libsystemd/sd-bus/bus-socket.c
+index 14951ccb33..b7f86ca501 100644
--- a/src/libsystemd/sd-bus/bus-socket.c
+++ b/src/libsystemd/sd-bus/bus-socket.c
@@ -28,6 +28,7 @@
@@ -340,6 +416,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define SNDBUF_SIZE (8*1024*1024)
+diff --git a/src/libsystemd/sd-bus/sd-bus.c b/src/libsystemd/sd-bus/sd-bus.c
+index 9e1d29cc1d..8c3165f0ce 100644
--- a/src/libsystemd/sd-bus/sd-bus.c
+++ b/src/libsystemd/sd-bus/sd-bus.c
@@ -43,6 +43,7 @@
@@ -350,6 +428,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define log_debug_bus_message(m) \
do { \
+diff --git a/src/libsystemd/sd-bus/test-bus-benchmark.c b/src/libsystemd/sd-bus/test-bus-benchmark.c
+index 317653bedc..d028216c48 100644
--- a/src/libsystemd/sd-bus/test-bus-benchmark.c
+++ b/src/libsystemd/sd-bus/test-bus-benchmark.c
@@ -14,6 +14,7 @@
@@ -360,6 +440,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define MAX_SIZE (2*1024*1024)
+diff --git a/src/libsystemd/sd-journal/sd-journal.c b/src/libsystemd/sd-journal/sd-journal.c
+index 7a6cc4aca3..b7f7cd65c5 100644
--- a/src/libsystemd/sd-journal/sd-journal.c
+++ b/src/libsystemd/sd-journal/sd-journal.c
@@ -41,6 +41,7 @@
@@ -370,6 +452,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define JOURNAL_FILES_MAX 7168
+diff --git a/src/locale/keymap-util.c b/src/locale/keymap-util.c
+index 10d2ed7aec..4fbe3f6b4a 100644
--- a/src/locale/keymap-util.c
+++ b/src/locale/keymap-util.c
@@ -24,6 +24,7 @@
@@ -380,6 +464,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static bool startswith_comma(const char *s, const char *prefix) {
s = startswith(s, prefix);
+diff --git a/src/login/pam_systemd.c b/src/login/pam_systemd.c
+index 5bd7efc3e8..282899601e 100644
--- a/src/login/pam_systemd.c
+++ b/src/login/pam_systemd.c
@@ -31,6 +31,7 @@
@@ -390,6 +476,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#include "pam-util.h"
#include "parse-util.h"
#include "path-util.h"
+diff --git a/src/network/generator/network-generator.c b/src/network/generator/network-generator.c
+index 063ad08d80..f9823a433b 100644
--- a/src/network/generator/network-generator.c
+++ b/src/network/generator/network-generator.c
@@ -13,6 +13,7 @@
@@ -400,6 +488,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
/*
# .network
+diff --git a/src/nspawn/nspawn-settings.c b/src/nspawn/nspawn-settings.c
+index 1f58bf3ed4..8457a3b0e3 100644
--- a/src/nspawn/nspawn-settings.c
+++ b/src/nspawn/nspawn-settings.c
@@ -17,6 +17,7 @@
@@ -410,6 +500,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
Settings *settings_new(void) {
Settings *s;
+diff --git a/src/nss-mymachines/nss-mymachines.c b/src/nss-mymachines/nss-mymachines.c
+index c64e79bdff..eda26b0b9a 100644
--- a/src/nss-mymachines/nss-mymachines.c
+++ b/src/nss-mymachines/nss-mymachines.c
@@ -21,6 +21,7 @@
@@ -420,6 +512,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static void setup_logging_once(void) {
static pthread_once_t once = PTHREAD_ONCE_INIT;
+diff --git a/src/portable/portable.c b/src/portable/portable.c
+index 0e6461ba93..54148d5924 100644
--- a/src/portable/portable.c
+++ b/src/portable/portable.c
@@ -39,6 +39,7 @@
@@ -430,6 +524,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
/* Markers used in the first line of our 20-portable.conf unit file drop-in to determine, that a) the unit file was
* dropped there by the portable service logic and b) for which image it was dropped there. */
+diff --git a/src/resolve/resolvectl.c b/src/resolve/resolvectl.c
+index 5b3ceeff36..d36d1d57ae 100644
--- a/src/resolve/resolvectl.c
+++ b/src/resolve/resolvectl.c
@@ -43,6 +43,7 @@
@@ -440,6 +536,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int arg_family = AF_UNSPEC;
static int arg_ifindex = 0;
+diff --git a/src/shared/bus-get-properties.c b/src/shared/bus-get-properties.c
+index 8b4f66b22e..5926e4c61b 100644
--- a/src/shared/bus-get-properties.c
+++ b/src/shared/bus-get-properties.c
@@ -4,6 +4,7 @@
@@ -450,6 +548,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int bus_property_get_bool(
sd_bus *bus,
+diff --git a/src/shared/bus-unit-procs.c b/src/shared/bus-unit-procs.c
+index 87c0334fec..402ab3493b 100644
--- a/src/shared/bus-unit-procs.c
+++ b/src/shared/bus-unit-procs.c
@@ -10,6 +10,7 @@
@@ -460,6 +560,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
struct CGroupInfo {
char *cgroup_path;
+diff --git a/src/shared/bus-unit-util.c b/src/shared/bus-unit-util.c
+index dcce530c99..faf5a5bda0 100644
--- a/src/shared/bus-unit-util.c
+++ b/src/shared/bus-unit-util.c
@@ -49,6 +49,7 @@
@@ -470,6 +572,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int bus_parse_unit_info(sd_bus_message *message, UnitInfo *u) {
assert(message);
+diff --git a/src/shared/bus-util.c b/src/shared/bus-util.c
+index 4a2b7684bc..ee6d687c58 100644
--- a/src/shared/bus-util.c
+++ b/src/shared/bus-util.c
@@ -21,6 +21,7 @@
@@ -480,6 +584,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static int name_owner_change_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {
sd_event *e = userdata;
+diff --git a/src/shared/dns-domain.c b/src/shared/dns-domain.c
+index f54b187a1b..299758c7e4 100644
--- a/src/shared/dns-domain.c
+++ b/src/shared/dns-domain.c
@@ -17,6 +17,7 @@
@@ -490,6 +596,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
int dns_label_unescape(const char **name, char *dest, size_t sz, DNSLabelFlags flags) {
const char *n;
+diff --git a/src/shared/journal-importer.c b/src/shared/journal-importer.c
+index c6caf9330a..ebe33bd44a 100644
--- a/src/shared/journal-importer.c
+++ b/src/shared/journal-importer.c
@@ -15,6 +15,7 @@
@@ -500,6 +608,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
enum {
IMPORTER_STATE_LINE = 0, /* waiting to read, or reading line */
+diff --git a/src/shared/logs-show.c b/src/shared/logs-show.c
+index cf83eb6bca..e672a003a3 100644
--- a/src/shared/logs-show.c
+++ b/src/shared/logs-show.c
@@ -42,6 +42,7 @@
@@ -510,6 +620,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
/* up to three lines (each up to 100 characters) or 300 characters, whichever is less */
#define PRINT_LINE_THRESHOLD 3
+diff --git a/src/shared/pager.c b/src/shared/pager.c
+index f75ef62d2d..530001a821 100644
--- a/src/shared/pager.c
+++ b/src/shared/pager.c
@@ -26,6 +26,7 @@
@@ -520,6 +632,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static pid_t pager_pid = 0;
+diff --git a/src/shared/uid-range.c b/src/shared/uid-range.c
+index 2c07a1b7a8..2a9d6ef4ab 100644
--- a/src/shared/uid-range.c
+++ b/src/shared/uid-range.c
@@ -9,6 +9,7 @@
@@ -530,6 +644,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
static bool uid_range_intersect(UidRange *range, uid_t start, uid_t nr) {
assert(range);
+diff --git a/src/socket-proxy/socket-proxyd.c b/src/socket-proxy/socket-proxyd.c
+index 7e9ab19666..56f619e54e 100644
--- a/src/socket-proxy/socket-proxyd.c
+++ b/src/socket-proxy/socket-proxyd.c
@@ -26,6 +26,7 @@
@@ -540,6 +656,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define BUFFER_SIZE (256 * 1024)
+diff --git a/src/test/test-hexdecoct.c b/src/test/test-hexdecoct.c
+index cc9a7cb838..a679614a47 100644
--- a/src/test/test-hexdecoct.c
+++ b/src/test/test-hexdecoct.c
@@ -7,6 +7,7 @@
@@ -550,6 +668,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#include "tests.h"
TEST(hexchar) {
+diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c
+index ae92e45205..1e6f3205cb 100644
--- a/src/udev/udev-builtin-path_id.c
+++ b/src/udev/udev-builtin-path_id.c
@@ -22,6 +22,7 @@
@@ -560,6 +680,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
_printf_(2,3)
static void path_prepend(char **path, const char *fmt, ...) {
+diff --git a/src/udev/udev-event.c b/src/udev/udev-event.c
+index a60e4f294c..571c43765b 100644
--- a/src/udev/udev-event.c
+++ b/src/udev/udev-event.c
@@ -35,6 +35,7 @@
@@ -570,6 +692,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
typedef struct Spawn {
sd_device *device;
+diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
+index 1a384d6b38..0089833e3f 100644
--- a/src/udev/udev-rules.c
+++ b/src/udev/udev-rules.c
@@ -34,6 +34,7 @@
@@ -580,23 +704,6 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#define RULES_DIRS (const char* const*) CONF_PATHS_STRV("udev/rules.d")
---- a/src/core/dbus-cgroup.c
-+++ b/src/core/dbus-cgroup.c
-@@ -21,6 +21,7 @@
- #include "parse-util.h"
- #include "path-util.h"
- #include "percent-util.h"
-+#include "missing_stdlib.h"
- #include "socket-util.h"
-
- BUS_DEFINE_PROPERTY_GET(bus_property_get_tasks_max, "t", TasksMax, tasks_max_resolve);
---- a/src/fstab-generator/fstab-generator.c
-+++ b/src/fstab-generator/fstab-generator.c
-@@ -29,6 +29,7 @@
- #include "util.h"
- #include "virt.h"
- #include "volatile-util.h"
-+#include "missing_stdlib.h"
-
- typedef enum MountPointFlags {
- MOUNT_NOAUTO = 1 << 0,
+--
+2.34.1
+
diff --git a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
index 846c01bd4f..b84fbaa67e 100644
--- a/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch
@@ -1,4 +1,4 @@
-From fb068403b25002156435350165ea418a6338a313 Mon Sep 17 00:00:00 2001
+From 74c664bcd6b9a5fcf3466310c07f608d12456f7f Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 14:56:21 +0800
Subject: [PATCH] don't fail if GLOB_BRACE and GLOB_ALTDIRFUNC is not defined
@@ -23,6 +23,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
src/tmpfiles/tmpfiles.c | 10 ++++++++++
3 files changed, 38 insertions(+)
+diff --git a/src/basic/glob-util.c b/src/basic/glob-util.c
+index e026b29478..815e56ef68 100644
--- a/src/basic/glob-util.c
+++ b/src/basic/glob-util.c
@@ -12,6 +12,12 @@
@@ -46,7 +48,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
/* We want to set GLOB_ALTDIRFUNC ourselves, don't allow it to be set. */
assert(!(flags & GLOB_ALTDIRFUNC));
-@@ -32,9 +39,14 @@ int safe_glob(const char *path, int flag
+@@ -32,9 +39,14 @@ int safe_glob(const char *path, int flags, glob_t *pglob) {
pglob->gl_lstat = lstat;
if (!pglob->gl_stat)
pglob->gl_stat = stat;
@@ -61,6 +63,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (k == GLOB_NOMATCH)
return -ENOENT;
if (k == GLOB_NOSPACE)
+diff --git a/src/test/test-glob-util.c b/src/test/test-glob-util.c
+index ec8b74f48f..d99a6095df 100644
--- a/src/test/test-glob-util.c
+++ b/src/test/test-glob-util.c
@@ -13,6 +13,12 @@
@@ -110,6 +114,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
assert_se(r == GLOB_NOMATCH);
(void) rm_rf(template, REMOVE_ROOT|REMOVE_PHYSICAL);
+diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
+index fcab51c208..fdef1807ae 100644
--- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c
@@ -67,6 +67,12 @@
@@ -135,7 +141,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
};
int r = 0, k;
char **fn;
-@@ -1981,7 +1989,9 @@ static int glob_item(Item *i, action_t a
+@@ -1981,7 +1989,9 @@ static int glob_item(Item *i, action_t action) {
static int glob_item_recursively(Item *i, fdaction_t action) {
_cleanup_globfree_ glob_t g = {
diff --git a/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch b/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch
index 57e18a5808..4cce9a3fe6 100644
--- a/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0008-add-missing-FTW_-macros-for-musl.patch
@@ -1,4 +1,4 @@
-From 7ca9887f84adba065dc2e59b3de55ace2fc72ec0 Mon Sep 17 00:00:00 2001
+From a0450f7909348e7ff1d58adc0aee4119a0519c1f Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:00:06 +0800
Subject: [PATCH] add missing FTW_ macros for musl
@@ -7,18 +7,24 @@ This is to avoid build failures like below for musl.
locale-util.c:296:24: error: 'FTW_STOP' undeclared
+Revisit this when upgrading to 251+ since most of these defines are not
+needed anymore except FTW_CONTINUE
+
Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
- src/basic/missing_type.h | 20 ++++++++++++++++++++
- src/shared/mount-setup.c | 1 +
- 2 files changed, 21 insertions(+)
+ src/basic/missing_type.h | 20 ++++++++++++++++++++
+ src/shared/mount-setup.c | 1 +
+ src/test/test-recurse-dir.c | 1 +
+ 3 files changed, 22 insertions(+)
+diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
+index aeaf6ad5ec..3df1084ef2 100644
--- a/src/basic/missing_type.h
+++ b/src/basic/missing_type.h
-@@ -19,3 +19,23 @@ typedef int (*comparison_fn_t)(const voi
+@@ -19,3 +19,23 @@ typedef int (*comparison_fn_t)(const void *, const void *);
#define __COMPAR_FN_T
typedef int (*__compar_fn_t)(const void *, const void *);
#endif
@@ -42,6 +48,8 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
+#ifndef FTW_SKIP_SIBLINGS
+#define FTW_SKIP_SIBLINGS 3
+#endif
+diff --git a/src/shared/mount-setup.c b/src/shared/mount-setup.c
+index 7917968497..cc3d5baaab 100644
--- a/src/shared/mount-setup.c
+++ b/src/shared/mount-setup.c
@@ -32,6 +32,7 @@
@@ -52,6 +60,8 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
typedef enum MountMode {
MNT_NONE = 0,
+diff --git a/src/test/test-recurse-dir.c b/src/test/test-recurse-dir.c
+index 2c2120b136..bc60a178a2 100644
--- a/src/test/test-recurse-dir.c
+++ b/src/test/test-recurse-dir.c
@@ -6,6 +6,7 @@
diff --git a/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch b/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch
index 0fc320420e..e7b7269f95 100644
--- a/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0009-fix-missing-of-__register_atfork-for-non-glibc-build.patch
@@ -1,10 +1,13 @@
-From c7453b716ae308b89cf4b2b231a36ddd38a49752 Mon Sep 17 00:00:00 2001
+From 3ca0920429f7eaf8c59f9ac8afd30a43b83d95ed Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:03:47 +0800
Subject: [PATCH] fix missing of __register_atfork for non-glibc builds
Upstream-Status: Inappropriate [musl specific]
+Drop this when upgrading to 251+, systemd does not use
+__register_atfork anymore
+
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
@@ -12,7 +15,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
1 file changed, 7 insertions(+)
diff --git a/src/basic/process-util.c b/src/basic/process-util.c
-index 461bbfe9a5..2d06f9f60a 100644
+index c971852158..df6e85b1fc 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -18,6 +18,9 @@
@@ -25,7 +28,7 @@ index 461bbfe9a5..2d06f9f60a 100644
#include "alloc-util.h"
#include "architecture.h"
-@@ -1202,11 +1205,15 @@ void reset_cached_pid(void) {
+@@ -1161,11 +1164,15 @@ void reset_cached_pid(void) {
cached_pid = CACHED_PID_UNSET;
}
diff --git a/poky/meta/recipes-core/systemd/systemd/0010-Use-uintmax_t-for-handling-rlim_t.patch b/poky/meta/recipes-core/systemd/systemd/0010-Use-uintmax_t-for-handling-rlim_t.patch
index 029f413aa8..3a47d09e8a 100644
--- a/poky/meta/recipes-core/systemd/systemd/0010-Use-uintmax_t-for-handling-rlim_t.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0010-Use-uintmax_t-for-handling-rlim_t.patch
@@ -1,4 +1,4 @@
-From 856010e268a6aca8e5f02502457afe289bd877f1 Mon Sep 17 00:00:00 2001
+From 48a791aae7a47a2a08e9e60c18054071a43b8cda Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:12:41 +0800
Subject: [PATCH] Use uintmax_t for handling rlim_t
@@ -27,9 +27,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
src/core/execute.c | 4 ++--
3 files changed, 9 insertions(+), 15 deletions(-)
+diff --git a/src/basic/format-util.h b/src/basic/format-util.h
+index 8719df3e29..9becc96066 100644
--- a/src/basic/format-util.h
+++ b/src/basic/format-util.h
-@@ -34,13 +34,7 @@ assert_cc(sizeof(gid_t) == sizeof(uint32
+@@ -34,13 +34,7 @@ assert_cc(sizeof(gid_t) == sizeof(uint32_t));
# error Unknown timex member size
#endif
@@ -44,9 +46,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
#if SIZEOF_DEV_T == 8
# define DEV_FMT "%" PRIu64
+diff --git a/src/basic/rlimit-util.c b/src/basic/rlimit-util.c
+index 33dfde9d6c..e018fd81fd 100644
--- a/src/basic/rlimit-util.c
+++ b/src/basic/rlimit-util.c
-@@ -44,7 +44,7 @@ int setrlimit_closest(int resource, cons
+@@ -44,7 +44,7 @@ int setrlimit_closest(int resource, const struct rlimit *rlim) {
fixed.rlim_max == highest.rlim_max)
return 0;
@@ -55,7 +59,7 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
return RET_NERRNO(setrlimit(resource, &fixed));
}
-@@ -307,13 +307,13 @@ int rlimit_format(const struct rlimit *r
+@@ -307,13 +307,13 @@ int rlimit_format(const struct rlimit *rl, char **ret) {
if (rl->rlim_cur >= RLIM_INFINITY && rl->rlim_max >= RLIM_INFINITY)
r = free_and_strdup(&s, "infinity");
else if (rl->rlim_cur >= RLIM_INFINITY)
@@ -82,9 +86,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
return 1;
}
+diff --git a/src/core/execute.c b/src/core/execute.c
+index fccfb9268c..90f00e10a5 100644
--- a/src/core/execute.c
+++ b/src/core/execute.c
-@@ -5639,9 +5639,9 @@ void exec_context_dump(const ExecContext
+@@ -5633,9 +5633,9 @@ void exec_context_dump(const ExecContext *c, FILE* f, const char *prefix) {
for (unsigned i = 0; i < RLIM_NLIMITS; i++)
if (c->rlimit[i]) {
fprintf(f, "%sLimit%s: " RLIM_FMT "\n",
diff --git a/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch b/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
index 327084bae9..7e4587cc23 100644
--- a/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0011-test-sizeof.c-Disable-tests-for-missing-typedefs-in-.patch
@@ -1,4 +1,4 @@
-From ad395dda5db9b1ae156be121cfc8a38960de6c55 Mon Sep 17 00:00:00 2001
+From e8025c8eefdf1be4bba34c48f3430838f3859c52 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 28 Feb 2018 21:25:22 -0800
Subject: [PATCH] test-sizeof.c: Disable tests for missing typedefs in musl
@@ -12,6 +12,8 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
src/test/test-sizeof.c | 4 ++++
1 file changed, 4 insertions(+)
+diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
+index f349852553..602772227e 100644
--- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c
@@ -55,8 +55,10 @@ int main(void) {
diff --git a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
index 0026a7b72a..6eecd3197c 100644
--- a/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0012-don-t-pass-AT_SYMLINK_NOFOLLOW-flag-to-faccessat.patch
@@ -1,4 +1,4 @@
-From 5d4c6b2f4b88b69b31f967371d2a6136c65dc3fd Mon Sep 17 00:00:00 2001
+From 46fdc959257d60d9b32953cae0152ae118f8564b Mon Sep 17 00:00:00 2001
From: Andre McCurdy <armccurdy@gmail.com>
Date: Tue, 10 Oct 2017 14:33:30 -0700
Subject: [PATCH] don't pass AT_SYMLINK_NOFOLLOW flag to faccessat()
@@ -27,13 +27,15 @@ Upstream-Status: Inappropriate [musl specific]
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
- src/basic/fs-util.h | 23 +++++++++++++++++++++--
+ src/basic/fs-util.h | 21 ++++++++++++++++++++-
src/shared/base-filesystem.c | 6 +++---
- 2 files changed, 24 insertions(+), 5 deletions(-)
+ 2 files changed, 23 insertions(+), 4 deletions(-)
+diff --git a/src/basic/fs-util.h b/src/basic/fs-util.h
+index 0bbb3f6298..3dc494dbfb 100644
--- a/src/basic/fs-util.h
+++ b/src/basic/fs-util.h
-@@ -46,8 +46,27 @@ int futimens_opath(int fd, const struct
+@@ -46,8 +46,27 @@ int futimens_opath(int fd, const struct timespec ts[2]);
int fd_warn_permissions(const char *path, int fd);
int stat_warn_permissions(const char *path, const struct stat *st);
@@ -62,9 +64,11 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
int touch_file(const char *path, bool parents, usec_t stamp, uid_t uid, gid_t gid, mode_t mode);
int touch(const char *path);
+diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
+index 5f5328c8cf..d396bc99fe 100644
--- a/src/shared/base-filesystem.c
+++ b/src/shared/base-filesystem.c
-@@ -117,7 +117,7 @@ int base_filesystem_create(const char *r
+@@ -117,7 +117,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
return log_error_errno(errno, "Failed to open root file system: %m");
for (size_t i = 0; i < ELEMENTSOF(table); i++) {
@@ -73,7 +77,7 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
continue;
if (table[i].target) {
-@@ -125,7 +125,7 @@ int base_filesystem_create(const char *r
+@@ -125,7 +125,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
/* check if one of the targets exists */
NULSTR_FOREACH(s, table[i].target) {
@@ -82,7 +86,7 @@ Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
continue;
/* check if a specific file exists at the target path */
-@@ -136,7 +136,7 @@ int base_filesystem_create(const char *r
+@@ -136,7 +136,7 @@ int base_filesystem_create(const char *root, uid_t uid, gid_t gid) {
if (!p)
return log_oom();
diff --git a/poky/meta/recipes-core/systemd/systemd/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch b/poky/meta/recipes-core/systemd/systemd/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch
index 612a535d3c..7b22d6214f 100644
--- a/poky/meta/recipes-core/systemd/systemd/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch
@@ -1,4 +1,4 @@
-From 1803ea271b93370fdcf7ec497277344f1e775429 Mon Sep 17 00:00:00 2001
+From d0bdce977b7acc5e45e82cf84256c4bedc0e74c4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 27 May 2018 08:36:44 -0700
Subject: [PATCH] Define glibc compatible basename() for non-glibc systems
@@ -14,6 +14,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
src/machine/machine-dbus.c | 5 +++++
1 file changed, 5 insertions(+)
+diff --git a/src/machine/machine-dbus.c b/src/machine/machine-dbus.c
+index 8f11afd65b..a2b57deb7a 100644
--- a/src/machine/machine-dbus.c
+++ b/src/machine/machine-dbus.c
@@ -10,6 +10,11 @@
diff --git a/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch b/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
index baf4903803..015347cb6a 100644
--- a/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch
@@ -1,4 +1,4 @@
-From 30b08f76ea7f5c324afedf97f0867b76dac9f128 Mon Sep 17 00:00:00 2001
+From e480d28305907c3874f4e58b722b8aa43c3ac7a2 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Wed, 4 Jul 2018 15:00:44 +0800
Subject: [PATCH] Do not disable buffering when writing to oom_score_adj
@@ -24,6 +24,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
src/basic/process-util.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
+diff --git a/src/basic/process-util.c b/src/basic/process-util.c
+index df6e85b1fc..635dbb5d26 100644
--- a/src/basic/process-util.c
+++ b/src/basic/process-util.c
@@ -1489,7 +1489,7 @@ int set_oom_score_adjust(int value) {
diff --git a/poky/meta/recipes-core/systemd/systemd/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch b/poky/meta/recipes-core/systemd/systemd/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
index 878914b307..c563982607 100644
--- a/poky/meta/recipes-core/systemd/systemd/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch
@@ -1,4 +1,4 @@
-From 873202f63f9f117c6e5a98e444cc709057042979 Mon Sep 17 00:00:00 2001
+From 0542d27ebbb250c09bdcfcf9f2ea3d27426fe522 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Tue, 10 Jul 2018 15:40:17 +0800
Subject: [PATCH] distinguish XSI-compliant strerror_r from GNU-specifi
@@ -24,9 +24,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
src/libsystemd/sd-journal/journal-send.c | 5 +++++
2 files changed, 10 insertions(+)
+diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
+index bdfa145ab7..61928f4bf3 100644
--- a/src/libsystemd/sd-bus/bus-error.c
+++ b/src/libsystemd/sd-bus/bus-error.c
-@@ -409,7 +409,12 @@ static void bus_error_strerror(sd_bus_er
+@@ -409,7 +409,12 @@ static void bus_error_strerror(sd_bus_error *e, int error) {
return;
errno = 0;
@@ -39,9 +41,11 @@ Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
if (errno == ERANGE || strlen(x) >= k - 1) {
free(m);
k *= 2;
+diff --git a/src/libsystemd/sd-journal/journal-send.c b/src/libsystemd/sd-journal/journal-send.c
+index e6ceba54f9..285ebbc9ef 100644
--- a/src/libsystemd/sd-journal/journal-send.c
+++ b/src/libsystemd/sd-journal/journal-send.c
-@@ -348,7 +348,12 @@ static int fill_iovec_perror_and_send(co
+@@ -370,7 +370,12 @@ static int fill_iovec_perror_and_send(const char *message, int skip, struct iove
char* j;
errno = 0;
diff --git a/poky/meta/recipes-core/systemd/systemd/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch b/poky/meta/recipes-core/systemd/systemd/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
deleted file mode 100644
index e6507c5f89..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From e7441559266074e7a33e3c11ff5cdaf5ba9c0e24 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Mon, 25 Feb 2019 15:18:00 +0800
-Subject: [PATCH] Hide __start_BUS_ERROR_MAP and __stop_BUS_ERROR_MAP
-
-for currently unknown reasons they get exported to the shared libries
-even without being listed in the sym file
-
-Upstream-Status: Pending
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-[Rebased for v241]
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-
----
- src/libsystemd/sd-bus/bus-error.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/src/libsystemd/sd-bus/bus-error.c b/src/libsystemd/sd-bus/bus-error.c
-index c49be29e46..90731bd7e7 100644
---- a/src/libsystemd/sd-bus/bus-error.c
-+++ b/src/libsystemd/sd-bus/bus-error.c
-@@ -55,8 +55,8 @@ BUS_ERROR_MAP_ELF_REGISTER const sd_bus_error_map bus_standard_errors[] = {
- };
-
- /* GCC maps this magically to the beginning and end of the BUS_ERROR_MAP section */
--extern const sd_bus_error_map __start_SYSTEMD_BUS_ERROR_MAP[];
--extern const sd_bus_error_map __stop_SYSTEMD_BUS_ERROR_MAP[];
-+extern const sd_bus_error_map __start_SYSTEMD_BUS_ERROR_MAP[] _hidden_;
-+extern const sd_bus_error_map __stop_SYSTEMD_BUS_ERROR_MAP[] _hidden_;
-
- /* Additional maps registered with sd_bus_error_add_map() are in this
- * NULL terminated array */
diff --git a/poky/meta/recipes-core/systemd/systemd/0017-missing_type.h-add-__compar_d_fn_t-definition.patch b/poky/meta/recipes-core/systemd/systemd/0017-missing_type.h-add-__compar_d_fn_t-definition.patch
deleted file mode 100644
index eeff693bc4..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0017-missing_type.h-add-__compar_d_fn_t-definition.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 64f4d2eb976b9f23ce85b3655a876f7299eafd58 Mon Sep 17 00:00:00 2001
-From: Chen Qi <Qi.Chen@windriver.com>
-Date: Mon, 25 Feb 2019 15:27:54 +0800
-Subject: [PATCH] missing_type.h: add __compar_d_fn_t definition
-
-Fix the following compile failure:
-src/basic/util.h:71:18: error: unknown type name '__compar_d_fn_t'; did you mean '__compar_fn_t'?
-
-Upstream-Status: Inappropriate [musl specific]
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
-
----
- src/basic/missing_type.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/basic/missing_type.h b/src/basic/missing_type.h
-index 3df1084ef2..697aa7f58a 100644
---- a/src/basic/missing_type.h
-+++ b/src/basic/missing_type.h
-@@ -13,6 +13,7 @@
-
- #ifndef __GLIBC__
- typedef int (*comparison_fn_t)(const void *, const void *);
-+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
- #endif
-
- #ifndef __COMPAR_FN_T
diff --git a/poky/meta/recipes-core/systemd/systemd/0018-avoid-redefinition-of-prctl_mm_map-structure.patch b/poky/meta/recipes-core/systemd/systemd/0018-avoid-redefinition-of-prctl_mm_map-structure.patch
index 5ca5386289..1fcba7af08 100644
--- a/poky/meta/recipes-core/systemd/systemd/0018-avoid-redefinition-of-prctl_mm_map-structure.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0018-avoid-redefinition-of-prctl_mm_map-structure.patch
@@ -1,4 +1,4 @@
-From d95330f328c23c1cd6c51aeca43f081746cf2899 Mon Sep 17 00:00:00 2001
+From e1d0210b47906dd121f936f3181092835df6a95c Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 15:44:54 +0800
Subject: [PATCH] avoid redefinition of prctl_mm_map structure
diff --git a/poky/meta/recipes-core/systemd/systemd/0019-Handle-missing-LOCK_EX.patch b/poky/meta/recipes-core/systemd/systemd/0019-Handle-missing-LOCK_EX.patch
deleted file mode 100644
index d51ac4265a..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0019-Handle-missing-LOCK_EX.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From 2284f2f44b1b30f10b9196e0f5c6d0a2e0c1871f Mon Sep 17 00:00:00 2001
-From: Alex Kiernan <alex.kiernan@gmail.com>
-Date: Fri, 7 Aug 2020 15:19:27 +0000
-Subject: [PATCH] Handle missing LOCK_EX
-
-Upstream-Status: Inappropriate [musl specific]
-Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
-
----
- src/partition/makefs.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/partition/makefs.c b/src/partition/makefs.c
-index 7c94fbfedb..42f966722d 100644
---- a/src/partition/makefs.c
-+++ b/src/partition/makefs.c
-@@ -6,6 +6,7 @@
- #include <sys/stat.h>
- #include <sys/types.h>
- #include <unistd.h>
-+#include <sys/file.h>
-
- #include "alloc-util.h"
- #include "blockdev-util.h"
diff --git a/poky/meta/recipes-core/systemd/systemd/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch b/poky/meta/recipes-core/systemd/systemd/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch
deleted file mode 100644
index 1ba5c1292b..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From a6a25e1ecae91f48a4f87bf0cc17eaaf0a919ffe Mon Sep 17 00:00:00 2001
-From: Alex Kiernan <alex.kiernan@gmail.com>
-Date: Fri, 7 Aug 2020 15:20:17 +0000
-Subject: [PATCH] Fix incompatible pointer type struct sockaddr_un *
-
-| ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c: In function 'cant_be_in_netns':
-| ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c:4893:25: error: passing argument 2 of 'connect' from incompatible pointer type [-Werror=incompatible-pointer-types]
-| 4893 | if (connect(fd, &sa.un, SOCKADDR_UN_LEN(sa.un)) < 0) {
-| | ^~~~~~
-| | |
-| | struct sockaddr_un *
-| In file included from ../../../../../../workspace/sources/systemd/src/systemd/sd-daemon.h:22,
-| from ../../../../../../workspace/sources/systemd/src/nspawn/nspawn.c:21:
-| /home/ubuntu/poky/build/tmp/work/core2-64-poky-linux-musl/systemd/1_246-r0/recipe-sysroot/usr/include/sys/socket.h:384:19: note: expected 'const struct sockaddr *' but argument is of type 'struct sockaddr_un *'
-| 384 | int connect (int, const struct sockaddr *, socklen_t);
-| | ^~~~~~~~~~~~~~~~~~~~~~~
-| cc1: some warnings being treated as errors
-
-Upstream-Status: Inappropriate [musl specific]
-Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
-
----
- src/nspawn/nspawn.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
---- a/src/nspawn/nspawn.c
-+++ b/src/nspawn/nspawn.c
-@@ -5389,7 +5389,7 @@ static int cant_be_in_netns(void) {
- if (fd < 0)
- return log_error_errno(errno, "Failed to allocate udev control socket: %m");
-
-- if (connect(fd, &sa.sa, SOCKADDR_UN_LEN(sa.un)) < 0) {
-+ if (connect(fd, (struct sockaddr *)&sa.sa, SOCKADDR_UN_LEN(sa.un)) < 0) {
-
- if (errno == ENOENT || ERRNO_IS_DISCONNECT(errno))
- return log_error_errno(SYNTHETIC_ERRNO(EOPNOTSUPP),
diff --git a/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch b/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch
index dfab8fbbdf..82a01f732e 100644
--- a/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0021-test-json.c-define-M_PIl.patch
@@ -1,4 +1,4 @@
-From 47472da6e8900773c26da8fd26699367447d97a6 Mon Sep 17 00:00:00 2001
+From e10a73de254b570bbc29b26423dbb86b4265bb05 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Mon, 25 Feb 2019 16:53:06 +0800
Subject: [PATCH] test-json.c: define M_PIl
@@ -8,12 +8,18 @@ src/test/test-json.c:305:50: error: 'M_PIl' undeclared (first use in this functi
Upstream-Status: Inappropriate [musl specific]
+This is fixed upstream where systemd no longer needs M_PIl so it could
+be dropped when upgrading to 251+ see
+https://github.com/systemd/systemd/commit/f9a1fd2a3b2d8212ba84ef1c3b55657ced34475e
+
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
---
src/test/test-json.c | 4 ++++
1 file changed, 4 insertions(+)
+diff --git a/src/test/test-json.c b/src/test/test-json.c
+index b385edc269..5e5830238c 100644
--- a/src/test/test-json.c
+++ b/src/test/test-json.c
@@ -14,6 +14,10 @@
diff --git a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
index d389e1d9f9..4dd6ff6e2e 100644
--- a/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0022-do-not-disable-buffer-in-writing-files.patch
@@ -1,4 +1,4 @@
-From 0f9422780a569c79a4b28e44c79c70b4a354bd92 Mon Sep 17 00:00:00 2001
+From 414e2f97008a1f3c26a260a6dc4d51a8c1fa6900 Mon Sep 17 00:00:00 2001
From: Chen Qi <Qi.Chen@windriver.com>
Date: Fri, 1 Mar 2019 15:22:15 +0800
Subject: [PATCH] do not disable buffer in writing files
@@ -20,27 +20,34 @@ Signed-off-by: Andrej Valek <andrej.valek@siemens.com>
Signed-off-by: Scott Murray <scott.murray@konsulko.com>
---
- src/basic/cgroup-util.c | 10 +++++-----
+ src/basic/cgroup-util.c | 12 ++++++------
+ src/basic/namespace-util.c | 4 ++--
src/basic/procfs-util.c | 4 ++--
src/basic/sysctl-util.c | 2 +-
src/basic/util.c | 2 +-
src/binfmt/binfmt.c | 6 +++---
+ src/core/cgroup.c | 2 +-
src/core/main.c | 4 ++--
src/core/smack-setup.c | 8 ++++----
src/hibernate-resume/hibernate-resume.c | 2 +-
+ src/home/homework.c | 2 +-
src/libsystemd/sd-device/sd-device.c | 2 +-
src/nspawn/nspawn-cgroup.c | 2 +-
src/nspawn/nspawn.c | 6 +++---
+ src/shared/binfmt-util.c | 2 +-
src/shared/cgroup-setup.c | 4 ++--
- src/shared/mount-util.c | 4 ++--
+ src/shared/coredump-util.c | 2 +-
src/shared/smack-util.c | 2 +-
src/sleep/sleep.c | 8 ++++----
+ src/udev/udev-rules.c | 1 -
src/vconsole/vconsole-setup.c | 2 +-
- 16 files changed, 34 insertions(+), 34 deletions(-)
+ 21 files changed, 39 insertions(+), 40 deletions(-)
+diff --git a/src/basic/cgroup-util.c b/src/basic/cgroup-util.c
+index f7dc6c8421..5f7a27c2c4 100644
--- a/src/basic/cgroup-util.c
+++ b/src/basic/cgroup-util.c
-@@ -390,7 +390,7 @@ int cg_kill_kernel_sigkill(const char *c
+@@ -390,7 +390,7 @@ int cg_kill_kernel_sigkill(const char *controller, const char *path) {
if (r < 0)
return r;
@@ -49,7 +56,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
-@@ -803,7 +803,7 @@ int cg_install_release_agent(const char
+@@ -803,7 +803,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents);
if (isempty(sc)) {
@@ -58,7 +65,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
} else if (!path_equal(sc, agent))
-@@ -821,7 +821,7 @@ int cg_install_release_agent(const char
+@@ -821,7 +821,7 @@ int cg_install_release_agent(const char *controller, const char *agent) {
sc = strstrip(contents);
if (streq(sc, "0")) {
@@ -67,7 +74,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
-@@ -848,7 +848,7 @@ int cg_uninstall_release_agent(const cha
+@@ -848,7 +848,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0)
return r;
@@ -76,7 +83,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
-@@ -858,7 +858,7 @@ int cg_uninstall_release_agent(const cha
+@@ -858,7 +858,7 @@ int cg_uninstall_release_agent(const char *controller) {
if (r < 0)
return r;
@@ -85,7 +92,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
-@@ -1704,7 +1704,7 @@ int cg_set_attribute(const char *control
+@@ -1704,7 +1704,7 @@ int cg_set_attribute(const char *controller, const char *path, const char *attri
if (r < 0)
return r;
@@ -94,9 +101,30 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
}
int cg_get_attribute(const char *controller, const char *path, const char *attribute, char **ret) {
+diff --git a/src/basic/namespace-util.c b/src/basic/namespace-util.c
+index b9120a5ed0..78e460b75f 100644
+--- a/src/basic/namespace-util.c
++++ b/src/basic/namespace-util.c
+@@ -202,12 +202,12 @@ int userns_acquire(const char *uid_map, const char *gid_map) {
+ freeze();
+
+ xsprintf(path, "/proc/" PID_FMT "/uid_map", pid);
+- r = write_string_file(path, uid_map, WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file(path, uid_map, 0);
+ if (r < 0)
+ return log_error_errno(r, "Failed to write UID map: %m");
+
+ xsprintf(path, "/proc/" PID_FMT "/gid_map", pid);
+- r = write_string_file(path, gid_map, WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file(path, gid_map, 0);
+ if (r < 0)
+ return log_error_errno(r, "Failed to write GID map: %m");
+
+diff --git a/src/basic/procfs-util.c b/src/basic/procfs-util.c
+index e485a0196b..8bff210356 100644
--- a/src/basic/procfs-util.c
+++ b/src/basic/procfs-util.c
-@@ -64,13 +64,13 @@ int procfs_tasks_set_limit(uint64_t limi
+@@ -64,13 +64,13 @@ int procfs_tasks_set_limit(uint64_t limit) {
* decrease it, as threads-max is the much more relevant sysctl. */
if (limit > pid_max-1) {
sprintf(buffer, "%" PRIu64, limit+1); /* Add one, since PID 0 is not a valid PID */
@@ -112,9 +140,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
uint64_t threads_max;
+diff --git a/src/basic/sysctl-util.c b/src/basic/sysctl-util.c
+index b66a6622ae..8d1c93008a 100644
--- a/src/basic/sysctl-util.c
+++ b/src/basic/sysctl-util.c
-@@ -58,7 +58,7 @@ int sysctl_write(const char *property, c
+@@ -58,7 +58,7 @@ int sysctl_write(const char *property, const char *value) {
log_debug("Setting '%s' to '%s'", p, value);
@@ -123,6 +153,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
}
int sysctl_writef(const char *property, const char *format, ...) {
+diff --git a/src/basic/util.c b/src/basic/util.c
+index d7ef382737..31c35118d1 100644
--- a/src/basic/util.c
+++ b/src/basic/util.c
@@ -168,7 +168,7 @@ void disable_coredumps(void) {
@@ -134,6 +166,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
log_debug_errno(r, "Failed to turn off coredumps, ignoring: %m");
}
+diff --git a/src/binfmt/binfmt.c b/src/binfmt/binfmt.c
+index 18231c2618..6c598d55c8 100644
--- a/src/binfmt/binfmt.c
+++ b/src/binfmt/binfmt.c
@@ -29,7 +29,7 @@ static bool arg_unregister = false;
@@ -145,7 +179,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
}
static int apply_rule(const char *filename, unsigned line, const char *rule) {
-@@ -59,7 +59,7 @@ static int apply_rule(const char *filena
+@@ -59,7 +59,7 @@ static int apply_rule(const char *filename, unsigned line, const char *rule) {
if (r >= 0)
log_debug("%s:%u: Rule '%s' deleted.", filename, line, rulename);
@@ -163,9 +197,24 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
log_warning_errno(r, "Failed to flush binfmt_misc rules, ignoring: %m");
else
+diff --git a/src/core/cgroup.c b/src/core/cgroup.c
+index f58de95a49..7a97ab6f99 100644
+--- a/src/core/cgroup.c
++++ b/src/core/cgroup.c
+@@ -4140,7 +4140,7 @@ int unit_cgroup_freezer_action(Unit *u, FreezerAction action) {
+ else
+ u->freezer_state = FREEZER_THAWING;
+
+- r = write_string_file(path, one_zero(action == FREEZER_FREEZE), WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file(path, one_zero(action == FREEZER_FREEZE), 0);
+ if (r < 0)
+ return r;
+
+diff --git a/src/core/main.c b/src/core/main.c
+index 57aedb9b93..7ef36d22f5 100644
--- a/src/core/main.c
+++ b/src/core/main.c
-@@ -1466,7 +1466,7 @@ static int bump_unix_max_dgram_qlen(void
+@@ -1466,7 +1466,7 @@ static int bump_unix_max_dgram_qlen(void) {
if (v >= DEFAULT_UNIX_MAX_DGRAM_QLEN)
return 0;
@@ -174,7 +223,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
"%lu", DEFAULT_UNIX_MAX_DGRAM_QLEN);
if (r < 0)
return log_full_errno(IN_SET(r, -EROFS, -EPERM, -EACCES) ? LOG_DEBUG : LOG_WARNING, r,
-@@ -1737,7 +1737,7 @@ static void initialize_core_pattern(bool
+@@ -1737,7 +1737,7 @@ static void initialize_core_pattern(bool skip_setup) {
if (getpid_cached() != 1)
return;
@@ -183,9 +232,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
log_warning_errno(r, "Failed to write '%s' to /proc/sys/kernel/core_pattern, ignoring: %m",
arg_early_core_pattern);
+diff --git a/src/core/smack-setup.c b/src/core/smack-setup.c
+index f88cb80834..68055fb64a 100644
--- a/src/core/smack-setup.c
+++ b/src/core/smack-setup.c
-@@ -320,17 +320,17 @@ int mac_smack_setup(bool *loaded_policy)
+@@ -320,17 +320,17 @@ int mac_smack_setup(bool *loaded_policy) {
}
#if HAVE_SMACK_RUN_LABEL
@@ -207,6 +258,8 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
log_warning_errno(r, "Failed to set SMACK netlabel rule \"127.0.0.1 -CIPSO\": %m");
#endif
+diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c
+index 58e35e403e..1d0beb4008 100644
--- a/src/hibernate-resume/hibernate-resume.c
+++ b/src/hibernate-resume/hibernate-resume.c
@@ -45,7 +45,7 @@ int main(int argc, char *argv[]) {
@@ -218,9 +271,24 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor);
return EXIT_FAILURE;
+diff --git a/src/home/homework.c b/src/home/homework.c
+index 9fdc74b775..9858a2b415 100644
+--- a/src/home/homework.c
++++ b/src/home/homework.c
+@@ -284,7 +284,7 @@ static void drop_caches_now(void) {
+ * details. We write "2" into /proc/sys/vm/drop_caches to ensure dentries/inodes are flushed, but not
+ * more. */
+
+- r = write_string_file("/proc/sys/vm/drop_caches", "2\n", WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file("/proc/sys/vm/drop_caches", "2\n", 0);
+ if (r < 0)
+ log_warning_errno(r, "Failed to drop caches, ignoring: %m");
+ else
+diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c
+index b163a0fb6b..fd6c5301d6 100644
--- a/src/libsystemd/sd-device/sd-device.c
+++ b/src/libsystemd/sd-device/sd-device.c
-@@ -2108,7 +2108,7 @@ _public_ int sd_device_set_sysattr_value
+@@ -2108,7 +2108,7 @@ _public_ int sd_device_set_sysattr_value(sd_device *device, const char *sysattr,
if (!value)
return -ENOMEM;
@@ -229,9 +297,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
/* On failure, clear cache entry, as we do not know how it fails. */
device_remove_cached_sysattr_value(device, sysattr);
+diff --git a/src/nspawn/nspawn-cgroup.c b/src/nspawn/nspawn-cgroup.c
+index d472e80c03..c7780c7fc6 100644
--- a/src/nspawn/nspawn-cgroup.c
+++ b/src/nspawn/nspawn-cgroup.c
-@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified
+@@ -124,7 +124,7 @@ int sync_cgroup(pid_t pid, CGroupUnified unified_requested, uid_t uid_shift) {
fn = strjoina(tree, cgroup, "/cgroup.procs");
sprintf(pid_string, PID_FMT, pid);
@@ -240,9 +310,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
log_error_errno(r, "Failed to move process: %m");
goto finish;
+diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
+index fb6af295b5..0d83f1e4d2 100644
--- a/src/nspawn/nspawn.c
+++ b/src/nspawn/nspawn.c
-@@ -2757,7 +2757,7 @@ static int reset_audit_loginuid(void) {
+@@ -2759,7 +2759,7 @@ static int reset_audit_loginuid(void) {
if (streq(p, "4294967295"))
return 0;
@@ -251,7 +323,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
log_error_errno(r,
"Failed to reset audit login UID. This probably means that your kernel is too\n"
-@@ -4163,7 +4163,7 @@ static int setup_uid_map(
+@@ -4175,7 +4175,7 @@ static int setup_uid_map(
return log_oom();
xsprintf(uid_map, "/proc/" PID_FMT "/uid_map", pid);
@@ -260,7 +332,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return log_error_errno(r, "Failed to write UID map: %m");
-@@ -4173,7 +4173,7 @@ static int setup_uid_map(
+@@ -4185,7 +4185,7 @@ static int setup_uid_map(
return log_oom();
xsprintf(uid_map, "/proc/" PID_FMT "/gid_map", pid);
@@ -269,9 +341,24 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return log_error_errno(r, "Failed to write GID map: %m");
+diff --git a/src/shared/binfmt-util.c b/src/shared/binfmt-util.c
+index 724d7f27d9..dd725cff92 100644
+--- a/src/shared/binfmt-util.c
++++ b/src/shared/binfmt-util.c
+@@ -26,7 +26,7 @@ int disable_binfmt(void) {
+ if (r < 0)
+ return log_warning_errno(r, "Failed to determine whether binfmt_misc is mounted: %m");
+
+- r = write_string_file("/proc/sys/fs/binfmt_misc/status", "-1", WRITE_STRING_FILE_DISABLE_BUFFER);
++ r = write_string_file("/proc/sys/fs/binfmt_misc/status", "-1", 0);
+ if (r < 0)
+ return log_warning_errno(r, "Failed to unregister binfmt_misc entries: %m");
+
+diff --git a/src/shared/cgroup-setup.c b/src/shared/cgroup-setup.c
+index 8bda66ca36..4e1e9943ee 100644
--- a/src/shared/cgroup-setup.c
+++ b/src/shared/cgroup-setup.c
-@@ -345,7 +345,7 @@ int cg_attach(const char *controller, co
+@@ -345,7 +345,7 @@ int cg_attach(const char *controller, const char *path, pid_t pid) {
xsprintf(c, PID_FMT "\n", pid);
@@ -289,9 +376,22 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0) {
log_debug_errno(r, "Failed to %s controller %s for %s (%s): %m",
FLAGS_SET(mask, bit) ? "enable" : "disable", n, p, fs);
+diff --git a/src/shared/coredump-util.c b/src/shared/coredump-util.c
+index a0b648bf79..13f921390d 100644
+--- a/src/shared/coredump-util.c
++++ b/src/shared/coredump-util.c
+@@ -70,5 +70,5 @@ int set_coredump_filter(uint64_t value) {
+ sprintf(t, "0x%"PRIx64, value);
+
+ return write_string_file("/proc/self/coredump_filter", t,
+- WRITE_STRING_FILE_VERIFY_ON_FAILURE|WRITE_STRING_FILE_DISABLE_BUFFER);
++ WRITE_STRING_FILE_VERIFY_ON_FAILURE);
+ }
+diff --git a/src/shared/smack-util.c b/src/shared/smack-util.c
+index 0df1778cb2..3b9a0c934e 100644
--- a/src/shared/smack-util.c
+++ b/src/shared/smack-util.c
-@@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const
+@@ -114,7 +114,7 @@ int mac_smack_apply_pid(pid_t pid, const char *label) {
return 0;
p = procfs_file_alloca(pid, "attr/current");
@@ -300,9 +400,11 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return r;
+diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c
+index 7064f3a905..8f2a7d9da2 100644
--- a/src/sleep/sleep.c
+++ b/src/sleep/sleep.c
-@@ -46,7 +46,7 @@ static int write_hibernate_location_info
+@@ -46,7 +46,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
assert(hibernate_location->swap);
xsprintf(resume_str, "%u:%u", major(hibernate_location->devno), minor(hibernate_location->devno));
@@ -311,7 +413,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return log_debug_errno(r, "Failed to write partition device to /sys/power/resume for '%s': '%s': %m",
hibernate_location->swap->device, resume_str);
-@@ -73,7 +73,7 @@ static int write_hibernate_location_info
+@@ -73,7 +73,7 @@ static int write_hibernate_location_info(const HibernateLocation *hibernate_loca
}
xsprintf(offset_str, "%" PRIu64, hibernate_location->offset);
@@ -329,7 +431,7 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (k >= 0)
return 0;
-@@ -112,7 +112,7 @@ static int write_state(FILE **f, char **
+@@ -112,7 +112,7 @@ static int write_state(FILE **f, char **states) {
STRV_FOREACH(state, states) {
int k;
@@ -338,9 +440,23 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (k >= 0)
return 0;
log_debug_errno(k, "Failed to write '%s' to /sys/power/state: %m", *state);
+diff --git a/src/udev/udev-rules.c b/src/udev/udev-rules.c
+index 0089833e3f..0a6a3abbb4 100644
+--- a/src/udev/udev-rules.c
++++ b/src/udev/udev-rules.c
+@@ -2181,7 +2181,6 @@ static int udev_rule_apply_token_to_event(
+ log_rule_debug(dev, rules, "ATTR '%s' writing '%s'", buf, value);
+ r = write_string_file(buf, value,
+ WRITE_STRING_FILE_VERIFY_ON_FAILURE |
+- WRITE_STRING_FILE_DISABLE_BUFFER |
+ WRITE_STRING_FILE_AVOID_NEWLINE |
+ WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
+ if (r < 0)
+diff --git a/src/vconsole/vconsole-setup.c b/src/vconsole/vconsole-setup.c
+index 50930d4af3..5efd5d3728 100644
--- a/src/vconsole/vconsole-setup.c
+++ b/src/vconsole/vconsole-setup.c
-@@ -108,7 +108,7 @@ static int toggle_utf8_vc(const char *na
+@@ -108,7 +108,7 @@ static int toggle_utf8_vc(const char *name, int fd, bool utf8) {
static int toggle_utf8_sysfs(bool utf8) {
int r;
@@ -349,72 +465,3 @@ Signed-off-by: Scott Murray <scott.murray@konsulko.com>
if (r < 0)
return log_warning_errno(r, "Failed to %s sysfs UTF-8 flag: %m", enable_disable(utf8));
---- a/src/basic/namespace-util.c
-+++ b/src/basic/namespace-util.c
-@@ -202,12 +202,12 @@ int userns_acquire(const char *uid_map,
- freeze();
-
- xsprintf(path, "/proc/" PID_FMT "/uid_map", pid);
-- r = write_string_file(path, uid_map, WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(path, uid_map, 0);
- if (r < 0)
- return log_error_errno(r, "Failed to write UID map: %m");
-
- xsprintf(path, "/proc/" PID_FMT "/gid_map", pid);
-- r = write_string_file(path, gid_map, WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(path, gid_map, 0);
- if (r < 0)
- return log_error_errno(r, "Failed to write GID map: %m");
-
---- a/src/core/cgroup.c
-+++ b/src/core/cgroup.c
-@@ -4140,7 +4140,7 @@ int unit_cgroup_freezer_action(Unit *u,
- else
- u->freezer_state = FREEZER_THAWING;
-
-- r = write_string_file(path, one_zero(action == FREEZER_FREEZE), WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file(path, one_zero(action == FREEZER_FREEZE), 0);
- if (r < 0)
- return r;
-
---- a/src/home/homework.c
-+++ b/src/home/homework.c
-@@ -284,7 +284,7 @@ static void drop_caches_now(void) {
- * details. We write "2" into /proc/sys/vm/drop_caches to ensure dentries/inodes are flushed, but not
- * more. */
-
-- r = write_string_file("/proc/sys/vm/drop_caches", "2\n", WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file("/proc/sys/vm/drop_caches", "2\n", 0);
- if (r < 0)
- log_warning_errno(r, "Failed to drop caches, ignoring: %m");
- else
---- a/src/shared/binfmt-util.c
-+++ b/src/shared/binfmt-util.c
-@@ -26,7 +26,7 @@ int disable_binfmt(void) {
- if (r < 0)
- return log_warning_errno(r, "Failed to determine whether binfmt_misc is mounted: %m");
-
-- r = write_string_file("/proc/sys/fs/binfmt_misc/status", "-1", WRITE_STRING_FILE_DISABLE_BUFFER);
-+ r = write_string_file("/proc/sys/fs/binfmt_misc/status", "-1", 0);
- if (r < 0)
- return log_warning_errno(r, "Failed to unregister binfmt_misc entries: %m");
-
---- a/src/shared/coredump-util.c
-+++ b/src/shared/coredump-util.c
-@@ -70,5 +70,5 @@ int set_coredump_filter(uint64_t value)
- sprintf(t, "0x%"PRIx64, value);
-
- return write_string_file("/proc/self/coredump_filter", t,
-- WRITE_STRING_FILE_VERIFY_ON_FAILURE|WRITE_STRING_FILE_DISABLE_BUFFER);
-+ WRITE_STRING_FILE_VERIFY_ON_FAILURE);
- }
---- a/src/udev/udev-rules.c
-+++ b/src/udev/udev-rules.c
-@@ -2181,7 +2181,6 @@ static int udev_rule_apply_token_to_even
- log_rule_debug(dev, rules, "ATTR '%s' writing '%s'", buf, value);
- r = write_string_file(buf, value,
- WRITE_STRING_FILE_VERIFY_ON_FAILURE |
-- WRITE_STRING_FILE_DISABLE_BUFFER |
- WRITE_STRING_FILE_AVOID_NEWLINE |
- WRITE_STRING_FILE_VERIFY_IGNORE_NEWLINE);
- if (r < 0)
diff --git a/poky/meta/recipes-core/systemd/systemd/0025-Handle-__cpu_mask-usage.patch b/poky/meta/recipes-core/systemd/systemd/0025-Handle-__cpu_mask-usage.patch
index e001ed59e8..6981d70af0 100644
--- a/poky/meta/recipes-core/systemd/systemd/0025-Handle-__cpu_mask-usage.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0025-Handle-__cpu_mask-usage.patch
@@ -1,4 +1,4 @@
-From e4f9ef547fa342102db15188544daa18e71e9c66 Mon Sep 17 00:00:00 2001
+From 8871f78c559f37169c0cfaf20b0af1dbec0399af Mon Sep 17 00:00:00 2001
From: Scott Murray <scott.murray@konsulko.com>
Date: Fri, 13 Sep 2019 19:26:27 -0400
Subject: [PATCH] Handle __cpu_mask usage
@@ -38,7 +38,7 @@ index 3c63a58826..4c2d4347fc 100644
typedef struct CPUSet {
cpu_set_t *set;
diff --git a/src/test/test-sizeof.c b/src/test/test-sizeof.c
-index 4403c0aa52..e7e4ae112d 100644
+index 602772227e..7f1ed19d77 100644
--- a/src/test/test-sizeof.c
+++ b/src/test/test-sizeof.c
@@ -1,6 +1,5 @@
diff --git a/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch b/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
index 2d06ab84a2..2c56838644 100644
--- a/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0026-Handle-missing-gshadow.patch
@@ -1,4 +1,4 @@
-From 66a926cf906260c2fb5ea851e55efe03edd444dc Mon Sep 17 00:00:00 2001
+From ec519727bb1ceda6e7787ccf86237a6aad07137c Mon Sep 17 00:00:00 2001
From: Alex Kiernan <alex.kiernan@gmail.com>
Date: Tue, 10 Mar 2020 11:05:20 +0000
Subject: [PATCH] Handle missing gshadow
@@ -17,6 +17,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
src/shared/userdb.c | 7 ++++++-
3 files changed, 30 insertions(+), 1 deletion(-)
+diff --git a/src/shared/user-record-nss.c b/src/shared/user-record-nss.c
+index 88b8fc2f8f..a819d41bac 100644
--- a/src/shared/user-record-nss.c
+++ b/src/shared/user-record-nss.c
@@ -331,8 +331,10 @@ int nss_group_to_group_record(
@@ -46,7 +48,7 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
r = json_build(&g->json, JSON_BUILD_OBJECT(
JSON_BUILD_PAIR("groupName", JSON_BUILD_STRING(g->group_name)),
-@@ -388,6 +392,7 @@ int nss_sgrp_for_group(const struct grou
+@@ -388,6 +392,7 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
assert(ret_sgrp);
assert(ret_buffer);
@@ -54,7 +56,7 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
for (;;) {
_cleanup_free_ char *buf = NULL;
struct sgrp sgrp, *result;
-@@ -416,6 +421,9 @@ int nss_sgrp_for_group(const struct grou
+@@ -416,6 +421,9 @@ int nss_sgrp_for_group(const struct group *grp, struct sgrp *ret_sgrp, char **re
buflen *= 2;
buf = mfree(buf);
}
@@ -120,6 +122,8 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
if (r < 0)
return r;
+diff --git a/src/shared/user-record-nss.h b/src/shared/user-record-nss.h
+index 22ab04d6ee..4e52e7a911 100644
--- a/src/shared/user-record-nss.h
+++ b/src/shared/user-record-nss.h
@@ -2,7 +2,11 @@
@@ -134,9 +138,11 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
#include <pwd.h>
#include <shadow.h>
+diff --git a/src/shared/userdb.c b/src/shared/userdb.c
+index 0eddd382e6..d506b8e263 100644
--- a/src/shared/userdb.c
+++ b/src/shared/userdb.c
-@@ -1046,13 +1046,15 @@ int groupdb_iterator_get(UserDBIterator
+@@ -1046,13 +1046,15 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
if (gr) {
_cleanup_free_ char *buffer = NULL;
bool incomplete = false;
@@ -153,7 +159,7 @@ Signed-off-by: Luca Boccassi <luca.boccassi@microsoft.com>
if (!FLAGS_SET(iterator->flags, USERDB_SUPPRESS_SHADOW)) {
r = nss_sgrp_for_group(gr, &sgrp, &buffer);
if (r < 0) {
-@@ -1065,6 +1067,9 @@ int groupdb_iterator_get(UserDBIterator
+@@ -1065,6 +1067,9 @@ int groupdb_iterator_get(UserDBIterator *iterator, GroupRecord **ret) {
}
r = nss_group_to_group_record(gr, r >= 0 ? &sgrp : NULL, ret);
diff --git a/poky/meta/recipes-core/systemd/systemd/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch b/poky/meta/recipes-core/systemd/systemd/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
index f4a71be7cc..6c97a272e2 100644
--- a/poky/meta/recipes-core/systemd/systemd/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
+++ b/poky/meta/recipes-core/systemd/systemd/0028-missing_syscall.h-Define-MIPS-ABI-defines-for-musl.patch
@@ -1,4 +1,4 @@
-From 6f0dd2ba75b68036d7b4ebfe47ac5eaf44d26f06 Mon Sep 17 00:00:00 2001
+From 754a16eeb255c06dbdd4655632276573f0f075ec Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 12 Apr 2021 23:44:53 -0700
Subject: [PATCH] missing_syscall.h: Define MIPS ABI defines for musl
@@ -12,9 +12,12 @@ Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- src/basic/missing_syscall.h | 6 ++++++
- 1 file changed, 6 insertions(+)
+ src/basic/missing_syscall.h | 6 ++++++
+ src/shared/base-filesystem.c | 1 +
+ 2 files changed, 7 insertions(+)
+diff --git a/src/basic/missing_syscall.h b/src/basic/missing_syscall.h
+index 793d111c55..9665848b88 100644
--- a/src/basic/missing_syscall.h
+++ b/src/basic/missing_syscall.h
@@ -20,6 +20,12 @@
@@ -30,6 +33,8 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
#include "macro.h"
#include "missing_keyctl.h"
#include "missing_stat.h"
+diff --git a/src/shared/base-filesystem.c b/src/shared/base-filesystem.c
+index d396bc99fe..7e9c0c3412 100644
--- a/src/shared/base-filesystem.c
+++ b/src/shared/base-filesystem.c
@@ -19,6 +19,7 @@
diff --git a/poky/meta/recipes-core/systemd/systemd/0029-network-enable-KeepConfiguration-when-running-on-net.patch b/poky/meta/recipes-core/systemd/systemd/0029-network-enable-KeepConfiguration-when-running-on-net.patch
deleted file mode 100644
index 782b9645cb..0000000000
--- a/poky/meta/recipes-core/systemd/systemd/0029-network-enable-KeepConfiguration-when-running-on-net.patch
+++ /dev/null
@@ -1,253 +0,0 @@
-From 6f4e84126aaa4e26cb6865b054ea5ddebd3906e5 Mon Sep 17 00:00:00 2001
-From: Yu Watanabe <watanabe.yu+github@gmail.com>
-Date: Thu, 3 Feb 2022 12:14:19 +0900
-Subject: [PATCH] network: enable KeepConfiguration= when running on network
- filesystem
-Cc: pavel@zhukoff.net
-
-Upstream-Status: Submitted [https://github.com/systemd/systemd/pull/22383]
-[YOCTO #14708]
-
-network-generator: rename DHCP_TYPE_DHCP -> DHCP_TYPE_DHCP4
-
-To emphasize this is DHCPv4. No behavior is changed.
-
-stat-util: introduce path_is_network_fs()
-
-network: enable KeepConfiguration= when running on network filesystem
-
-Also, set KeepConfiguration=dhcp-on-stop by default when running in
-initrd.
-
-Fixes #21967.
----
- man/systemd.network.xml | 6 +++--
- src/basic/stat-util.c | 9 +++++++
- src/basic/stat-util.h | 1 +
- src/network/generator/network-generator.c | 4 ++--
- src/network/generator/network-generator.h | 2 +-
- src/network/networkd-manager.c | 29 +++++++++++++++++++++++
- src/network/networkd-manager.h | 2 ++
- src/network/networkd-network.c | 12 ++++++----
- src/network/test-networkd-conf.c | 5 ++++
- 9 files changed, 60 insertions(+), 10 deletions(-)
-
-diff --git a/man/systemd.network.xml b/man/systemd.network.xml
-index af431e4f2c..f90cff4cd6 100644
---- a/man/systemd.network.xml
-+++ b/man/systemd.network.xml
-@@ -944,8 +944,10 @@ Table=1234</programlisting></para>
- lease expires. This is contrary to the DHCP specification, but may be the best choice if,
- e.g., the root filesystem relies on this connection. The setting <literal>dhcp</literal>
- implies <literal>dhcp-on-stop</literal>, and <literal>yes</literal> implies
-- <literal>dhcp</literal> and <literal>static</literal>. Defaults to <literal>no</literal>.
-- </para>
-+ <literal>dhcp</literal> and <literal>static</literal>. Defaults to
-+ <literal>dhcp-on-stop</literal> when <command>systemd-networkd</command> is running in
-+ initrd, <literal>yes</literal> when the root filesystem is a network filesystem, and
-+ <literal>no</literal> otherwise.</para>
- </listitem>
- </varlistentry>
- </variablelist>
-diff --git a/src/basic/stat-util.c b/src/basic/stat-util.c
-index efac7b002e..c2269844f8 100644
---- a/src/basic/stat-util.c
-+++ b/src/basic/stat-util.c
-@@ -249,6 +249,15 @@ int path_is_temporary_fs(const char *path) {
- return is_temporary_fs(&s);
- }
-
-+int path_is_network_fs(const char *path) {
-+ struct statfs s;
-+
-+ if (statfs(path, &s) < 0)
-+ return -errno;
-+
-+ return is_network_fs(&s);
-+}
-+
- int stat_verify_regular(const struct stat *st) {
- assert(st);
-
-diff --git a/src/basic/stat-util.h b/src/basic/stat-util.h
-index a566114f7c..f7d2f12aa9 100644
---- a/src/basic/stat-util.h
-+++ b/src/basic/stat-util.h
-@@ -53,6 +53,7 @@ int fd_is_temporary_fs(int fd);
- int fd_is_network_fs(int fd);
-
- int path_is_temporary_fs(const char *path);
-+int path_is_network_fs(const char *path);
-
- /* Because statfs.t_type can be int on some architectures, we have to cast
- * the const magic to the type, otherwise the compiler warns about
-diff --git a/src/network/generator/network-generator.c b/src/network/generator/network-generator.c
-index c081ec673c..063ad08d80 100644
---- a/src/network/generator/network-generator.c
-+++ b/src/network/generator/network-generator.c
-@@ -47,7 +47,7 @@ static const char * const dracut_dhcp_type_table[_DHCP_TYPE_MAX] = {
- [DHCP_TYPE_OFF] = "off",
- [DHCP_TYPE_ON] = "on",
- [DHCP_TYPE_ANY] = "any",
-- [DHCP_TYPE_DHCP] = "dhcp",
-+ [DHCP_TYPE_DHCP4] = "dhcp",
- [DHCP_TYPE_DHCP6] = "dhcp6",
- [DHCP_TYPE_AUTO6] = "auto6",
- [DHCP_TYPE_EITHER6] = "either6",
-@@ -62,7 +62,7 @@ static const char * const networkd_dhcp_type_table[_DHCP_TYPE_MAX] = {
- [DHCP_TYPE_OFF] = "no",
- [DHCP_TYPE_ON] = "yes",
- [DHCP_TYPE_ANY] = "yes",
-- [DHCP_TYPE_DHCP] = "ipv4",
-+ [DHCP_TYPE_DHCP4] = "ipv4",
- [DHCP_TYPE_DHCP6] = "ipv6",
- [DHCP_TYPE_AUTO6] = "no", /* TODO: enable other setting? */
- [DHCP_TYPE_EITHER6] = "ipv6", /* TODO: enable other setting? */
-diff --git a/src/network/generator/network-generator.h b/src/network/generator/network-generator.h
-index dd0a58738b..0e0da2a57a 100644
---- a/src/network/generator/network-generator.h
-+++ b/src/network/generator/network-generator.h
-@@ -13,7 +13,7 @@ typedef enum DHCPType {
- DHCP_TYPE_OFF,
- DHCP_TYPE_ON,
- DHCP_TYPE_ANY,
-- DHCP_TYPE_DHCP,
-+ DHCP_TYPE_DHCP4,
- DHCP_TYPE_DHCP6,
- DHCP_TYPE_AUTO6,
- DHCP_TYPE_EITHER6,
-diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c
-index 7e89366ae8..3261f289e9 100644
---- a/src/network/networkd-manager.c
-+++ b/src/network/networkd-manager.c
-@@ -398,6 +398,30 @@ static int signal_restart_callback(sd_event_source *s, const struct signalfd_sig
- return sd_event_exit(sd_event_source_get_event(s), 0);
- }
-
-+static int manager_set_keep_configuration(Manager *m) {
-+ int r;
-+
-+ assert(m);
-+
-+ if (in_initrd()) {
-+ log_debug("Running in initrd, keep DHCPv4 addresses on stopping networkd by default.");
-+ m->keep_configuration = KEEP_CONFIGURATION_DHCP_ON_STOP;
-+ return 0;
-+ }
-+
-+ r = path_is_network_fs("/");
-+ if (r < 0)
-+ return log_error_errno(r, "Failed to detect if root is network filesystem: %m");
-+ if (r == 0) {
-+ m->keep_configuration = _KEEP_CONFIGURATION_INVALID;
-+ return 0;
-+ }
-+
-+ log_debug("Running on network filesystem, enabling KeepConfiguration= by default.");
-+ m->keep_configuration = KEEP_CONFIGURATION_YES;
-+ return 0;
-+}
-+
- int manager_setup(Manager *m) {
- int r;
-
-@@ -453,6 +477,10 @@ int manager_setup(Manager *m) {
- if (r < 0)
- return r;
-
-+ r = manager_set_keep_configuration(m);
-+ if (r < 0)
-+ return r;
-+
- m->state_file = strdup("/run/systemd/netif/state");
- if (!m->state_file)
- return -ENOMEM;
-@@ -468,6 +496,7 @@ int manager_new(Manager **ret, bool test_mode) {
- return -ENOMEM;
-
- *m = (Manager) {
-+ .keep_configuration = _KEEP_CONFIGURATION_INVALID,
- .test_mode = test_mode,
- .speed_meter_interval_usec = SPEED_METER_DEFAULT_TIME_INTERVAL,
- .online_state = _LINK_ONLINE_STATE_INVALID,
-diff --git a/src/network/networkd-manager.h b/src/network/networkd-manager.h
-index 36313589a3..86de529124 100644
---- a/src/network/networkd-manager.h
-+++ b/src/network/networkd-manager.h
-@@ -28,6 +28,8 @@ struct Manager {
- Hashmap *polkit_registry;
- int ethtool_fd;
-
-+ KeepConfiguration keep_configuration;
-+
- bool test_mode;
- bool enumerating;
- bool dirty;
-diff --git a/src/network/networkd-network.c b/src/network/networkd-network.c
-index 3142be471f..edcd68d616 100644
---- a/src/network/networkd-network.c
-+++ b/src/network/networkd-network.c
-@@ -124,6 +124,7 @@ int network_verify(Network *network) {
- int r;
-
- assert(network);
-+ assert(network->manager);
- assert(network->filename);
-
- if (net_match_is_empty(&network->match) && !network->conditions)
-@@ -248,10 +249,11 @@ int network_verify(Network *network) {
- }
-
- if (network->dhcp_critical >= 0) {
-- if (network->keep_configuration >= 0)
-- log_warning("%s: Both KeepConfiguration= and deprecated CriticalConnection= are set. "
-- "Ignoring CriticalConnection=.", network->filename);
-- else if (network->dhcp_critical)
-+ if (network->keep_configuration >= 0) {
-+ if (network->manager->keep_configuration < 0)
-+ log_warning("%s: Both KeepConfiguration= and deprecated CriticalConnection= are set. "
-+ "Ignoring CriticalConnection=.", network->filename);
-+ } else if (network->dhcp_critical)
- /* CriticalConnection=yes also preserve foreign static configurations. */
- network->keep_configuration = KEEP_CONFIGURATION_YES;
- else
-@@ -386,7 +388,7 @@ int network_load_one(Manager *manager, OrderedHashmap **networks, const char *fi
- .allmulticast = -1,
- .promiscuous = -1,
-
-- .keep_configuration = _KEEP_CONFIGURATION_INVALID,
-+ .keep_configuration = manager->keep_configuration,
-
- .dhcp_duid.type = _DUID_TYPE_INVALID,
- .dhcp_critical = -1,
-diff --git a/src/network/test-networkd-conf.c b/src/network/test-networkd-conf.c
-index 4b00a98086..5f1328e39c 100644
---- a/src/network/test-networkd-conf.c
-+++ b/src/network/test-networkd-conf.c
-@@ -6,6 +6,7 @@
- #include "net-condition.h"
- #include "networkd-address.h"
- #include "networkd-conf.h"
-+#include "networkd-manager.h"
- #include "networkd-network.h"
- #include "strv.h"
-
-@@ -166,11 +167,15 @@ static void test_config_parse_ether_addr(void) {
- }
-
- static void test_config_parse_address_one(const char *rvalue, int family, unsigned n_addresses, const union in_addr_union *u, unsigned char prefixlen) {
-+ _cleanup_(manager_freep) Manager *manager = NULL;
- _cleanup_(network_unrefp) Network *network = NULL;
-
-+ assert_se(manager_new(&manager, /* test_mode = */ true) >= 0);
- assert_se(network = new0(Network, 1));
- network->n_ref = 1;
-+ network->manager = manager;
- assert_se(network->filename = strdup("hogehoge.network"));
-+
- assert_se(config_parse_match_ifnames("network", "filename", 1, "section", 1, "Name", 0, "*", &network->match.ifname, network) == 0);
- assert_se(config_parse_address("network", "filename", 1, "section", 1, "Address", 0, rvalue, network, network) == 0);
- assert_se(ordered_hashmap_size(network->addresses_by_section) == 1);
---
-2.34.1
-
diff --git a/poky/meta/recipes-core/systemd/systemd_250.4.bb b/poky/meta/recipes-core/systemd/systemd_250.5.bb
index 15e2185dff..006b2f86ea 100644
--- a/poky/meta/recipes-core/systemd/systemd_250.4.bb
+++ b/poky/meta/recipes-core/systemd/systemd_250.5.bb
@@ -23,16 +23,14 @@ SRC_URI += "file://touchscreen.rules \
file://systemd-pager.sh \
file://0001-binfmt-Don-t-install-dependency-links-at-install-tim.patch \
file://0003-implment-systemd-sysv-install-for-OE.patch \
- file://0001-systemd.pc.in-use-ROOTPREFIX-without-suffixed-slash.patch \
- file://0001-test-parse-argument-Include-signal.h.patch \
- file://0029-network-enable-KeepConfiguration-when-running-on-net.patch \
+ file://0001-Move-sysusers.d-sysctl.d-binfmt.d-modules-load.d-to-.patch \
+ file://0001-resolve-Use-sockaddr-pointer-type-for-bind.patch \
"
# patches needed by musl
SRC_URI:append:libc-musl = " ${SRC_URI_MUSL}"
SRC_URI_MUSL = "\
- file://0002-don-t-use-glibc-specific-qsort_r.patch \
- file://0003-missing_type.h-add-__compare_fn_t-and-comparison_fn_.patch \
+ file://0003-missing_type.h-add-comparison_fn_t.patch \
file://0004-add-fallback-parse_printf_format-implementation.patch \
file://0005-src-basic-missing.h-check-for-missing-strndupa.patch \
file://0007-don-t-fail-if-GLOB_BRACE-and-GLOB_ALTDIRFUNC-is-not-.patch \
@@ -44,11 +42,7 @@ SRC_URI_MUSL = "\
file://0013-Define-glibc-compatible-basename-for-non-glibc-syste.patch \
file://0014-Do-not-disable-buffering-when-writing-to-oom_score_a.patch \
file://0015-distinguish-XSI-compliant-strerror_r-from-GNU-specif.patch \
- file://0016-Hide-__start_BUS_ERROR_MAP-and-__stop_BUS_ERROR_MAP.patch \
- file://0017-missing_type.h-add-__compar_d_fn_t-definition.patch \
file://0018-avoid-redefinition-of-prctl_mm_map-structure.patch \
- file://0019-Handle-missing-LOCK_EX.patch \
- file://0020-Fix-incompatible-pointer-type-struct-sockaddr_un.patch \
file://0021-test-json.c-define-M_PIl.patch \
file://0022-do-not-disable-buffer-in-writing-files.patch \
file://0025-Handle-__cpu_mask-usage.patch \
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit/0001-Fixed-compile-error-on-GNU-Hurd.patch b/poky/meta/recipes-core/sysvinit/sysvinit/0001-Fixed-compile-error-on-GNU-Hurd.patch
deleted file mode 100644
index d278a32ec7..0000000000
--- a/poky/meta/recipes-core/sysvinit/sysvinit/0001-Fixed-compile-error-on-GNU-Hurd.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From d595594506e6fd2247f7984c276f822ea626434c Mon Sep 17 00:00:00 2001
-From: Wang Mingyu <wangmy@fujitsu.com>
-Date: Thu, 7 Apr 2022 11:57:19 +0900
-Subject: [PATCH] Fixed compile error on GNU Hurd
-
-Fixed compile error on GNU Hurd due to missing MAX_PATH definition.
-
-Upstream-Status: Backport [https://github.com/slicer69/sysvinit/commit/14d8d25269016b26965b428a855dd084cc88994d]
-
-Signed-off-by: Wang Mingyu <wangmy@fujitsu.com>
----
- src/bootlogd.h | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/src/bootlogd.h b/src/bootlogd.h
-index b47bc9d..ba17f0c 100644
---- a/src/bootlogd.h
-+++ b/src/bootlogd.h
-@@ -10,3 +10,6 @@
- #define FALSE 0
- #endif
-
-+#ifndef PATH_MAX
-+#define PATH_MAX 2048
-+#endif
---
-2.25.1
-
diff --git a/poky/meta/recipes-core/sysvinit/sysvinit_3.02.bb b/poky/meta/recipes-core/sysvinit/sysvinit_3.04.bb
index cfe9d0b597..f678f65c1e 100644
--- a/poky/meta/recipes-core/sysvinit/sysvinit_3.02.bb
+++ b/poky/meta/recipes-core/sysvinit/sysvinit_3.04.bb
@@ -20,9 +20,8 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/sysvinit/sysvinit-${PV}.tar.xz \
file://rcS \
file://bootlogd.init \
file://01_bootlogd \
- file://0001-Fixed-compile-error-on-GNU-Hurd.patch \
"
-SRC_URI[sha256sum] = "4ca03ffdbefb5a99a60b94a021693686c2b498a08ff8aa4e859821fa7c39a792"
+SRC_URI[sha256sum] = "2a621fe6e4528bc91308b74867ddaaebbdf7753f02395c0c5bae817bd2b7e3a5"
S = "${WORKDIR}/sysvinit-${PV}"
diff --git a/poky/meta/recipes-core/udev/eudev/0001-build-Remove-dead-g-i-r-configuration.patch b/poky/meta/recipes-core/udev/eudev/0001-build-Remove-dead-g-i-r-configuration.patch
new file mode 100644
index 0000000000..2836f30c3a
--- /dev/null
+++ b/poky/meta/recipes-core/udev/eudev/0001-build-Remove-dead-g-i-r-configuration.patch
@@ -0,0 +1,155 @@
+From 520c4d451efc488573746f169d8e47d5a131afc2 Mon Sep 17 00:00:00 2001
+From: Alex Kiernan <alex.kiernan@gmail.com>
+Date: Fri, 20 May 2022 09:35:08 +0100
+Subject: [PATCH] build: Remove dead g-i-r configuration
+
+g-i-r support was removed in 2015 as part of removal of Gobject libudev
+support, but the autoconf support wasn't removed but is dead.
+
+Fixes: 252150e181c5 ("src/gudev: remove Gobject libudev support.")
+Upstream-Status: Submitted [https://github.com/eudev-project/eudev/pull/231]
+Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
+Signed-off-by: Alex Kiernan <alex.kiernan@zuma.ai>
+---
+ configure.ac | 12 ------
+ m4/introspection.m4 | 96 ---------------------------------------------
+ 2 files changed, 108 deletions(-)
+ delete mode 100644 m4/introspection.m4
+
+diff --git a/configure.ac b/configure.ac
+index 85a524a618ae..987d5037ae77 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -183,17 +183,8 @@ AC_SUBST([udevrulesdir],[${udevlibexecdir}/rules.d])
+ AC_SUBST([pkgconfiglibdir], [${libdir}/pkgconfig])
+ AC_SUBST([sharepkgconfigdir],[${datadir}/pkgconfig])
+
+-# introspection paths
+-AC_SUBST([girdir], [${datadir}/gir-1.0])
+-AC_SUBST([typelibsdir], [${libdir}/girepository-1.0])
+-
+ AC_SUBST([rootrundir],[${with_rootrundir}])
+
+-# ------------------------------------------------------------------------------
+-
+-GOBJECT_INTROSPECTION_CHECK([1.31.1])
+-AM_CONDITIONAL([HAVE_INTROSPECTION], [test "$enable_introspection" = "yes"])
+-
+ # ------------------------------------------------------------------------------
+ AC_ARG_ENABLE([programs],
+ AS_HELP_STRING([--disable-programs], [disable programs (udevd, udevadm and helpers)]),
+@@ -349,9 +340,6 @@ AC_MSG_RESULT([
+
+ pkgconfiglibdir: ${libdir}/pkgconfig
+ sharepkgconfigdir ${datadir}/pkgconfig
+-
+- girdir ${datadir}/gir-1.0
+- typelibsdir ${libdir}/girepository-1.0
+ ])
+
+ # ------------------------------------------------------------------------------
+diff --git a/m4/introspection.m4 b/m4/introspection.m4
+deleted file mode 100644
+index d89c3d907d9c..000000000000
+--- a/m4/introspection.m4
++++ /dev/null
+@@ -1,96 +0,0 @@
+-dnl -*- mode: autoconf -*-
+-dnl Copyright 2009 Johan Dahlin
+-dnl
+-dnl This file is free software; the author(s) gives unlimited
+-dnl permission to copy and/or distribute it, with or without
+-dnl modifications, as long as this notice is preserved.
+-dnl
+-
+-# serial 1
+-
+-m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL],
+-[
+- AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first
+- AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first
+- AC_BEFORE([LT_INIT],[$0])dnl setup libtool first
+-
+- dnl enable/disable introspection
+- m4_if([$2], [require],
+- [dnl
+- enable_introspection=yes
+- ],[dnl
+- AC_ARG_ENABLE(introspection,
+- AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]],
+- [Enable introspection for this build]),,
+- [enable_introspection=auto])
+- ])dnl
+-
+- AC_MSG_CHECKING([for gobject-introspection])
+-
+- dnl presence/version checking
+- AS_CASE([$enable_introspection],
+- [no], [dnl
+- found_introspection="no (disabled, use --enable-introspection to enable)"
+- ],dnl
+- [yes],[dnl
+- PKG_CHECK_EXISTS([gobject-introspection-1.0],,
+- AC_MSG_ERROR([gobject-introspection-1.0 is not installed]))
+- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1],
+- found_introspection=yes,
+- AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME]))
+- ],dnl
+- [auto],[dnl
+- PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no)
+- dnl Canonicalize enable_introspection
+- enable_introspection=$found_introspection
+- ],dnl
+- [dnl
+- AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@])
+- ])dnl
+-
+- AC_MSG_RESULT([$found_introspection])
+-
+- INTROSPECTION_SCANNER=
+- INTROSPECTION_COMPILER=
+- INTROSPECTION_GENERATE=
+- INTROSPECTION_GIRDIR=
+- INTROSPECTION_TYPELIBDIR=
+- if test "x$found_introspection" = "xyes"; then
+- INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0`
+- INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0`
+- INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0`
+- INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0`
+- INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)"
+- INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0`
+- INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0`
+- INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection
+- fi
+- AC_SUBST(INTROSPECTION_SCANNER)
+- AC_SUBST(INTROSPECTION_COMPILER)
+- AC_SUBST(INTROSPECTION_GENERATE)
+- AC_SUBST(INTROSPECTION_GIRDIR)
+- AC_SUBST(INTROSPECTION_TYPELIBDIR)
+- AC_SUBST(INTROSPECTION_CFLAGS)
+- AC_SUBST(INTROSPECTION_LIBS)
+- AC_SUBST(INTROSPECTION_MAKEFILE)
+-
+- AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes")
+-])
+-
+-
+-dnl Usage:
+-dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version])
+-
+-AC_DEFUN([GOBJECT_INTROSPECTION_CHECK],
+-[
+- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1])
+-])
+-
+-dnl Usage:
+-dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version])
+-
+-
+-AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE],
+-[
+- _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require])
+-])
+--
+2.35.1
+
diff --git a/poky/meta/recipes-core/udev/eudev/0014-Revert-rules-remove-firmware-loading-rules.patch b/poky/meta/recipes-core/udev/eudev/0014-Revert-rules-remove-firmware-loading-rules.patch
deleted file mode 100644
index fe2ba5328d..0000000000
--- a/poky/meta/recipes-core/udev/eudev/0014-Revert-rules-remove-firmware-loading-rules.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-From 4f0a722489154da99e7f6b3051afde984eed2f74 Mon Sep 17 00:00:00 2001
-From: Jonathan Liu <net147@gmail.com>
-Date: Thu, 19 Mar 2015 15:01:29 +1100
-Subject: [PATCH] Revert "rules: remove firmware loading rules"
-
-This reverts commit 70e7d754ddb356fb1a2942b262f8cee9650e2a19.
-Userspace firmware loading support is needed for Linux < 3.7.
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Jonathan Liu <net147@gmail.com>
----
- rules/50-firmware.rules | 3 +++
- 1 file changed, 3 insertions(+)
- create mode 100644 rules/50-firmware.rules
-
-diff --git a/rules/50-firmware.rules b/rules/50-firmware.rules
-new file mode 100644
-index 0000000..f0ae684
---- /dev/null
-+++ b/rules/50-firmware.rules
-@@ -0,0 +1,3 @@
-+# do not edit this file, it will be overwritten on update
-+
-+SUBSYSTEM=="firmware", ACTION=="add", RUN{builtin}="firmware"
---
-2.3.3
-
diff --git a/poky/meta/recipes-core/udev/eudev/Revert-udev-remove-userspace-firmware-loading-suppor.patch b/poky/meta/recipes-core/udev/eudev/Revert-udev-remove-userspace-firmware-loading-suppor.patch
deleted file mode 100644
index db333e9376..0000000000
--- a/poky/meta/recipes-core/udev/eudev/Revert-udev-remove-userspace-firmware-loading-suppor.patch
+++ /dev/null
@@ -1,364 +0,0 @@
-From e415372cc7a2f52e70e1cfa8c6c1f633b411355d Mon Sep 17 00:00:00 2001
-From: Lauren Post <lauren.post@nxp.com>
-Date: Wed, 8 Jun 2016 06:51:56 -0500
-Subject: [PATCH] Revert "udev: remove userspace firmware loading support"
-
-This reverts commit 3b717594600fa717cdf9bcfd0c7c1b703b245482.
-
-Conflicts:
- configure.ac
- src/udev/udevd.c
-
-Upstream-Status: Inappropriate [OE specific]
-
-Signed-off-by: Lauren Post <lauren.post@nxp.com>
----
- configure.ac | 39 +++++++++-
- rules/Makefile.am | 5 ++
- src/udev/Makefile.am | 10 +++
- src/udev/udev-builtin-firmware.c | 154 +++++++++++++++++++++++++++++++++++++++
- src/udev/udev-builtin.c | 3 +
- src/udev/udev.h | 6 ++
- src/udev/udevd.c | 13 ++++
- 7 files changed, 227 insertions(+), 3 deletions(-)
- create mode 100644 src/udev/udev-builtin-firmware.c
-
-diff --git a/configure.ac b/configure.ac
-index 8691891..65028c2 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -238,9 +238,42 @@ AC_CHECK_DECL([unshare],
- [#include <sched.h>])
-
- # ------------------------------------------------------------------------------
--AC_PATH_TOOL(GPERF, gperf)
--if test -z "$GPERF" ; then
-- AC_MSG_ERROR([*** gperf not found])
-+AC_ARG_WITH(firmware-path,
-+ AS_HELP_STRING([--with-firmware-path=DIR[[[:DIR[...]]]]],
-+ [Firmware search path (default=ROOTPREFIX/lib/firmware/updates:ROOTPREFIX/lib/firmware)]),
-+ [], [with_firmware_path="$rootprefix/lib/firmware/updates:$rootprefix/lib/firmware"])
-+OLD_IFS=$IFS
-+IFS=:
-+for i in $with_firmware_path; do
-+ if test "x${FIRMWARE_PATH}" = "x"; then
-+ FIRMWARE_PATH="\\\"${i}/\\\""
-+ else
-+ FIRMWARE_PATH="${FIRMWARE_PATH}, \\\"${i}/\\\""
-+ fi
-+done
-+IFS=$OLD_IFS
-+AC_SUBST(FIRMWARE_PATH)
-+AS_IF([test "x${FIRMWARE_PATH}" != "x"], [ AC_DEFINE(HAVE_FIRMWARE, 1, [Define if FIRMWARE is available]) ])
-+AM_CONDITIONAL(ENABLE_FIRMWARE, [test "x${FIRMWARE_PATH}" != "x"])
-+
-+# ------------------------------------------------------------------------------
-+AC_ARG_ENABLE([gudev],
-+ AS_HELP_STRING([--disable-gudev], [disable Gobject libudev support @<:@default=enabled@:>@]),
-+ [], [enable_gudev=yes])
-+AS_IF([test "x$enable_gudev" = "xyes"], [ PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.22.0 gobject-2.0 >= 2.22.0]) ])
-+AM_CONDITIONAL([ENABLE_GUDEV], [test "x$enable_gudev" = "xyes"])
-+
-+# ------------------------------------------------------------------------------
-+AC_ARG_ENABLE([keymap],
-+ AS_HELP_STRING([--disable-keymap], [disable keymap fixup support @<:@default=enabled@:>@]),
-+ [], [enable_keymap=yes])
-+
-+if test "x$enable_keymap" = "xyes"; then
-+ AC_PATH_TOOL(GPERF, gperf)
-+ if test -z "$GPERF" ; then
-+ AC_MSG_ERROR([*** gperf not found])
-+ fi
-+ AC_DEFINE([ENABLE_KEYMAP], [1], [Define if we are enabling rule generator])
- fi
-
- # ------------------------------------------------------------------------------
-diff --git a/rules/Makefile.am b/rules/Makefile.am
-index 24c099c..d714ae3 100644
---- a/rules/Makefile.am
-+++ b/rules/Makefile.am
-@@ -22,6 +22,11 @@ dist_udevrules_DATA += \
- 80-net-name-slot.rules
- endif
-
-+if ENABLE_FIRMWARE
-+dist_udevrules_DATA += \
-+ 50-firmware.rules
-+endif
-+
- if HAVE_BLKID
- dist_udevrules_DATA += \
- 60-persistent-storage.rules
-diff --git a/src/udev/Makefile.am b/src/udev/Makefile.am
-index 401af01..742fbc8 100644
---- a/src/udev/Makefile.am
-+++ b/src/udev/Makefile.am
-@@ -53,12 +53,18 @@ libudev_core_la_SOURCES = \
- udev-ctrl.c \
- udev-builtin.c \
- udev-builtin-btrfs.c \
-+ udev-builtin-firmware.c \
- udev-builtin-hwdb.c \
- udev-builtin-input_id.c \
- udev-builtin-net_id.c \
- udev-builtin-path_id.c \
- udev-builtin-usb_id.c
-
-+if ENABLE_FIRMWARE
-+libudev_core_la_SOURCES += \
-+ udev-builtin-firmware.c
-+endif
-+
- include_HEADERS = \
- udev.h
-
-@@ -86,6 +92,10 @@ libudev_core_la_LIBADD += \
- $(KMOD_LIBS)
- endif
-
-+libudev_core_la_CPPFLAGS = \
-+ $(AM_CPPFLAGS) \
-+ -DFIRMWARE_PATH="$(FIRMWARE_PATH)"
-+
- #
- # Extras
- #
-diff --git a/src/udev/udev-builtin-firmware.c b/src/udev/udev-builtin-firmware.c
-new file mode 100644
-index 0000000..bd8c2fb
---- /dev/null
-+++ b/src/udev/udev-builtin-firmware.c
-@@ -0,0 +1,154 @@
-+/*
-+ * firmware - Kernel firmware loader
-+ *
-+ * Copyright (C) 2009 Piter Punk <piterpunk@slackware.com>
-+ * Copyright (C) 2009-2011 Kay Sievers <kay@vrfy.org>
-+ *
-+ * 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:*
-+ */
-+
-+#include <unistd.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <stdio.h>
-+#include <getopt.h>
-+#include <errno.h>
-+#include <stdbool.h>
-+#include <sys/utsname.h>
-+#include <sys/stat.h>
-+
-+#include "udev.h"
-+
-+static bool set_loading(struct udev *udev, char *loadpath, const char *state) {
-+ FILE *ldfile;
-+
-+ ldfile = fopen(loadpath, "we");
-+ if (ldfile == NULL) {
-+ log_error("error: can not open '%s'", loadpath);
-+ return false;
-+ };
-+ fprintf(ldfile, "%s\n", state);
-+ fclose(ldfile);
-+ return true;
-+}
-+
-+static bool copy_firmware(struct udev *udev, const char *source, const char *target, size_t size) {
-+ char *buf;
-+ FILE *fsource = NULL, *ftarget = NULL;
-+ bool ret = false;
-+
-+ buf = malloc(size);
-+ if (buf == NULL) {
-+ log_error("No memory available to load firmware file");
-+ return false;
-+ }
-+
-+ log_debug("writing '%s' (%zi) to '%s'", source, size, target);
-+
-+ fsource = fopen(source, "re");
-+ if (fsource == NULL)
-+ goto exit;
-+ ftarget = fopen(target, "we");
-+ if (ftarget == NULL)
-+ goto exit;
-+ if (fread(buf, size, 1, fsource) != 1)
-+ goto exit;
-+ if (fwrite(buf, size, 1, ftarget) == 1)
-+ ret = true;
-+exit:
-+ if (ftarget != NULL)
-+ fclose(ftarget);
-+ if (fsource != NULL)
-+ fclose(fsource);
-+ free(buf);
-+ return ret;
-+}
-+
-+static int builtin_firmware(struct udev_device *dev, int argc, char *argv[], bool test) {
-+ struct udev *udev = udev_device_get_udev(dev);
-+ static const char *searchpath[] = { FIRMWARE_PATH };
-+ char loadpath[UTIL_PATH_SIZE];
-+ char datapath[UTIL_PATH_SIZE];
-+ char fwpath[UTIL_PATH_SIZE];
-+ const char *firmware;
-+ FILE *fwfile = NULL;
-+ struct utsname kernel;
-+ struct stat statbuf;
-+ unsigned int i;
-+ int rc = EXIT_SUCCESS;
-+
-+ firmware = udev_device_get_property_value(dev, "FIRMWARE");
-+ if (firmware == NULL) {
-+ log_error("firmware parameter missing");
-+ rc = EXIT_FAILURE;
-+ goto exit;
-+ }
-+
-+ /* lookup firmware file */
-+ uname(&kernel);
-+ for (i = 0; i < ELEMENTSOF(searchpath); i++) {
-+ strscpyl(fwpath, sizeof(fwpath), searchpath[i], kernel.release, "/", firmware, NULL);
-+ fwfile = fopen(fwpath, "re");
-+ if (fwfile != NULL)
-+ break;
-+
-+ strscpyl(fwpath, sizeof(fwpath), searchpath[i], firmware, NULL);
-+ fwfile = fopen(fwpath, "re");
-+ if (fwfile != NULL)
-+ break;
-+ }
-+
-+ strscpyl(loadpath, sizeof(loadpath), udev_device_get_syspath(dev), "/loading", NULL);
-+
-+ if (fwfile == NULL) {
-+ log_debug("did not find firmware file '%s'", firmware);
-+ rc = EXIT_FAILURE;
-+ /*
-+ * Do not cancel the request in the initrd, the real root might have
-+ * the firmware file and the 'coldplug' run in the real root will find
-+ * this pending request and fulfill or cancel it.
-+ * */
-+ if (!in_initrd())
-+ set_loading(udev, loadpath, "-1");
-+ goto exit;
-+ }
-+
-+ if (stat(fwpath, &statbuf) < 0 || statbuf.st_size == 0) {
-+ if (!in_initrd())
-+ set_loading(udev, loadpath, "-1");
-+ rc = EXIT_FAILURE;
-+ goto exit;
-+ }
-+
-+ if (!set_loading(udev, loadpath, "1"))
-+ goto exit;
-+
-+ strscpyl(datapath, sizeof(datapath), udev_device_get_syspath(dev), "/data", NULL);
-+ if (!copy_firmware(udev, fwpath, datapath, statbuf.st_size)) {
-+ log_error("error sending firmware '%s' to device", firmware);
-+ set_loading(udev, loadpath, "-1");
-+ rc = EXIT_FAILURE;
-+ goto exit;
-+ };
-+
-+ set_loading(udev, loadpath, "0");
-+exit:
-+ if (fwfile)
-+ fclose(fwfile);
-+ return rc;
-+}
-+
-+const struct udev_builtin udev_builtin_firmware = {
-+ .name = "firmware",
-+ .cmd = builtin_firmware,
-+ .help = "kernel firmware loader",
-+ .run_once = true,
-+};
-diff --git a/src/udev/udev-builtin.c b/src/udev/udev-builtin.c
-index 74b3bdc..3657106 100644
---- a/src/udev/udev-builtin.c
-+++ b/src/udev/udev-builtin.c
-@@ -34,6 +34,9 @@ static const struct udev_builtin *builtins[] = {
- [UDEV_BUILTIN_BLKID] = &udev_builtin_blkid,
- #endif
- [UDEV_BUILTIN_BTRFS] = &udev_builtin_btrfs,
-+#ifdef HAVE_FIRMWARE
-+ [UDEV_BUILTIN_FIRMWARE] = &udev_builtin_firmware,
-+#endif
- [UDEV_BUILTIN_HWDB] = &udev_builtin_hwdb,
- [UDEV_BUILTIN_INPUT_ID] = &udev_builtin_input_id,
- [UDEV_BUILTIN_KEYBOARD] = &udev_builtin_keyboard,
-diff --git a/src/udev/udev.h b/src/udev/udev.h
-index 198cb2c..01a1e9c 100644
---- a/src/udev/udev.h
-+++ b/src/udev/udev.h
-@@ -149,6 +149,9 @@ enum udev_builtin_cmd {
- UDEV_BUILTIN_BLKID,
- #endif
- UDEV_BUILTIN_BTRFS,
-+#ifdef HAVE_FIRMWARE
-+ UDEV_BUILTIN_FIRMWARE,
-+#endif
- UDEV_BUILTIN_HWDB,
- UDEV_BUILTIN_INPUT_ID,
- UDEV_BUILTIN_KEYBOARD,
-@@ -173,6 +176,9 @@ struct udev_builtin {
- extern const struct udev_builtin udev_builtin_blkid;
- #endif
- extern const struct udev_builtin udev_builtin_btrfs;
-+#ifdef HAVE_FIRMWARE
-+extern const struct udev_builtin udev_builtin_firmware;
-+#endif
- extern const struct udev_builtin udev_builtin_hwdb;
- extern const struct udev_builtin udev_builtin_input_id;
- extern const struct udev_builtin udev_builtin_keyboard;
-diff --git a/src/udev/udevd.c b/src/udev/udevd.c
-index b1de97a..35655d8 100644
---- a/src/udev/udevd.c
-+++ b/src/udev/udevd.c
-@@ -101,6 +101,9 @@ struct event {
- bool is_block;
- usec_t start_usec;
- bool warned;
-+#ifdef HAVE_FIRMWARE
-+ bool nodelay;
-+#endif
- };
-
- static inline struct event *node_to_event(struct udev_list_node *node) {
-@@ -491,6 +494,10 @@ static int event_queue_insert(struct udev_device *dev) {
- event->devnum = udev_device_get_devnum(dev);
- event->is_block = streq("block", udev_device_get_subsystem(dev));
- event->ifindex = udev_device_get_ifindex(dev);
-+#ifdef HAVE_FIRMWARE
-+ if (streq(udev_device_get_subsystem(dev), "firmware"))
-+ event->nodelay = true;
-+#endif
-
- log_debug("seq %llu queued, '%s' '%s'", udev_device_get_seqnum(dev),
- udev_device_get_action(dev), udev_device_get_subsystem(dev));
-@@ -566,6 +573,12 @@ static bool is_devpath_busy(struct event *event) {
- return true;
- }
-
-+#ifdef HAVE_FIRMWARE
-+ /* allow to bypass the dependency tracking */
-+ if (event->nodelay)
-+ continue;
-+#endif
-+
- /* parent device event found */
- if (event->devpath[common] == '/') {
- event->delaying_seqnum = loop_event->seqnum;
---
-1.9.1
-
diff --git a/poky/meta/recipes-core/udev/eudev/init b/poky/meta/recipes-core/udev/eudev/init
index c60dbbf6d5..477a525b21 100644
--- a/poky/meta/recipes-core/udev/eudev/init
+++ b/poky/meta/recipes-core/udev/eudev/init
@@ -23,6 +23,42 @@ kill_udevd () {
[ -n "$pid" ] && kill $pid
}
+make_static_nodes () {
+ [ -e /lib/modules/$(uname -r)/modules.devname ] || return 0
+ [ -x @KMOD@ ] || return 0
+
+ #output to /proc/self/fd/1 since /dev/stdout not created by udevd yet
+ @KMOD@ static-nodes --format=tmpfiles --output=/proc/self/fd/1 |
+ while read TTYPE TPATH TMODE TUSER TGROUP TAGE TARG; do
+ case "${TTYPE}" in
+ 'd')
+ test -d "${TPATH}" || mkdir -p -m "${TMODE}" "${TPATH}"
+ ;;
+
+ 'c!')
+ if [ ! -c "${TPATH}" ]; then
+ old_ifs="${IFS}"
+ IFS=:
+ set -- ${TARG}
+ IFS="${old_ifs}"
+ mknod -m "${TMODE}" "${TPATH}" c "$@"
+ fi
+ ;;
+
+ *)
+ echo "Unparseable line (${TTYPE} ${TPATH} ${TMODE} ${TUSER} ${TGROUP} ${TAGE} ${TARG})"
+ return 1
+ ;;
+ esac
+ if [ "${TUSER}" != "-" ]; then
+ chown "${TUSER}" "${TPATH}"
+ fi
+ if [ "${TGROUP}" != "-" ]; then
+ chgrp "${TGROUP}" "${TPATH}"
+ fi
+ done
+}
+
case "$1" in
start)
export ACTION=add
@@ -51,6 +87,7 @@ case "$1" in
# make_extra_nodes
kill_udevd > "/dev/null" 2>&1
+ make_static_nodes
# trigger the sorted events
[ -e /proc/sys/kernel/hotplug ] && printf '\0\n' >/proc/sys/kernel/hotplug
@UDEVD@ -d
diff --git a/poky/meta/recipes-core/udev/eudev_3.2.10.bb b/poky/meta/recipes-core/udev/eudev_3.2.11.bb
index b053612492..bc2c77de89 100644
--- a/poky/meta/recipes-core/udev/eudev_3.2.10.bb
+++ b/poky/meta/recipes-core/udev/eudev_3.2.11.bb
@@ -1,25 +1,26 @@
SUMMARY = "eudev is a fork of systemd's udev"
-HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
+HOMEPAGE = "https://github.com/eudev-project/eudev"
DESCRIPTION = "eudev is Gentoo's fork of udev, systemd's device file manager for the Linux kernel. It manages device nodes in /dev and handles all user space actions when adding or removing devices."
LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
LICENSE:libudev = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
-DEPENDS = "glib-2.0 glib-2.0-native gperf-native kmod libxslt-native util-linux"
+DEPENDS = "gperf-native"
PROVIDES = "udev"
-SRC_URI = "https://dev.gentoo.org/~blueness/${BPN}/${BP}.tar.gz \
- file://0014-Revert-rules-remove-firmware-loading-rules.patch \
- file://Revert-udev-remove-userspace-firmware-loading-suppor.patch \
+SRC_URI = "https://github.com/eudev-project/${BPN}/releases/download/v${PV}/${BP}.tar.gz \
file://init \
file://local.rules \
+ file://0001-build-Remove-dead-g-i-r-configuration.patch \
"
-SRC_URI[md5sum] = "60b135a189523f333cea5f71a3345c8d"
-SRC_URI[sha256sum] = "87bb028d470fd1b85169349b44c55d5b733733dc2d50ddf1196e026725ead034"
+SRC_URI[sha256sum] = "19847cafec67897da855fde56f9dc7d92e21c50e450aa79068a7e704ed44558b"
-inherit autotools update-rc.d qemu pkgconfig features_check
+UPSTREAM_CHECK_URI = "https://github.com/eudev-project/eudev/releases"
+UPSTREAM_CHECK_REGEX = "eudev-(?P<pver>\d+(\.\d+)+)\.tar"
+
+inherit autotools update-rc.d qemu pkgconfig features_check manpages
CONFLICT_DISTRO_FEATURES = "systemd"
@@ -30,22 +31,27 @@ EXTRA_OECONF = " \
--with-rootprefix= \
"
-PACKAGECONFIG ??= "hwdb"
+PACKAGECONFIG ?= "blkid hwdb kmod \
+ ${@bb.utils.filter('DISTRO_FEATURES', 'selinux', d)} \
+"
+PACKAGECONFIG[blkid] = "--enable-blkid,--disable-blkid,util-linux"
PACKAGECONFIG[hwdb] = "--enable-hwdb,--disable-hwdb"
+PACKAGECONFIG[kmod] = "--enable-kmod,--disable-kmod,kmod"
+PACKAGECONFIG[manpages] = "--enable-manpages,--disable-manpages"
+PACKAGECONFIG[rule-generator] = "--enable-rule-generator,--disable-rule-generator"
+PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux,libselinux"
do_install:append() {
install -d ${D}${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/udev
sed -i s%@UDEVD@%${base_sbindir}/udevd% ${D}${sysconfdir}/init.d/udev
+ sed -i s%@KMOD@%${base_bindir}/kmod% ${D}${sysconfdir}/init.d/udev
install -d ${D}${sysconfdir}/udev/rules.d
install -m 0644 ${WORKDIR}/local.rules ${D}${sysconfdir}/udev/rules.d/local.rules
# Use classic network interface naming scheme
touch ${D}${sysconfdir}/udev/rules.d/80-net-name-slot.rules
-
- # hid2hci has moved to bluez4. removed in udev as of version 169
- rm -f ${D}${base_libdir}/udev/hid2hci
}
do_install:prepend:class-target () {
@@ -57,32 +63,27 @@ do_install:prepend:class-target () {
INITSCRIPT_NAME = "udev"
INITSCRIPT_PARAMS = "start 04 S ."
-PACKAGES =+ "libudev"
-PACKAGES =+ "eudev-hwdb"
-
+PACKAGE_BEFORE_PN = "libudev ${PN}-hwdb"
-FILES:${PN} += "${libexecdir} ${nonarch_base_libdir}/udev ${bindir}/udevadm"
-FILES:${PN}-dev = "${datadir}/pkgconfig/udev.pc \
- ${includedir}/libudev.h ${libdir}/libudev.so \
- ${includedir}/udev.h ${libdir}/libudev.la \
- ${libdir}/libudev.a ${libdir}/pkgconfig/libudev.pc"
+FILES:${PN} += "${nonarch_base_libdir}/udev"
FILES:libudev = "${base_libdir}/libudev.so.*"
-FILES:eudev-hwdb = "${sysconfdir}/udev/hwdb.d"
+FILES:${PN}-hwdb = "${sysconfdir}/udev/hwdb.d"
-RDEPENDS:eudev-hwdb += "eudev"
+RDEPENDS:${PN}-hwdb += "eudev"
+RDEPENDS:${PN} += "kmod"
RPROVIDES:${PN} = "hotplug udev"
-RPROVIDES:eudev-hwdb += "udev-hwdb"
+RPROVIDES:${PN}-hwdb += "udev-hwdb"
PACKAGE_WRITE_DEPS += "qemu-native"
-pkg_postinst:eudev-hwdb () {
- if test -n "$D"; then
- $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
- else
- udevadm hwdb --update
- fi
+pkg_postinst:${PN}-hwdb () {
+ if test -n "$D"; then
+ $INTERCEPT_DIR/postinst_intercept update_udev_hwdb ${PKG} mlprefix=${MLPREFIX} binprefix=${MLPREFIX}
+ else
+ udevadm hwdb --update
+ fi
}
-pkg_prerm:eudev-hwdb () {
- rm -f $D${sysconfdir}/udev/hwdb.bin
+pkg_prerm:${PN}-hwdb () {
+ rm -f $D${sysconfdir}/udev/hwdb.bin
}
diff --git a/poky/meta/recipes-core/udev/udev-extraconf/mount.blacklist b/poky/meta/recipes-core/udev/udev-extraconf/mount.ignorelist
index e49349428b..e49349428b 100644
--- a/poky/meta/recipes-core/udev/udev-extraconf/mount.blacklist
+++ b/poky/meta/recipes-core/udev/udev-extraconf/mount.ignorelist
diff --git a/poky/meta/recipes-core/udev/udev-extraconf/mount.sh b/poky/meta/recipes-core/udev/udev-extraconf/mount.sh
index b23731870e..5ba66e98e2 100644
--- a/poky/meta/recipes-core/udev/udev-extraconf/mount.sh
+++ b/poky/meta/recipes-core/udev/udev-extraconf/mount.sh
@@ -26,11 +26,11 @@ fi
PMOUNT="/usr/bin/pmount"
-for line in `grep -h -v ^# /etc/udev/mount.blacklist /etc/udev/mount.blacklist.d/*`
+for line in `grep -h -v ^# /etc/udev/mount.ignorelist /etc/udev/mount.ignorelist.d/*`
do
if [ ` expr match "$DEVNAME" "$line" ` -gt 0 ];
then
- logger "udev/mount.sh" "[$DEVNAME] is blacklisted, ignoring"
+ logger "udev/mount.sh" "[$DEVNAME] is marked to ignore"
exit 0
fi
done
diff --git a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
index 2ba35b0df6..7da04379c0 100644
--- a/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
+++ b/poky/meta/recipes-core/udev/udev-extraconf_1.1.bb
@@ -1,13 +1,13 @@
SUMMARY = "Extra machine specific configuration files"
HOMEPAGE = "https://wiki.gentoo.org/wiki/Eudev"
-DESCRIPTION = "Extra machine specific configuration files for udev, specifically blacklist information."
+DESCRIPTION = "Extra machine specific configuration files for udev, specifically information on devices to ignore."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
SRC_URI = " \
file://automount.rules \
file://mount.sh \
- file://mount.blacklist \
+ file://mount.ignorelist \
file://autonet.rules \
file://network.sh \
file://localextra.rules \
@@ -23,8 +23,8 @@ do_install() {
install -m 0644 ${WORKDIR}/autonet.rules ${D}${sysconfdir}/udev/rules.d/autonet.rules
install -m 0644 ${WORKDIR}/localextra.rules ${D}${sysconfdir}/udev/rules.d/localextra.rules
- install -d ${D}${sysconfdir}/udev/mount.blacklist.d
- install -m 0644 ${WORKDIR}/mount.blacklist ${D}${sysconfdir}/udev/
+ install -d ${D}${sysconfdir}/udev/mount.ignorelist.d
+ install -m 0644 ${WORKDIR}/mount.ignorelist ${D}${sysconfdir}/udev/
install -d ${D}${sysconfdir}/udev/scripts/
@@ -37,7 +37,7 @@ do_install() {
FILES:${PN} = "${sysconfdir}/udev"
RDEPENDS:${PN} = "udev"
-CONFFILES:${PN} = "${sysconfdir}/udev/mount.blacklist"
+CONFFILES:${PN} = "${sysconfdir}/udev/mount.ignorelist"
# to replace udev-extra-rules from meta-oe
RPROVIDES:${PN} = "udev-extra-rules"
diff --git a/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.4.bb b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.38.bb
index 5d759aed94..5d759aed94 100644
--- a/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.37.4.bb
+++ b/poky/meta/recipes-core/util-linux/util-linux-libuuid_2.38.bb
diff --git a/poky/meta/recipes-core/util-linux/util-linux.inc b/poky/meta/recipes-core/util-linux/util-linux.inc
index 982ec669a2..c9bddfb7a6 100644
--- a/poky/meta/recipes-core/util-linux/util-linux.inc
+++ b/poky/meta/recipes-core/util-linux/util-linux.inc
@@ -37,4 +37,4 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/util-linux/v${MAJOR_VERSION}/util-lin
file://avoid_parallel_tests.patch \
"
-SRC_URI[sha256sum] = "634e6916ad913366c3536b6468e7844769549b99a7b2bf80314de78ab5655b83"
+SRC_URI[sha256sum] = "6d111cbe4d55b336db2f1fbeffbc65b89908704c01136371d32aa9bec373eb64"
diff --git a/poky/meta/recipes-core/util-linux/util-linux/run-ptest b/poky/meta/recipes-core/util-linux/util-linux/run-ptest
index 3a910be121..097107cd09 100644
--- a/poky/meta/recipes-core/util-linux/util-linux/run-ptest
+++ b/poky/meta/recipes-core/util-linux/util-linux/run-ptest
@@ -13,6 +13,9 @@ current_path=$(readlink -f $0)
export bindir=$(dirname $current_path)
export PATH=$bindir/bin:$PATH
+# losetup tests will be skipped and/or fail otherwise
+modprobe loop
+
./tests/run.sh --use-system-commands --parsable --show-diff | sed -u '{
s/^\(.*\):\(.*\) \.\.\. OK$/PASS: \1:\2/
s/^\(.*\):\(.*\) \.\.\. FAILED \(.*\)$/FAIL: \1:\2 \3/
diff --git a/poky/meta/recipes-core/util-linux/util-linux_2.37.4.bb b/poky/meta/recipes-core/util-linux/util-linux_2.38.bb
index b39020884f..8a7b47a0c6 100644
--- a/poky/meta/recipes-core/util-linux/util-linux_2.37.4.bb
+++ b/poky/meta/recipes-core/util-linux/util-linux_2.38.bb
@@ -138,7 +138,7 @@ RPROVIDES:${PN}-dev = "${PN}-libblkid-dev ${PN}-libmount-dev"
RDEPENDS:${PN}-bash-completion += "${PN}-lsblk"
RDEPENDS:${PN}-ptest += "bash bc btrfs-tools coreutils e2fsprogs findutils grep iproute2 kmod mdadm procps sed socat which xz"
-RRECOMMENDS:${PN}-ptest += "kernel-module-scsi-debug kernel-module-sd-mod kernel-module-loop"
+RRECOMMENDS:${PN}-ptest += "kernel-module-scsi-debug kernel-module-sd-mod kernel-module-loop kernel-module-algif-hash"
RDEPENDS:${PN}-swaponoff = "${PN}-swapon ${PN}-swapoff"
ALLOW_EMPTY:${PN}-swaponoff = "1"
diff --git a/poky/meta/recipes-devtools/binutils/binutils-2.38.inc b/poky/meta/recipes-devtools/binutils/binutils-2.38.inc
index 3544c0c7e7..dc0a2a4054 100644
--- a/poky/meta/recipes-devtools/binutils/binutils-2.38.inc
+++ b/poky/meta/recipes-devtools/binutils/binutils-2.38.inc
@@ -18,7 +18,7 @@ SRCBRANCH ?= "binutils-2_38-branch"
UPSTREAM_CHECK_GITTAGREGEX = "binutils-(?P<pver>\d+_(\d_?)*)"
-SRCREV ?= "6938a3aca19044aeb9bc4b9564e04f9092a701ed"
+SRCREV ?= "134f17ef688ba4c72a6c4e57af7382882cc1a705"
BINUTILS_GIT_URI ?= "git://sourceware.org/git/binutils-gdb.git;branch=${SRCBRANCH};protocol=git"
SRC_URI = "\
${BINUTILS_GIT_URI} \
diff --git a/poky/meta/recipes-devtools/cargo/cargo-cross-canadian.inc b/poky/meta/recipes-devtools/cargo/cargo-cross-canadian.inc
index 840793c50b..7fc22a4128 100644
--- a/poky/meta/recipes-devtools/cargo/cargo-cross-canadian.inc
+++ b/poky/meta/recipes-devtools/cargo/cargo-cross-canadian.inc
@@ -28,8 +28,6 @@ inherit cross-canadian
PN = "cargo-cross-canadian-${TRANSLATED_TARGET_ARCH}"
-LLVM_TARGET[x86_64] = "${RUST_HOST_SYS}"
-
python do_rust_gen_targets () {
wd = d.getVar('WORKDIR') + '/targets/'
diff --git a/poky/meta/recipes-devtools/dnf/dnf_4.11.1.bb b/poky/meta/recipes-devtools/dnf/dnf_4.12.0.bb
index 00eed0ce96..d621e72d4e 100644
--- a/poky/meta/recipes-devtools/dnf/dnf_4.11.1.bb
+++ b/poky/meta/recipes-devtools/dnf/dnf_4.12.0.bb
@@ -18,7 +18,7 @@ SRC_URI = "git://github.com/rpm-software-management/dnf.git;branch=master;protoc
file://0001-dnf-write-the-log-lock-to-root.patch \
"
-SRCREV = "fba1e2ec93f3d045a874567fd7ecafd606346509"
+SRCREV = "956b5c74bab2affde27f404e7aee98c10818b188"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/extents.patch b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/extents.patch
index ffaecc622a..2c09bb276d 100644
--- a/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/extents.patch
+++ b/poky/meta/recipes-devtools/e2fsprogs/e2fsprogs/extents.patch
@@ -1,5 +1,5 @@
CVE: CVE-2022-1304
-Upstream-Status: Submitted [https://lore.kernel.org/linux-ext4/20220421173148.20193-1-lczerner@redhat.com/]
+Upstream-Status: Backport [ ab51d587bb9b229b1fade1afd02e1574c1ba5c76 ]
Signed-off-by: Ross Burton <ross.burton@arm.com>
From 347084c9c1ad20f47dae16f5a3dcd8628d5fc7b0 Mon Sep 17 00:00:00 2001
diff --git a/poky/meta/recipes-devtools/elfutils/elfutils_0.186.bb b/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb
index 46ee40cce6..31983dfd6b 100644
--- a/poky/meta/recipes-devtools/elfutils/elfutils_0.186.bb
+++ b/poky/meta/recipes-devtools/elfutils/elfutils_0.187.bb
@@ -4,7 +4,7 @@ DESCRIPTION = "elfutils is a collection of utilities and libraries to read, crea
SECTION = "base"
LICENSE = "GPL-2.0-only & GPL-2.0-or-later & LGPL-3.0-or-later & GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504 \
- file://debuginfod/debuginfod-client.c;endline=27;md5=d2adfd8f5347d4c96e3c280393ce66da \
+ file://debuginfod/debuginfod-client.c;endline=28;md5=f0a7c3170776866ee94e8f9225a6ad79 \
"
DEPENDS = "zlib virtual/libintl"
DEPENDS:append:libc-musl = " argp-standalone fts musl-obstack "
@@ -21,20 +21,20 @@ SRC_URI = "https://sourceware.org/elfutils/ftp/${PV}/${BP}.tar.bz2 \
file://run-ptest \
file://ptest.patch \
file://0001-tests-Makefile.am-compile-test_nlist-with-standard-C.patch \
- file://0001-debuginfod-fix-compilation-on-platforms-without-erro.patch \
- file://0001-debuginfod-debuginfod-client.c-use-long-for-cache-ti.patch \
"
SRC_URI:append:libc-musl = " \
file://0003-musl-utils.patch \
file://0015-config-eu.am-do-not-use-Werror.patch \
"
-SRC_URI[sha256sum] = "7f6fb9149b1673d38d9178a0d3e0fb8a1ec4f53a9f4c2ff89469609879641177"
+SRC_URI[sha256sum] = "e70b0dfbe610f90c4d1fe0d71af142a4e25c3c4ef9ebab8d2d72b65159d454c8"
inherit autotools gettext ptest pkgconfig
PTEST_ENABLED:libc-musl = "0"
EXTRA_OECONF = "--program-prefix=eu-"
+BUILD_CFLAGS += "-Wno-error=stringop-overflow"
+
DEPENDS_BZIP2 = "bzip2-replacement-native"
DEPENDS_BZIP2:class-target = "bzip2"
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-debuginfod-client.c-use-long-for-cache-ti.patch b/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-debuginfod-client.c-use-long-for-cache-ti.patch
deleted file mode 100644
index 089f1a2210..0000000000
--- a/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-debuginfod-client.c-use-long-for-cache-ti.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From a0852044907110479d0fb212dda2c5e45af2d3aa Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Thu, 9 Dec 2021 10:43:06 +0100
-Subject: [PATCH] debuginfod/debuginfod-client.c: use long for cache time
- configurations
-
-time_t is platform dependent and some of architectures e.g.
-x32, riscv32, arc use 64bit time_t even while they are 32bit
-architectures, therefore directly using integer printf formats will not
-work portably.
-
-Use a plain long everywhere as the intervals are small enough
-that it will not be problematic.
-
-Upstream-Status: Submitted [via email to mark@klomp.org,elfutils-devel@sourceware.org]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- debuginfod/debuginfod-client.c | 6 +++---
- 1 file changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
-index c875ee6..11e0fd5 100644
---- a/debuginfod/debuginfod-client.c
-+++ b/debuginfod/debuginfod-client.c
-@@ -134,17 +134,17 @@ struct debuginfod_client
- how frequently the cache should be cleaned. The file's st_mtime represents
- the time of last cleaning. */
- static const char *cache_clean_interval_filename = "cache_clean_interval_s";
--static const time_t cache_clean_default_interval_s = 86400; /* 1 day */
-+static const long cache_clean_default_interval_s = 86400; /* 1 day */
-
- /* The cache_miss_default_s within the debuginfod cache specifies how
- frequently the 000-permision file should be released.*/
--static const time_t cache_miss_default_s = 600; /* 10 min */
-+static const long cache_miss_default_s = 600; /* 10 min */
- static const char *cache_miss_filename = "cache_miss_s";
-
- /* The cache_max_unused_age_s file within the debuginfod cache specifies the
- the maximum time since last access that a file will remain in the cache. */
- static const char *cache_max_unused_age_filename = "max_unused_age_s";
--static const time_t cache_default_max_unused_age_s = 604800; /* 1 week */
-+static const long cache_default_max_unused_age_s = 604800; /* 1 week */
-
- /* Location of the cache of files downloaded from debuginfods.
- The default parent directory is $HOME, or '/' if $HOME doesn't exist. */
diff --git a/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-fix-compilation-on-platforms-without-erro.patch b/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-fix-compilation-on-platforms-without-erro.patch
deleted file mode 100644
index e80d96aaca..0000000000
--- a/poky/meta/recipes-devtools/elfutils/files/0001-debuginfod-fix-compilation-on-platforms-without-erro.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-From 99617d7ab5b01c322b0f27d4aa0dd91c61793a5e Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?=C3=89rico=20Nogueira?= <erico.erc@gmail.com>
-Date: Wed, 10 Nov 2021 21:17:48 -0300
-Subject: [PATCH] debuginfod: fix compilation on platforms without <error.h>
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-"system.h" only declares the error() function, so it needs to be in an
-'extern "C"' block, otherwise linking fails.
-
-Since we are here, use quotes for "system.h" header, since it's a local
-header, not a system one.
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=elfutils.git;a=commit;h=90b9e91b961b794a4e58ab76d9191a5e7343584e]
-Signed-off-by: Érico Nogueira <erico.erc@gmail.com>
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- debuginfod/ChangeLog | 4 ++++
- debuginfod/debuginfod.cxx | 2 +-
- 2 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/debuginfod/ChangeLog b/debuginfod/ChangeLog
-index f06d3ee..822bd63 100644
---- a/debuginfod/ChangeLog
-+++ b/debuginfod/ChangeLog
-@@ -1,3 +1,7 @@
-+2021-11-10 Érico N. Rolim <erico.erc@gmail.com>
-+
-+ * debuginfod.cxx: include "system.h" under 'extern "C"' block.
-+
- 2021-11-05 Frank Ch. Eigler <fche@redhat.com>
-
- PR28430
-diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx
-index 521cb52..764e7b9 100644
---- a/debuginfod/debuginfod.cxx
-+++ b/debuginfod/debuginfod.cxx
-@@ -33,11 +33,11 @@
-
- extern "C" {
- #include "printversion.h"
-+#include "system.h"
- }
-
- #include "debuginfod.h"
- #include <dwarf.h>
--#include <system.h>
-
- #include <argp.h>
- #ifdef __GNUC__
---
-2.20.1
-
diff --git a/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch b/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
index cbc9fce790..1c7cde6d7d 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0003-musl-utils.patch
@@ -1,4 +1,4 @@
-From 8b48c580bae0b0ffc773b0b829c50d33a907853c Mon Sep 17 00:00:00 2001
+From 81da32c3404b58cbad7b3af00854e0cf2dc3dbf1 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Fri, 23 Aug 2019 10:19:48 +0800
Subject: [PATCH] musl-utils
@@ -39,7 +39,7 @@ index e117166..8326f6c 100644
/* State of -D/-U flags. */
extern bool arlib_deterministic_output;
diff --git a/src/elfcompress.c b/src/elfcompress.c
-index 2c6d91b..608646e 100644
+index 92f2fac..0b037a5 100644
--- a/src/elfcompress.c
+++ b/src/elfcompress.c
@@ -37,6 +37,13 @@
@@ -57,7 +57,7 @@ index 2c6d91b..608646e 100644
ARGP_PROGRAM_VERSION_HOOK_DEF = print_version;
diff --git a/src/strip.c b/src/strip.c
-index d5b753d..d6e1b64 100644
+index 30a1f9d..e89a7f0 100644
--- a/src/strip.c
+++ b/src/strip.c
@@ -46,6 +46,13 @@
@@ -75,7 +75,7 @@ index d5b753d..d6e1b64 100644
/* Name and version of program. */
diff --git a/src/unstrip.c b/src/unstrip.c
-index aacc9aa..5e71290 100644
+index 3472637..40c73f3 100644
--- a/src/unstrip.c
+++ b/src/unstrip.c
@@ -52,6 +52,15 @@
diff --git a/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
index 9952070939..a7715587db 100644
--- a/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
+++ b/poky/meta/recipes-devtools/elfutils/files/0015-config-eu.am-do-not-use-Werror.patch
@@ -1,4 +1,4 @@
-From 5e39da062929a60a07ddfc8b6d435ea65ea3e31f Mon Sep 17 00:00:00 2001
+From ff6ab57ba5dd37947ef1ffe5de7af5dbebfeb4e9 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 22 Jun 2020 21:35:16 +0000
Subject: [PATCH] config/eu.am: do not use -Werror
diff --git a/poky/meta/recipes-devtools/gcc/gcc-11.3.inc b/poky/meta/recipes-devtools/gcc/gcc-12.1.inc
index b1ef9d25af..c8c4ae93e1 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-11.3.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-12.1.inc
@@ -2,11 +2,11 @@ require gcc-common.inc
# Third digit in PV should be incremented after a minor release
-PV = "11.3.0"
+PV = "12.1.0"
# BINV should be incremented to a revision after a minor gcc release
-BINV = "11.3.0"
+BINV = "12.1.0"
FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc:${FILE_DIRNAME}/gcc/backport:"
@@ -22,57 +22,52 @@ LIC_FILES_CHKSUM = "\
file://COPYING.LIB;md5=2d5025d4aa3495befef8f17206a5b0a1 \
file://COPYING.RUNTIME;md5=fe60d87048567d4fe8c8a0ed2448bcc8 \
"
-
-#RELEASE ?= "5b2ac9b40c325e9209c0bd55955db84aad4a0cc5"
-#BASEURI ?= "https://github.com/gcc-mirror/gcc/archive/${RELEASE}.zip;downloadfilename=gcc-${PV}-${RELEASE}.zip"
-
-BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz \
- "
-SRC_URI = "\
- ${BASEURI} \
+# from git
+#RELEASE ?= "7092b7aea122a91824d048aeb23834cf1d19b1a1"
+#BASEURI ?= "https://repo.or.cz/official-gcc.git/snapshot/${RELEASE}.tar.gz;downloadfilename=gcc-${PV}-${RELEASE}.tar.gz"
+#SOURCEDIR ?= "official-gcc-${@'${RELEASE}'[0:7]}"
+
+# from snapshot
+#RELEASE ?= "12.1.0-RC-20220429"
+#SOURCEDIR ?= "gcc-${RELEASE}"
+#BASEURI ?= "https://gcc.gnu.org/pub/gcc/snapshots/${RELEASE}/gcc-${RELEASE}.tar.xz"
+
+# official release
+RELEASE ?= "${PV}"
+BASEURI ?= "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.xz"
+SOURCEDIR ?= "gcc-${PV}"
+
+SRC_URI = "${BASEURI} \
file://0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch \
file://0002-gcc-poison-system-directories.patch \
file://0003-64-bit-multilib-hack.patch \
- file://0004-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \
- file://0005-cpp-honor-sysroot.patch \
- file://0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \
- file://0007-gcc-Fix-argument-list-too-long-error.patch \
+ file://0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch \
+ file://0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch \
+ file://0006-cpp-honor-sysroot.patch \
+ file://0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch \
file://0008-libtool.patch \
file://0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch \
file://0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch \
file://0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch \
- file://0012-Ensure-target-gcc-headers-can-be-included.patch \
- file://0013-Don-t-search-host-directory-during-relink-if-inst_pr.patch \
- file://0014-libcc1-fix-libcc1-s-install-path-and-rpath.patch \
- file://0015-Makefile.in-Ensure-build-CPP-CPPFLAGS-is-used-for-bu.patch \
- file://0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch \
- file://0017-handle-sysroot-support-for-nativesdk-gcc.patch \
- file://0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch \
- file://0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch \
- file://0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \
- file://0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch \
- file://0022-sync-gcc-stddef.h-with-musl.patch \
- file://0023-Re-introduce-spe-commandline-options.patch \
- file://0024-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
- file://0025-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \
- file://0026-mingw32-Enable-operation_not_supported.patch \
- file://0027-libatomic-Do-not-enforce-march-on-aarch64.patch \
- file://0028-debug-101473-apply-debug-prefix-maps-before-checksum.patch \
- file://0029-Fix-install-path-of-linux64.h.patch \
- \
- file://0001-CVE-2021-42574.patch \
- file://0002-CVE-2021-42574.patch \
- file://0003-CVE-2021-42574.patch \
- file://0004-CVE-2021-42574.patch \
- file://0001-CVE-2021-46195.patch \
+ file://0012-export-CPP.patch \
+ file://0013-Ensure-target-gcc-headers-can-be-included.patch \
+ file://0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch \
+ file://0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch \
+ file://0016-handle-sysroot-support-for-nativesdk-gcc.patch \
+ file://0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch \
+ file://0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch \
+ file://0019-Re-introduce-spe-commandline-options.patch \
+ file://0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch \
+ file://0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \
+ file://0022-mingw32-Enable-operation_not_supported.patch \
+ file://0023-libatomic-Do-not-enforce-march-on-aarch64.patch \
+ file://0024-Fix-install-path-of-linux64.h.patch \
+ file://0025-Move-sched.h-include-ahead-of-user-headers.patch \
"
-SRC_URI[sha256sum] = "b47cf2818691f5b1e21df2bb38c795fac2cfbd640ede2d0a5e1c89e338a3ac39"
-
-S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}"
+SRC_URI[sha256sum] = "62fd634889f31c02b64af2c468f064b47ad1ca78411c45abe6ac4b5f8dd19c7b"
-# For dev release snapshotting
-#S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${RELEASE}"
-#B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
+S = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/${SOURCEDIR}"
+B = "${WORKDIR}/gcc-${PV}/build.${HOST_SYS}.${TARGET_SYS}"
# Language Overrides
FORTRAN = ""
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_12.1.bb
index bf53c5cd78..bf53c5cd78 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross-canadian_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-cross_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-cross_12.1.bb
index b43cca0c52..b43cca0c52 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-cross_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-cross_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_12.1.bb
index 40a6c4feff..40a6c4feff 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-crosssdk_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-crosssdk_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
index e9f2cf16e8..c39a0caf8a 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc
@@ -2,7 +2,7 @@ require gcc-configure-common.inc
SUMMARY = "Runtime libraries from GCC"
-# Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPL-3.0-only"
+# Over-ride the LICENSE set by gcc-${PV}.inc to remove "& GPLv3"
# All gcc-runtime packages are now covered by the runtime exception.
LICENSE = "GPL-3.0-with-GCC-exception"
diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-runtime_12.1.bb
index dd430b57eb..dd430b57eb 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-runtime_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-runtime_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_12.1.bb
index 8bda2ccad6..8bda2ccad6 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-sanitizers_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-sanitizers_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc-source_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc-source_12.1.bb
index b890fa33ea..b890fa33ea 100644
--- a/poky/meta/recipes-devtools/gcc/gcc-source_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc-source_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-42574.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-42574.patch
deleted file mode 100644
index 4d680ccc8f..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-42574.patch
+++ /dev/null
@@ -1,2282 +0,0 @@
-From bd5e882cf6e0def3dd1bc106075d59a303fe0d1e Mon Sep 17 00:00:00 2001
-From: David Malcolm <dmalcolm@redhat.com>
-Date: Mon, 18 Oct 2021 18:55:31 -0400
-Subject: [PATCH] diagnostics: escape non-ASCII source bytes for certain
- diagnostics
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-This patch adds support to GCC's diagnostic subsystem for escaping certain
-bytes and Unicode characters when quoting source code.
-
-Specifically, this patch adds a new flag rich_location::m_escape_on_output
-which is a hint from a diagnostic that non-ASCII bytes in the pertinent
-lines of the user's source code should be escaped when printed.
-
-The patch sets this for the following diagnostics:
-- when complaining about stray bytes in the program (when these
-are non-printable)
-- when complaining about "null character(s) ignored");
-- for -Wnormalized= (and generate source ranges for such warnings)
-
-The escaping is controlled by a new option:
- -fdiagnostics-escape-format=[unicode|bytes]
-
-For example, consider a diagnostic involing a source line containing the
-string "before" followed by the Unicode character U+03C0 ("GREEK SMALL
-LETTER PI", with UTF-8 encoding 0xCF 0x80) followed by the byte 0xBF
-(a stray UTF-8 trailing byte), followed by the string "after", where the
-diagnostic highlights the U+03C0 character.
-
-By default, this line will be printed verbatim to the user when
-reporting a diagnostic at it, as:
-
- beforeÏXafter
- ^
-
-(using X for the stray byte to avoid putting invalid UTF-8 in this
-commit message)
-
-If the diagnostic sets the "escape" flag, it will be printed as:
-
- before<U+03C0><BF>after
- ^~~~~~~~
-
-with -fdiagnostics-escape-format=unicode (the default), or as:
-
- before<CF><80><BF>after
- ^~~~~~~~
-
-if the user supplies -fdiagnostics-escape-format=bytes.
-
-This only affects how the source is printed; it does not affect
-how column numbers that are printed (as per -fdiagnostics-column-unit=
-and -fdiagnostics-column-origin=).
-
-gcc/c-family/ChangeLog:
- * c-lex.c (c_lex_with_flags): When complaining about non-printable
- CPP_OTHER tokens, set the "escape on output" flag.
-
-gcc/ChangeLog:
- * common.opt (fdiagnostics-escape-format=): New.
- (diagnostics_escape_format): New enum.
- (DIAGNOSTICS_ESCAPE_FORMAT_UNICODE): New enum value.
- (DIAGNOSTICS_ESCAPE_FORMAT_BYTES): Likewise.
- * diagnostic-format-json.cc (json_end_diagnostic): Add
- "escape-source" attribute.
- * diagnostic-show-locus.c
- (exploc_with_display_col::exploc_with_display_col): Replace
- "tabstop" param with a cpp_char_column_policy and add an "aspect"
- param. Use these to compute m_display_col accordingly.
- (struct char_display_policy): New struct.
- (layout::m_policy): New field.
- (layout::m_escape_on_output): New field.
- (def_policy): New function.
- (make_range): Update for changes to exploc_with_display_col ctor.
- (default_print_decoded_ch): New.
- (width_per_escaped_byte): New.
- (escape_as_bytes_width): New.
- (escape_as_bytes_print): New.
- (escape_as_unicode_width): New.
- (escape_as_unicode_print): New.
- (make_policy): New.
- (layout::layout): Initialize new fields. Update m_exploc ctor
- call for above change to ctor.
- (layout::maybe_add_location_range): Update for changes to
- exploc_with_display_col ctor.
- (layout::calculate_x_offset_display): Update for change to
- cpp_display_width.
- (layout::print_source_line): Pass policy
- to cpp_display_width_computation. Capture cpp_decoded_char when
- calling process_next_codepoint. Move printing of source code to
- m_policy.m_print_cb.
- (line_label::line_label): Pass in policy rather than context.
- (layout::print_any_labels): Update for change to line_label ctor.
- (get_affected_range): Pass in policy rather than context, updating
- calls to location_compute_display_column accordingly.
- (get_printed_columns): Likewise, also for cpp_display_width.
- (correction::correction): Pass in policy rather than tabstop.
- (correction::compute_display_cols): Pass m_policy rather than
- m_tabstop to cpp_display_width.
- (correction::m_tabstop): Replace with...
- (correction::m_policy): ...this.
- (line_corrections::line_corrections): Pass in policy rather than
- context.
- (line_corrections::m_context): Replace with...
- (line_corrections::m_policy): ...this.
- (line_corrections::add_hint): Update to use m_policy rather than
- m_context.
- (line_corrections::add_hint): Likewise.
- (layout::print_trailing_fixits): Likewise.
- (selftest::test_display_widths): New.
- (selftest::test_layout_x_offset_display_utf8): Update to use
- policy rather than tabstop.
- (selftest::test_one_liner_labels_utf8): Add test of escaping
- source lines.
- (selftest::test_diagnostic_show_locus_one_liner_utf8): Update to
- use policy rather than tabstop.
- (selftest::test_overlapped_fixit_printing): Likewise.
- (selftest::test_overlapped_fixit_printing_utf8): Likewise.
- (selftest::test_overlapped_fixit_printing_2): Likewise.
- (selftest::test_tab_expansion): Likewise.
- (selftest::test_escaping_bytes_1): New.
- (selftest::test_escaping_bytes_2): New.
- (selftest::diagnostic_show_locus_c_tests): Call the new tests.
- * diagnostic.c (diagnostic_initialize): Initialize
- context->escape_format.
- (convert_column_unit): Update to use default character width policy.
- (selftest::test_diagnostic_get_location_text): Likewise.
- * diagnostic.h (enum diagnostics_escape_format): New enum.
- (diagnostic_context::escape_format): New field.
- * doc/invoke.texi (-fdiagnostics-escape-format=): New option.
- (-fdiagnostics-format=): Add "escape-source" attribute to examples
- of JSON output, and document it.
- * input.c (location_compute_display_column): Pass in "policy"
- rather than "tabstop", passing to
- cpp_byte_column_to_display_column.
- (selftest::test_cpp_utf8): Update to use cpp_char_column_policy.
- * input.h (class cpp_char_column_policy): New forward decl.
- (location_compute_display_column): Pass in "policy" rather than
- "tabstop".
- * opts.c (common_handle_option): Handle
- OPT_fdiagnostics_escape_format_.
- * selftest.c (temp_source_file::temp_source_file): New ctor
- overload taking a size_t.
- * selftest.h (temp_source_file::temp_source_file): Likewise.
-
-gcc/testsuite/ChangeLog:
- * c-c++-common/diagnostic-format-json-1.c: Add regexp to consume
- "escape-source" attribute.
- * c-c++-common/diagnostic-format-json-2.c: Likewise.
- * c-c++-common/diagnostic-format-json-3.c: Likewise.
- * c-c++-common/diagnostic-format-json-4.c: Likewise, twice.
- * c-c++-common/diagnostic-format-json-5.c: Likewise.
- * gcc.dg/cpp/warn-normalized-4-bytes.c: New test.
- * gcc.dg/cpp/warn-normalized-4-unicode.c: New test.
- * gcc.dg/encoding-issues-bytes.c: New test.
- * gcc.dg/encoding-issues-unicode.c: New test.
- * gfortran.dg/diagnostic-format-json-1.F90: Add regexp to consume
- "escape-source" attribute.
- * gfortran.dg/diagnostic-format-json-2.F90: Likewise.
- * gfortran.dg/diagnostic-format-json-3.F90: Likewise.
-
-libcpp/ChangeLog:
- * charset.c (convert_escape): Use encoding_rich_location when
- complaining about nonprintable unknown escape sequences.
- (cpp_display_width_computation::::cpp_display_width_computation):
- Pass in policy rather than tabstop.
- (cpp_display_width_computation::process_next_codepoint): Add "out"
- param and populate *out if non-NULL.
- (cpp_display_width_computation::advance_display_cols): Pass NULL
- to process_next_codepoint.
- (cpp_byte_column_to_display_column): Pass in policy rather than
- tabstop. Pass NULL to process_next_codepoint.
- (cpp_display_column_to_byte_column): Pass in policy rather than
- tabstop.
- * errors.c (cpp_diagnostic_get_current_location): New function,
- splitting out the logic from...
- (cpp_diagnostic): ...here.
- (cpp_warning_at): New function.
- (cpp_pedwarning_at): New function.
- * include/cpplib.h (cpp_warning_at): New decl for rich_location.
- (cpp_pedwarning_at): Likewise.
- (struct cpp_decoded_char): New.
- (struct cpp_char_column_policy): New.
- (cpp_display_width_computation::cpp_display_width_computation):
- Replace "tabstop" param with "policy".
- (cpp_display_width_computation::process_next_codepoint): Add "out"
- param.
- (cpp_display_width_computation::m_tabstop): Replace with...
- (cpp_display_width_computation::m_policy): ...this.
- (cpp_byte_column_to_display_column): Replace "tabstop" param with
- "policy".
- (cpp_display_width): Likewise.
- (cpp_display_column_to_byte_column): Likewise.
- * include/line-map.h (rich_location::escape_on_output_p): New.
- (rich_location::set_escape_on_output): New.
- (rich_location::m_escape_on_output): New.
- * internal.h (cpp_diagnostic_get_current_location): New decl.
- (class encoding_rich_location): New.
- * lex.c (skip_whitespace): Use encoding_rich_location when
- complaining about null characters.
- (warn_about_normalization): Generate a source range when
- complaining about improperly normalized tokens, rather than just a
- point, and use encoding_rich_location so that the source code
- is escaped on printing.
- * line-map.c (rich_location::rich_location): Initialize
- m_escape_on_output.
-
-Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-
-CVE: CVE-2021-42574
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=bd5e882cf6e0def3dd1bc106075d59a303fe0d1e]
-Signed-off-by: Pgowda <pgowda.cve@gmail.com>
-
----
- gcc/c-family/c-lex.c | 6 +-
- gcc/common.opt | 13 +
- gcc/diagnostic-format-json.cc | 3 +
- gcc/diagnostic-show-locus.c | 580 +++++++++++++++---
- gcc/diagnostic.c | 10 +-
- gcc/diagnostic.h | 18 +
- gcc/doc/invoke.texi | 43 +-
- gcc/input.c | 62 +-
- gcc/input.h | 7 +-
- gcc/opts.c | 4 +
- gcc/selftest.c | 15 +
- gcc/selftest.h | 2 +
- .../c-c++-common/diagnostic-format-json-1.c | 1 +
- .../c-c++-common/diagnostic-format-json-2.c | 1 +
- .../c-c++-common/diagnostic-format-json-3.c | 1 +
- .../c-c++-common/diagnostic-format-json-4.c | 2 +
- .../c-c++-common/diagnostic-format-json-5.c | 1 +
- .../gcc.dg/cpp/warn-normalized-4-bytes.c | 21 +
- .../gcc.dg/cpp/warn-normalized-4-unicode.c | 19 +
- gcc/testsuite/gcc.dg/encoding-issues-bytes.c | Bin 0 -> 595 bytes
- .../gcc.dg/encoding-issues-unicode.c | Bin 0 -> 613 bytes
- .../gfortran.dg/diagnostic-format-json-1.F90 | 1 +
- .../gfortran.dg/diagnostic-format-json-2.F90 | 1 +
- .../gfortran.dg/diagnostic-format-json-3.F90 | 1 +
- libcpp/charset.c | 63 +-
- libcpp/errors.c | 82 ++-
- libcpp/include/cpplib.h | 76 ++-
- libcpp/include/line-map.h | 13 +
- libcpp/internal.h | 23 +
- libcpp/lex.c | 38 +-
- libcpp/line-map.c | 3 +-
- 31 files changed, 942 insertions(+), 168 deletions(-)
- create mode 100644 gcc/testsuite/gcc.dg/cpp/warn-normalized-4-bytes.c
- create mode 100644 gcc/testsuite/gcc.dg/cpp/warn-normalized-4-unicode.c
- create mode 100644 gcc/testsuite/gcc.dg/encoding-issues-bytes.c
- create mode 100644 gcc/testsuite/gcc.dg/encoding-issues-unicode.c
-
-diff --git a/gcc/c-family/c-lex.c b/gcc/c-family/c-lex.c
---- a/gcc/c-family/c-lex.c 2021-07-27 23:55:06.980283060 -0700
-+++ b/gcc/c-family/c-lex.c 2021-12-14 01:16:01.541943272 -0800
-@@ -603,7 +603,11 @@ c_lex_with_flags (tree *value, location_
- else if (ISGRAPH (c))
- error_at (*loc, "stray %qc in program", (int) c);
- else
-- error_at (*loc, "stray %<\\%o%> in program", (int) c);
-+ {
-+ rich_location rich_loc (line_table, *loc);
-+ rich_loc.set_escape_on_output (true);
-+ error_at (&rich_loc, "stray %<\\%o%> in program", (int) c);
-+ }
- }
- goto retry;
-
-diff --git a/gcc/common.opt b/gcc/common.opt
---- a/gcc/common.opt 2021-12-13 22:08:44.939137107 -0800
-+++ b/gcc/common.opt 2021-12-14 01:16:01.541943272 -0800
-@@ -1348,6 +1348,10 @@ fdiagnostics-format=
- Common Joined RejectNegative Enum(diagnostics_output_format)
- -fdiagnostics-format=[text|json] Select output format.
-
-+fdiagnostics-escape-format=
-+Common Joined RejectNegative Enum(diagnostics_escape_format)
-+-fdiagnostics-escape-format=[unicode|bytes] Select how to escape non-printable-ASCII bytes in the source for diagnostics that suggest it.
-+
- ; Required for these enum values.
- SourceInclude
- diagnostic.h
-@@ -1362,6 +1366,15 @@ EnumValue
- Enum(diagnostics_column_unit) String(byte) Value(DIAGNOSTICS_COLUMN_UNIT_BYTE)
-
- Enum
-+Name(diagnostics_escape_format) Type(int)
-+
-+EnumValue
-+Enum(diagnostics_escape_format) String(unicode) Value(DIAGNOSTICS_ESCAPE_FORMAT_UNICODE)
-+
-+EnumValue
-+Enum(diagnostics_escape_format) String(bytes) Value(DIAGNOSTICS_ESCAPE_FORMAT_BYTES)
-+
-+Enum
- Name(diagnostics_output_format) Type(int)
-
- EnumValue
-diff --git a/gcc/diagnostic.c b/gcc/diagnostic.c
---- a/gcc/diagnostic.c 2021-07-27 23:55:07.232286576 -0700
-+++ b/gcc/diagnostic.c 2021-12-14 01:16:01.545943202 -0800
-@@ -230,6 +230,7 @@ diagnostic_initialize (diagnostic_contex
- context->column_unit = DIAGNOSTICS_COLUMN_UNIT_DISPLAY;
- context->column_origin = 1;
- context->tabstop = 8;
-+ context->escape_format = DIAGNOSTICS_ESCAPE_FORMAT_UNICODE;
- context->edit_context_ptr = NULL;
- context->diagnostic_group_nesting_depth = 0;
- context->diagnostic_group_emission_count = 0;
-@@ -382,7 +383,10 @@ convert_column_unit (enum diagnostics_co
- gcc_unreachable ();
-
- case DIAGNOSTICS_COLUMN_UNIT_DISPLAY:
-- return location_compute_display_column (s, tabstop);
-+ {
-+ cpp_char_column_policy policy (tabstop, cpp_wcwidth);
-+ return location_compute_display_column (s, policy);
-+ }
-
- case DIAGNOSTICS_COLUMN_UNIT_BYTE:
- return s.column;
-@@ -2275,8 +2279,8 @@ test_diagnostic_get_location_text ()
- const char *const content = "smile \xf0\x9f\x98\x82\n";
- const int line_bytes = strlen (content) - 1;
- const int def_tabstop = 8;
-- const int display_width = cpp_display_width (content, line_bytes,
-- def_tabstop);
-+ const cpp_char_column_policy policy (def_tabstop, cpp_wcwidth);
-+ const int display_width = cpp_display_width (content, line_bytes, policy);
- ASSERT_EQ (line_bytes - 2, display_width);
- temp_source_file tmp (SELFTEST_LOCATION, ".c", content);
- const char *const fname = tmp.get_filename ();
-diff --git a/gcc/diagnostic-format-json.cc b/gcc/diagnostic-format-json.cc
---- a/gcc/diagnostic-format-json.cc 2021-07-27 23:55:07.232286576 -0700
-+++ b/gcc/diagnostic-format-json.cc 2021-12-14 01:16:01.541943272 -0800
-@@ -264,6 +264,9 @@ json_end_diagnostic (diagnostic_context
- json::value *path_value = context->make_json_for_path (context, path);
- diag_obj->set ("path", path_value);
- }
-+
-+ diag_obj->set ("escape-source",
-+ new json::literal (richloc->escape_on_output_p ()));
- }
-
- /* No-op implementation of "begin_group_cb" for JSON output. */
-diff --git a/gcc/diagnostic.h b/gcc/diagnostic.h
---- a/gcc/diagnostic.h 2021-07-27 23:55:07.236286632 -0700
-+++ b/gcc/diagnostic.h 2021-12-14 01:16:01.545943202 -0800
-@@ -38,6 +38,20 @@ enum diagnostics_column_unit
- DIAGNOSTICS_COLUMN_UNIT_BYTE
- };
-
-+/* An enum for controlling how to print non-ASCII characters/bytes when
-+ a diagnostic suggests escaping the source code on output. */
-+
-+enum diagnostics_escape_format
-+{
-+ /* Escape non-ASCII Unicode characters in the form <U+XXXX> and
-+ non-UTF-8 bytes in the form <XX>. */
-+ DIAGNOSTICS_ESCAPE_FORMAT_UNICODE,
-+
-+ /* Escape non-ASCII bytes in the form <XX> (thus showing the underlying
-+ encoding of non-ASCII Unicode characters). */
-+ DIAGNOSTICS_ESCAPE_FORMAT_BYTES
-+};
-+
- /* Enum for overriding the standard output format. */
-
- enum diagnostics_output_format
-@@ -320,6 +334,10 @@ struct diagnostic_context
- /* The size of the tabstop for tab expansion. */
- int tabstop;
-
-+ /* How should non-ASCII/non-printable bytes be escaped when
-+ a diagnostic suggests escaping the source code on output. */
-+ enum diagnostics_escape_format escape_format;
-+
- /* If non-NULL, an edit_context to which fix-it hints should be
- applied, for generating patches. */
- edit_context *edit_context_ptr;
-diff --git a/gcc/diagnostic-show-locus.c b/gcc/diagnostic-show-locus.c
---- a/gcc/diagnostic-show-locus.c 2021-07-27 23:55:07.232286576 -0700
-+++ b/gcc/diagnostic-show-locus.c 2021-12-14 01:16:01.545943202 -0800
-@@ -175,10 +175,26 @@ enum column_unit {
- class exploc_with_display_col : public expanded_location
- {
- public:
-- exploc_with_display_col (const expanded_location &exploc, int tabstop)
-- : expanded_location (exploc),
-- m_display_col (location_compute_display_column (exploc, tabstop))
-- {}
-+ exploc_with_display_col (const expanded_location &exploc,
-+ const cpp_char_column_policy &policy,
-+ enum location_aspect aspect)
-+ : expanded_location (exploc),
-+ m_display_col (location_compute_display_column (exploc, policy))
-+ {
-+ if (exploc.column > 0)
-+ {
-+ /* m_display_col is now the final column of the byte.
-+ If escaping has happened, we may want the first column instead. */
-+ if (aspect != LOCATION_ASPECT_FINISH)
-+ {
-+ expanded_location prev_exploc (exploc);
-+ prev_exploc.column--;
-+ int prev_display_col
-+ = (location_compute_display_column (prev_exploc, policy));
-+ m_display_col = prev_display_col + 1;
-+ }
-+ }
-+ }
-
- int m_display_col;
- };
-@@ -313,6 +329,31 @@ test_line_span ()
-
- #endif /* #if CHECKING_P */
-
-+/* A bundle of information containing how to print unicode
-+ characters and bytes when quoting source code.
-+
-+ Provides a unified place to support escaping some subset
-+ of characters to some format.
-+
-+ Extends char_column_policy; printing is split out to avoid
-+ libcpp having to know about pretty_printer. */
-+
-+struct char_display_policy : public cpp_char_column_policy
-+{
-+ public:
-+ char_display_policy (int tabstop,
-+ int (*width_cb) (cppchar_t c),
-+ void (*print_cb) (pretty_printer *pp,
-+ const cpp_decoded_char &cp))
-+ : cpp_char_column_policy (tabstop, width_cb),
-+ m_print_cb (print_cb)
-+ {
-+ }
-+
-+ void (*m_print_cb) (pretty_printer *pp,
-+ const cpp_decoded_char &cp);
-+};
-+
- /* A class to control the overall layout when printing a diagnostic.
-
- The layout is determined within the constructor.
-@@ -345,6 +386,8 @@ class layout
-
- void print_line (linenum_type row);
-
-+ void on_bad_codepoint (const char *ptr, cppchar_t ch, size_t ch_sz);
-+
- private:
- bool will_show_line_p (linenum_type row) const;
- void print_leading_fixits (linenum_type row);
-@@ -386,6 +429,7 @@ class layout
- private:
- diagnostic_context *m_context;
- pretty_printer *m_pp;
-+ char_display_policy m_policy;
- location_t m_primary_loc;
- exploc_with_display_col m_exploc;
- colorizer m_colorizer;
-@@ -398,6 +442,7 @@ class layout
- auto_vec <line_span> m_line_spans;
- int m_linenum_width;
- int m_x_offset_display;
-+ bool m_escape_on_output;
- };
-
- /* Implementation of "class colorizer". */
-@@ -646,6 +691,11 @@ layout_range::intersects_line_p (linenum
- /* Default for when we don't care what the tab expansion is set to. */
- static const int def_tabstop = 8;
-
-+static cpp_char_column_policy def_policy ()
-+{
-+ return cpp_char_column_policy (8, cpp_wcwidth);
-+}
-+
- /* Create some expanded locations for testing layout_range. The filename
- member of the explocs is set to the empty string. This member will only be
- inspected by the calls to location_compute_display_column() made from the
-@@ -662,10 +712,13 @@ make_range (int start_line, int start_co
- = {"", start_line, start_col, NULL, false};
- const expanded_location finish_exploc
- = {"", end_line, end_col, NULL, false};
-- return layout_range (exploc_with_display_col (start_exploc, def_tabstop),
-- exploc_with_display_col (finish_exploc, def_tabstop),
-+ return layout_range (exploc_with_display_col (start_exploc, def_policy (),
-+ LOCATION_ASPECT_START),
-+ exploc_with_display_col (finish_exploc, def_policy (),
-+ LOCATION_ASPECT_FINISH),
- SHOW_RANGE_WITHOUT_CARET,
-- exploc_with_display_col (start_exploc, def_tabstop),
-+ exploc_with_display_col (start_exploc, def_policy (),
-+ LOCATION_ASPECT_CARET),
- 0, NULL);
- }
-
-@@ -959,6 +1012,164 @@ fixit_cmp (const void *p_a, const void *
- return hint_a->get_start_loc () - hint_b->get_start_loc ();
- }
-
-+/* Callbacks for use when not escaping the source. */
-+
-+/* The default callback for char_column_policy::m_width_cb is cpp_wcwidth. */
-+
-+/* Callback for char_display_policy::m_print_cb for printing source chars
-+ when not escaping the source. */
-+
-+static void
-+default_print_decoded_ch (pretty_printer *pp,
-+ const cpp_decoded_char &decoded_ch)
-+{
-+ for (const char *ptr = decoded_ch.m_start_byte;
-+ ptr != decoded_ch.m_next_byte; ptr++)
-+ {
-+ if (*ptr == '\0' || *ptr == '\r')
-+ {
-+ pp_space (pp);
-+ continue;
-+ }
-+
-+ pp_character (pp, *ptr);
-+ }
-+}
-+
-+/* Callbacks for use with DIAGNOSTICS_ESCAPE_FORMAT_BYTES. */
-+
-+static const int width_per_escaped_byte = 4;
-+
-+/* Callback for char_column_policy::m_width_cb for determining the
-+ display width when escaping with DIAGNOSTICS_ESCAPE_FORMAT_BYTES. */
-+
-+static int
-+escape_as_bytes_width (cppchar_t ch)
-+{
-+ if (ch < 0x80 && ISPRINT (ch))
-+ return cpp_wcwidth (ch);
-+ else
-+ {
-+ if (ch <= 0x7F) return 1 * width_per_escaped_byte;
-+ if (ch <= 0x7FF) return 2 * width_per_escaped_byte;
-+ if (ch <= 0xFFFF) return 3 * width_per_escaped_byte;
-+ return 4 * width_per_escaped_byte;
-+ }
-+}
-+
-+/* Callback for char_display_policy::m_print_cb for printing source chars
-+ when escaping with DIAGNOSTICS_ESCAPE_FORMAT_BYTES. */
-+
-+static void
-+escape_as_bytes_print (pretty_printer *pp,
-+ const cpp_decoded_char &decoded_ch)
-+{
-+ if (!decoded_ch.m_valid_ch)
-+ {
-+ for (const char *iter = decoded_ch.m_start_byte;
-+ iter != decoded_ch.m_next_byte; ++iter)
-+ {
-+ char buf[16];
-+ sprintf (buf, "<%02x>", (unsigned char)*iter);
-+ pp_string (pp, buf);
-+ }
-+ return;
-+ }
-+
-+ cppchar_t ch = decoded_ch.m_ch;
-+ if (ch < 0x80 && ISPRINT (ch))
-+ pp_character (pp, ch);
-+ else
-+ {
-+ for (const char *iter = decoded_ch.m_start_byte;
-+ iter < decoded_ch.m_next_byte; ++iter)
-+ {
-+ char buf[16];
-+ sprintf (buf, "<%02x>", (unsigned char)*iter);
-+ pp_string (pp, buf);
-+ }
-+ }
-+}
-+
-+/* Callbacks for use with DIAGNOSTICS_ESCAPE_FORMAT_UNICODE. */
-+
-+/* Callback for char_column_policy::m_width_cb for determining the
-+ display width when escaping with DIAGNOSTICS_ESCAPE_FORMAT_UNICODE. */
-+
-+static int
-+escape_as_unicode_width (cppchar_t ch)
-+{
-+ if (ch < 0x80 && ISPRINT (ch))
-+ return cpp_wcwidth (ch);
-+ else
-+ {
-+ // Width of "<U+%04x>"
-+ if (ch > 0xfffff)
-+ return 10;
-+ else if (ch > 0xffff)
-+ return 9;
-+ else
-+ return 8;
-+ }
-+}
-+
-+/* Callback for char_display_policy::m_print_cb for printing source chars
-+ when escaping with DIAGNOSTICS_ESCAPE_FORMAT_UNICODE. */
-+
-+static void
-+escape_as_unicode_print (pretty_printer *pp,
-+ const cpp_decoded_char &decoded_ch)
-+{
-+ if (!decoded_ch.m_valid_ch)
-+ {
-+ escape_as_bytes_print (pp, decoded_ch);
-+ return;
-+ }
-+
-+ cppchar_t ch = decoded_ch.m_ch;
-+ if (ch < 0x80 && ISPRINT (ch))
-+ pp_character (pp, ch);
-+ else
-+ {
-+ char buf[16];
-+ sprintf (buf, "<U+%04X>", ch);
-+ pp_string (pp, buf);
-+ }
-+}
-+
-+/* Populate a char_display_policy based on DC and RICHLOC. */
-+
-+static char_display_policy
-+make_policy (const diagnostic_context &dc,
-+ const rich_location &richloc)
-+{
-+ /* The default is to not escape non-ASCII bytes. */
-+ char_display_policy result
-+ (dc.tabstop, cpp_wcwidth, default_print_decoded_ch);
-+
-+ /* If the diagnostic suggests escaping non-ASCII bytes, then
-+ use policy from user-supplied options. */
-+ if (richloc.escape_on_output_p ())
-+ {
-+ result.m_undecoded_byte_width = width_per_escaped_byte;
-+ switch (dc.escape_format)
-+ {
-+ default:
-+ gcc_unreachable ();
-+ case DIAGNOSTICS_ESCAPE_FORMAT_UNICODE:
-+ result.m_width_cb = escape_as_unicode_width;
-+ result.m_print_cb = escape_as_unicode_print;
-+ break;
-+ case DIAGNOSTICS_ESCAPE_FORMAT_BYTES:
-+ result.m_width_cb = escape_as_bytes_width;
-+ result.m_print_cb = escape_as_bytes_print;
-+ break;
-+ }
-+ }
-+
-+ return result;
-+}
-+
- /* Implementation of class layout. */
-
- /* Constructor for class layout.
-@@ -975,8 +1186,10 @@ layout::layout (diagnostic_context * con
- diagnostic_t diagnostic_kind)
- : m_context (context),
- m_pp (context->printer),
-+ m_policy (make_policy (*context, *richloc)),
- m_primary_loc (richloc->get_range (0)->m_loc),
-- m_exploc (richloc->get_expanded_location (0), context->tabstop),
-+ m_exploc (richloc->get_expanded_location (0), m_policy,
-+ LOCATION_ASPECT_CARET),
- m_colorizer (context, diagnostic_kind),
- m_colorize_source_p (context->colorize_source_p),
- m_show_labels_p (context->show_labels_p),
-@@ -986,7 +1199,8 @@ layout::layout (diagnostic_context * con
- m_fixit_hints (richloc->get_num_fixit_hints ()),
- m_line_spans (1 + richloc->get_num_locations ()),
- m_linenum_width (0),
-- m_x_offset_display (0)
-+ m_x_offset_display (0),
-+ m_escape_on_output (richloc->escape_on_output_p ())
- {
- for (unsigned int idx = 0; idx < richloc->get_num_locations (); idx++)
- {
-@@ -1072,10 +1286,13 @@ layout::maybe_add_location_range (const
-
- /* Everything is now known to be in the correct source file,
- but it may require further sanitization. */
-- layout_range ri (exploc_with_display_col (start, m_context->tabstop),
-- exploc_with_display_col (finish, m_context->tabstop),
-+ layout_range ri (exploc_with_display_col (start, m_policy,
-+ LOCATION_ASPECT_START),
-+ exploc_with_display_col (finish, m_policy,
-+ LOCATION_ASPECT_FINISH),
- loc_range->m_range_display_kind,
-- exploc_with_display_col (caret, m_context->tabstop),
-+ exploc_with_display_col (caret, m_policy,
-+ LOCATION_ASPECT_CARET),
- original_idx, loc_range->m_label);
-
- /* If we have a range that finishes before it starts (perhaps
-@@ -1409,7 +1626,7 @@ layout::calculate_x_offset_display ()
- = get_line_bytes_without_trailing_whitespace (line.get_buffer (),
- line.length ());
- int eol_display_column
-- = cpp_display_width (line.get_buffer (), line_bytes, m_context->tabstop);
-+ = cpp_display_width (line.get_buffer (), line_bytes, m_policy);
- if (caret_display_column > eol_display_column
- || !caret_display_column)
- {
-@@ -1488,7 +1705,7 @@ layout::print_source_line (linenum_type
- /* This object helps to keep track of which display column we are at, which is
- necessary for computing the line bounds in display units, for doing
- tab expansion, and for implementing m_x_offset_display. */
-- cpp_display_width_computation dw (line, line_bytes, m_context->tabstop);
-+ cpp_display_width_computation dw (line, line_bytes, m_policy);
-
- /* Skip the first m_x_offset_display display columns. In case the leading
- portion that will be skipped ends with a character with wcwidth > 1, then
-@@ -1536,7 +1753,8 @@ layout::print_source_line (linenum_type
- tabs and replacing some control bytes with spaces as necessary. */
- const char *c = dw.next_byte ();
- const int start_disp_col = dw.display_cols_processed () + 1;
-- const int this_display_width = dw.process_next_codepoint ();
-+ cpp_decoded_char cp;
-+ const int this_display_width = dw.process_next_codepoint (&cp);
- if (*c == '\t')
- {
- /* The returned display width is the number of spaces into which the
-@@ -1545,15 +1763,6 @@ layout::print_source_line (linenum_type
- pp_space (m_pp);
- continue;
- }
-- if (*c == '\0' || *c == '\r')
-- {
-- /* cpp_wcwidth() promises to return 1 for all control bytes, and we
-- want to output these as a single space too, so this case is
-- actually the same as the '\t' case. */
-- gcc_assert (this_display_width == 1);
-- pp_space (m_pp);
-- continue;
-- }
-
- /* We have a (possibly multibyte) character to output; update the line
- bounds if it is not whitespace. */
-@@ -1565,7 +1774,8 @@ layout::print_source_line (linenum_type
- }
-
- /* Output the character. */
-- while (c != dw.next_byte ()) pp_character (m_pp, *c++);
-+ m_policy.m_print_cb (m_pp, cp);
-+ c = dw.next_byte ();
- }
- print_newline ();
- return lbounds;
-@@ -1664,14 +1874,14 @@ layout::print_annotation_line (linenum_t
- class line_label
- {
- public:
-- line_label (diagnostic_context *context, int state_idx, int column,
-+ line_label (const cpp_char_column_policy &policy,
-+ int state_idx, int column,
- label_text text)
- : m_state_idx (state_idx), m_column (column),
- m_text (text), m_label_line (0), m_has_vbar (true)
- {
- const int bytes = strlen (text.m_buffer);
-- m_display_width
-- = cpp_display_width (text.m_buffer, bytes, context->tabstop);
-+ m_display_width = cpp_display_width (text.m_buffer, bytes, policy);
- }
-
- /* Sorting is primarily by column, then by state index. */
-@@ -1731,7 +1941,7 @@ layout::print_any_labels (linenum_type r
- if (text.m_buffer == NULL)
- continue;
-
-- labels.safe_push (line_label (m_context, i, disp_col, text));
-+ labels.safe_push (line_label (m_policy, i, disp_col, text));
- }
- }
-
-@@ -2011,7 +2221,7 @@ public:
-
- /* Get the range of bytes or display columns that HINT would affect. */
- static column_range
--get_affected_range (diagnostic_context *context,
-+get_affected_range (const cpp_char_column_policy &policy,
- const fixit_hint *hint, enum column_unit col_unit)
- {
- expanded_location exploc_start = expand_location (hint->get_start_loc ());
-@@ -2022,13 +2232,11 @@ get_affected_range (diagnostic_context *
- int finish_column;
- if (col_unit == CU_DISPLAY_COLS)
- {
-- start_column
-- = location_compute_display_column (exploc_start, context->tabstop);
-+ start_column = location_compute_display_column (exploc_start, policy);
- if (hint->insertion_p ())
- finish_column = start_column - 1;
- else
-- finish_column
-- = location_compute_display_column (exploc_finish, context->tabstop);
-+ finish_column = location_compute_display_column (exploc_finish, policy);
- }
- else
- {
-@@ -2041,12 +2249,13 @@ get_affected_range (diagnostic_context *
- /* Get the range of display columns that would be printed for HINT. */
-
- static column_range
--get_printed_columns (diagnostic_context *context, const fixit_hint *hint)
-+get_printed_columns (const cpp_char_column_policy &policy,
-+ const fixit_hint *hint)
- {
- expanded_location exploc = expand_location (hint->get_start_loc ());
-- int start_column = location_compute_display_column (exploc, context->tabstop);
-+ int start_column = location_compute_display_column (exploc, policy);
- int hint_width = cpp_display_width (hint->get_string (), hint->get_length (),
-- context->tabstop);
-+ policy);
- int final_hint_column = start_column + hint_width - 1;
- if (hint->insertion_p ())
- {
-@@ -2056,8 +2265,7 @@ get_printed_columns (diagnostic_context
- {
- exploc = expand_location (hint->get_next_loc ());
- --exploc.column;
-- int finish_column
-- = location_compute_display_column (exploc, context->tabstop);
-+ int finish_column = location_compute_display_column (exploc, policy);
- return column_range (start_column,
- MAX (finish_column, final_hint_column));
- }
-@@ -2075,13 +2283,13 @@ public:
- column_range affected_columns,
- column_range printed_columns,
- const char *new_text, size_t new_text_len,
-- int tabstop)
-+ const cpp_char_column_policy &policy)
- : m_affected_bytes (affected_bytes),
- m_affected_columns (affected_columns),
- m_printed_columns (printed_columns),
- m_text (xstrdup (new_text)),
- m_byte_length (new_text_len),
-- m_tabstop (tabstop),
-+ m_policy (policy),
- m_alloc_sz (new_text_len + 1)
- {
- compute_display_cols ();
-@@ -2099,7 +2307,7 @@ public:
-
- void compute_display_cols ()
- {
-- m_display_cols = cpp_display_width (m_text, m_byte_length, m_tabstop);
-+ m_display_cols = cpp_display_width (m_text, m_byte_length, m_policy);
- }
-
- void overwrite (int dst_offset, const char_span &src_span)
-@@ -2127,7 +2335,7 @@ public:
- char *m_text;
- size_t m_byte_length; /* Not including null-terminator. */
- int m_display_cols;
-- int m_tabstop;
-+ const cpp_char_column_policy &m_policy;
- size_t m_alloc_sz;
- };
-
-@@ -2163,15 +2371,16 @@ correction::ensure_terminated ()
- class line_corrections
- {
- public:
-- line_corrections (diagnostic_context *context, const char *filename,
-+ line_corrections (const char_display_policy &policy,
-+ const char *filename,
- linenum_type row)
-- : m_context (context), m_filename (filename), m_row (row)
-+ : m_policy (policy), m_filename (filename), m_row (row)
- {}
- ~line_corrections ();
-
- void add_hint (const fixit_hint *hint);
-
-- diagnostic_context *m_context;
-+ const char_display_policy &m_policy;
- const char *m_filename;
- linenum_type m_row;
- auto_vec <correction *> m_corrections;
-@@ -2217,10 +2426,10 @@ source_line::source_line (const char *fi
- void
- line_corrections::add_hint (const fixit_hint *hint)
- {
-- column_range affected_bytes = get_affected_range (m_context, hint, CU_BYTES);
-- column_range affected_columns = get_affected_range (m_context, hint,
-+ column_range affected_bytes = get_affected_range (m_policy, hint, CU_BYTES);
-+ column_range affected_columns = get_affected_range (m_policy, hint,
- CU_DISPLAY_COLS);
-- column_range printed_columns = get_printed_columns (m_context, hint);
-+ column_range printed_columns = get_printed_columns (m_policy, hint);
-
- /* Potentially consolidate. */
- if (!m_corrections.is_empty ())
-@@ -2289,7 +2498,7 @@ line_corrections::add_hint (const fixit_
- printed_columns,
- hint->get_string (),
- hint->get_length (),
-- m_context->tabstop));
-+ m_policy));
- }
-
- /* If there are any fixit hints on source line ROW, print them.
-@@ -2303,7 +2512,7 @@ layout::print_trailing_fixits (linenum_t
- {
- /* Build a list of correction instances for the line,
- potentially consolidating hints (for the sake of readability). */
-- line_corrections corrections (m_context, m_exploc.file, row);
-+ line_corrections corrections (m_policy, m_exploc.file, row);
- for (unsigned int i = 0; i < m_fixit_hints.length (); i++)
- {
- const fixit_hint *hint = m_fixit_hints[i];
-@@ -2646,6 +2855,59 @@ namespace selftest {
-
- /* Selftests for diagnostic_show_locus. */
-
-+/* Verify that cpp_display_width correctly handles escaping. */
-+
-+static void
-+test_display_widths ()
-+{
-+ gcc_rich_location richloc (UNKNOWN_LOCATION);
-+
-+ /* U+03C0 "GREEK SMALL LETTER PI". */
-+ const char *pi = "\xCF\x80";
-+ /* U+1F642 "SLIGHTLY SMILING FACE". */
-+ const char *emoji = "\xF0\x9F\x99\x82";
-+ /* Stray trailing byte of a UTF-8 character. */
-+ const char *stray = "\xBF";
-+ /* U+10FFFF. */
-+ const char *max_codepoint = "\xF4\x8F\xBF\xBF";
-+
-+ /* No escaping. */
-+ {
-+ test_diagnostic_context dc;
-+ char_display_policy policy (make_policy (dc, richloc));
-+ ASSERT_EQ (cpp_display_width (pi, strlen (pi), policy), 1);
-+ ASSERT_EQ (cpp_display_width (emoji, strlen (emoji), policy), 2);
-+ ASSERT_EQ (cpp_display_width (stray, strlen (stray), policy), 1);
-+ /* Don't check width of U+10FFFF; it's in a private use plane. */
-+ }
-+
-+ richloc.set_escape_on_output (true);
-+
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_UNICODE;
-+ char_display_policy policy (make_policy (dc, richloc));
-+ ASSERT_EQ (cpp_display_width (pi, strlen (pi), policy), 8);
-+ ASSERT_EQ (cpp_display_width (emoji, strlen (emoji), policy), 9);
-+ ASSERT_EQ (cpp_display_width (stray, strlen (stray), policy), 4);
-+ ASSERT_EQ (cpp_display_width (max_codepoint, strlen (max_codepoint),
-+ policy),
-+ strlen ("<U+10FFFF>"));
-+ }
-+
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_BYTES;
-+ char_display_policy policy (make_policy (dc, richloc));
-+ ASSERT_EQ (cpp_display_width (pi, strlen (pi), policy), 8);
-+ ASSERT_EQ (cpp_display_width (emoji, strlen (emoji), policy), 16);
-+ ASSERT_EQ (cpp_display_width (stray, strlen (stray), policy), 4);
-+ ASSERT_EQ (cpp_display_width (max_codepoint, strlen (max_codepoint),
-+ policy),
-+ 16);
-+ }
-+}
-+
- /* For precise tests of the layout, make clear where the source line will
- start. test_left_margin sets the total byte count from the left side of the
- screen to the start of source lines, after the line number and the separator,
-@@ -2715,10 +2977,10 @@ test_layout_x_offset_display_utf8 (const
- char_span lspan = location_get_source_line (tmp.get_filename (), 1);
- ASSERT_EQ (line_display_cols,
- cpp_display_width (lspan.get_buffer (), lspan.length (),
-- def_tabstop));
-+ def_policy ()));
- ASSERT_EQ (line_display_cols,
- location_compute_display_column (expand_location (line_end),
-- def_tabstop));
-+ def_policy ()));
- ASSERT_EQ (0, memcmp (lspan.get_buffer () + (emoji_col - 1),
- "\xf0\x9f\x98\x82\xf0\x9f\x98\x82", 8));
-
-@@ -2866,12 +3128,13 @@ test_layout_x_offset_display_tab (const
- ASSERT_EQ ('\t', *(lspan.get_buffer () + (tab_col - 1)));
- for (int tabstop = 1; tabstop != num_tabstops; ++tabstop)
- {
-+ cpp_char_column_policy policy (tabstop, cpp_wcwidth);
- ASSERT_EQ (line_bytes + extra_width[tabstop],
- cpp_display_width (lspan.get_buffer (), lspan.length (),
-- tabstop));
-+ policy));
- ASSERT_EQ (line_bytes + extra_width[tabstop],
- location_compute_display_column (expand_location (line_end),
-- tabstop));
-+ policy));
- }
-
- /* Check that the tab is expanded to the expected number of spaces. */
-@@ -4003,6 +4266,43 @@ test_one_liner_labels_utf8 ()
- " bb\xf0\x9f\x98\x82\xf0\x9f\x98\x82\n",
- pp_formatted_text (dc.printer));
- }
-+
-+ /* Example of escaping the source lines. */
-+ {
-+ text_range_label label0 ("label 0\xf0\x9f\x98\x82");
-+ text_range_label label1 ("label 1\xcf\x80");
-+ text_range_label label2 ("label 2\xcf\x80");
-+ gcc_rich_location richloc (foo, &label0);
-+ richloc.add_range (bar, SHOW_RANGE_WITHOUT_CARET, &label1);
-+ richloc.add_range (field, SHOW_RANGE_WITHOUT_CARET, &label2);
-+ richloc.set_escape_on_output (true);
-+
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_UNICODE;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" <U+1F602>_foo = <U+03C0>_bar.<U+1F602>_field<U+03C0>;\n"
-+ " ^~~~~~~~~~~~~ ~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~\n"
-+ " | | |\n"
-+ " | | label 2\xcf\x80\n"
-+ " | label 1\xcf\x80\n"
-+ " label 0\xf0\x9f\x98\x82\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_BYTES;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ
-+ (" <f0><9f><98><82>_foo = <cf><80>_bar.<f0><9f><98><82>_field<cf><80>;\n"
-+ " ^~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"
-+ " | | |\n"
-+ " | | label 2\xcf\x80\n"
-+ " | label 1\xcf\x80\n"
-+ " label 0\xf0\x9f\x98\x82\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ }
- }
-
- /* Make sure that colorization codes don't interrupt a multibyte
-@@ -4057,9 +4357,9 @@ test_diagnostic_show_locus_one_liner_utf
-
- char_span lspan = location_get_source_line (tmp.get_filename (), 1);
- ASSERT_EQ (25, cpp_display_width (lspan.get_buffer (), lspan.length (),
-- def_tabstop));
-+ def_policy ()));
- ASSERT_EQ (25, location_compute_display_column (expand_location (line_end),
-- def_tabstop));
-+ def_policy ()));
-
- test_one_liner_simple_caret_utf8 ();
- test_one_liner_caret_and_range_utf8 ();
-@@ -4445,30 +4745,31 @@ test_overlapped_fixit_printing (const li
- pp_formatted_text (dc.printer));
-
- /* Unit-test the line_corrections machinery. */
-+ char_display_policy policy (make_policy (dc, richloc));
- ASSERT_EQ (3, richloc.get_num_fixit_hints ());
- const fixit_hint *hint_0 = richloc.get_fixit_hint (0);
- ASSERT_EQ (column_range (12, 12),
-- get_affected_range (&dc, hint_0, CU_BYTES));
-+ get_affected_range (policy, hint_0, CU_BYTES));
- ASSERT_EQ (column_range (12, 12),
-- get_affected_range (&dc, hint_0, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (12, 22), get_printed_columns (&dc, hint_0));
-+ get_affected_range (policy, hint_0, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (12, 22), get_printed_columns (policy, hint_0));
- const fixit_hint *hint_1 = richloc.get_fixit_hint (1);
- ASSERT_EQ (column_range (18, 18),
-- get_affected_range (&dc, hint_1, CU_BYTES));
-+ get_affected_range (policy, hint_1, CU_BYTES));
- ASSERT_EQ (column_range (18, 18),
-- get_affected_range (&dc, hint_1, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (18, 20), get_printed_columns (&dc, hint_1));
-+ get_affected_range (policy, hint_1, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (18, 20), get_printed_columns (policy, hint_1));
- const fixit_hint *hint_2 = richloc.get_fixit_hint (2);
- ASSERT_EQ (column_range (29, 28),
-- get_affected_range (&dc, hint_2, CU_BYTES));
-+ get_affected_range (policy, hint_2, CU_BYTES));
- ASSERT_EQ (column_range (29, 28),
-- get_affected_range (&dc, hint_2, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (29, 29), get_printed_columns (&dc, hint_2));
-+ get_affected_range (policy, hint_2, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (29, 29), get_printed_columns (policy, hint_2));
-
- /* Add each hint in turn to a line_corrections instance,
- and verify that they are consolidated into one correction instance
- as expected. */
-- line_corrections lc (&dc, tmp.get_filename (), 1);
-+ line_corrections lc (policy, tmp.get_filename (), 1);
-
- /* The first replace hint by itself. */
- lc.add_hint (hint_0);
-@@ -4660,30 +4961,31 @@ test_overlapped_fixit_printing_utf8 (con
- pp_formatted_text (dc.printer));
-
- /* Unit-test the line_corrections machinery. */
-+ char_display_policy policy (make_policy (dc, richloc));
- ASSERT_EQ (3, richloc.get_num_fixit_hints ());
- const fixit_hint *hint_0 = richloc.get_fixit_hint (0);
- ASSERT_EQ (column_range (14, 14),
-- get_affected_range (&dc, hint_0, CU_BYTES));
-+ get_affected_range (policy, hint_0, CU_BYTES));
- ASSERT_EQ (column_range (12, 12),
-- get_affected_range (&dc, hint_0, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (12, 22), get_printed_columns (&dc, hint_0));
-+ get_affected_range (policy, hint_0, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (12, 22), get_printed_columns (policy, hint_0));
- const fixit_hint *hint_1 = richloc.get_fixit_hint (1);
- ASSERT_EQ (column_range (22, 22),
-- get_affected_range (&dc, hint_1, CU_BYTES));
-+ get_affected_range (policy, hint_1, CU_BYTES));
- ASSERT_EQ (column_range (18, 18),
-- get_affected_range (&dc, hint_1, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (18, 20), get_printed_columns (&dc, hint_1));
-+ get_affected_range (policy, hint_1, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (18, 20), get_printed_columns (policy, hint_1));
- const fixit_hint *hint_2 = richloc.get_fixit_hint (2);
- ASSERT_EQ (column_range (35, 34),
-- get_affected_range (&dc, hint_2, CU_BYTES));
-+ get_affected_range (policy, hint_2, CU_BYTES));
- ASSERT_EQ (column_range (30, 29),
-- get_affected_range (&dc, hint_2, CU_DISPLAY_COLS));
-- ASSERT_EQ (column_range (30, 30), get_printed_columns (&dc, hint_2));
-+ get_affected_range (policy, hint_2, CU_DISPLAY_COLS));
-+ ASSERT_EQ (column_range (30, 30), get_printed_columns (policy, hint_2));
-
- /* Add each hint in turn to a line_corrections instance,
- and verify that they are consolidated into one correction instance
- as expected. */
-- line_corrections lc (&dc, tmp.get_filename (), 1);
-+ line_corrections lc (policy, tmp.get_filename (), 1);
-
- /* The first replace hint by itself. */
- lc.add_hint (hint_0);
-@@ -4877,15 +5179,16 @@ test_overlapped_fixit_printing_2 (const
- richloc.add_fixit_insert_before (col_21, "}");
-
- /* These fixits should be accepted; they can't be consolidated. */
-+ char_display_policy policy (make_policy (dc, richloc));
- ASSERT_EQ (2, richloc.get_num_fixit_hints ());
- const fixit_hint *hint_0 = richloc.get_fixit_hint (0);
- ASSERT_EQ (column_range (23, 22),
-- get_affected_range (&dc, hint_0, CU_BYTES));
-- ASSERT_EQ (column_range (23, 23), get_printed_columns (&dc, hint_0));
-+ get_affected_range (policy, hint_0, CU_BYTES));
-+ ASSERT_EQ (column_range (23, 23), get_printed_columns (policy, hint_0));
- const fixit_hint *hint_1 = richloc.get_fixit_hint (1);
- ASSERT_EQ (column_range (21, 20),
-- get_affected_range (&dc, hint_1, CU_BYTES));
-- ASSERT_EQ (column_range (21, 21), get_printed_columns (&dc, hint_1));
-+ get_affected_range (policy, hint_1, CU_BYTES));
-+ ASSERT_EQ (column_range (21, 21), get_printed_columns (policy, hint_1));
-
- /* Verify that they're printed correctly. */
- diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-@@ -5152,10 +5455,11 @@ test_tab_expansion (const line_table_cas
- ....................123 45678901234 56789012345 columns */
-
- const int tabstop = 8;
-+ cpp_char_column_policy policy (tabstop, cpp_wcwidth);
- const int first_non_ws_byte_col = 7;
- const int right_quote_byte_col = 15;
- const int last_byte_col = 25;
-- ASSERT_EQ (35, cpp_display_width (content, last_byte_col, tabstop));
-+ ASSERT_EQ (35, cpp_display_width (content, last_byte_col, policy));
-
- temp_source_file tmp (SELFTEST_LOCATION, ".c", content);
- line_table_test ltt (case_);
-@@ -5198,6 +5502,114 @@ test_tab_expansion (const line_table_cas
- }
- }
-
-+/* Verify that the escaping machinery can cope with a variety of different
-+ invalid bytes. */
-+
-+static void
-+test_escaping_bytes_1 (const line_table_case &case_)
-+{
-+ const char content[] = "before\0\1\2\3\r\x80\xff""after\n";
-+ const size_t sz = sizeof (content);
-+ temp_source_file tmp (SELFTEST_LOCATION, ".c", content, sz);
-+ line_table_test ltt (case_);
-+ const line_map_ordinary *ord_map = linemap_check_ordinary
-+ (linemap_add (line_table, LC_ENTER, false, tmp.get_filename (), 0));
-+ linemap_line_start (line_table, 1, 100);
-+
-+ location_t finish
-+ = linemap_position_for_line_and_column (line_table, ord_map, 1,
-+ strlen (content));
-+
-+ if (finish > LINE_MAP_MAX_LOCATION_WITH_COLS)
-+ return;
-+
-+ /* Locations of the NUL and \r bytes. */
-+ location_t nul_loc
-+ = linemap_position_for_line_and_column (line_table, ord_map, 1, 7);
-+ location_t r_loc
-+ = linemap_position_for_line_and_column (line_table, ord_map, 1, 11);
-+ gcc_rich_location richloc (nul_loc);
-+ richloc.add_range (r_loc);
-+
-+ {
-+ test_diagnostic_context dc;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" before \1\2\3 \x80\xff""after\n"
-+ " ^ ~\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ richloc.set_escape_on_output (true);
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_UNICODE;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ
-+ (" before<U+0000><U+0001><U+0002><U+0003><U+000D><80><ff>after\n"
-+ " ^~~~~~~~ ~~~~~~~~\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_BYTES;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" before<00><01><02><03><0d><80><ff>after\n"
-+ " ^~~~ ~~~~\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+}
-+
-+/* As above, but verify that we handle the initial byte of a line
-+ correctly. */
-+
-+static void
-+test_escaping_bytes_2 (const line_table_case &case_)
-+{
-+ const char content[] = "\0after\n";
-+ const size_t sz = sizeof (content);
-+ temp_source_file tmp (SELFTEST_LOCATION, ".c", content, sz);
-+ line_table_test ltt (case_);
-+ const line_map_ordinary *ord_map = linemap_check_ordinary
-+ (linemap_add (line_table, LC_ENTER, false, tmp.get_filename (), 0));
-+ linemap_line_start (line_table, 1, 100);
-+
-+ location_t finish
-+ = linemap_position_for_line_and_column (line_table, ord_map, 1,
-+ strlen (content));
-+
-+ if (finish > LINE_MAP_MAX_LOCATION_WITH_COLS)
-+ return;
-+
-+ /* Location of the NUL byte. */
-+ location_t nul_loc
-+ = linemap_position_for_line_and_column (line_table, ord_map, 1, 1);
-+ gcc_rich_location richloc (nul_loc);
-+
-+ {
-+ test_diagnostic_context dc;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" after\n"
-+ " ^\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ richloc.set_escape_on_output (true);
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_UNICODE;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" <U+0000>after\n"
-+ " ^~~~~~~~\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+ {
-+ test_diagnostic_context dc;
-+ dc.escape_format = DIAGNOSTICS_ESCAPE_FORMAT_BYTES;
-+ diagnostic_show_locus (&dc, &richloc, DK_ERROR);
-+ ASSERT_STREQ (" <00>after\n"
-+ " ^~~~\n",
-+ pp_formatted_text (dc.printer));
-+ }
-+}
-+
- /* Verify that line numbers are correctly printed for the case of
- a multiline range in which the width of the line numbers changes
- (e.g. from "9" to "10"). */
-@@ -5254,6 +5666,8 @@ diagnostic_show_locus_c_tests ()
- test_layout_range_for_single_line ();
- test_layout_range_for_multiple_lines ();
-
-+ test_display_widths ();
-+
- for_each_line_table_case (test_layout_x_offset_display_utf8);
- for_each_line_table_case (test_layout_x_offset_display_tab);
-
-@@ -5274,6 +5688,8 @@ diagnostic_show_locus_c_tests ()
- for_each_line_table_case (test_fixit_replace_containing_newline);
- for_each_line_table_case (test_fixit_deletion_affecting_newline);
- for_each_line_table_case (test_tab_expansion);
-+ for_each_line_table_case (test_escaping_bytes_1);
-+ for_each_line_table_case (test_escaping_bytes_2);
-
- test_line_numbers_multiline_range ();
- }
-diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
---- a/gcc/doc/invoke.texi 2021-12-13 23:23:05.764437151 -0800
-+++ b/gcc/doc/invoke.texi 2021-12-14 01:16:01.553943061 -0800
-@@ -312,7 +312,8 @@ Objective-C and Objective-C++ Dialects}.
- -fdiagnostics-show-path-depths @gol
- -fno-show-column @gol
- -fdiagnostics-column-unit=@r{[}display@r{|}byte@r{]} @gol
---fdiagnostics-column-origin=@var{origin}}
-+-fdiagnostics-column-origin=@var{origin} @gol
-+-fdiagnostics-escape-format=@r{[}unicode@r{|}bytes@r{]}}
-
- @item Warning Options
- @xref{Warning Options,,Options to Request or Suppress Warnings}.
-@@ -5083,6 +5084,38 @@ first column. The default value of 1 co
- behavior and to the GNU style guide. Some utilities may perform better with an
- origin of 0; any non-negative value may be specified.
-
-+@item -fdiagnostics-escape-format=@var{FORMAT}
-+@opindex fdiagnostics-escape-format
-+When GCC prints pertinent source lines for a diagnostic it normally attempts
-+to print the source bytes directly. However, some diagnostics relate to encoding
-+issues in the source file, such as malformed UTF-8, or issues with Unicode
-+normalization. These diagnostics are flagged so that GCC will escape bytes
-+that are not printable ASCII when printing their pertinent source lines.
-+
-+This option controls how such bytes should be escaped.
-+
-+The default @var{FORMAT}, @samp{unicode} displays Unicode characters that
-+are not printable ASCII in the form @samp{<U+XXXX>}, and bytes that do not
-+correspond to a Unicode character validly-encoded in UTF-8-encoded will be
-+displayed as hexadecimal in the form @samp{<XX>}.
-+
-+For example, a source line containing the string @samp{before} followed by the
-+Unicode character U+03C0 (``GREEK SMALL LETTER PI'', with UTF-8 encoding
-+0xCF 0x80) followed by the byte 0xBF (a stray UTF-8 trailing byte), followed by
-+the string @samp{after} will be printed for such a diagnostic as:
-+
-+@smallexample
-+ before<U+03C0><BF>after
-+@end smallexample
-+
-+Setting @var{FORMAT} to @samp{bytes} will display all non-printable-ASCII bytes
-+in the form @samp{<XX>}, thus showing the underlying encoding of non-ASCII
-+Unicode characters. For the example above, the following will be printed:
-+
-+@smallexample
-+ before<CF><80><BF>after
-+@end smallexample
-+
- @item -fdiagnostics-format=@var{FORMAT}
- @opindex fdiagnostics-format
- Select a different format for printing diagnostics.
-@@ -5150,9 +5183,11 @@ might be printed in JSON form (after for
- @}
- @}
- ],
-+ "escape-source": false,
- "message": "...this statement, but the latter is @dots{}"
- @}
- ]
-+ "escape-source": false,
- "column-origin": 1,
- @},
- @dots{}
-@@ -5239,6 +5274,7 @@ of the expression, which have labels. I
- "label": "T @{aka struct t@}"
- @}
- ],
-+ "escape-source": false,
- "message": "invalid operands to binary + @dots{}"
- @}
- @end smallexample
-@@ -5292,6 +5328,7 @@ might be printed in JSON form as:
- @}
- @}
- ],
-+ "escape-source": false,
- "message": "\u2018struct s\u2019 has no member named @dots{}"
- @}
- @end smallexample
-@@ -5349,6 +5386,10 @@ For example, the intraprocedural example
- ]
- @end smallexample
-
-+Diagnostics have a boolean attribute @code{escape-source}, hinting whether
-+non-ASCII bytes should be escaped when printing the pertinent lines of
-+source code (@code{true} for diagnostics involving source encoding issues).
-+
- @end table
-
- @node Warning Options
-diff --git a/gcc/input.c b/gcc/input.c
---- a/gcc/input.c 2021-07-27 23:55:07.328287915 -0700
-+++ b/gcc/input.c 2021-12-14 01:16:01.553943061 -0800
-@@ -913,7 +913,8 @@ make_location (location_t caret, source_
- source line in order to calculate the display width. If that cannot be done
- for any reason, then returns the byte column as a fallback. */
- int
--location_compute_display_column (expanded_location exploc, int tabstop)
-+location_compute_display_column (expanded_location exploc,
-+ const cpp_char_column_policy &policy)
- {
- if (!(exploc.file && *exploc.file && exploc.line && exploc.column))
- return exploc.column;
-@@ -921,7 +922,7 @@ location_compute_display_column (expande
- /* If line is NULL, this function returns exploc.column which is the
- desired fallback. */
- return cpp_byte_column_to_display_column (line.get_buffer (), line.length (),
-- exploc.column, tabstop);
-+ exploc.column, policy);
- }
-
- /* Dump statistics to stderr about the memory usage of the line_table
-@@ -3611,43 +3612,50 @@ test_line_offset_overflow ()
- void test_cpp_utf8 ()
- {
- const int def_tabstop = 8;
-+ cpp_char_column_policy policy (def_tabstop, cpp_wcwidth);
-+
- /* Verify that wcwidth of invalid UTF-8 or control bytes is 1. */
- {
-- int w_bad = cpp_display_width ("\xf0!\x9f!\x98!\x82!", 8, def_tabstop);
-+ int w_bad = cpp_display_width ("\xf0!\x9f!\x98!\x82!", 8, policy);
- ASSERT_EQ (8, w_bad);
-- int w_ctrl = cpp_display_width ("\r\n\v\0\1", 5, def_tabstop);
-+ int w_ctrl = cpp_display_width ("\r\n\v\0\1", 5, policy);
- ASSERT_EQ (5, w_ctrl);
- }
-
- /* Verify that wcwidth of valid UTF-8 is as expected. */
- {
-- const int w_pi = cpp_display_width ("\xcf\x80", 2, def_tabstop);
-+ const int w_pi = cpp_display_width ("\xcf\x80", 2, policy);
- ASSERT_EQ (1, w_pi);
-- const int w_emoji = cpp_display_width ("\xf0\x9f\x98\x82", 4, def_tabstop);
-+ const int w_emoji = cpp_display_width ("\xf0\x9f\x98\x82", 4, policy);
- ASSERT_EQ (2, w_emoji);
- const int w_umlaut_precomposed = cpp_display_width ("\xc3\xbf", 2,
-- def_tabstop);
-+ policy);
- ASSERT_EQ (1, w_umlaut_precomposed);
- const int w_umlaut_combining = cpp_display_width ("y\xcc\x88", 3,
-- def_tabstop);
-+ policy);
- ASSERT_EQ (1, w_umlaut_combining);
-- const int w_han = cpp_display_width ("\xe4\xb8\xba", 3, def_tabstop);
-+ const int w_han = cpp_display_width ("\xe4\xb8\xba", 3, policy);
- ASSERT_EQ (2, w_han);
-- const int w_ascii = cpp_display_width ("GCC", 3, def_tabstop);
-+ const int w_ascii = cpp_display_width ("GCC", 3, policy);
- ASSERT_EQ (3, w_ascii);
- const int w_mixed = cpp_display_width ("\xcf\x80 = 3.14 \xf0\x9f\x98\x82"
- "\x9f! \xe4\xb8\xba y\xcc\x88",
-- 24, def_tabstop);
-+ 24, policy);
- ASSERT_EQ (18, w_mixed);
- }
-
- /* Verify that display width properly expands tabs. */
- {
- const char *tstr = "\tabc\td";
-- ASSERT_EQ (6, cpp_display_width (tstr, 6, 1));
-- ASSERT_EQ (10, cpp_display_width (tstr, 6, 3));
-- ASSERT_EQ (17, cpp_display_width (tstr, 6, 8));
-- ASSERT_EQ (1, cpp_display_column_to_byte_column (tstr, 6, 7, 8));
-+ ASSERT_EQ (6, cpp_display_width (tstr, 6,
-+ cpp_char_column_policy (1, cpp_wcwidth)));
-+ ASSERT_EQ (10, cpp_display_width (tstr, 6,
-+ cpp_char_column_policy (3, cpp_wcwidth)));
-+ ASSERT_EQ (17, cpp_display_width (tstr, 6,
-+ cpp_char_column_policy (8, cpp_wcwidth)));
-+ ASSERT_EQ (1,
-+ cpp_display_column_to_byte_column
-+ (tstr, 6, 7, cpp_char_column_policy (8, cpp_wcwidth)));
- }
-
- /* Verify that cpp_byte_column_to_display_column can go past the end,
-@@ -3660,13 +3668,13 @@ void test_cpp_utf8 ()
- /* 111122223456
- Byte columns. */
-
-- ASSERT_EQ (5, cpp_display_width (str, 6, def_tabstop));
-+ ASSERT_EQ (5, cpp_display_width (str, 6, policy));
- ASSERT_EQ (105,
-- cpp_byte_column_to_display_column (str, 6, 106, def_tabstop));
-+ cpp_byte_column_to_display_column (str, 6, 106, policy));
- ASSERT_EQ (10000,
-- cpp_byte_column_to_display_column (NULL, 0, 10000, def_tabstop));
-+ cpp_byte_column_to_display_column (NULL, 0, 10000, policy));
- ASSERT_EQ (0,
-- cpp_byte_column_to_display_column (NULL, 10000, 0, def_tabstop));
-+ cpp_byte_column_to_display_column (NULL, 10000, 0, policy));
- }
-
- /* Verify that cpp_display_column_to_byte_column can go past the end,
-@@ -3680,25 +3688,25 @@ void test_cpp_utf8 ()
- /* 000000000000000000000000000000000111111
- 111122223333444456666777788889999012345
- Byte columns. */
-- ASSERT_EQ (4, cpp_display_column_to_byte_column (str, 15, 2, def_tabstop));
-+ ASSERT_EQ (4, cpp_display_column_to_byte_column (str, 15, 2, policy));
- ASSERT_EQ (15,
-- cpp_display_column_to_byte_column (str, 15, 11, def_tabstop));
-+ cpp_display_column_to_byte_column (str, 15, 11, policy));
- ASSERT_EQ (115,
-- cpp_display_column_to_byte_column (str, 15, 111, def_tabstop));
-+ cpp_display_column_to_byte_column (str, 15, 111, policy));
- ASSERT_EQ (10000,
-- cpp_display_column_to_byte_column (NULL, 0, 10000, def_tabstop));
-+ cpp_display_column_to_byte_column (NULL, 0, 10000, policy));
- ASSERT_EQ (0,
-- cpp_display_column_to_byte_column (NULL, 10000, 0, def_tabstop));
-+ cpp_display_column_to_byte_column (NULL, 10000, 0, policy));
-
- /* Verify that we do not interrupt a UTF-8 sequence. */
-- ASSERT_EQ (4, cpp_display_column_to_byte_column (str, 15, 1, def_tabstop));
-+ ASSERT_EQ (4, cpp_display_column_to_byte_column (str, 15, 1, policy));
-
- for (int byte_col = 1; byte_col <= 15; ++byte_col)
- {
- const int disp_col
-- = cpp_byte_column_to_display_column (str, 15, byte_col, def_tabstop);
-+ = cpp_byte_column_to_display_column (str, 15, byte_col, policy);
- const int byte_col2
-- = cpp_display_column_to_byte_column (str, 15, disp_col, def_tabstop);
-+ = cpp_display_column_to_byte_column (str, 15, disp_col, policy);
-
- /* If we ask for the display column in the middle of a UTF-8
- sequence, it will return the length of the partial sequence,
-diff --git a/gcc/input.h b/gcc/input.h
---- a/gcc/input.h 2021-07-27 23:55:07.328287915 -0700
-+++ b/gcc/input.h 2021-12-14 01:16:01.553943061 -0800
-@@ -39,8 +39,11 @@ STATIC_ASSERT (BUILTINS_LOCATION < RESER
- extern bool is_location_from_builtin_token (location_t);
- extern expanded_location expand_location (location_t);
-
--extern int location_compute_display_column (expanded_location exploc,
-- int tabstop);
-+class cpp_char_column_policy;
-+
-+extern int
-+location_compute_display_column (expanded_location exploc,
-+ const cpp_char_column_policy &policy);
-
- /* A class capturing the bounds of a buffer, to allow for run-time
- bounds-checking in a checked build. */
-diff --git a/gcc/opts.c b/gcc/opts.c
---- a/gcc/opts.c 2021-07-27 23:55:07.364288417 -0700
-+++ b/gcc/opts.c 2021-12-14 01:16:01.553943061 -0800
-@@ -2573,6 +2573,10 @@ common_handle_option (struct gcc_options
- dc->column_origin = value;
- break;
-
-+ case OPT_fdiagnostics_escape_format_:
-+ dc->escape_format = (enum diagnostics_escape_format)value;
-+ break;
-+
- case OPT_fdiagnostics_show_cwe:
- dc->show_cwe = value;
- break;
-diff --git a/gcc/selftest.c b/gcc/selftest.c
---- a/gcc/selftest.c 2021-07-27 23:55:07.500290315 -0700
-+++ b/gcc/selftest.c 2021-12-14 01:16:01.557942991 -0800
-@@ -193,6 +193,21 @@ temp_source_file::temp_source_file (cons
- fclose (out);
- }
-
-+/* As above, but with a size, to allow for NUL bytes in CONTENT. */
-+
-+temp_source_file::temp_source_file (const location &loc,
-+ const char *suffix,
-+ const char *content,
-+ size_t sz)
-+: named_temp_file (suffix)
-+{
-+ FILE *out = fopen (get_filename (), "w");
-+ if (!out)
-+ fail_formatted (loc, "unable to open tempfile: %s", get_filename ());
-+ fwrite (content, sz, 1, out);
-+ fclose (out);
-+}
-+
- /* Avoid introducing locale-specific differences in the results
- by hardcoding open_quote and close_quote. */
-
-diff --git a/gcc/selftest.h b/gcc/selftest.h
---- a/gcc/selftest.h 2021-07-27 23:55:07.500290315 -0700
-+++ b/gcc/selftest.h 2021-12-14 01:16:01.557942991 -0800
-@@ -112,6 +112,8 @@ class temp_source_file : public named_te
- public:
- temp_source_file (const location &loc, const char *suffix,
- const char *content);
-+ temp_source_file (const location &loc, const char *suffix,
-+ const char *content, size_t sz);
- };
-
- /* RAII-style class for avoiding introducing locale-specific differences
-diff --git a/gcc/testsuite/c-c++-common/diagnostic-format-json-1.c b/gcc/testsuite/c-c++-common/diagnostic-format-json-1.c
---- a/gcc/testsuite/c-c++-common/diagnostic-format-json-1.c 2021-07-27 23:55:07.596291654 -0700
-+++ b/gcc/testsuite/c-c++-common/diagnostic-format-json-1.c 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- /* { dg-regexp "\"kind\": \"error\"" } */
- /* { dg-regexp "\"column-origin\": 1" } */
-+/* { dg-regexp "\"escape-source\": false" } */
- /* { dg-regexp "\"message\": \"#error message\"" } */
-
- /* { dg-regexp "\"caret\": \{" } */
-diff --git a/gcc/testsuite/c-c++-common/diagnostic-format-json-2.c b/gcc/testsuite/c-c++-common/diagnostic-format-json-2.c
---- a/gcc/testsuite/c-c++-common/diagnostic-format-json-2.c 2021-07-27 23:55:07.596291654 -0700
-+++ b/gcc/testsuite/c-c++-common/diagnostic-format-json-2.c 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- /* { dg-regexp "\"kind\": \"warning\"" } */
- /* { dg-regexp "\"column-origin\": 1" } */
-+/* { dg-regexp "\"escape-source\": false" } */
- /* { dg-regexp "\"message\": \"#warning message\"" } */
- /* { dg-regexp "\"option\": \"-Wcpp\"" } */
- /* { dg-regexp "\"option_url\": \"https:\[^\n\r\"\]*#index-Wcpp\"" } */
-diff --git a/gcc/testsuite/c-c++-common/diagnostic-format-json-3.c b/gcc/testsuite/c-c++-common/diagnostic-format-json-3.c
---- a/gcc/testsuite/c-c++-common/diagnostic-format-json-3.c 2021-07-27 23:55:07.596291654 -0700
-+++ b/gcc/testsuite/c-c++-common/diagnostic-format-json-3.c 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- /* { dg-regexp "\"kind\": \"error\"" } */
- /* { dg-regexp "\"column-origin\": 1" } */
-+/* { dg-regexp "\"escape-source\": false" } */
- /* { dg-regexp "\"message\": \"#warning message\"" } */
- /* { dg-regexp "\"option\": \"-Werror=cpp\"" } */
- /* { dg-regexp "\"option_url\": \"https:\[^\n\r\"\]*#index-Wcpp\"" } */
-diff --git a/gcc/testsuite/c-c++-common/diagnostic-format-json-4.c b/gcc/testsuite/c-c++-common/diagnostic-format-json-4.c
---- a/gcc/testsuite/c-c++-common/diagnostic-format-json-4.c 2021-07-27 23:55:07.596291654 -0700
-+++ b/gcc/testsuite/c-c++-common/diagnostic-format-json-4.c 2021-12-14 01:16:01.557942991 -0800
-@@ -19,6 +19,7 @@ int test (void)
-
- /* { dg-regexp "\"kind\": \"note\"" } */
- /* { dg-regexp "\"message\": \"...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'\"" } */
-+/* { dg-regexp "\"escape-source\": false" } */
-
- /* { dg-regexp "\"caret\": \{" } */
- /* { dg-regexp "\"file\": \"\[^\n\r\"\]*diagnostic-format-json-4.c\"" } */
-@@ -39,6 +40,7 @@ int test (void)
- /* { dg-regexp "\"kind\": \"warning\"" } */
- /* { dg-regexp "\"column-origin\": 1" } */
- /* { dg-regexp "\"message\": \"this 'if' clause does not guard...\"" } */
-+/* { dg-regexp "\"escape-source\": false" } */
- /* { dg-regexp "\"option\": \"-Wmisleading-indentation\"" } */
- /* { dg-regexp "\"option_url\": \"https:\[^\n\r\"\]*#index-Wmisleading-indentation\"" } */
-
-diff --git a/gcc/testsuite/c-c++-common/diagnostic-format-json-5.c b/gcc/testsuite/c-c++-common/diagnostic-format-json-5.c
---- a/gcc/testsuite/c-c++-common/diagnostic-format-json-5.c 2021-07-27 23:55:07.596291654 -0700
-+++ b/gcc/testsuite/c-c++-common/diagnostic-format-json-5.c 2021-12-14 01:16:01.557942991 -0800
-@@ -14,6 +14,7 @@ int test (struct s *ptr)
-
- /* { dg-regexp "\"kind\": \"error\"" } */
- /* { dg-regexp "\"column-origin\": 1" } */
-+/* { dg-regexp "\"escape-source\": false" } */
- /* { dg-regexp "\"message\": \".*\"" } */
-
- /* Verify fix-it hints. */
-diff --git a/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-bytes.c b/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-bytes.c
---- a/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-bytes.c 1969-12-31 16:00:00.000000000 -0800
-+++ b/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-bytes.c 2021-12-14 01:16:01.557942991 -0800
-@@ -0,0 +1,21 @@
-+// { dg-do preprocess }
-+// { dg-options "-std=gnu99 -Werror=normalized=nfc -fdiagnostics-show-caret -fdiagnostics-escape-format=bytes" }
-+/* { dg-message "some warnings being treated as errors" "" {target "*-*-*"} 0 } */
-+
-+/* འ= U+0F43 TIBETAN LETTER GHA, which has decomposition "0F42 0FB7" i.e.
-+ U+0F42 TIBETAN LETTER GA: à½
-+ U+0FB7 TIBETAN SUBJOINED LETTER HA: ྷ
-+
-+ The UTF-8 encoding of U+0F43 TIBETAN LETTER GHA is: E0 BD 83. */
-+
-+foo before_\u0F43_after bar // { dg-error "`before_.U00000f43_after' is not in NFC .-Werror=normalized=." }
-+/* { dg-begin-multiline-output "" }
-+ foo before_\u0F43_after bar
-+ ^~~~~~~~~~~~~~~~~~~
-+ { dg-end-multiline-output "" } */
-+
-+foo before_à½_after bar // { dg-error "`before_.U00000f43_after' is not in NFC .-Werror=normalized=." }
-+/* { dg-begin-multiline-output "" }
-+ foo before_<e0><bd><83>_after bar
-+ ^~~~~~~~~~~~~~~~~~~~~~~~~
-+ { dg-end-multiline-output "" } */
-diff --git a/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-unicode.c b/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-unicode.c
---- a/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-unicode.c 1969-12-31 16:00:00.000000000 -0800
-+++ b/gcc/testsuite/gcc.dg/cpp/warn-normalized-4-unicode.c 2021-12-14 01:16:01.557942991 -0800
-@@ -0,0 +1,19 @@
-+// { dg-do preprocess }
-+// { dg-options "-std=gnu99 -Werror=normalized=nfc -fdiagnostics-show-caret -fdiagnostics-escape-format=unicode" }
-+/* { dg-message "some warnings being treated as errors" "" {target "*-*-*"} 0 } */
-+
-+/* འ= U+0F43 TIBETAN LETTER GHA, which has decomposition "0F42 0FB7" i.e.
-+ U+0F42 TIBETAN LETTER GA: à½
-+ U+0FB7 TIBETAN SUBJOINED LETTER HA: ྷ */
-+
-+foo before_\u0F43_after bar // { dg-error "`before_.U00000f43_after' is not in NFC .-Werror=normalized=." }
-+/* { dg-begin-multiline-output "" }
-+ foo before_\u0F43_after bar
-+ ^~~~~~~~~~~~~~~~~~~
-+ { dg-end-multiline-output "" } */
-+
-+foo before_à½_after bar // { dg-error "`before_.U00000f43_after' is not in NFC .-Werror=normalized=." }
-+/* { dg-begin-multiline-output "" }
-+ foo before_<U+0F43>_after bar
-+ ^~~~~~~~~~~~~~~~~~~~~
-+ { dg-end-multiline-output "" } */
-diff --git a/gcc/testsuite/gfortran.dg/diagnostic-format-json-1.F90 b/gcc/testsuite/gfortran.dg/diagnostic-format-json-1.F90
---- a/gcc/testsuite/gfortran.dg/diagnostic-format-json-1.F90 2021-07-27 23:55:08.472303878 -0700
-+++ b/gcc/testsuite/gfortran.dg/diagnostic-format-json-1.F90 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- ! { dg-regexp "\"kind\": \"error\"" }
- ! { dg-regexp "\"column-origin\": 1" }
-+! { dg-regexp "\"escape-source\": false" }
- ! { dg-regexp "\"message\": \"#error message\"" }
-
- ! { dg-regexp "\"caret\": \{" }
-diff --git a/gcc/testsuite/gfortran.dg/diagnostic-format-json-2.F90 b/gcc/testsuite/gfortran.dg/diagnostic-format-json-2.F90
---- a/gcc/testsuite/gfortran.dg/diagnostic-format-json-2.F90 2021-07-27 23:55:08.472303878 -0700
-+++ b/gcc/testsuite/gfortran.dg/diagnostic-format-json-2.F90 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- ! { dg-regexp "\"kind\": \"warning\"" }
- ! { dg-regexp "\"column-origin\": 1" }
-+! { dg-regexp "\"escape-source\": false" }
- ! { dg-regexp "\"message\": \"#warning message\"" }
- ! { dg-regexp "\"option\": \"-Wcpp\"" }
- ! { dg-regexp "\"option_url\": \"\[^\n\r\"\]*#index-Wcpp\"" }
-diff --git a/gcc/testsuite/gfortran.dg/diagnostic-format-json-3.F90 b/gcc/testsuite/gfortran.dg/diagnostic-format-json-3.F90
---- a/gcc/testsuite/gfortran.dg/diagnostic-format-json-3.F90 2021-07-27 23:55:08.472303878 -0700
-+++ b/gcc/testsuite/gfortran.dg/diagnostic-format-json-3.F90 2021-12-14 01:16:01.557942991 -0800
-@@ -9,6 +9,7 @@
-
- ! { dg-regexp "\"kind\": \"error\"" }
- ! { dg-regexp "\"column-origin\": 1" }
-+! { dg-regexp "\"escape-source\": false" }
- ! { dg-regexp "\"message\": \"#warning message\"" }
- ! { dg-regexp "\"option\": \"-Werror=cpp\"" }
- ! { dg-regexp "\"option_url\": \"\[^\n\r\"\]*#index-Wcpp\"" }
-diff --git a/libcpp/charset.c b/libcpp/charset.c
---- a/libcpp/charset.c 2021-07-27 23:55:08.712307227 -0700
-+++ b/libcpp/charset.c 2021-12-14 01:16:01.557942991 -0800
-@@ -1552,12 +1552,14 @@ convert_escape (cpp_reader *pfile, const
- "unknown escape sequence: '\\%c'", (int) c);
- else
- {
-+ encoding_rich_location rich_loc (pfile);
-+
- /* diagnostic.c does not support "%03o". When it does, this
- code can use %03o directly in the diagnostic again. */
- char buf[32];
- sprintf(buf, "%03o", (int) c);
-- cpp_error (pfile, CPP_DL_PEDWARN,
-- "unknown escape sequence: '\\%s'", buf);
-+ cpp_error_at (pfile, CPP_DL_PEDWARN, &rich_loc,
-+ "unknown escape sequence: '\\%s'", buf);
- }
- }
-
-@@ -2280,14 +2282,16 @@ cpp_string_location_reader::get_next ()
- }
-
- cpp_display_width_computation::
--cpp_display_width_computation (const char *data, int data_length, int tabstop) :
-+cpp_display_width_computation (const char *data, int data_length,
-+ const cpp_char_column_policy &policy) :
- m_begin (data),
- m_next (m_begin),
- m_bytes_left (data_length),
-- m_tabstop (tabstop),
-+ m_policy (policy),
- m_display_cols (0)
- {
-- gcc_assert (m_tabstop > 0);
-+ gcc_assert (policy.m_tabstop > 0);
-+ gcc_assert (policy.m_width_cb);
- }
-
-
-@@ -2299,19 +2303,28 @@ cpp_display_width_computation (const cha
- point to a valid UTF-8-encoded sequence, then it will be treated as a single
- byte with display width 1. m_cur_display_col is the current display column,
- relative to which tab stops should be expanded. Returns the display width of
-- the codepoint just processed. */
-+ the codepoint just processed.
-+ If OUT is non-NULL, it is populated. */
-
- int
--cpp_display_width_computation::process_next_codepoint ()
-+cpp_display_width_computation::process_next_codepoint (cpp_decoded_char *out)
- {
- cppchar_t c;
- int next_width;
-
-+ if (out)
-+ out->m_start_byte = m_next;
-+
- if (*m_next == '\t')
- {
- ++m_next;
- --m_bytes_left;
-- next_width = m_tabstop - (m_display_cols % m_tabstop);
-+ next_width = m_policy.m_tabstop - (m_display_cols % m_policy.m_tabstop);
-+ if (out)
-+ {
-+ out->m_ch = '\t';
-+ out->m_valid_ch = true;
-+ }
- }
- else if (one_utf8_to_cppchar ((const uchar **) &m_next, &m_bytes_left, &c)
- != 0)
-@@ -2321,14 +2334,24 @@ cpp_display_width_computation::process_n
- of one. */
- ++m_next;
- --m_bytes_left;
-- next_width = 1;
-+ next_width = m_policy.m_undecoded_byte_width;
-+ if (out)
-+ out->m_valid_ch = false;
- }
- else
- {
- /* one_utf8_to_cppchar() has updated m_next and m_bytes_left for us. */
-- next_width = cpp_wcwidth (c);
-+ next_width = m_policy.m_width_cb (c);
-+ if (out)
-+ {
-+ out->m_ch = c;
-+ out->m_valid_ch = true;
-+ }
- }
-
-+ if (out)
-+ out->m_next_byte = m_next;
-+
- m_display_cols += next_width;
- return next_width;
- }
-@@ -2344,7 +2367,7 @@ cpp_display_width_computation::advance_d
- const int start = m_display_cols;
- const int target = start + n;
- while (m_display_cols < target && !done ())
-- process_next_codepoint ();
-+ process_next_codepoint (NULL);
- return m_display_cols - start;
- }
-
-@@ -2352,29 +2375,33 @@ cpp_display_width_computation::advance_d
- how many display columns are occupied by the first COLUMN bytes. COLUMN
- may exceed DATA_LENGTH, in which case the phantom bytes at the end are
- treated as if they have display width 1. Tabs are expanded to the next tab
-- stop, relative to the start of DATA. */
-+ stop, relative to the start of DATA, and non-printable-ASCII characters
-+ will be escaped as per POLICY. */
-
- int
- cpp_byte_column_to_display_column (const char *data, int data_length,
-- int column, int tabstop)
-+ int column,
-+ const cpp_char_column_policy &policy)
- {
- const int offset = MAX (0, column - data_length);
-- cpp_display_width_computation dw (data, column - offset, tabstop);
-+ cpp_display_width_computation dw (data, column - offset, policy);
- while (!dw.done ())
-- dw.process_next_codepoint ();
-+ dw.process_next_codepoint (NULL);
- return dw.display_cols_processed () + offset;
- }
-
- /* For the string of length DATA_LENGTH bytes that begins at DATA, compute
- the least number of bytes that will result in at least DISPLAY_COL display
- columns. The return value may exceed DATA_LENGTH if the entire string does
-- not occupy enough display columns. */
-+ not occupy enough display columns. Non-printable-ASCII characters
-+ will be escaped as per POLICY. */
-
- int
- cpp_display_column_to_byte_column (const char *data, int data_length,
-- int display_col, int tabstop)
-+ int display_col,
-+ const cpp_char_column_policy &policy)
- {
-- cpp_display_width_computation dw (data, data_length, tabstop);
-+ cpp_display_width_computation dw (data, data_length, policy);
- const int avail_display = dw.advance_display_cols (display_col);
- return dw.bytes_processed () + MAX (0, display_col - avail_display);
- }
-diff --git a/libcpp/errors.c b/libcpp/errors.c
---- a/libcpp/errors.c 2021-07-27 23:55:08.712307227 -0700
-+++ b/libcpp/errors.c 2021-12-14 01:16:01.557942991 -0800
-@@ -27,6 +27,31 @@ along with this program; see the file CO
- #include "cpplib.h"
- #include "internal.h"
-
-+/* Get a location_t for the current location in PFILE,
-+ generally that of the previously lexed token. */
-+
-+location_t
-+cpp_diagnostic_get_current_location (cpp_reader *pfile)
-+{
-+ if (CPP_OPTION (pfile, traditional))
-+ {
-+ if (pfile->state.in_directive)
-+ return pfile->directive_line;
-+ else
-+ return pfile->line_table->highest_line;
-+ }
-+ /* We don't want to refer to a token before the beginning of the
-+ current run -- that is invalid. */
-+ else if (pfile->cur_token == pfile->cur_run->base)
-+ {
-+ return 0;
-+ }
-+ else
-+ {
-+ return pfile->cur_token[-1].src_loc;
-+ }
-+}
-+
- /* Print a diagnostic at the given location. */
-
- ATTRIBUTE_FPTR_PRINTF(5,0)
-@@ -52,25 +77,7 @@ cpp_diagnostic (cpp_reader * pfile, enum
- enum cpp_warning_reason reason,
- const char *msgid, va_list *ap)
- {
-- location_t src_loc;
--
-- if (CPP_OPTION (pfile, traditional))
-- {
-- if (pfile->state.in_directive)
-- src_loc = pfile->directive_line;
-- else
-- src_loc = pfile->line_table->highest_line;
-- }
-- /* We don't want to refer to a token before the beginning of the
-- current run -- that is invalid. */
-- else if (pfile->cur_token == pfile->cur_run->base)
-- {
-- src_loc = 0;
-- }
-- else
-- {
-- src_loc = pfile->cur_token[-1].src_loc;
-- }
-+ location_t src_loc = cpp_diagnostic_get_current_location (pfile);
- rich_location richloc (pfile->line_table, src_loc);
- return cpp_diagnostic_at (pfile, level, reason, &richloc, msgid, ap);
- }
-@@ -142,6 +149,43 @@ cpp_warning_syshdr (cpp_reader * pfile,
-
- va_end (ap);
- return ret;
-+}
-+
-+/* As cpp_warning above, but use RICHLOC as the location of the diagnostic. */
-+
-+bool cpp_warning_at (cpp_reader *pfile, enum cpp_warning_reason reason,
-+ rich_location *richloc, const char *msgid, ...)
-+{
-+ va_list ap;
-+ bool ret;
-+
-+ va_start (ap, msgid);
-+
-+ ret = cpp_diagnostic_at (pfile, CPP_DL_WARNING, reason, richloc,
-+ msgid, &ap);
-+
-+ va_end (ap);
-+ return ret;
-+
-+}
-+
-+/* As cpp_pedwarning above, but use RICHLOC as the location of the
-+ diagnostic. */
-+
-+bool
-+cpp_pedwarning_at (cpp_reader * pfile, enum cpp_warning_reason reason,
-+ rich_location *richloc, const char *msgid, ...)
-+{
-+ va_list ap;
-+ bool ret;
-+
-+ va_start (ap, msgid);
-+
-+ ret = cpp_diagnostic_at (pfile, CPP_DL_PEDWARN, reason, richloc,
-+ msgid, &ap);
-+
-+ va_end (ap);
-+ return ret;
- }
-
- /* Print a diagnostic at a specific location. */
-diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h
---- a/libcpp/include/cpplib.h 2021-12-13 23:23:05.768437079 -0800
-+++ b/libcpp/include/cpplib.h 2021-12-14 01:20:16.189507386 -0800
-@@ -1275,6 +1275,14 @@ extern bool cpp_warning_syshdr (cpp_read
- const char *msgid, ...)
- ATTRIBUTE_PRINTF_3;
-
-+/* As their counterparts above, but use RICHLOC. */
-+extern bool cpp_warning_at (cpp_reader *, enum cpp_warning_reason,
-+ rich_location *richloc, const char *msgid, ...)
-+ ATTRIBUTE_PRINTF_4;
-+extern bool cpp_pedwarning_at (cpp_reader *, enum cpp_warning_reason,
-+ rich_location *richloc, const char *msgid, ...)
-+ ATTRIBUTE_PRINTF_4;
-+
- /* Output a diagnostic with "MSGID: " preceding the
- error string of errno. No location is printed. */
- extern bool cpp_errno (cpp_reader *, enum cpp_diagnostic_level,
-@@ -1435,42 +1443,95 @@ extern const char * cpp_get_userdef_suff
-
- /* In charset.c */
-
-+/* The result of attempting to decode a run of UTF-8 bytes. */
-+
-+struct cpp_decoded_char
-+{
-+ const char *m_start_byte;
-+ const char *m_next_byte;
-+
-+ bool m_valid_ch;
-+ cppchar_t m_ch;
-+};
-+
-+/* Information for mapping between code points and display columns.
-+
-+ This is a tabstop value, along with a callback for getting the
-+ widths of characters. Normally this callback is cpp_wcwidth, but we
-+ support other schemes for escaping non-ASCII unicode as a series of
-+ ASCII chars when printing the user's source code in diagnostic-show-locus.c
-+
-+ For example, consider:
-+ - the Unicode character U+03C0 "GREEK SMALL LETTER PI" (UTF-8: 0xCF 0x80)
-+ - the Unicode character U+1F642 "SLIGHTLY SMILING FACE"
-+ (UTF-8: 0xF0 0x9F 0x99 0x82)
-+ - the byte 0xBF (a stray trailing byte of a UTF-8 character)
-+ Normally U+03C0 would occupy one display column, U+1F642
-+ would occupy two display columns, and the stray byte would be
-+ printed verbatim as one display column.
-+
-+ However when escaping them as unicode code points as "<U+03C0>"
-+ and "<U+1F642>" they occupy 8 and 9 display columns respectively,
-+ and when escaping them as bytes as "<CF><80>" and "<F0><9F><99><82>"
-+ they occupy 8 and 16 display columns respectively. In both cases
-+ the stray byte is escaped to <BF> as 4 display columns. */
-+
-+struct cpp_char_column_policy
-+{
-+ cpp_char_column_policy (int tabstop,
-+ int (*width_cb) (cppchar_t c))
-+ : m_tabstop (tabstop),
-+ m_undecoded_byte_width (1),
-+ m_width_cb (width_cb)
-+ {}
-+
-+ int m_tabstop;
-+ /* Width in display columns of a stray byte that isn't decodable
-+ as UTF-8. */
-+ int m_undecoded_byte_width;
-+ int (*m_width_cb) (cppchar_t c);
-+};
-+
- /* A class to manage the state while converting a UTF-8 sequence to cppchar_t
- and computing the display width one character at a time. */
- class cpp_display_width_computation {
- public:
- cpp_display_width_computation (const char *data, int data_length,
-- int tabstop);
-+ const cpp_char_column_policy &policy);
- const char *next_byte () const { return m_next; }
- int bytes_processed () const { return m_next - m_begin; }
- int bytes_left () const { return m_bytes_left; }
- bool done () const { return !bytes_left (); }
- int display_cols_processed () const { return m_display_cols; }
-
-- int process_next_codepoint ();
-+ int process_next_codepoint (cpp_decoded_char *out);
- int advance_display_cols (int n);
-
- private:
- const char *const m_begin;
- const char *m_next;
- size_t m_bytes_left;
-- const int m_tabstop;
-+ const cpp_char_column_policy &m_policy;
- int m_display_cols;
- };
-
- /* Convenience functions that are simple use cases for class
- cpp_display_width_computation. Tab characters will be expanded to spaces
-- as determined by TABSTOP. */
-+ as determined by POLICY.m_tabstop, and non-printable-ASCII characters
-+ will be escaped as per POLICY. */
-+
- int cpp_byte_column_to_display_column (const char *data, int data_length,
-- int column, int tabstop);
-+ int column,
-+ const cpp_char_column_policy &policy);
- inline int cpp_display_width (const char *data, int data_length,
-- int tabstop)
-+ const cpp_char_column_policy &policy)
- {
- return cpp_byte_column_to_display_column (data, data_length, data_length,
-- tabstop);
-+ policy);
- }
- int cpp_display_column_to_byte_column (const char *data, int data_length,
-- int display_col, int tabstop);
-+ int display_col,
-+ const cpp_char_column_policy &policy);
- int cpp_wcwidth (cppchar_t c);
-
- #endif /* ! LIBCPP_CPPLIB_H */
-diff --git a/libcpp/include/line-map.h b/libcpp/include/line-map.h
---- a/libcpp/include/line-map.h 2021-07-27 23:55:08.716307283 -0700
-+++ b/libcpp/include/line-map.h 2021-12-14 01:16:01.557942991 -0800
-@@ -1781,6 +1781,18 @@ class rich_location
- const diagnostic_path *get_path () const { return m_path; }
- void set_path (const diagnostic_path *path) { m_path = path; }
-
-+ /* A flag for hinting that the diagnostic involves character encoding
-+ issues, and thus that it will be helpful to the user if we show some
-+ representation of how the characters in the pertinent source lines
-+ are encoded.
-+ The default is false (i.e. do not escape).
-+ When set to true, non-ASCII bytes in the pertinent source lines will
-+ be escaped in a manner controlled by the user-supplied option
-+ -fdiagnostics-escape-format=, so that the user can better understand
-+ what's going on with the encoding in their source file. */
-+ bool escape_on_output_p () const { return m_escape_on_output; }
-+ void set_escape_on_output (bool flag) { m_escape_on_output = flag; }
-+
- private:
- bool reject_impossible_fixit (location_t where);
- void stop_supporting_fixits ();
-@@ -1807,6 +1819,7 @@ protected:
- bool m_fixits_cannot_be_auto_applied;
-
- const diagnostic_path *m_path;
-+ bool m_escape_on_output;
- };
-
- /* A struct for the result of range_label::get_text: a NUL-terminated buffer
-diff --git a/libcpp/internal.h b/libcpp/internal.h
---- a/libcpp/internal.h 2021-12-13 23:23:05.768437079 -0800
-+++ b/libcpp/internal.h 2021-12-14 01:16:01.557942991 -0800
-@@ -776,6 +776,9 @@ extern void _cpp_do_file_change (cpp_rea
- extern void _cpp_pop_buffer (cpp_reader *);
- extern char *_cpp_bracket_include (cpp_reader *);
-
-+/* In errors.c */
-+extern location_t cpp_diagnostic_get_current_location (cpp_reader *);
-+
- /* In traditional.c. */
- extern bool _cpp_scan_out_logical_line (cpp_reader *, cpp_macro *, bool);
- extern bool _cpp_read_logical_line_trad (cpp_reader *);
-@@ -942,6 +945,26 @@ int linemap_get_expansion_line (class li
- const char* linemap_get_expansion_filename (class line_maps *,
- location_t);
-
-+/* A subclass of rich_location for emitting a diagnostic
-+ at the current location of the reader, but flagging
-+ it with set_escape_on_output (true). */
-+class encoding_rich_location : public rich_location
-+{
-+ public:
-+ encoding_rich_location (cpp_reader *pfile)
-+ : rich_location (pfile->line_table,
-+ cpp_diagnostic_get_current_location (pfile))
-+ {
-+ set_escape_on_output (true);
-+ }
-+
-+ encoding_rich_location (cpp_reader *pfile, location_t loc)
-+ : rich_location (pfile->line_table, loc)
-+ {
-+ set_escape_on_output (true);
-+ }
-+};
-+
- #ifdef __cplusplus
- }
- #endif
-diff --git a/libcpp/lex.c b/libcpp/lex.c
---- a/libcpp/lex.c 2021-12-14 01:14:48.435225968 -0800
-+++ b/libcpp/lex.c 2021-12-14 01:24:37.220995816 -0800
-@@ -1774,7 +1774,11 @@ skip_whitespace (cpp_reader *pfile, cppc
- while (is_nvspace (c));
-
- if (saw_NUL)
-- cpp_error (pfile, CPP_DL_WARNING, "null character(s) ignored");
-+ {
-+ encoding_rich_location rich_loc (pfile);
-+ cpp_error_at (pfile, CPP_DL_WARNING, &rich_loc,
-+ "null character(s) ignored");
-+ }
-
- buffer->cur--;
- }
-@@ -1803,6 +1807,28 @@ warn_about_normalization (cpp_reader *pf
- if (CPP_OPTION (pfile, warn_normalize) < NORMALIZE_STATE_RESULT (s)
- && !pfile->state.skipping)
- {
-+ location_t loc = token->src_loc;
-+
-+ /* If possible, create a location range for the token. */
-+ if (loc >= RESERVED_LOCATION_COUNT
-+ && token->type != CPP_EOF
-+ /* There must be no line notes to process. */
-+ && (!(pfile->buffer->cur
-+ >= pfile->buffer->notes[pfile->buffer->cur_note].pos
-+ && !pfile->overlaid_buffer)))
-+ {
-+ source_range tok_range;
-+ tok_range.m_start = loc;
-+ tok_range.m_finish
-+ = linemap_position_for_column (pfile->line_table,
-+ CPP_BUF_COLUMN (pfile->buffer,
-+ pfile->buffer->cur));
-+ loc = COMBINE_LOCATION_DATA (pfile->line_table,
-+ loc, tok_range, NULL);
-+ }
-+
-+ encoding_rich_location rich_loc (pfile, loc);
-+
- /* Make sure that the token is printed using UCNs, even
- if we'd otherwise happily print UTF-8. */
- unsigned char *buf = XNEWVEC (unsigned char, cpp_token_len (token));
-@@ -1810,11 +1836,11 @@ warn_about_normalization (cpp_reader *pf
-
- sz = cpp_spell_token (pfile, token, buf, false) - buf;
- if (NORMALIZE_STATE_RESULT (s) == normalized_C)
-- cpp_warning_with_line (pfile, CPP_W_NORMALIZE, token->src_loc, 0,
-- "`%.*s' is not in NFKC", (int) sz, buf);
-+ cpp_warning_at (pfile, CPP_W_NORMALIZE, &rich_loc,
-+ "`%.*s' is not in NFKC", (int) sz, buf);
- else
-- cpp_warning_with_line (pfile, CPP_W_NORMALIZE, token->src_loc, 0,
-- "`%.*s' is not in NFC", (int) sz, buf);
-+ cpp_warning_at (pfile, CPP_W_NORMALIZE, &rich_loc,
-+ "`%.*s' is not in NFC", (int) sz, buf);
- free (buf);
- }
- }
-diff --git a/libcpp/line-map.c b/libcpp/line-map.c
---- a/libcpp/line-map.c 2021-07-27 23:55:08.716307283 -0700
-+++ b/libcpp/line-map.c 2021-12-14 01:16:01.561942921 -0800
-@@ -2086,7 +2086,8 @@ rich_location::rich_location (line_maps
- m_fixit_hints (),
- m_seen_impossible_fixit (false),
- m_fixits_cannot_be_auto_applied (false),
-- m_path (NULL)
-+ m_path (NULL),
-+ m_escape_on_output (false)
- {
- add_range (loc, SHOW_RANGE_WITH_CARET, label);
- }
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-46195.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-46195.patch
deleted file mode 100644
index 7b3651c73e..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0001-CVE-2021-46195.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From f10bec5ffa487ad3033ed5f38cfd0fc7d696deab Mon Sep 17 00:00:00 2001
-From: Nick Clifton <nickc@redhat.com>
-Date: Mon, 31 Jan 2022 14:28:42 +0000
-Subject: [PATCH] libiberty: Fix infinite recursion in rust demangler.
-
-libiberty/
- PR demangler/98886
- PR demangler/99935
- * rust-demangle.c (struct rust_demangler): Add a recursion
- counter.
- (demangle_path): Increment/decrement the recursion counter upon
- entry and exit. Fail if the counter exceeds a fixed limit.
- (demangle_type): Likewise.
- (rust_demangle_callback): Initialise the recursion counter,
- disabling if requested by the option flags.
-
-CVE: CVE-2021-46195
-Upstream-Status: Backport
-[https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=f10bec5ffa487ad3033ed5f38cfd0fc7d696deab]
-Signed-off-by: Pgowda <pgowda.cve@gmail.com>
----
- libiberty/rust-demangle.c | 47 ++++++++++++++++++++++++++++++++++-----
- 1 file changed, 41 insertions(+), 6 deletions(-)
-
-diff --git a/libiberty/rust-demangle.c b/libiberty/rust-demangle.c
-index 18c760491bd..3b24d63892a 100644
---- a/libiberty/rust-demangle.c
-+++ b/libiberty/rust-demangle.c
-@@ -74,6 +74,12 @@ struct rust_demangler
- /* Rust mangling version, with legacy mangling being -1. */
- int version;
-
-+ /* Recursion depth. */
-+ unsigned int recursion;
-+ /* Maximum number of times demangle_path may be called recursively. */
-+#define RUST_MAX_RECURSION_COUNT 1024
-+#define RUST_NO_RECURSION_LIMIT ((unsigned int) -1)
-+
- uint64_t bound_lifetime_depth;
- };
-
-@@ -671,6 +677,15 @@ demangle_path (struct rust_demangler *rdm, int in_value)
- if (rdm->errored)
- return;
-
-+ if (rdm->recursion != RUST_NO_RECURSION_LIMIT)
-+ {
-+ ++ rdm->recursion;
-+ if (rdm->recursion > RUST_MAX_RECURSION_COUNT)
-+ /* FIXME: There ought to be a way to report
-+ that the recursion limit has been reached. */
-+ goto fail_return;
-+ }
-+
- switch (tag = next (rdm))
- {
- case 'C':
-@@ -688,10 +703,7 @@ demangle_path (struct rust_demangler *rdm, int in_value)
- case 'N':
- ns = next (rdm);
- if (!ISLOWER (ns) && !ISUPPER (ns))
-- {
-- rdm->errored = 1;
-- return;
-- }
-+ goto fail_return;
-
- demangle_path (rdm, in_value);
-
-@@ -776,9 +788,15 @@ demangle_path (struct rust_demangler *rdm, int in_value)
- }
- break;
- default:
-- rdm->errored = 1;
-- return;
-+ goto fail_return;
- }
-+ goto pass_return;
-+
-+ fail_return:
-+ rdm->errored = 1;
-+ pass_return:
-+ if (rdm->recursion != RUST_NO_RECURSION_LIMIT)
-+ -- rdm->recursion;
- }
-
- static void
-@@ -870,6 +888,19 @@ demangle_type (struct rust_demangler *rdm)
- return;
- }
-
-+ if (rdm->recursion != RUST_NO_RECURSION_LIMIT)
-+ {
-+ ++ rdm->recursion;
-+ if (rdm->recursion > RUST_MAX_RECURSION_COUNT)
-+ /* FIXME: There ought to be a way to report
-+ that the recursion limit has been reached. */
-+ {
-+ rdm->errored = 1;
-+ -- rdm->recursion;
-+ return;
-+ }
-+ }
-+
- switch (tag)
- {
- case 'R':
-@@ -1030,6 +1061,9 @@ demangle_type (struct rust_demangler *rdm)
- rdm->next--;
- demangle_path (rdm, 0);
- }
-+
-+ if (rdm->recursion != RUST_NO_RECURSION_LIMIT)
-+ -- rdm->recursion;
- }
-
- /* A trait in a trait object may have some "existential projections"
-@@ -1320,6 +1354,7 @@ rust_demangle_callback (const char *mangled, int options,
- rdm.skipping_printing = 0;
- rdm.verbose = (options & DMGL_VERBOSE) != 0;
- rdm.version = 0;
-+ rdm.recursion = (options & DMGL_NO_RECURSE_LIMIT) ? RUST_NO_RECURSION_LIMIT : 0;
- rdm.bound_lifetime_depth = 0;
-
- /* Rust symbols always start with _R (v0) or _ZN (legacy). */
---
-2.27.0
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch b/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
index 0bf8834bb2..66e582ca98 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0001-gcc-4.3.1-ARCH_FLAGS_FOR_TARGET.patch
@@ -1,4 +1,4 @@
-From 6badb97389cae4ff9a533d38dc7cceefe21b97a8 Mon Sep 17 00:00:00 2001
+From 31f94ef5b43a984a98f0eebd2dcf1b53aa1d7bce Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 08:37:11 +0400
Subject: [PATCH] gcc-4.3.1: ARCH_FLAGS_FOR_TARGET
@@ -12,10 +12,10 @@ Upstream-Status: Inappropriate [embedded specific]
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/configure b/configure
-index e218a19e333..45744e6e471 100755
+index 5dcaab14ae9..f76310a36bb 100755
--- a/configure
+++ b/configure
-@@ -9750,7 +9750,7 @@ fi
+@@ -10165,7 +10165,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
@@ -25,10 +25,10 @@ index e218a19e333..45744e6e471 100755
*" newlib "*)
case " $target_configargs " in
diff --git a/configure.ac b/configure.ac
-index 7e8e628b325..bf66b51373c 100644
+index 85977482aee..8b9097c7a45 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3255,7 +3255,7 @@ fi
+@@ -3346,7 +3346,7 @@ fi
# for target_alias and gcc doesn't manage it consistently.
target_configargs="--cache-file=./config.cache ${target_configargs}"
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0002-CVE-2021-42574.patch b/poky/meta/recipes-devtools/gcc/gcc/0002-CVE-2021-42574.patch
deleted file mode 100644
index 9bad81d4d0..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0002-CVE-2021-42574.patch
+++ /dev/null
@@ -1,1765 +0,0 @@
-From 51c500269bf53749b107807d84271385fad35628 Mon Sep 17 00:00:00 2001
-From: Marek Polacek <polacek@redhat.com>
-Date: Wed, 6 Oct 2021 14:33:59 -0400
-Subject: [PATCH] libcpp: Implement -Wbidi-chars for CVE-2021-42574 [PR103026]
-
-From a link below:
-"An issue was discovered in the Bidirectional Algorithm in the Unicode
-Specification through 14.0. It permits the visual reordering of
-characters via control sequences, which can be used to craft source code
-that renders different logic than the logical ordering of tokens
-ingested by compilers and interpreters. Adversaries can leverage this to
-encode source code for compilers accepting Unicode such that targeted
-vulnerabilities are introduced invisibly to human reviewers."
-
-More info:
-https://nvd.nist.gov/vuln/detail/CVE-2021-42574
-https://trojansource.codes/
-
-This is not a compiler bug. However, to mitigate the problem, this patch
-implements -Wbidi-chars=[none|unpaired|any] to warn about possibly
-misleading Unicode bidirectional control characters the preprocessor may
-encounter.
-
-The default is =unpaired, which warns about improperly terminated
-bidirectional control characters; e.g. a LRE without its corresponding PDF.
-The level =any warns about any use of bidirectional control characters.
-
-This patch handles both UCNs and UTF-8 characters. UCNs designating
-bidi characters in identifiers are accepted since r204886. Then r217144
-enabled -fextended-identifiers by default. Extended characters in C/C++
-identifiers have been accepted since r275979. However, this patch still
-warns about mixing UTF-8 and UCN bidi characters; there seems to be no
-good reason to allow mixing them.
-
-We warn in different contexts: comments (both C and C++-style), string
-literals, character constants, and identifiers. Expectedly, UCNs are ignored
-in comments and raw string literals. The bidirectional control characters
-can nest so this patch handles that as well.
-
-I have not included nor tested this at all with Fortran (which also has
-string literals and line comments).
-
-Dave M. posted patches improving diagnostic involving Unicode characters.
-This patch does not make use of this new infrastructure yet.
-
- PR preprocessor/103026
-
-gcc/c-family/ChangeLog:
-
- * c.opt (Wbidi-chars, Wbidi-chars=): New option.
-
-gcc/ChangeLog:
-
- * doc/invoke.texi: Document -Wbidi-chars.
-
-libcpp/ChangeLog:
-
- * include/cpplib.h (enum cpp_bidirectional_level): New.
- (struct cpp_options): Add cpp_warn_bidirectional.
- (enum cpp_warning_reason): Add CPP_W_BIDIRECTIONAL.
- * internal.h (struct cpp_reader): Add warn_bidi_p member
- function.
- * init.c (cpp_create_reader): Set cpp_warn_bidirectional.
- * lex.c (bidi): New namespace.
- (get_bidi_utf8): New function.
- (get_bidi_ucn): Likewise.
- (maybe_warn_bidi_on_close): Likewise.
- (maybe_warn_bidi_on_char): Likewise.
- (_cpp_skip_block_comment): Implement warning about bidirectional
- control characters.
- (skip_line_comment): Likewise.
- (forms_identifier_p): Likewise.
- (lex_identifier): Likewise.
- (lex_string): Likewise.
- (lex_raw_string): Likewise.
-
-gcc/testsuite/ChangeLog:
-
- * c-c++-common/Wbidi-chars-1.c: New test.
- * c-c++-common/Wbidi-chars-2.c: New test.
- * c-c++-common/Wbidi-chars-3.c: New test.
- * c-c++-common/Wbidi-chars-4.c: New test.
- * c-c++-common/Wbidi-chars-5.c: New test.
- * c-c++-common/Wbidi-chars-6.c: New test.
- * c-c++-common/Wbidi-chars-7.c: New test.
- * c-c++-common/Wbidi-chars-8.c: New test.
- * c-c++-common/Wbidi-chars-9.c: New test.
- * c-c++-common/Wbidi-chars-10.c: New test.
- * c-c++-common/Wbidi-chars-11.c: New test.
- * c-c++-common/Wbidi-chars-12.c: New test.
- * c-c++-common/Wbidi-chars-13.c: New test.
- * c-c++-common/Wbidi-chars-14.c: New test.
- * c-c++-common/Wbidi-chars-15.c: New test.
- * c-c++-common/Wbidi-chars-16.c: New test.
- * c-c++-common/Wbidi-chars-17.c: New test.
-
-CVE: CVE-2021-42574
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=51c500269bf53749b107807d84271385fad35628]
-Signed-off-by: Pgowda <pgowda.cve@gmail.com>
-
----
- gcc/c-family/c.opt | 24 ++
- gcc/doc/invoke.texi | 21 +-
- gcc/testsuite/c-c++-common/Wbidi-chars-1.c | 12 +
- gcc/testsuite/c-c++-common/Wbidi-chars-10.c | 27 ++
- gcc/testsuite/c-c++-common/Wbidi-chars-11.c | 13 +
- gcc/testsuite/c-c++-common/Wbidi-chars-12.c | 19 +
- gcc/testsuite/c-c++-common/Wbidi-chars-13.c | 17 +
- gcc/testsuite/c-c++-common/Wbidi-chars-14.c | 38 ++
- gcc/testsuite/c-c++-common/Wbidi-chars-15.c | 59 +++
- gcc/testsuite/c-c++-common/Wbidi-chars-16.c | 26 ++
- gcc/testsuite/c-c++-common/Wbidi-chars-17.c | 30 ++
- gcc/testsuite/c-c++-common/Wbidi-chars-2.c | 9 +
- gcc/testsuite/c-c++-common/Wbidi-chars-3.c | 11 +
- gcc/testsuite/c-c++-common/Wbidi-chars-4.c | 188 +++++++++
- gcc/testsuite/c-c++-common/Wbidi-chars-5.c | 188 +++++++++
- gcc/testsuite/c-c++-common/Wbidi-chars-6.c | 155 ++++++++
- gcc/testsuite/c-c++-common/Wbidi-chars-7.c | 9 +
- gcc/testsuite/c-c++-common/Wbidi-chars-8.c | 13 +
- gcc/testsuite/c-c++-common/Wbidi-chars-9.c | 29 ++
- libcpp/include/cpplib.h | 18 +-
- libcpp/init.c | 1 +
- libcpp/internal.h | 7 +
- libcpp/lex.c | 408 +++++++++++++++++++-
- 23 files changed, 1315 insertions(+), 7 deletions(-)
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-1.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-10.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-11.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-12.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-13.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-14.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-15.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-16.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-17.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-2.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-3.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-4.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-5.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-6.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-7.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-8.c
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-9.c
-
-diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
-index 8a4cd634f77..3976fc368db 100644
---- a/gcc/c-family/c.opt
-+++ b/gcc/c-family/c.opt
-@@ -370,6 +370,30 @@ Wbad-function-cast
- C ObjC Var(warn_bad_function_cast) Warning
- Warn about casting functions to incompatible types.
-
-+Wbidi-chars
-+C ObjC C++ ObjC++ Warning Alias(Wbidi-chars=,any,none)
-+;
-+
-+Wbidi-chars=
-+C ObjC C++ ObjC++ RejectNegative Joined Warning CPP(cpp_warn_bidirectional) CppReason(CPP_W_BIDIRECTIONAL) Var(warn_bidirectional) Init(bidirectional_unpaired) Enum(cpp_bidirectional_level)
-+-Wbidi-chars=[none|unpaired|any] Warn about UTF-8 bidirectional control characters.
-+
-+; Required for these enum values.
-+SourceInclude
-+cpplib.h
-+
-+Enum
-+Name(cpp_bidirectional_level) Type(int) UnknownError(argument %qs to %<-Wbidi-chars%> not recognized)
-+
-+EnumValue
-+Enum(cpp_bidirectional_level) String(none) Value(bidirectional_none)
-+
-+EnumValue
-+Enum(cpp_bidirectional_level) String(unpaired) Value(bidirectional_unpaired)
-+
-+EnumValue
-+Enum(cpp_bidirectional_level) String(any) Value(bidirectional_any)
-+
- Wbool-compare
- C ObjC C++ ObjC++ Var(warn_bool_compare) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)
- Warn about boolean expression compared with an integer value different from true/false.
-diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index 6070288856c..a22758d18ee 100644
---- a/gcc/doc/invoke.texi
-+++ b/gcc/doc/invoke.texi
-@@ -326,7 +326,9 @@ Objective-C and Objective-C++ Dialects}.
- -Warith-conversion @gol
- -Warray-bounds -Warray-bounds=@var{n} @gol
- -Wno-attributes -Wattribute-alias=@var{n} -Wno-attribute-alias @gol
---Wno-attribute-warning -Wbool-compare -Wbool-operation @gol
-+-Wno-attribute-warning @gol
-+-Wbidi-chars=@r{[}none@r{|}unpaired@r{|}any@r{]} @gol
-+-Wbool-compare -Wbool-operation @gol
- -Wno-builtin-declaration-mismatch @gol
- -Wno-builtin-macro-redefined -Wc90-c99-compat -Wc99-c11-compat @gol
- -Wc11-c2x-compat @gol
-@@ -7559,6 +7561,23 @@ Attributes considered include @code{allo
- This is the default. You can disable these warnings with either
- @option{-Wno-attribute-alias} or @option{-Wattribute-alias=0}.
-
-+@item -Wbidi-chars=@r{[}none@r{|}unpaired@r{|}any@r{]}
-+@opindex Wbidi-chars=
-+@opindex Wbidi-chars
-+@opindex Wno-bidi-chars
-+Warn about possibly misleading UTF-8 bidirectional control characters in
-+comments, string literals, character constants, and identifiers. Such
-+characters can change left-to-right writing direction into right-to-left
-+(and vice versa), which can cause confusion between the logical order and
-+visual order. This may be dangerous; for instance, it may seem that a piece
-+of code is not commented out, whereas it in fact is.
-+
-+There are three levels of warning supported by GCC@. The default is
-+@option{-Wbidi-chars=unpaired}, which warns about improperly terminated
-+bidi contexts. @option{-Wbidi-chars=none} turns the warning off.
-+@option{-Wbidi-chars=any} warns about any use of bidirectional control
-+characters.
-+
- @item -Wbool-compare
- @opindex Wno-bool-compare
- @opindex Wbool-compare
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-10.c b/gcc/testsuite/c-c++-common/Wbidi-chars-10.c
-new file mode 100644
-index 00000000000..34f5ac19271
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-10.c
-@@ -0,0 +1,27 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* More nesting testing. */
-+
-+/* RLEâ« LRI⦠PDF⬠PDIâ©*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int LRE_\u202a_PDF_\u202c;
-+int LRE_\u202a_PDF_\u202c_LRE_\u202a_PDF_\u202c;
-+int LRE_\u202a_LRI_\u2066_PDF_\u202c_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLE_\u202b_RLI_\u2067_PDF_\u202c_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLE_\u202b_RLI_\u2067_PDI_\u2069_PDF_\u202c;
-+int FSI_\u2068_LRO_\u202d_PDI_\u2069_PDF_\u202c;
-+int FSI_\u2068;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int FSI_\u2068_PDI_\u2069;
-+int FSI_\u2068_FSI_\u2068_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069;
-+int RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDF_\u202c;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLI_\u2067_RLI_\u2067_RLI_\u2067_RLI_\u2067_FSI_\u2068_PDI_\u2069_PDI_\u2069_PDI_\u2069_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-11.c b/gcc/testsuite/c-c++-common/Wbidi-chars-11.c
-new file mode 100644
-index 00000000000..270ce2368a9
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-11.c
-@@ -0,0 +1,13 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test that we warn when mixing UCN and UTF-8. */
-+
-+int LRE_âª_PDF_\u202c;
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-+int LRE_\u202a_PDF_â¬_;
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-+const char *s1 = "LRE_âª_PDF_\u202c";
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-+const char *s2 = "LRE_\u202a_PDF_â¬";
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-12.c b/gcc/testsuite/c-c++-common/Wbidi-chars-12.c
-new file mode 100644
-index 00000000000..b07eec1da91
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-12.c
-@@ -0,0 +1,19 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile { target { c || c++11 } } } */
-+/* { dg-options "-Wbidi-chars=any" } */
-+/* Test raw strings. */
-+
-+const char *s1 = R"(a b c LRE⪠1 2 3 PDF⬠x y z)";
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+const char *s2 = R"(a b c RLE⫠1 2 3 PDF⬠x y z)";
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+const char *s3 = R"(a b c LRO⭠1 2 3 PDF⬠x y z)";
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+const char *s4 = R"(a b c RLO⮠1 2 3 PDF⬠x y z)";
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+const char *s7 = R"(a b c FSI⨠1 2 3 PDI⩠x y) z";
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+const char *s8 = R"(a b c PDIâ© x y )z";
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-+const char *s9 = R"(a b c PDF⬠x y z)";
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-diff -uprN '-x*.orig' '-x*.rej' del/gcc-11.2.0/gcc/testsuite/c-c++-common/Wbidi-chars-13.c gcc-11.2.0/gcc/testsuite/c-c++-common/Wbidi-chars-13.c
---- del/gcc-11.2.0/gcc/testsuite/c-c++-common/Wbidi-chars-13.c 1969-12-31 16:00:00.000000000 -0800
-+++ gcc-11.2.0/gcc/testsuite/c-c++-common/Wbidi-chars-13.c 2021-12-13 23:11:22.328439287 -0800
-@@ -0,0 +1,17 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile { target { c || c++11 } } } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test raw strings. */
-+
-+const char *s1 = R"(a b c LRE⪠1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s2 = R"(a b c RLEâ« 1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s3 = R"(a b c LROâ­ 1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s4 = R"(a b c FSI⨠1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s5 = R"(a b c LRI⦠1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s6 = R"(a b c RLI⧠1 2 3)";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-14.c b/gcc/testsuite/c-c++-common/Wbidi-chars-14.c
-new file mode 100644
-index 00000000000..ba5f75d9553
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-14.c
-@@ -0,0 +1,38 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test PDI handling, which also pops any subsequent LREs, RLEs, LROs,
-+ or RLOs. */
-+
-+/* LRI_â¦_LRI_â¦_RLE_â«_RLE_â«_RLE_â«_PDI_â©*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// LRI_â¦_RLE_â«_RLE_â«_RLE_â«_PDI_â©
-+// LRI_â¦_RLO_â®_RLE_â«_RLE_â«_PDI_â©
-+// LRI_â¦_RLO_â®_RLE_â«_PDI_â©
-+// FSI_â¨_RLO_â®_PDI_â©
-+// FSI_â¨_FSI_â¨_RLO_â®_PDI_â©
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+int LRI_\u2066_LRI_\u2066_LRE_\u202a_LRE_\u202a_LRE_\u202a_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int LRI_\u2066_LRI_\u2066_LRE_\u202a_LRE_\u202a_LRE_\u202a_PDI_\u2069_PDI_\u2069;
-+int LRI_\u2066_LRI_\u2066_LRI_\u2066_LRE_\u202a_LRE_\u202a_LRE_\u202a_PDI_\u2069_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int PDI_\u2069;
-+int LRI_\u2066_PDI_\u2069;
-+int RLI_\u2067_PDI_\u2069;
-+int LRE_\u202a_LRI_\u2066_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int LRI_\u2066_LRE_\u202a_PDF_\u202c_PDI_\u2069;
-+int LRI_\u2066_LRE_\u202a_LRE_\u202a_PDF_\u202c_PDI_\u2069;
-+int RLI_\u2067_LRI_\u2066_LRE_\u202a_LRE_\u202a_PDF_\u202c_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int FSI_\u2068_LRI_\u2066_LRE_\u202a_LRE_\u202a_PDF_\u202c_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLO_\u202e_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int RLI_\u2067_PDI_\u2069_RLI_\u2067;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int FSI_\u2068_PDF_\u202c_PDI_\u2069;
-+int FSI_\u2068_FSI_\u2068_PDF_\u202c_PDI_\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-15.c b/gcc/testsuite/c-c++-common/Wbidi-chars-15.c
-new file mode 100644
-index 00000000000..a0ce8ff5e2c
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-15.c
-@@ -0,0 +1,59 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test unpaired bidi control chars in multiline comments. */
-+
-+/*
-+ * LRE⪠end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * RLEâ« end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * LROâ­ end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * RLOâ® end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * LRI⦠end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * RLI⧠end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/*
-+ * FSI⨠end
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/* LREâª
-+ PDF⬠*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+/* FSIâ¨
-+ PDIâ© */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+
-+/* LRE<âª>
-+ *
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-3 } */
-+
-+/*
-+ * LRE<âª>
-+ */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+
-+/*
-+ *
-+ * LRE<âª> */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+/* RLI<â§> */ /* PDI<â©> */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* LRE<âª> */ /* PDF<â¬> */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-16.c b/gcc/testsuite/c-c++-common/Wbidi-chars-16.c
-new file mode 100644
-index 00000000000..baa0159861c
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-16.c
-@@ -0,0 +1,26 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=any" } */
-+/* Test LTR/RTL chars. */
-+
-+/* LTR<â> */
-+/* { dg-warning "U\\+200E" "" { target *-*-* } .-1 } */
-+// LTR<â>
-+/* { dg-warning "U\\+200E" "" { target *-*-* } .-1 } */
-+/* RTL<â> */
-+/* { dg-warning "U\\+200F" "" { target *-*-* } .-1 } */
-+// RTL<â>
-+/* { dg-warning "U\\+200F" "" { target *-*-* } .-1 } */
-+
-+const char *s1 = "LTR<â>";
-+/* { dg-warning "U\\+200E" "" { target *-*-* } .-1 } */
-+const char *s2 = "LTR\u200e";
-+/* { dg-warning "U\\+200E" "" { target *-*-* } .-1 } */
-+const char *s3 = "LTR\u200E";
-+/* { dg-warning "U\\+200E" "" { target *-*-* } .-1 } */
-+const char *s4 = "RTL<â>";
-+/* { dg-warning "U\\+200F" "" { target *-*-* } .-1 } */
-+const char *s5 = "RTL\u200f";
-+/* { dg-warning "U\\+200F" "" { target *-*-* } .-1 } */
-+const char *s6 = "RTL\u200F";
-+/* { dg-warning "U\\+200F" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-17.c b/gcc/testsuite/c-c++-common/Wbidi-chars-17.c
-new file mode 100644
-index 00000000000..07cb4321f96
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-17.c
-@@ -0,0 +1,30 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test LTR/RTL chars. */
-+
-+/* LTR<â> */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// LTR<â>
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* RTL<â> */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// RTL<â>
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int ltr_\u200e;
-+/* { dg-error "universal character " "" { target *-*-* } .-1 } */
-+int rtl_\u200f;
-+/* { dg-error "universal character " "" { target *-*-* } .-1 } */
-+
-+const char *s1 = "LTR<â>";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+const char *s2 = "LTR\u200e";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+const char *s3 = "LTR\u200E";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+const char *s4 = "RTL<â>";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+const char *s5 = "RTL\u200f";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+const char *s6 = "RTL\u200F";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-1.c b/gcc/testsuite/c-c++-common/Wbidi-chars-1.c
-new file mode 100644
-index 00000000000..2340374f276
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-1.c
-@@ -0,0 +1,12 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+
-+int main() {
-+ int isAdmin = 0;
-+ /*â® } â¦if (isAdmin)⩠⦠begin admins only */
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+ __builtin_printf("You are an admin.\n");
-+ /* end admins only â® { â¦*/
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+ return 0;
-+}
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-2.c b/gcc/testsuite/c-c++-common/Wbidi-chars-2.c
-new file mode 100644
-index 00000000000..2340374f276
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-2.c
-@@ -0,0 +1,9 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+
-+int main() {
-+ /* Say hello; newlineâ§/*/ return 0 ;
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+ __builtin_printf("Hello world.\n");
-+ return 0;
-+}
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-3.c b/gcc/testsuite/c-c++-common/Wbidi-chars-3.c
-new file mode 100644
-index 00000000000..9dc7edb6e64
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-3.c
-@@ -0,0 +1,11 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+
-+int main() {
-+ const char* access_level = "user";
-+ if (__builtin_strcmp(access_level, "userâ® â¦// Check if adminâ© â¦")) {
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+ __builtin_printf("You are an admin.\n");
-+ }
-+ return 0;
-+}
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-4.c b/gcc/testsuite/c-c++-common/Wbidi-chars-4.c
-new file mode 100644
-index 00000000000..639e5c62e88
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-4.c
-@@ -0,0 +1,188 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=any -Wno-multichar -Wno-overflow" } */
-+/* Test all bidi chars in various contexts (identifiers, comments,
-+ string literals, character constants), both UCN and UTF-8. The bidi
-+ chars here are properly terminated, except for the character constants. */
-+
-+/* a b c LRE⪠1 2 3 PDF⬠x y z */
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+/* a b c RLE⫠1 2 3 PDF⬠x y z */
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+/* a b c LRO⭠1 2 3 PDF⬠x y z */
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+/* a b c RLO⮠1 2 3 PDF⬠x y z */
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+/* a b c LRI⦠1 2 3 PDI⩠x y z */
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+/* a b c RLI⧠1 2 3 PDI⩠x y */
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+/* a b c FSI⨠1 2 3 PDI⩠x y z */
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+
-+/* Same but C++ comments instead. */
-+// a b c LRE⪠1 2 3 PDF⬠x y z
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+// a b c RLE⫠1 2 3 PDF⬠x y z
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+// a b c LRO⭠1 2 3 PDF⬠x y z
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+// a b c RLO⮠1 2 3 PDF⬠x y z
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+// a b c LRI⦠1 2 3 PDI⩠x y z
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+// a b c RLI⧠1 2 3 PDI⩠x y
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+// a b c FSI⨠1 2 3 PDI⩠x y z
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+
-+/* Here we're closing an unopened context, warn when =any. */
-+/* a b c PDIâ© x y z */
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-+/* a b c PDF⬠x y z */
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+// a b c PDIâ© x y z
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-+// a b c PDF⬠x y z
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+
-+/* Multiline comments. */
-+/* a b c PDIâ© x y z
-+ */
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-2 } */
-+/* a b c PDF⬠x y z
-+ */
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDIâ© x y z
-+ */
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDF⬠x y z
-+ */
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDIâ© x y z */
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-+/* first
-+ a b c PDF⬠x y z */
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+
-+void
-+g1 ()
-+{
-+ const char *s1 = "a b c LRE⪠1 2 3 PDF⬠x y z";
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+ const char *s2 = "a b c RLE⫠1 2 3 PDF⬠x y z";
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+ const char *s3 = "a b c LRO⭠1 2 3 PDF⬠x y z";
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+ const char *s4 = "a b c RLO⮠1 2 3 PDF⬠x y z";
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+ const char *s5 = "a b c LRI⦠1 2 3 PDI⩠x y z";
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+ const char *s6 = "a b c RLI⧠1 2 3 PDI⩠x y z";
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+ const char *s7 = "a b c FSI⨠1 2 3 PDI⩠x y z";
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+ const char *s8 = "a b c PDIâ© x y z";
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-+ const char *s9 = "a b c PDF⬠x y z";
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+
-+ const char *s10 = "a b c LRE\u202a 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+ const char *s11 = "a b c LRE\u202A 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+ const char *s12 = "a b c RLE\u202b 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+ const char *s13 = "a b c RLE\u202B 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+ const char *s14 = "a b c LRO\u202d 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+ const char *s15 = "a b c LRO\u202D 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+ const char *s16 = "a b c RLO\u202e 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+ const char *s17 = "a b c RLO\u202E 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+ const char *s18 = "a b c LRI\u2066 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+ const char *s19 = "a b c RLI\u2067 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+ const char *s20 = "a b c FSI\u2068 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+}
-+
-+void
-+g2 ()
-+{
-+ const char c1 = '\u202a';
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+ const char c2 = '\u202A';
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+ const char c3 = '\u202b';
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+ const char c4 = '\u202B';
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+ const char c5 = '\u202d';
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+ const char c6 = '\u202D';
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+ const char c7 = '\u202e';
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+ const char c8 = '\u202E';
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+ const char c9 = '\u2066';
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+ const char c10 = '\u2067';
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+ const char c11 = '\u2068';
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+}
-+
-+int aâªbâ¬c;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int aâ«bâ¬c;
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+int aâ­bâ¬c;
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+int aâ®bâ¬c;
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+int aâ¦bâ©c;
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+int aâ§bâ©c;
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+int aâ¨bâ©c;
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+int Aâ¬X;
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+int A\u202cY;
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+int A\u202CY2;
-+/* { dg-warning "U\\+202C" "" { target *-*-* } .-1 } */
-+
-+int d\u202ae\u202cf;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int d\u202Ae\u202cf2;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int d\u202be\u202cf;
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+int d\u202Be\u202cf2;
-+/* { dg-warning "U\\+202B" "" { target *-*-* } .-1 } */
-+int d\u202de\u202cf;
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+int d\u202De\u202cf2;
-+/* { dg-warning "U\\+202D" "" { target *-*-* } .-1 } */
-+int d\u202ee\u202cf;
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+int d\u202Ee\u202cf2;
-+/* { dg-warning "U\\+202E" "" { target *-*-* } .-1 } */
-+int d\u2066e\u2069f;
-+/* { dg-warning "U\\+2066" "" { target *-*-* } .-1 } */
-+int d\u2067e\u2069f;
-+/* { dg-warning "U\\+2067" "" { target *-*-* } .-1 } */
-+int d\u2068e\u2069f;
-+/* { dg-warning "U\\+2068" "" { target *-*-* } .-1 } */
-+int X\u2069;
-+/* { dg-warning "U\\+2069" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-5.c b/gcc/testsuite/c-c++-common/Wbidi-chars-5.c
-new file mode 100644
-index 00000000000..68cb053144b
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-5.c
-@@ -0,0 +1,188 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired -Wno-multichar -Wno-overflow" } */
-+/* Test all bidi chars in various contexts (identifiers, comments,
-+ string literals, character constants), both UCN and UTF-8. The bidi
-+ chars here are properly terminated, except for the character constants. */
-+
-+/* a b c LRE⪠1 2 3 PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLE⫠1 2 3 PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c LRO⭠1 2 3 PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLO⮠1 2 3 PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c LRI⦠1 2 3 PDI⩠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLI⧠1 2 3 PDI⩠x y */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c FSI⨠1 2 3 PDI⩠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+/* Same but C++ comments instead. */
-+// a b c LRE⪠1 2 3 PDF⬠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLE⫠1 2 3 PDF⬠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c LRO⭠1 2 3 PDF⬠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLO⮠1 2 3 PDF⬠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c LRI⦠1 2 3 PDI⩠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLI⧠1 2 3 PDI⩠x y
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c FSI⨠1 2 3 PDI⩠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+/* Here we're closing an unopened context, warn when =any. */
-+/* a b c PDIâ© x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c PDIâ© x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+// a b c PDF⬠x y z
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+/* Multiline comments. */
-+/* a b c PDIâ© x y z
-+ */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-2 } */
-+/* a b c PDF⬠x y z
-+ */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDIâ© x y z
-+ */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDF⬠x y z
-+ */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-2 } */
-+/* first
-+ a b c PDIâ© x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+/* first
-+ a b c PDF⬠x y z */
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+void
-+g1 ()
-+{
-+ const char *s1 = "a b c LRE⪠1 2 3 PDF⬠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s2 = "a b c RLE⫠1 2 3 PDF⬠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s3 = "a b c LRO⭠1 2 3 PDF⬠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s4 = "a b c RLO⮠1 2 3 PDF⬠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s5 = "a b c LRI⦠1 2 3 PDI⩠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s6 = "a b c RLI⧠1 2 3 PDI⩠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s7 = "a b c FSI⨠1 2 3 PDI⩠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s8 = "a b c PDIâ© x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s9 = "a b c PDF⬠x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+ const char *s10 = "a b c LRE\u202a 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s11 = "a b c LRE\u202A 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s12 = "a b c RLE\u202b 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s13 = "a b c RLE\u202B 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s14 = "a b c LRO\u202d 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s15 = "a b c LRO\u202D 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s16 = "a b c RLO\u202e 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s17 = "a b c RLO\u202E 1 2 3 PDF\u202c x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s18 = "a b c LRI\u2066 1 2 3 PDI\u2069 x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s19 = "a b c RLI\u2067 1 2 3 PDI\u2069 x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s20 = "a b c FSI\u2068 1 2 3 PDI\u2069 x y z";
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+}
-+
-+void
-+g2 ()
-+{
-+ const char c1 = '\u202a';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c2 = '\u202A';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c3 = '\u202b';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c4 = '\u202B';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c5 = '\u202d';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c6 = '\u202D';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c7 = '\u202e';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c8 = '\u202E';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c9 = '\u2066';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c10 = '\u2067';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char c11 = '\u2068';
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+}
-+
-+int aâªbâ¬c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ«bâ¬c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ­bâ¬c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ®bâ¬c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ¦bâ©c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ§bâ©c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int aâ¨bâ©c;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int Aâ¬X;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int A\u202cY;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int A\u202CY2;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+
-+int d\u202ae\u202cf;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202Ae\u202cf2;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202be\u202cf;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202Be\u202cf2;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202de\u202cf;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202De\u202cf2;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202ee\u202cf;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u202Ee\u202cf2;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u2066e\u2069f;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u2067e\u2069f;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int d\u2068e\u2069f;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-+int X\u2069;
-+/* { dg-bogus "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-6.c b/gcc/testsuite/c-c++-common/Wbidi-chars-6.c
-new file mode 100644
-index 00000000000..0ce6fff2dee
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-6.c
-@@ -0,0 +1,155 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test nesting of bidi chars in various contexts. */
-+
-+/* Terminated by the wrong char: */
-+/* a b c LRE⪠1 2 3 PDI⩠x y z */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLEâ« 1 2 3 PDIâ© x y z*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c LROâ­ 1 2 3 PDIâ© x y z */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLOâ® 1 2 3 PDIâ© x y z */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c LRI⦠1 2 3 PDF⬠x y z */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c RLI⧠1 2 3 PDF⬠x y z */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* a b c FSI⨠1 2 3 PDF⬠x y z*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+/* LRE⪠PDF⬠*/
-+/* LRE⪠LRE⪠PDF⬠PDF⬠*/
-+/* PDF⬠LRE⪠PDF⬠*/
-+/* LRE⪠PDF⬠LRE⪠PDF⬠*/
-+/* LRE⪠LRE⪠PDF⬠*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* PDF⬠LRE⪠*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+// a b c LRE⪠1 2 3 PDI⩠x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLEâ« 1 2 3 PDIâ© x y z*/
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c LROâ­ 1 2 3 PDIâ© x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLOâ® 1 2 3 PDIâ© x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c LRI⦠1 2 3 PDF⬠x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c RLI⧠1 2 3 PDF⬠x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// a b c FSI⨠1 2 3 PDF⬠x y z
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+// LRE⪠PDFâ¬
-+// LRE⪠LRE⪠PDF⬠PDFâ¬
-+// PDF⬠LRE⪠PDFâ¬
-+// LRE⪠PDF⬠LRE⪠PDFâ¬
-+// LRE⪠LRE⪠PDFâ¬
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+// PDF⬠LREâª
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+void
-+g1 ()
-+{
-+ const char *s1 = "a b c LRE⪠1 2 3 PDI⩠x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s2 = "a b c LRE\u202a 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s3 = "a b c RLEâ« 1 2 3 PDIâ© x y ";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s4 = "a b c RLE\u202b 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s5 = "a b c LROâ­ 1 2 3 PDIâ© x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s6 = "a b c LRO\u202d 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s7 = "a b c RLOâ® 1 2 3 PDIâ© x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s8 = "a b c RLO\u202e 1 2 3 PDI\u2069 x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s9 = "a b c LRI⦠1 2 3 PDF⬠x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s10 = "a b c LRI\u2066 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s11 = "a b c RLI⧠1 2 3 PDF⬠x y z\
-+ ";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+ const char *s12 = "a b c RLI\u2067 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s13 = "a b c FSI⨠1 2 3 PDF⬠x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s14 = "a b c FSI\u2068 1 2 3 PDF\u202c x y z";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s15 = "PDF⬠LREâª";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s16 = "PDF\u202c LRE\u202a";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s17 = "LRE⪠PDFâ¬";
-+ const char *s18 = "LRE\u202a PDF\u202c";
-+ const char *s19 = "LRE⪠LRE⪠PDF⬠PDFâ¬";
-+ const char *s20 = "LRE\u202a LRE\u202a PDF\u202c PDF\u202c";
-+ const char *s21 = "PDF⬠LRE⪠PDFâ¬";
-+ const char *s22 = "PDF\u202c LRE\u202a PDF\u202c";
-+ const char *s23 = "LRE⪠LRE⪠PDFâ¬";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s24 = "LRE\u202a LRE\u202a PDF\u202c";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s25 = "PDF⬠LREâª";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s26 = "PDF\u202c LRE\u202a";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s27 = "PDF⬠LRE\u202a";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+ const char *s28 = "PDF\u202c LREâª";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+}
-+
-+int aLREâªbPDIâ©;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int A\u202aB\u2069C;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aRLEâ«bPDIâ©;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a\u202bB\u2069c;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aLROâ­bPDIâ©;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a\u202db\u2069c2;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aRLOâ®bPDIâ©;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a\u202eb\u2069;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aLRIâ¦bPDFâ¬;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a\u2066b\u202c;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aRLIâ§bPDFâ¬c
-+;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-2 } */
-+int a\u2067b\u202c;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aFSIâ¨bPDFâ¬;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a\u2068b\u202c;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aFSIâ¨bPD\u202C;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aFSI\u2068bPDFâ¬_;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int aLREâªbPDFâ¬b;
-+int A\u202aB\u202c;
-+int a_LREâª_LREâª_b_PDFâ¬_PDFâ¬;
-+int A\u202aA\u202aB\u202cB\u202c;
-+int aPDFâ¬bLREadPDFâ¬;
-+int a_\u202C_\u202a_\u202c;
-+int a_LREâª_b_PDFâ¬_c_LREâª_PDFâ¬;
-+int a_\u202a_\u202c_\u202a_\u202c_;
-+int a_LREâª_b_PDFâ¬_c_LREâª;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int a_\u202a_\u202c_\u202a_;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-7.c b/gcc/testsuite/c-c++-common/Wbidi-chars-7.c
-new file mode 100644
-index 00000000000..d012d420ec0
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-7.c
-@@ -0,0 +1,9 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=any" } */
-+/* Test we ignore UCNs in comments. */
-+
-+// a b c \u202a 1 2 3
-+// a b c \u202A 1 2 3
-+/* a b c \u202a 1 2 3 */
-+/* a b c \u202A 1 2 3 */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-8.c b/gcc/testsuite/c-c++-common/Wbidi-chars-8.c
-new file mode 100644
-index 00000000000..4f54c5092ec
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-8.c
-@@ -0,0 +1,13 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=any" } */
-+/* Test \u vs \U. */
-+
-+int a_\u202A;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int a_\u202a_2;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int a_\U0000202A_3;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-+int a_\U0000202a_4;
-+/* { dg-warning "U\\+202A" "" { target *-*-* } .-1 } */
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-9.c b/gcc/testsuite/c-c++-common/Wbidi-chars-9.c
-new file mode 100644
-index 00000000000..e2af1b1ca97
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-9.c
-@@ -0,0 +1,29 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired" } */
-+/* Test that we properly separate bidi contexts (comment/identifier/character
-+ constant/string literal). */
-+
-+/* LRE ->âª<- */ int pdf_\u202c_1;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* RLE ->â«<- */ int pdf_\u202c_2;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* LRO ->â­<- */ int pdf_\u202c_3;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* RLO ->â®<- */ int pdf_\u202c_4;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* LRI ->â¦<-*/ int pdi_\u2069_1;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* RLI ->â§<- */ int pdi_\u2069_12;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* FSI ->â¨<- */ int pdi_\u2069_3;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+
-+const char *s1 = "LRE\u202a"; /* PDF ->â¬<- */
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+/* LRE ->âª<- */ const char *s2 = "PDF\u202c";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+const char *s3 = "LRE\u202a"; int pdf_\u202c_5;
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-+int lre_\u202a; const char *s4 = "PDF\u202c";
-+/* { dg-warning "unpaired" "" { target *-*-* } .-1 } */
-diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h
-index 176f8c5bbce..112b9c24751 100644
---- a/libcpp/include/cpplib.h
-+++ b/libcpp/include/cpplib.h
-@@ -318,6 +318,17 @@ enum cpp_main_search
- CMS_system, /* Search the system INCLUDE path. */
- };
-
-+/* The possible bidirectional control characters checking levels, from least
-+ restrictive to most. */
-+enum cpp_bidirectional_level {
-+ /* No checking. */
-+ bidirectional_none,
-+ /* Only detect unpaired uses of bidirectional control characters. */
-+ bidirectional_unpaired,
-+ /* Detect any use of bidirectional control characters. */
-+ bidirectional_any
-+};
-+
- /* This structure is nested inside struct cpp_reader, and
- carries all the options visible to the command line. */
- struct cpp_options
-@@ -531,6 +542,10 @@ struct cpp_options
- /* True if warn about differences between C++98 and C++11. */
- bool cpp_warn_cxx11_compat;
-
-+ /* Nonzero if bidirectional control characters checking is on. See enum
-+ cpp_bidirectional_level. */
-+ unsigned char cpp_warn_bidirectional;
-+
- /* Dependency generation. */
- struct
- {
-@@ -635,7 +650,8 @@ enum cpp_warning_reason {
- CPP_W_C90_C99_COMPAT,
- CPP_W_C11_C2X_COMPAT,
- CPP_W_CXX11_COMPAT,
-- CPP_W_EXPANSION_TO_DEFINED
-+ CPP_W_EXPANSION_TO_DEFINED,
-+ CPP_W_BIDIRECTIONAL
- };
-
- /* Callback for header lookup for HEADER, which is the name of a
-diff --git a/libcpp/init.c b/libcpp/init.c
-index 5a424e23553..f9a8f5f088f 100644
---- a/libcpp/init.c
-+++ b/libcpp/init.c
-@@ -219,6 +219,7 @@ cpp_create_reader (enum c_lang lang, cpp
- = ENABLE_CANONICAL_SYSTEM_HEADERS;
- CPP_OPTION (pfile, ext_numeric_literals) = 1;
- CPP_OPTION (pfile, warn_date_time) = 0;
-+ CPP_OPTION (pfile, cpp_warn_bidirectional) = bidirectional_unpaired;
-
- /* Default CPP arithmetic to something sensible for the host for the
- benefit of dumb users like fix-header. */
-diff --git a/libcpp/internal.h b/libcpp/internal.h
-index 8577cab6c83..0ce0246c5a2 100644
---- a/libcpp/internal.h
-+++ b/libcpp/internal.h
-@@ -597,6 +597,13 @@ struct cpp_reader
- /* Location identifying the main source file -- intended to be line
- zero of said file. */
- location_t main_loc;
-+
-+ /* Returns true iff we should warn about UTF-8 bidirectional control
-+ characters. */
-+ bool warn_bidi_p () const
-+ {
-+ return CPP_OPTION (this, cpp_warn_bidirectional) != bidirectional_none;
-+ }
- };
-
- /* Character classes. Based on the more primitive macros in safe-ctype.h.
-diff --git a/libcpp/lex.c b/libcpp/lex.c
-index fa2253d41c3..6a4fbce6030 100644
---- a/libcpp/lex.c
-+++ b/libcpp/lex.c
-@@ -1164,6 +1164,324 @@ _cpp_process_line_notes (cpp_reader *pfi
- }
- }
-
-+namespace bidi {
-+ enum class kind {
-+ NONE, LRE, RLE, LRO, RLO, LRI, RLI, FSI, PDF, PDI, LTR, RTL
-+ };
-+
-+ /* All the UTF-8 encodings of bidi characters start with E2. */
-+ constexpr uchar utf8_start = 0xe2;
-+
-+ /* A vector holding currently open bidi contexts. We use a char for
-+ each context, its LSB is 1 if it represents a PDF context, 0 if it
-+ represents a PDI context. The next bit is 1 if this context was open
-+ by a bidi character written as a UCN, and 0 when it was UTF-8. */
-+ semi_embedded_vec <unsigned char, 16> vec;
-+
-+ /* Close the whole comment/identifier/string literal/character constant
-+ context. */
-+ void on_close ()
-+ {
-+ vec.truncate (0);
-+ }
-+
-+ /* Pop the last element in the vector. */
-+ void pop ()
-+ {
-+ unsigned int len = vec.count ();
-+ gcc_checking_assert (len > 0);
-+ vec.truncate (len - 1);
-+ }
-+
-+ /* Return the context of the Ith element. */
-+ kind ctx_at (unsigned int i)
-+ {
-+ return (vec[i] & 1) ? kind::PDF : kind::PDI;
-+ }
-+
-+ /* Return which context is currently opened. */
-+ kind current_ctx ()
-+ {
-+ unsigned int len = vec.count ();
-+ if (len == 0)
-+ return kind::NONE;
-+ return ctx_at (len - 1);
-+ }
-+
-+ /* Return true if the current context comes from a UCN origin, that is,
-+ the bidi char which started this bidi context was written as a UCN. */
-+ bool current_ctx_ucn_p ()
-+ {
-+ unsigned int len = vec.count ();
-+ gcc_checking_assert (len > 0);
-+ return (vec[len - 1] >> 1) & 1;
-+ }
-+
-+ /* We've read a bidi char, update the current vector as necessary. */
-+ void on_char (kind k, bool ucn_p)
-+ {
-+ switch (k)
-+ {
-+ case kind::LRE:
-+ case kind::RLE:
-+ case kind::LRO:
-+ case kind::RLO:
-+ vec.push (ucn_p ? 3u : 1u);
-+ break;
-+ case kind::LRI:
-+ case kind::RLI:
-+ case kind::FSI:
-+ vec.push (ucn_p ? 2u : 0u);
-+ break;
-+ /* PDF terminates the scope of the last LRE, RLE, LRO, or RLO
-+ whose scope has not yet been terminated. */
-+ case kind::PDF:
-+ if (current_ctx () == kind::PDF)
-+ pop ();
-+ break;
-+ /* PDI terminates the scope of the last LRI, RLI, or FSI whose
-+ scope has not yet been terminated, as well as the scopes of
-+ any subsequent LREs, RLEs, LROs, or RLOs whose scopes have not
-+ yet been terminated. */
-+ case kind::PDI:
-+ for (int i = vec.count () - 1; i >= 0; --i)
-+ if (ctx_at (i) == kind::PDI)
-+ {
-+ vec.truncate (i);
-+ break;
-+ }
-+ break;
-+ case kind::LTR:
-+ case kind::RTL:
-+ /* These aren't popped by a PDF/PDI. */
-+ break;
-+ [[likely]] case kind::NONE:
-+ break;
-+ default:
-+ abort ();
-+ }
-+ }
-+
-+ /* Return a descriptive string for K. */
-+ const char *to_str (kind k)
-+ {
-+ switch (k)
-+ {
-+ case kind::LRE:
-+ return "U+202A (LEFT-TO-RIGHT EMBEDDING)";
-+ case kind::RLE:
-+ return "U+202B (RIGHT-TO-LEFT EMBEDDING)";
-+ case kind::LRO:
-+ return "U+202D (LEFT-TO-RIGHT OVERRIDE)";
-+ case kind::RLO:
-+ return "U+202E (RIGHT-TO-LEFT OVERRIDE)";
-+ case kind::LRI:
-+ return "U+2066 (LEFT-TO-RIGHT ISOLATE)";
-+ case kind::RLI:
-+ return "U+2067 (RIGHT-TO-LEFT ISOLATE)";
-+ case kind::FSI:
-+ return "U+2068 (FIRST STRONG ISOLATE)";
-+ case kind::PDF:
-+ return "U+202C (POP DIRECTIONAL FORMATTING)";
-+ case kind::PDI:
-+ return "U+2069 (POP DIRECTIONAL ISOLATE)";
-+ case kind::LTR:
-+ return "U+200E (LEFT-TO-RIGHT MARK)";
-+ case kind::RTL:
-+ return "U+200F (RIGHT-TO-LEFT MARK)";
-+ default:
-+ abort ();
-+ }
-+ }
-+}
-+
-+/* Parse a sequence of 3 bytes starting with P and return its bidi code. */
-+
-+static bidi::kind
-+get_bidi_utf8 (const unsigned char *const p)
-+{
-+ gcc_checking_assert (p[0] == bidi::utf8_start);
-+
-+ if (p[1] == 0x80)
-+ switch (p[2])
-+ {
-+ case 0xaa:
-+ return bidi::kind::LRE;
-+ case 0xab:
-+ return bidi::kind::RLE;
-+ case 0xac:
-+ return bidi::kind::PDF;
-+ case 0xad:
-+ return bidi::kind::LRO;
-+ case 0xae:
-+ return bidi::kind::RLO;
-+ case 0x8e:
-+ return bidi::kind::LTR;
-+ case 0x8f:
-+ return bidi::kind::RTL;
-+ default:
-+ break;
-+ }
-+ else if (p[1] == 0x81)
-+ switch (p[2])
-+ {
-+ case 0xa6:
-+ return bidi::kind::LRI;
-+ case 0xa7:
-+ return bidi::kind::RLI;
-+ case 0xa8:
-+ return bidi::kind::FSI;
-+ case 0xa9:
-+ return bidi::kind::PDI;
-+ default:
-+ break;
-+ }
-+
-+ return bidi::kind::NONE;
-+}
-+
-+/* Parse a UCN where P points just past \u or \U and return its bidi code. */
-+
-+static bidi::kind
-+get_bidi_ucn (const unsigned char *p, bool is_U)
-+{
-+ /* 6.4.3 Universal Character Names
-+ \u hex-quad
-+ \U hex-quad hex-quad
-+ where \unnnn means \U0000nnnn. */
-+
-+ if (is_U)
-+ {
-+ if (p[0] != '0' || p[1] != '0' || p[2] != '0' || p[3] != '0')
-+ return bidi::kind::NONE;
-+ /* Skip 4B so we can treat \u and \U the same below. */
-+ p += 4;
-+ }
-+
-+ /* All code points we are looking for start with 20xx. */
-+ if (p[0] != '2' || p[1] != '0')
-+ return bidi::kind::NONE;
-+ else if (p[2] == '2')
-+ switch (p[3])
-+ {
-+ case 'a':
-+ case 'A':
-+ return bidi::kind::LRE;
-+ case 'b':
-+ case 'B':
-+ return bidi::kind::RLE;
-+ case 'c':
-+ case 'C':
-+ return bidi::kind::PDF;
-+ case 'd':
-+ case 'D':
-+ return bidi::kind::LRO;
-+ case 'e':
-+ case 'E':
-+ return bidi::kind::RLO;
-+ default:
-+ break;
-+ }
-+ else if (p[2] == '6')
-+ switch (p[3])
-+ {
-+ case '6':
-+ return bidi::kind::LRI;
-+ case '7':
-+ return bidi::kind::RLI;
-+ case '8':
-+ return bidi::kind::FSI;
-+ case '9':
-+ return bidi::kind::PDI;
-+ default:
-+ break;
-+ }
-+ else if (p[2] == '0')
-+ switch (p[3])
-+ {
-+ case 'e':
-+ case 'E':
-+ return bidi::kind::LTR;
-+ case 'f':
-+ case 'F':
-+ return bidi::kind::RTL;
-+ default:
-+ break;
-+ }
-+
-+ return bidi::kind::NONE;
-+}
-+
-+/* We're closing a bidi context, that is, we've encountered a newline,
-+ are closing a C-style comment, or are at the end of a string literal,
-+ character constant, or identifier. Warn if this context was not
-+ properly terminated by a PDI or PDF. P points to the last character
-+ in this context. */
-+
-+static void
-+maybe_warn_bidi_on_close (cpp_reader *pfile, const uchar *p)
-+{
-+ if (CPP_OPTION (pfile, cpp_warn_bidirectional) == bidirectional_unpaired
-+ && bidi::vec.count () > 0)
-+ {
-+ const location_t loc
-+ = linemap_position_for_column (pfile->line_table,
-+ CPP_BUF_COLUMN (pfile->buffer, p));
-+ cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-+ "unpaired UTF-8 bidirectional control character "
-+ "detected");
-+ }
-+ /* We're done with this context. */
-+ bidi::on_close ();
-+}
-+
-+/* We're at the beginning or in the middle of an identifier/comment/string
-+ literal/character constant. Warn if we've encountered a bidi character.
-+ KIND says which bidi character it was; P points to it in the character
-+ stream. UCN_P is true iff this bidi character was written as a UCN. */
-+
-+static void
-+maybe_warn_bidi_on_char (cpp_reader *pfile, const uchar *p, bidi::kind kind,
-+ bool ucn_p)
-+{
-+ if (__builtin_expect (kind == bidi::kind::NONE, 1))
-+ return;
-+
-+ const auto warn_bidi = CPP_OPTION (pfile, cpp_warn_bidirectional);
-+
-+ if (warn_bidi != bidirectional_none)
-+ {
-+ const location_t loc
-+ = linemap_position_for_column (pfile->line_table,
-+ CPP_BUF_COLUMN (pfile->buffer, p));
-+ /* It seems excessive to warn about a PDI/PDF that is closing
-+ an opened context because we've already warned about the
-+ opening character. Except warn when we have a UCN x UTF-8
-+ mismatch. */
-+ if (kind == bidi::current_ctx ())
-+ {
-+ if (warn_bidi == bidirectional_unpaired
-+ && bidi::current_ctx_ucn_p () != ucn_p)
-+ cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-+ "UTF-8 vs UCN mismatch when closing "
-+ "a context by \"%s\"", bidi::to_str (kind));
-+ }
-+ else if (warn_bidi == bidirectional_any)
-+ {
-+ if (kind == bidi::kind::PDF || kind == bidi::kind::PDI)
-+ cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-+ "\"%s\" is closing an unopened context",
-+ bidi::to_str (kind));
-+ else
-+ cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-+ "found problematic Unicode character \"%s\"",
-+ bidi::to_str (kind));
-+ }
-+ }
-+ /* We're done with this context. */
-+ bidi::on_char (kind, ucn_p);
-+}
-+
- /* Skip a C-style block comment. We find the end of the comment by
- seeing if an asterisk is before every '/' we encounter. Returns
- nonzero if comment terminated by EOF, zero otherwise.
-@@ -1175,6 +1493,7 @@ _cpp_skip_block_comment (cpp_reader *pfi
- cpp_buffer *buffer = pfile->buffer;
- const uchar *cur = buffer->cur;
- uchar c;
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
-
- cur++;
- if (*cur == '/')
-@@ -1189,7 +1508,11 @@ _cpp_skip_block_comment (cpp_reader *pfi
- if (c == '/')
- {
- if (cur[-2] == '*')
-- break;
-+ {
-+ if (warn_bidi_p)
-+ maybe_warn_bidi_on_close (pfile, cur);
-+ break;
-+ }
-
- /* Warn about potential nested comments, but not if the '/'
- comes immediately before the true comment delimiter.
-@@ -1208,6 +1531,8 @@ _cpp_skip_block_comment (cpp_reader *pfi
- {
- unsigned int cols;
- buffer->cur = cur - 1;
-+ if (warn_bidi_p)
-+ maybe_warn_bidi_on_close (pfile, cur);
- _cpp_process_line_notes (pfile, true);
- if (buffer->next_line >= buffer->rlimit)
- return true;
-@@ -1218,6 +1543,13 @@ _cpp_skip_block_comment (cpp_reader *pfi
-
- cur = buffer->cur;
- }
-+ /* If this is a beginning of a UTF-8 encoding, it might be
-+ a bidirectional control character. */
-+ else if (__builtin_expect (c == bidi::utf8_start, 0) && warn_bidi_p)
-+ {
-+ bidi::kind kind = get_bidi_utf8 (cur - 1);
-+ maybe_warn_bidi_on_char (pfile, cur, kind, /*ucn_p=*/false);
-+ }
- }
-
- buffer->cur = cur;
-@@ -1233,9 +1565,31 @@ skip_line_comment (cpp_reader *pfile)
- {
- cpp_buffer *buffer = pfile->buffer;
- location_t orig_line = pfile->line_table->highest_line;
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
-
-- while (*buffer->cur != '\n')
-- buffer->cur++;
-+ if (!warn_bidi_p)
-+ while (*buffer->cur != '\n')
-+ buffer->cur++;
-+ else
-+ {
-+ while (*buffer->cur != '\n'
-+ && *buffer->cur != bidi::utf8_start)
-+ buffer->cur++;
-+ if (__builtin_expect (*buffer->cur == bidi::utf8_start, 0))
-+ {
-+ while (*buffer->cur != '\n')
-+ {
-+ if (__builtin_expect (*buffer->cur == bidi::utf8_start, 0))
-+ {
-+ bidi::kind kind = get_bidi_utf8 (buffer->cur);
-+ maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-+ /*ucn_p=*/false);
-+ }
-+ buffer->cur++;
-+ }
-+ maybe_warn_bidi_on_close (pfile, buffer->cur);
-+ }
-+ }
-
- _cpp_process_line_notes (pfile, true);
- return orig_line != pfile->line_table->highest_line;
-@@ -1317,11 +1671,13 @@ static const cppchar_t utf8_signifier =
-
- /* Returns TRUE if the sequence starting at buffer->cur is valid in
- an identifier. FIRST is TRUE if this starts an identifier. */
-+
- static bool
- forms_identifier_p (cpp_reader *pfile, int first,
- struct normalize_state *state)
- {
- cpp_buffer *buffer = pfile->buffer;
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
-
- if (*buffer->cur == '$')
- {
-@@ -1344,6 +1700,13 @@ forms_identifier_p (cpp_reader *pfile, i
- cppchar_t s;
- if (*buffer->cur >= utf8_signifier)
- {
-+ if (__builtin_expect (*buffer->cur == bidi::utf8_start, 0)
-+ && warn_bidi_p)
-+ {
-+ bidi::kind kind = get_bidi_utf8 (buffer->cur);
-+ maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-+ /*ucn_p=*/false);
-+ }
- if (_cpp_valid_utf8 (pfile, &buffer->cur, buffer->rlimit, 1 + !first,
- state, &s))
- return true;
-@@ -1352,6 +1715,13 @@ forms_identifier_p (cpp_reader *pfile, i
- && (buffer->cur[1] == 'u' || buffer->cur[1] == 'U'))
- {
- buffer->cur += 2;
-+ if (warn_bidi_p)
-+ {
-+ bidi::kind kind = get_bidi_ucn (buffer->cur,
-+ buffer->cur[-1] == 'U');
-+ maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-+ /*ucn_p=*/true);
-+ }
- if (_cpp_valid_ucn (pfile, &buffer->cur, buffer->rlimit, 1 + !first,
- state, &s, NULL, NULL))
- return true;
-@@ -1460,6 +1830,7 @@ lex_identifier (cpp_reader *pfile, const
- const uchar *cur;
- unsigned int len;
- unsigned int hash = HT_HASHSTEP (0, *base);
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
-
- cur = pfile->buffer->cur;
- if (! starts_ucn)
-@@ -1483,6 +1854,8 @@ lex_identifier (cpp_reader *pfile, const
- pfile->buffer->cur++;
- }
- } while (forms_identifier_p (pfile, false, nst));
-+ if (warn_bidi_p)
-+ maybe_warn_bidi_on_close (pfile, pfile->buffer->cur);
- result = _cpp_interpret_identifier (pfile, base,
- pfile->buffer->cur - base);
- *spelling = cpp_lookup (pfile, base, pfile->buffer->cur - base);
-@@ -1719,6 +2092,7 @@ static void
- lex_raw_string (cpp_reader *pfile, cpp_token *token, const uchar *base)
- {
- const uchar *pos = base;
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
-
- /* 'tis a pity this information isn't passed down from the lexer's
- initial categorization of the token. */
-@@ -1955,8 +2329,15 @@ lex_raw_string (cpp_reader *pfile, cpp_t
- pos = base = pfile->buffer->cur;
- note = &pfile->buffer->notes[pfile->buffer->cur_note];
- }
-+ else if (__builtin_expect ((unsigned char) c == bidi::utf8_start, 0)
-+ && warn_bidi_p)
-+ maybe_warn_bidi_on_char (pfile, pos - 1, get_bidi_utf8 (pos - 1),
-+ /*ucn_p=*/false);
- }
-
-+ if (warn_bidi_p)
-+ maybe_warn_bidi_on_close (pfile, pos);
-+
- if (CPP_OPTION (pfile, user_literals))
- {
- /* If a string format macro, say from inttypes.h, is placed touching
-@@ -2051,15 +2432,27 @@ lex_string (cpp_reader *pfile, cpp_token
- else
- terminator = '>', type = CPP_HEADER_NAME;
-
-+ const bool warn_bidi_p = pfile->warn_bidi_p ();
- for (;;)
- {
- cppchar_t c = *cur++;
-
- /* In #include-style directives, terminators are not escapable. */
- if (c == '\\' && !pfile->state.angled_headers && *cur != '\n')
-- cur++;
-+ {
-+ if ((cur[0] == 'u' || cur[0] == 'U') && warn_bidi_p)
-+ {
-+ bidi::kind kind = get_bidi_ucn (cur + 1, cur[0] == 'U');
-+ maybe_warn_bidi_on_char (pfile, cur, kind, /*ucn_p=*/true);
-+ }
-+ cur++;
-+ }
- else if (c == terminator)
-- break;
-+ {
-+ if (warn_bidi_p)
-+ maybe_warn_bidi_on_close (pfile, cur - 1);
-+ break;
-+ }
- else if (c == '\n')
- {
- cur--;
-@@ -2076,6 +2469,11 @@ lex_string (cpp_reader *pfile, cpp_token
- }
- else if (c == '\0')
- saw_NUL = true;
-+ else if (__builtin_expect (c == bidi::utf8_start, 0) && warn_bidi_p)
-+ {
-+ bidi::kind kind = get_bidi_utf8 (cur - 1);
-+ maybe_warn_bidi_on_char (pfile, cur - 1, kind, /*ucn_p=*/false);
-+ }
- }
-
- if (saw_NUL && !pfile->state.skipping)
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
index d19cefbdf9..5a51ae7d96 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0002-gcc-poison-system-directories.patch
@@ -1,4 +1,4 @@
-From 863f1f9dc78839ecd021b2cb01d501e8c9e00ef7 Mon Sep 17 00:00:00 2001
+From e1dbdcd0ea667bab4b551294354e04c6fe288ab6 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 8 Mar 2021 16:04:20 -0800
Subject: [PATCH] gcc: poison-system-directories
@@ -20,15 +20,15 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
gcc/configure | 19 +++++++++++++++++++
gcc/configure.ac | 16 ++++++++++++++++
gcc/doc/invoke.texi | 9 +++++++++
- gcc/gcc.c | 9 +++++++--
- gcc/incpath.c | 21 +++++++++++++++++++++
+ gcc/gcc.cc | 9 +++++++--
+ gcc/incpath.cc | 21 +++++++++++++++++++++
7 files changed, 86 insertions(+), 2 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
-index a75b44ee47e..d15105a73f3 100644
+index 8a0dafc522d..0357868e22c 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
-@@ -683,6 +683,10 @@ Wreturn-local-addr
+@@ -710,6 +710,10 @@ Wreturn-local-addr
Common Var(warn_return_local_addr) Init(1) Warning
Warn about returning a pointer/reference to a local or temporary variable.
@@ -40,7 +40,7 @@ index a75b44ee47e..d15105a73f3 100644
Common Var(warn_shadow) Warning
Warn when one variable shadows another. Same as -Wshadow=global.
diff --git a/gcc/config.in b/gcc/config.in
-index 048bf52e8c2..4f973f7906a 100644
+index 64c27c9cfac..a693cb8a886 100644
--- a/gcc/config.in
+++ b/gcc/config.in
@@ -230,6 +230,16 @@
@@ -61,10 +61,10 @@ index 048bf52e8c2..4f973f7906a 100644
optimizer and back end) to be checked for dynamic type safety at runtime.
This is quite expensive. */
diff --git a/gcc/configure b/gcc/configure
-index 7218b0c331a..d7445339f9a 100755
+index 5ce0557719a..dc2d59701ad 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -1019,6 +1019,7 @@ enable_maintainer_mode
+@@ -1023,6 +1023,7 @@ enable_maintainer_mode
enable_link_mutex
enable_link_serialization
enable_version_specific_runtime_libs
@@ -72,7 +72,7 @@ index 7218b0c331a..d7445339f9a 100755
enable_plugin
enable_host_shared
enable_libquadmath_support
-@@ -1781,6 +1782,8 @@ Optional Features:
+@@ -1785,6 +1786,8 @@ Optional Features:
--enable-version-specific-runtime-libs
specify that runtime libraries should be installed
in a compiler-specific directory
@@ -81,7 +81,7 @@ index 7218b0c331a..d7445339f9a 100755
--enable-plugin enable plugin support
--enable-host-shared build host code as shared libraries
--disable-libquadmath-support
-@@ -31932,6 +31935,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
+@@ -31982,6 +31985,22 @@ if test "${enable_version_specific_runtime_libs+set}" = set; then :
fi
@@ -105,10 +105,10 @@ index 7218b0c331a..d7445339f9a 100755
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 49f043ed29b..fe488f2232b 100644
+index 23bee7010a3..36ce78924de 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -7393,6 +7393,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
+@@ -7421,6 +7421,22 @@ AC_ARG_ENABLE(version-specific-runtime-libs,
[specify that runtime libraries should be
installed in a compiler-specific directory])])
@@ -132,10 +132,10 @@ index 49f043ed29b..fe488f2232b 100644
AC_SUBST(subdirs)
AC_SUBST(srcdir)
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi
-index 35508efb4ef..40f798eac78 100644
+index 07b440190c3..b2de464798a 100644
--- a/gcc/doc/invoke.texi
+++ b/gcc/doc/invoke.texi
-@@ -369,6 +369,7 @@ Objective-C and Objective-C++ Dialects}.
+@@ -379,6 +379,7 @@ Objective-C and Objective-C++ Dialects}.
-Wpacked -Wno-packed-bitfield-compat -Wpacked-not-aligned -Wpadded @gol
-Wparentheses -Wno-pedantic-ms-format @gol
-Wpointer-arith -Wno-pointer-compare -Wno-pointer-to-int-cast @gol
@@ -143,7 +143,7 @@ index 35508efb4ef..40f798eac78 100644
-Wno-pragmas -Wno-prio-ctor-dtor -Wredundant-decls @gol
-Wrestrict -Wno-return-local-addr -Wreturn-type @gol
-Wno-scalar-storage-order -Wsequence-point @gol
-@@ -7728,6 +7729,14 @@ made up of data only and thus requires no special treatment. But, for
+@@ -8029,6 +8030,14 @@ made up of data only and thus requires no special treatment. But, for
most targets, it is made up of code and thus requires the stack to be
made executable in order for the program to work properly.
@@ -158,11 +158,11 @@ index 35508efb4ef..40f798eac78 100644
@item -Wfloat-equal
@opindex Wfloat-equal
@opindex Wno-float-equal
-diff --git a/gcc/gcc.c b/gcc/gcc.c
-index 0af888c7d78..b047fc31c2f 100644
---- a/gcc/gcc.c
-+++ b/gcc/gcc.c
-@@ -1152,6 +1152,8 @@ proper position among the other output files. */
+diff --git a/gcc/gcc.cc b/gcc/gcc.cc
+index bb07cc244e3..ce161d3c853 100644
+--- a/gcc/gcc.cc
++++ b/gcc/gcc.cc
+@@ -1159,6 +1159,8 @@ proper position among the other output files. */
"%{fuse-ld=*:-fuse-ld=%*} " LINK_COMPRESS_DEBUG_SPEC \
"%X %{o*} %{e*} %{N} %{n} %{r}\
%{s} %{t} %{u*} %{z} %{Z} %{!nostdlib:%{!r:%{!nostartfiles:%S}}} \
@@ -171,7 +171,7 @@ index 0af888c7d78..b047fc31c2f 100644
%{static|no-pie|static-pie:} %@{L*} %(mfwrap) %(link_libgcc) " \
VTABLE_VERIFICATION_SPEC " " SANITIZER_EARLY_SPEC " %o "" \
%{fopenacc|fopenmp|%:gt(%{ftree-parallelize-loops=*:%*} 1):\
-@@ -1247,8 +1249,11 @@ static const char *cpp_unique_options =
+@@ -1254,8 +1256,11 @@ static const char *cpp_unique_options =
static const char *cpp_options =
"%(cpp_unique_options) %1 %{m*} %{std*&ansi&trigraphs} %{W*&pedantic*} %{w}\
%{f*} %{g*:%{%:debug-level-gt(0):%{g*}\
@@ -185,10 +185,10 @@ index 0af888c7d78..b047fc31c2f 100644
/* Pass -d* flags, possibly modifying -dumpdir, -dumpbase et al.
-diff --git a/gcc/incpath.c b/gcc/incpath.c
-index 446d280321d..fbfc0ce03b8 100644
---- a/gcc/incpath.c
-+++ b/gcc/incpath.c
+diff --git a/gcc/incpath.cc b/gcc/incpath.cc
+index bd2a97938eb..c80f100f476 100644
+--- a/gcc/incpath.cc
++++ b/gcc/incpath.cc
@@ -26,6 +26,7 @@
#include "intl.h"
#include "incpath.h"
@@ -197,7 +197,7 @@ index 446d280321d..fbfc0ce03b8 100644
/* Microsoft Windows does not natively support inodes.
VMS has non-numeric inodes. */
-@@ -395,6 +396,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
+@@ -399,6 +400,26 @@ merge_include_chains (const char *sysroot, cpp_reader *pfile, int verbose)
}
fprintf (stderr, _("End of search list.\n"));
}
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch b/poky/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
index c0e8cbd4d9..e83f05b8aa 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0003-64-bit-multilib-hack.patch
@@ -1,4 +1,4 @@
-From b87a3ac51df372128be2fda992238c5aab4a719a Mon Sep 17 00:00:00 2001
+From 34b861e7a4cfd7b1f0d2c0f8cf9bb0b0b81eb61a Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:10:06 +0400
Subject: [PATCH] 64-bit multilib hack.
@@ -28,6 +28,7 @@ Upstream-Status: Inappropriate [OE-Specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Elvis Dowson <elvis.dowson@gmail.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
gcc/config/aarch64/t-aarch64-linux | 8 ++++----
gcc/config/arc/t-multilib-linux | 4 ++--
@@ -38,7 +39,7 @@ Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
6 files changed, 17 insertions(+), 22 deletions(-)
diff --git a/gcc/config/aarch64/t-aarch64-linux b/gcc/config/aarch64/t-aarch64-linux
-index 241b0ef20b6..a7dadb2d64f 100644
+index d0cd546002a..f4056d68372 100644
--- a/gcc/config/aarch64/t-aarch64-linux
+++ b/gcc/config/aarch64/t-aarch64-linux
@@ -21,8 +21,8 @@
@@ -55,7 +56,7 @@ index 241b0ef20b6..a7dadb2d64f 100644
-MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
+#MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32$(call if_multiarch,:aarch64$(AARCH_BE)-linux-gnu_ilp32)
diff --git a/gcc/config/arc/t-multilib-linux b/gcc/config/arc/t-multilib-linux
-index fc3fff640a2..d58e28f6df8 100644
+index ecb9ae6859f..12a164028d4 100644
--- a/gcc/config/arc/t-multilib-linux
+++ b/gcc/config/arc/t-multilib-linux
@@ -16,9 +16,9 @@
@@ -71,7 +72,7 @@ index fc3fff640a2..d58e28f6df8 100644
# Aliases:
MULTILIB_MATCHES += mcpu?arc700=mA7
diff --git a/gcc/config/i386/t-linux64 b/gcc/config/i386/t-linux64
-index d288b093522..7b5980a9d21 100644
+index 5526ad0e6cc..fa51c88912b 100644
--- a/gcc/config/i386/t-linux64
+++ b/gcc/config/i386/t-linux64
@@ -32,7 +32,5 @@
@@ -85,7 +86,7 @@ index d288b093522..7b5980a9d21 100644
+MULTILIB_DIRNAMES = . .
+MULTILIB_OSDIRNAMES = ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
diff --git a/gcc/config/mips/t-linux64 b/gcc/config/mips/t-linux64
-index 130e1f04707..3b7eb6b2a2f 100644
+index 2fdd8e00407..04f2099250f 100644
--- a/gcc/config/mips/t-linux64
+++ b/gcc/config/mips/t-linux64
@@ -17,10 +17,6 @@
@@ -115,7 +116,7 @@ index 216d2776a18..e4d817621fc 100644
+#MULTILIB_OSDIRNAMES := $(patsubst lib%,../lib%,$(MULTILIB_DIRNAMES))
+MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
diff --git a/gcc/config/rs6000/t-linux64 b/gcc/config/rs6000/t-linux64
-index e11a118cb5f..4eaffb416fe 100644
+index 47e0efd5764..05f5a3f188e 100644
--- a/gcc/config/rs6000/t-linux64
+++ b/gcc/config/rs6000/t-linux64
@@ -26,10 +26,9 @@
@@ -129,5 +130,5 @@ index e11a118cb5f..4eaffb416fe 100644
-MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:powerpc-linux-gnu)
+MULTILIB_OSDIRNAMES := ../$(shell basename $(base_libdir)) ../$(shell basename $(base_libdir))
- rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.c
+ rs6000-linux.o: $(srcdir)/config/rs6000/rs6000-linux.cc
$(COMPILE) $<
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0003-CVE-2021-42574.patch b/poky/meta/recipes-devtools/gcc/gcc/0003-CVE-2021-42574.patch
deleted file mode 100644
index 2995a6fc61..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0003-CVE-2021-42574.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-From 1a7f2c0774129750fdf73e9f1b78f0ce983c9ab3 Mon Sep 17 00:00:00 2001
-From: David Malcolm <dmalcolm@redhat.com>
-Date: Tue, 2 Nov 2021 09:54:32 -0400
-Subject: [PATCH] libcpp: escape non-ASCII source bytes in -Wbidi-chars=
- [PR103026]
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-This flags rich_locations associated with -Wbidi-chars= so that
-non-ASCII bytes will be escaped when printing the source lines
-(using the diagnostics support I added in
-r12-4825-gbd5e882cf6e0def3dd1bc106075d59a303fe0d1e).
-
-In particular, this ensures that the printed source lines will
-be pure ASCII, and thus the visual ordering of the characters
-will be the same as the logical ordering.
-
-Before:
-
- Wbidi-chars-1.c: In function âmainâ:
- Wbidi-chars-1.c:6:43: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 6 | /*â® } â¦if (isAdmin)⩠⦠begin admins only */
- | ^
- Wbidi-chars-1.c:9:28: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 9 | /* end admins only â® { â¦*/
- | ^
-
- Wbidi-chars-11.c:6:15: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 6 | int LRE_âª_PDF_\u202c;
- | ^
- Wbidi-chars-11.c:8:19: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 8 | int LRE_\u202a_PDF_â¬_;
- | ^
- Wbidi-chars-11.c:10:28: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 10 | const char *s1 = "LRE_âª_PDF_\u202c";
- | ^
- Wbidi-chars-11.c:12:33: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 12 | const char *s2 = "LRE_\u202a_PDF_â¬";
- | ^
-
-After:
-
- Wbidi-chars-1.c: In function âmainâ:
- Wbidi-chars-1.c:6:43: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 6 | /*<U+202E> } <U+2066>if (isAdmin)<U+2069> <U+2066> begin admins only */
- | ^
- Wbidi-chars-1.c:9:28: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 9 | /* end admins only <U+202E> { <U+2066>*/
- | ^
-
- Wbidi-chars-11.c:6:15: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 6 | int LRE_<U+202A>_PDF_\u202c;
- | ^
- Wbidi-chars-11.c:8:19: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 8 | int LRE_\u202a_PDF_<U+202C>_;
- | ^
- Wbidi-chars-11.c:10:28: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 10 | const char *s1 = "LRE_<U+202A>_PDF_\u202c";
- | ^
- Wbidi-chars-11.c:12:33: warning: UTF-8 vs UCN mismatch when closing a context by "U+202C (POP DIRECTIONAL FORMATTING)" [-Wbidi-chars=]
- 12 | const char *s2 = "LRE_\u202a_PDF_<U+202C>";
- | ^
-
-libcpp/ChangeLog:
- PR preprocessor/103026
- * lex.c (maybe_warn_bidi_on_close): Use a rich_location
- and call set_escape_on_output (true) on it.
- (maybe_warn_bidi_on_char): Likewise.
-
-Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-
-CVE: CVE-2021-42574
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=1a7f2c0774129750fdf73e9f1b78f0ce983c9ab3]
-Signed-off-by: Pgowda <pgowda.cve@gmail.com>
-
----
- libcpp/lex.c | 29 +++++++++++++++++------------
- 1 file changed, 17 insertions(+), 12 deletions(-)
-
-diff --git a/libcpp/lex.c b/libcpp/lex.c
-index 8188e33b07d..2421d6c0f40 100644
---- a/libcpp/lex.c
-+++ b/libcpp/lex.c
-@@ -1427,9 +1427,11 @@ maybe_warn_bidi_on_close (cpp_reader *pfile, const uchar *p)
- const location_t loc
- = linemap_position_for_column (pfile->line_table,
- CPP_BUF_COLUMN (pfile->buffer, p));
-- cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-- "unpaired UTF-8 bidirectional control character "
-- "detected");
-+ rich_location rich_loc (pfile->line_table, loc);
-+ rich_loc.set_escape_on_output (true);
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "unpaired UTF-8 bidirectional control character "
-+ "detected");
- }
- /* We're done with this context. */
- bidi::on_close ();
-@@ -1454,6 +1456,9 @@ maybe_warn_bidi_on_char (cpp_reader *pfile, const uchar *p, bidi::kind kind,
- const location_t loc
- = linemap_position_for_column (pfile->line_table,
- CPP_BUF_COLUMN (pfile->buffer, p));
-+ rich_location rich_loc (pfile->line_table, loc);
-+ rich_loc.set_escape_on_output (true);
-+
- /* It seems excessive to warn about a PDI/PDF that is closing
- an opened context because we've already warned about the
- opening character. Except warn when we have a UCN x UTF-8
-@@ -1462,20 +1467,20 @@ maybe_warn_bidi_on_char (cpp_reader *pfile, const uchar *p, bidi::kind kind,
- {
- if (warn_bidi == bidirectional_unpaired
- && bidi::current_ctx_ucn_p () != ucn_p)
-- cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-- "UTF-8 vs UCN mismatch when closing "
-- "a context by \"%s\"", bidi::to_str (kind));
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "UTF-8 vs UCN mismatch when closing "
-+ "a context by \"%s\"", bidi::to_str (kind));
- }
- else if (warn_bidi == bidirectional_any)
- {
- if (kind == bidi::kind::PDF || kind == bidi::kind::PDI)
-- cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-- "\"%s\" is closing an unopened context",
-- bidi::to_str (kind));
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "\"%s\" is closing an unopened context",
-+ bidi::to_str (kind));
- else
-- cpp_warning_with_line (pfile, CPP_W_BIDIRECTIONAL, loc, 0,
-- "found problematic Unicode character \"%s\"",
-- bidi::to_str (kind));
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "found problematic Unicode character \"%s\"",
-+ bidi::to_str (kind));
- }
- }
- /* We're done with this context. */
---
-2.27.0
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0004-CVE-2021-42574.patch b/poky/meta/recipes-devtools/gcc/gcc/0004-CVE-2021-42574.patch
deleted file mode 100644
index 4999c71b64..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0004-CVE-2021-42574.patch
+++ /dev/null
@@ -1,573 +0,0 @@
-From bef32d4a28595e933f24fef378cf052a30b674a7 Mon Sep 17 00:00:00 2001
-From: David Malcolm <dmalcolm@redhat.com>
-Date: Tue, 2 Nov 2021 15:45:22 -0400
-Subject: [PATCH] libcpp: capture and underline ranges in -Wbidi-chars=
- [PR103026]
-MIME-Version: 1.0
-Content-Type: text/plain; charset=utf8
-Content-Transfer-Encoding: 8bit
-
-This patch converts the bidi::vec to use a struct so that we can
-capture location_t values for the bidirectional control characters.
-
-Before:
-
- Wbidi-chars-1.c: In function âmainâ:
- Wbidi-chars-1.c:6:43: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 6 | /*<U+202E> } <U+2066>if (isAdmin)<U+2069> <U+2066> begin admins only */
- | ^
- Wbidi-chars-1.c:9:28: warning: unpaired UTF-8 bidirectional control character detected [-Wbidi-chars=]
- 9 | /* end admins only <U+202E> { <U+2066>*/
- | ^
-
-After:
-
- Wbidi-chars-1.c: In function âmainâ:
- Wbidi-chars-1.c:6:43: warning: unpaired UTF-8 bidirectional control characters detected [-Wbidi-chars=]
- 6 | /*<U+202E> } <U+2066>if (isAdmin)<U+2069> <U+2066> begin admins only */
- | ~~~~~~~~ ~~~~~~~~ ^
- | | | |
- | | | end of bidirectional context
- | U+202E (RIGHT-TO-LEFT OVERRIDE) U+2066 (LEFT-TO-RIGHT ISOLATE)
- Wbidi-chars-1.c:9:28: warning: unpaired UTF-8 bidirectional control characters detected [-Wbidi-chars=]
- 9 | /* end admins only <U+202E> { <U+2066>*/
- | ~~~~~~~~ ~~~~~~~~ ^
- | | | |
- | | | end of bidirectional context
- | | U+2066 (LEFT-TO-RIGHT ISOLATE)
- | U+202E (RIGHT-TO-LEFT OVERRIDE)
-
-Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-
-gcc/testsuite/ChangeLog:
- PR preprocessor/103026
- * c-c++-common/Wbidi-chars-ranges.c: New test.
-
-libcpp/ChangeLog:
- PR preprocessor/103026
- * lex.c (struct bidi::context): New.
- (bidi::vec): Convert to a vec of context rather than unsigned
- char.
- (bidi::ctx_at): Rename to...
- (bidi::pop_kind_at): ...this and reimplement for above change.
- (bidi::current_ctx): Update for change to vec.
- (bidi::current_ctx_ucn_p): Likewise.
- (bidi::current_ctx_loc): New.
- (bidi::on_char): Update for usage of context struct. Add "loc"
- param and pass it when pushing contexts.
- (get_location_for_byte_range_in_cur_line): New.
- (get_bidi_utf8): Rename to...
- (get_bidi_utf8_1): ...this, reintroducing...
- (get_bidi_utf8): ...as a wrapper, setting *OUT when the result is
- not NONE.
- (get_bidi_ucn): Rename to...
- (get_bidi_ucn_1): ...this, reintroducing...
- (get_bidi_ucn): ...as a wrapper, setting *OUT when the result is
- not NONE.
- (class unpaired_bidi_rich_location): New.
- (maybe_warn_bidi_on_close): Use unpaired_bidi_rich_location when
- reporting on unpaired bidi chars. Split into singular vs plural
- spellings.
- (maybe_warn_bidi_on_char): Pass in a location_t rather than a
- const uchar * and use it when emitting warnings, and when calling
- bidi::on_char.
- (_cpp_skip_block_comment): Capture location when kind is not NONE
- and pass it to maybe_warn_bidi_on_char.
- (skip_line_comment): Likewise.
- (forms_identifier_p): Likewise.
- (lex_raw_string): Likewise.
- (lex_string): Likewise.
-
-Signed-off-by: David Malcolm <dmalcolm@redhat.com>
-
-CVE: CVE-2021-42574
-Upstream-Status: Backport [https://gcc.gnu.org/git/gitweb.cgi?p=gcc.git;h=bef32d4a28595e933f24fef378cf052a30b674a7]
-Signed-off-by: Pgowda <pgowda.cve@gmail.com>
-
----
- .../c-c++-common/Wbidi-chars-ranges.c | 54 ++++
- libcpp/lex.c | 251 ++++++++++++++----
- 2 files changed, 257 insertions(+), 48 deletions(-)
- create mode 100644 gcc/testsuite/c-c++-common/Wbidi-chars-ranges.c
-
-diff --git a/gcc/testsuite/c-c++-common/Wbidi-chars-ranges.c b/gcc/testsuite/c-c++-common/Wbidi-chars-ranges.c
-new file mode 100644
-index 00000000000..298750a2a64
---- /dev/null
-+++ b/gcc/testsuite/c-c++-common/Wbidi-chars-ranges.c
-@@ -0,0 +1,54 @@
-+/* PR preprocessor/103026 */
-+/* { dg-do compile } */
-+/* { dg-options "-Wbidi-chars=unpaired -fdiagnostics-show-caret" } */
-+/* Verify that we escape and underline pertinent bidirectional
-+ control characters when quoting the source. */
-+
-+int test_unpaired_bidi () {
-+ int isAdmin = 0;
-+ /*â® } â¦if (isAdmin)⩠⦠begin admins only */
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+#if 0
-+ { dg-begin-multiline-output "" }
-+ /*<U+202E> } <U+2066>if (isAdmin)<U+2069> <U+2066> begin admins only */
-+ ~~~~~~~~ ~~~~~~~~ ^
-+ | | |
-+ | | end of bidirectional context
-+ U+202E (RIGHT-TO-LEFT OVERRIDE) U+2066 (LEFT-TO-RIGHT ISOLATE)
-+ { dg-end-multiline-output "" }
-+#endif
-+
-+ __builtin_printf("You are an admin.\n");
-+ /* end admins only â® { â¦*/
-+/* { dg-warning "bidirectional" "" { target *-*-* } .-1 } */
-+#if 0
-+ { dg-begin-multiline-output "" }
-+ /* end admins only <U+202E> { <U+2066>*/
-+ ~~~~~~~~ ~~~~~~~~ ^
-+ | | |
-+ | | end of bidirectional context
-+ | U+2066 (LEFT-TO-RIGHT ISOLATE)
-+ U+202E (RIGHT-TO-LEFT OVERRIDE)
-+ { dg-end-multiline-output "" }
-+#endif
-+
-+ return 0;
-+}
-+
-+int LRE_âª_PDF_\u202c;
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-+#if 0
-+ { dg-begin-multiline-output "" }
-+ int LRE_<U+202A>_PDF_\u202c;
-+ ~~~~~~~~ ^~~~~~
-+ { dg-end-multiline-output "" }
-+#endif
-+
-+const char *s1 = "LRE_âª_PDF_\u202c";
-+/* { dg-warning "mismatch" "" { target *-*-* } .-1 } */
-+#if 0
-+ { dg-begin-multiline-output "" }
-+ const char *s1 = "LRE_<U+202A>_PDF_\u202c";
-+ ~~~~~~~~ ^~~~~~
-+ { dg-end-multiline-output "" }
-+#endif
-diff --git a/libcpp/lex.c b/libcpp/lex.c
-index 2421d6c0f40..94c36f0d014 100644
---- a/libcpp/lex.c
-+++ b/libcpp/lex.c
-@@ -1172,11 +1172,34 @@ namespace bidi {
- /* All the UTF-8 encodings of bidi characters start with E2. */
- constexpr uchar utf8_start = 0xe2;
-
-+ struct context
-+ {
-+ context () {}
-+ context (location_t loc, kind k, bool pdf, bool ucn)
-+ : m_loc (loc), m_kind (k), m_pdf (pdf), m_ucn (ucn)
-+ {
-+ }
-+
-+ kind get_pop_kind () const
-+ {
-+ return m_pdf ? kind::PDF : kind::PDI;
-+ }
-+ bool ucn_p () const
-+ {
-+ return m_ucn;
-+ }
-+
-+ location_t m_loc;
-+ kind m_kind;
-+ unsigned m_pdf : 1;
-+ unsigned m_ucn : 1;
-+ };
-+
- /* A vector holding currently open bidi contexts. We use a char for
- each context, its LSB is 1 if it represents a PDF context, 0 if it
- represents a PDI context. The next bit is 1 if this context was open
- by a bidi character written as a UCN, and 0 when it was UTF-8. */
-- semi_embedded_vec <unsigned char, 16> vec;
-+ semi_embedded_vec <context, 16> vec;
-
- /* Close the whole comment/identifier/string literal/character constant
- context. */
-@@ -1193,19 +1216,19 @@ namespace bidi {
- vec.truncate (len - 1);
- }
-
-- /* Return the context of the Ith element. */
-- kind ctx_at (unsigned int i)
-+ /* Return the pop kind of the context of the Ith element. */
-+ kind pop_kind_at (unsigned int i)
- {
-- return (vec[i] & 1) ? kind::PDF : kind::PDI;
-+ return vec[i].get_pop_kind ();
- }
-
-- /* Return which context is currently opened. */
-+ /* Return the pop kind of the context that is currently opened. */
- kind current_ctx ()
- {
- unsigned int len = vec.count ();
- if (len == 0)
- return kind::NONE;
-- return ctx_at (len - 1);
-+ return vec[len - 1].get_pop_kind ();
- }
-
- /* Return true if the current context comes from a UCN origin, that is,
-@@ -1214,11 +1237,19 @@ namespace bidi {
- {
- unsigned int len = vec.count ();
- gcc_checking_assert (len > 0);
-- return (vec[len - 1] >> 1) & 1;
-+ return vec[len - 1].m_ucn;
- }
-
-- /* We've read a bidi char, update the current vector as necessary. */
-- void on_char (kind k, bool ucn_p)
-+ location_t current_ctx_loc ()
-+ {
-+ unsigned int len = vec.count ();
-+ gcc_checking_assert (len > 0);
-+ return vec[len - 1].m_loc;
-+ }
-+
-+ /* We've read a bidi char, update the current vector as necessary.
-+ LOC is only valid when K is not kind::NONE. */
-+ void on_char (kind k, bool ucn_p, location_t loc)
- {
- switch (k)
- {
-@@ -1226,12 +1257,12 @@ namespace bidi {
- case kind::RLE:
- case kind::LRO:
- case kind::RLO:
-- vec.push (ucn_p ? 3u : 1u);
-+ vec.push (context (loc, k, true, ucn_p));
- break;
- case kind::LRI:
- case kind::RLI:
- case kind::FSI:
-- vec.push (ucn_p ? 2u : 0u);
-+ vec.push (context (loc, k, false, ucn_p));
- break;
- /* PDF terminates the scope of the last LRE, RLE, LRO, or RLO
- whose scope has not yet been terminated. */
-@@ -1245,7 +1276,7 @@ namespace bidi {
- yet been terminated. */
- case kind::PDI:
- for (int i = vec.count () - 1; i >= 0; --i)
-- if (ctx_at (i) == kind::PDI)
-+ if (pop_kind_at (i) == kind::PDI)
- {
- vec.truncate (i);
- break;
-@@ -1295,10 +1326,47 @@ namespace bidi {
- }
- }
-
-+/* Get location_t for the range of bytes [START, START + NUM_BYTES)
-+ within the current line in FILE, with the caret at START. */
-+
-+static location_t
-+get_location_for_byte_range_in_cur_line (cpp_reader *pfile,
-+ const unsigned char *const start,
-+ size_t num_bytes)
-+{
-+ gcc_checking_assert (num_bytes > 0);
-+
-+ /* CPP_BUF_COLUMN and linemap_position_for_column both refer
-+ to offsets in bytes, but CPP_BUF_COLUMN is 0-based,
-+ whereas linemap_position_for_column is 1-based. */
-+
-+ /* Get 0-based offsets within the line. */
-+ size_t start_offset = CPP_BUF_COLUMN (pfile->buffer, start);
-+ size_t end_offset = start_offset + num_bytes - 1;
-+
-+ /* Now convert to location_t, where "columns" are 1-based byte offsets. */
-+ location_t start_loc = linemap_position_for_column (pfile->line_table,
-+ start_offset + 1);
-+ location_t end_loc = linemap_position_for_column (pfile->line_table,
-+ end_offset + 1);
-+
-+ if (start_loc == end_loc)
-+ return start_loc;
-+
-+ source_range src_range;
-+ src_range.m_start = start_loc;
-+ src_range.m_finish = end_loc;
-+ location_t combined_loc = COMBINE_LOCATION_DATA (pfile->line_table,
-+ start_loc,
-+ src_range,
-+ NULL);
-+ return combined_loc;
-+}
-+
- /* Parse a sequence of 3 bytes starting with P and return its bidi code. */
-
- static bidi::kind
--get_bidi_utf8 (const unsigned char *const p)
-+get_bidi_utf8_1 (const unsigned char *const p)
- {
- gcc_checking_assert (p[0] == bidi::utf8_start);
-
-@@ -1340,10 +1408,25 @@ get_bidi_utf8 (const unsigned char *cons
- return bidi::kind::NONE;
- }
-
-+/* Parse a sequence of 3 bytes starting with P and return its bidi code.
-+ If the kind is not NONE, write the location to *OUT.*/
-+
-+static bidi::kind
-+get_bidi_utf8 (cpp_reader *pfile, const unsigned char *const p, location_t *out)
-+{
-+ bidi::kind result = get_bidi_utf8_1 (p);
-+ if (result != bidi::kind::NONE)
-+ {
-+ /* We have a sequence of 3 bytes starting at P. */
-+ *out = get_location_for_byte_range_in_cur_line (pfile, p, 3);
-+ }
-+ return result;
-+}
-+
- /* Parse a UCN where P points just past \u or \U and return its bidi code. */
-
- static bidi::kind
--get_bidi_ucn (const unsigned char *p, bool is_U)
-+get_bidi_ucn_1 (const unsigned char *p, bool is_U)
- {
- /* 6.4.3 Universal Character Names
- \u hex-quad
-@@ -1412,6 +1495,62 @@ get_bidi_ucn (const unsigned char *p, bo
- return bidi::kind::NONE;
- }
-
-+/* Parse a UCN where P points just past \u or \U and return its bidi code.
-+ If the kind is not NONE, write the location to *OUT.*/
-+
-+static bidi::kind
-+get_bidi_ucn (cpp_reader *pfile, const unsigned char *p, bool is_U,
-+ location_t *out)
-+{
-+ bidi::kind result = get_bidi_ucn_1 (p, is_U);
-+ if (result != bidi::kind::NONE)
-+ {
-+ const unsigned char *start = p - 2;
-+ size_t num_bytes = 2 + (is_U ? 8 : 4);
-+ *out = get_location_for_byte_range_in_cur_line (pfile, start, num_bytes);
-+ }
-+ return result;
-+}
-+
-+/* Subclass of rich_location for reporting on unpaired UTF-8
-+ bidirectional control character(s).
-+ Escape the source lines on output, and show all unclosed
-+ bidi context, labelling everything. */
-+
-+class unpaired_bidi_rich_location : public rich_location
-+{
-+ public:
-+ class custom_range_label : public range_label
-+ {
-+ public:
-+ label_text get_text (unsigned range_idx) const FINAL OVERRIDE
-+ {
-+ /* range 0 is the primary location; each subsequent range i + 1
-+ is for bidi::vec[i]. */
-+ if (range_idx > 0)
-+ {
-+ const bidi::context &ctxt (bidi::vec[range_idx - 1]);
-+ return label_text::borrow (bidi::to_str (ctxt.m_kind));
-+ }
-+ else
-+ return label_text::borrow (_("end of bidirectional context"));
-+ }
-+ };
-+
-+ unpaired_bidi_rich_location (cpp_reader *pfile, location_t loc)
-+ : rich_location (pfile->line_table, loc, &m_custom_label)
-+ {
-+ set_escape_on_output (true);
-+ for (unsigned i = 0; i < bidi::vec.count (); i++)
-+ add_range (bidi::vec[i].m_loc,
-+ SHOW_RANGE_WITHOUT_CARET,
-+ &m_custom_label);
-+ }
-+
-+ private:
-+ custom_range_label m_custom_label;
-+};
-+
- /* We're closing a bidi context, that is, we've encountered a newline,
- are closing a C-style comment, or are at the end of a string literal,
- character constant, or identifier. Warn if this context was not
-@@ -1427,11 +1566,17 @@ maybe_warn_bidi_on_close (cpp_reader *pf
- const location_t loc
- = linemap_position_for_column (pfile->line_table,
- CPP_BUF_COLUMN (pfile->buffer, p));
-- rich_location rich_loc (pfile->line_table, loc);
-- rich_loc.set_escape_on_output (true);
-- cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-- "unpaired UTF-8 bidirectional control character "
-- "detected");
-+ unpaired_bidi_rich_location rich_loc (pfile, loc);
-+ /* cpp_callbacks doesn't yet have a way to handle singular vs plural
-+ forms of a diagnostic, so fake it for now. */
-+ if (bidi::vec.count () > 1)
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "unpaired UTF-8 bidirectional control characters "
-+ "detected");
-+ else
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "unpaired UTF-8 bidirectional control character "
-+ "detected");
- }
- /* We're done with this context. */
- bidi::on_close ();
-@@ -1439,12 +1584,13 @@ maybe_warn_bidi_on_close (cpp_reader *pf
-
- /* We're at the beginning or in the middle of an identifier/comment/string
- literal/character constant. Warn if we've encountered a bidi character.
-- KIND says which bidi character it was; P points to it in the character
-- stream. UCN_P is true iff this bidi character was written as a UCN. */
-+ KIND says which bidi control character it was; UCN_P is true iff this bidi
-+ control character was written as a UCN. LOC is the location of the
-+ character, but is only valid if KIND != bidi::kind::NONE. */
-
- static void
--maybe_warn_bidi_on_char (cpp_reader *pfile, const uchar *p, bidi::kind kind,
-- bool ucn_p)
-+maybe_warn_bidi_on_char (cpp_reader *pfile, bidi::kind kind,
-+ bool ucn_p, location_t loc)
- {
- if (__builtin_expect (kind == bidi::kind::NONE, 1))
- return;
-@@ -1453,9 +1599,6 @@ maybe_warn_bidi_on_char (cpp_reader *pfi
-
- if (warn_bidi != bidirectional_none)
- {
-- const location_t loc
-- = linemap_position_for_column (pfile->line_table,
-- CPP_BUF_COLUMN (pfile->buffer, p));
- rich_location rich_loc (pfile->line_table, loc);
- rich_loc.set_escape_on_output (true);
-
-@@ -1467,9 +1610,12 @@ maybe_warn_bidi_on_char (cpp_reader *pfi
- {
- if (warn_bidi == bidirectional_unpaired
- && bidi::current_ctx_ucn_p () != ucn_p)
-- cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-- "UTF-8 vs UCN mismatch when closing "
-- "a context by \"%s\"", bidi::to_str (kind));
-+ {
-+ rich_loc.add_range (bidi::current_ctx_loc ());
-+ cpp_warning_at (pfile, CPP_W_BIDIRECTIONAL, &rich_loc,
-+ "UTF-8 vs UCN mismatch when closing "
-+ "a context by \"%s\"", bidi::to_str (kind));
-+ }
- }
- else if (warn_bidi == bidirectional_any)
- {
-@@ -1484,7 +1630,7 @@ maybe_warn_bidi_on_char (cpp_reader *pfi
- }
- }
- /* We're done with this context. */
-- bidi::on_char (kind, ucn_p);
-+ bidi::on_char (kind, ucn_p, loc);
- }
-
- /* Skip a C-style block comment. We find the end of the comment by
-@@ -1552,8 +1698,9 @@ _cpp_skip_block_comment (cpp_reader *pfi
- a bidirectional control character. */
- else if (__builtin_expect (c == bidi::utf8_start, 0) && warn_bidi_p)
- {
-- bidi::kind kind = get_bidi_utf8 (cur - 1);
-- maybe_warn_bidi_on_char (pfile, cur, kind, /*ucn_p=*/false);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_utf8 (pfile, cur - 1, &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/false, loc);
- }
- }
-
-@@ -1586,9 +1733,9 @@ skip_line_comment (cpp_reader *pfile)
- {
- if (__builtin_expect (*buffer->cur == bidi::utf8_start, 0))
- {
-- bidi::kind kind = get_bidi_utf8 (buffer->cur);
-- maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-- /*ucn_p=*/false);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_utf8 (pfile, buffer->cur, &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/false, loc);
- }
- buffer->cur++;
- }
-@@ -1708,9 +1855,9 @@ forms_identifier_p (cpp_reader *pfile, i
- if (__builtin_expect (*buffer->cur == bidi::utf8_start, 0)
- && warn_bidi_p)
- {
-- bidi::kind kind = get_bidi_utf8 (buffer->cur);
-- maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-- /*ucn_p=*/false);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_utf8 (pfile, buffer->cur, &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/false, loc);
- }
- if (_cpp_valid_utf8 (pfile, &buffer->cur, buffer->rlimit, 1 + !first,
- state, &s))
-@@ -1722,10 +1869,12 @@ forms_identifier_p (cpp_reader *pfile, i
- buffer->cur += 2;
- if (warn_bidi_p)
- {
-- bidi::kind kind = get_bidi_ucn (buffer->cur,
-- buffer->cur[-1] == 'U');
-- maybe_warn_bidi_on_char (pfile, buffer->cur, kind,
-- /*ucn_p=*/true);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_ucn (pfile,
-+ buffer->cur,
-+ buffer->cur[-1] == 'U',
-+ &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/true, loc);
- }
- if (_cpp_valid_ucn (pfile, &buffer->cur, buffer->rlimit, 1 + !first,
- state, &s, NULL, NULL))
-@@ -2336,8 +2485,11 @@ lex_raw_string (cpp_reader *pfile, cpp_t
- }
- else if (__builtin_expect ((unsigned char) c == bidi::utf8_start, 0)
- && warn_bidi_p)
-- maybe_warn_bidi_on_char (pfile, pos - 1, get_bidi_utf8 (pos - 1),
-- /*ucn_p=*/false);
-+ {
-+ location_t loc;
-+ bidi::kind kind = get_bidi_utf8 (pfile, pos - 1, &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/false, loc);
-+ }
- }
-
- if (warn_bidi_p)
-@@ -2447,8 +2599,10 @@ lex_string (cpp_reader *pfile, cpp_token
- {
- if ((cur[0] == 'u' || cur[0] == 'U') && warn_bidi_p)
- {
-- bidi::kind kind = get_bidi_ucn (cur + 1, cur[0] == 'U');
-- maybe_warn_bidi_on_char (pfile, cur, kind, /*ucn_p=*/true);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_ucn (pfile, cur + 1, cur[0] == 'U',
-+ &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/true, loc);
- }
- cur++;
- }
-@@ -2476,8 +2630,9 @@ lex_string (cpp_reader *pfile, cpp_token
- saw_NUL = true;
- else if (__builtin_expect (c == bidi::utf8_start, 0) && warn_bidi_p)
- {
-- bidi::kind kind = get_bidi_utf8 (cur - 1);
-- maybe_warn_bidi_on_char (pfile, cur - 1, kind, /*ucn_p=*/false);
-+ location_t loc;
-+ bidi::kind kind = get_bidi_utf8 (pfile, cur - 1, &loc);
-+ maybe_warn_bidi_on_char (pfile, kind, /*ucn_p=*/false, loc);
- }
- }
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch b/poky/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch
index 7f807a991c..e8f2163476 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0016-If-CXXFLAGS-contains-something-unsupported-by-the-bu.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0004-Pass-CXXFLAGS_FOR_BUILD-in-a-couple-of-places-to-avo.patch
@@ -1,10 +1,10 @@
-From 2c2a92573598ddbc33c023fe5d499191491fb523 Mon Sep 17 00:00:00 2001
+From 7f40f8321fb999e9b34d948724517d3fb0d26820 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Thu, 28 Oct 2021 11:33:40 +0100
-Subject: [PATCH] If CXXFLAGS contains something unsupported by the build CXX,
- we see build failures (e.g. using -fmacro-prefix-map for the target).
+Subject: [PATCH] Pass CXXFLAGS_FOR_BUILD in a couple of places to avoid these
+ errors.
-Pass CXXFLAGS_FOR_BUILD in a couple of places to avoid these errors.
+If CXXFLAGS contains something unsupported by the build CXX, we see build failures (e.g. using -fmacro-prefix-map for the target).
2021-10-28 Richard Purdie <richard.purdie@linuxfoundation.org>
@@ -23,7 +23,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 4 insertions(+)
diff --git a/Makefile.in b/Makefile.in
-index 33476d53327..b949dffee0e 100644
+index 593495e1650..1d9c83cc566 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -176,6 +176,7 @@ BUILD_EXPORTS = \
@@ -43,7 +43,7 @@ index 33476d53327..b949dffee0e 100644
DSYMUTIL="$(DSYMUTIL)"; export DSYMUTIL; \
LD="$(LD)"; export LD; \
diff --git a/Makefile.tpl b/Makefile.tpl
-index e39d85d1109..d8520cbb164 100644
+index ef58fac2b9a..bab04f335c2 100644
--- a/Makefile.tpl
+++ b/Makefile.tpl
@@ -179,6 +179,7 @@ BUILD_EXPORTS = \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0004-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch b/poky/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
index 55a58851dc..e34eb2cf3f 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0004-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0005-Use-the-defaults.h-in-B-instead-of-S-and-t-oe-in-B.patch
@@ -1,4 +1,4 @@
-From 1766cf28fd7d917df510b1c262c47211b9ea70fa Mon Sep 17 00:00:00 2001
+From 5455fc1de74897a27c1199dc5611ec02243e24af Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:17:25 +0400
Subject: [PATCH] Use the defaults.h in ${B} instead of ${S}, and t-oe in ${B}
@@ -26,10 +26,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 7bfd6ce653f..95962ae37b6 100644
+index 31ff95500c9..a8277254696 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -552,7 +552,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
+@@ -553,7 +553,7 @@ TARGET_SYSTEM_ROOT = @TARGET_SYSTEM_ROOT@
TARGET_SYSTEM_ROOT_DEFINE = @TARGET_SYSTEM_ROOT_DEFINE@
xmake_file=@xmake_file@
@@ -39,10 +39,10 @@ index 7bfd6ce653f..95962ae37b6 100644
TM_MULTILIB_CONFIG=@TM_MULTILIB_CONFIG@
TM_MULTILIB_EXCEPTIONS_CONFIG=@TM_MULTILIB_EXCEPTIONS_CONFIG@
diff --git a/gcc/configure b/gcc/configure
-index d7445339f9a..f5b99d1cf7d 100755
+index dc2d59701ad..3fc0e2f5813 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -13131,8 +13131,8 @@ for f in $tm_file; do
+@@ -13381,8 +13381,8 @@ for f in $tm_file; do
tm_include_list="${tm_include_list} $f"
;;
defaults.h )
@@ -54,10 +54,10 @@ index d7445339f9a..f5b99d1cf7d 100755
* )
tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index fe488f2232b..29005f6d18f 100644
+index 36ce78924de..46de496b256 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -2294,8 +2294,8 @@ for f in $tm_file; do
+@@ -2332,8 +2332,8 @@ for f in $tm_file; do
tm_include_list="${tm_include_list} $f"
;;
defaults.h )
@@ -69,7 +69,7 @@ index fe488f2232b..29005f6d18f 100644
* )
tm_file_list="${tm_file_list} \$(srcdir)/config/$f"
diff --git a/gcc/mkconfig.sh b/gcc/mkconfig.sh
-index c49acd8f7e4..a0a657bdbb9 100644
+index 91cc43f69ff..8de33713cd8 100644
--- a/gcc/mkconfig.sh
+++ b/gcc/mkconfig.sh
@@ -77,7 +77,7 @@ if [ -n "$HEADERS" ]; then
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0005-cpp-honor-sysroot.patch b/poky/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch
index f2883fe074..b08aecc736 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0005-cpp-honor-sysroot.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0006-cpp-honor-sysroot.patch
@@ -1,4 +1,4 @@
-From e6a820a19c4cd115d8af7c235c5f9700c7a24730 Mon Sep 17 00:00:00 2001
+From abc3b82ab24169277f2090e9df1ceac3573142be Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:22:00 +0400
Subject: [PATCH] cpp: honor sysroot.
@@ -19,14 +19,14 @@ RP 2012/04/13
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Upstream-Status: Submitted [https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582725.html]
+Upstream-Status: Pending
---
gcc/cp/lang-specs.h | 2 +-
- gcc/gcc.c | 2 +-
+ gcc/gcc.cc | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/gcc/cp/lang-specs.h b/gcc/cp/lang-specs.h
-index 8902ae1d2ed..e99e2fcd6ad 100644
+index f35c9fab76b..19ddc98ce7f 100644
--- a/gcc/cp/lang-specs.h
+++ b/gcc/cp/lang-specs.h
@@ -116,7 +116,7 @@ along with GCC; see the file COPYING3. If not see
@@ -38,11 +38,11 @@ index 8902ae1d2ed..e99e2fcd6ad 100644
" %{!fsyntax-only:"
" %{fmodule-only:%{!S:-o %g.s%V}}"
" %{!fmodule-only:%{!fmodule-header*:%(invoke_as)}}}"
-diff --git a/gcc/gcc.c b/gcc/gcc.c
-index b047fc31c2f..bdee2671532 100644
---- a/gcc/gcc.c
-+++ b/gcc/gcc.c
-@@ -1469,7 +1469,7 @@ static const struct compiler default_compilers[] =
+diff --git a/gcc/gcc.cc b/gcc/gcc.cc
+index ce161d3c853..aa4cf92fb78 100644
+--- a/gcc/gcc.cc
++++ b/gcc/gcc.cc
+@@ -1476,7 +1476,7 @@ static const struct compiler default_compilers[] =
%W{o*:--output-pch=%*}}%V}}}}}}}", 0, 0, 0},
{".i", "@cpp-output", 0, 0, 0},
{"@cpp-output",
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch b/poky/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
index ef19eef822..b59eed57e9 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0006-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0007-Define-GLIBC_DYNAMIC_LINKER-and-UCLIBC_DYNAMIC_LINKE.patch
@@ -1,4 +1,4 @@
-From 84dd8ea4c982fc2c82af642293d29e9c1880de5b Mon Sep 17 00:00:00 2001
+From 4de00af67b57b5440bdf61ab364ad959ad0aeee7 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:24:50 +0400
Subject: [PATCH] Define GLIBC_DYNAMIC_LINKER and UCLIBC_DYNAMIC_LINKER
@@ -12,26 +12,33 @@ SH, sparc, alpha for possible future support (if any)
Removes the do_headerfix task in metadata
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+
Upstream-Status: Inappropriate [OE configuration]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
gcc/config/aarch64/aarch64-linux.h | 4 ++--
gcc/config/alpha/linux-elf.h | 4 ++--
- gcc/config/arm/linux-eabi.h | 4 ++--
+ gcc/config/arm/linux-eabi.h | 6 +++---
gcc/config/arm/linux-elf.h | 2 +-
- gcc/config/i386/linux.h | 2 +-
- gcc/config/i386/linux64.h | 6 +++---
+ gcc/config/i386/linux.h | 4 ++--
+ gcc/config/i386/linux64.h | 12 ++++++------
gcc/config/linux.h | 8 ++++----
- gcc/config/mips/linux.h | 12 ++++++------
- gcc/config/riscv/linux.h | 2 +-
+ gcc/config/loongarch/gnu-user.h | 4 ++--
+ gcc/config/microblaze/linux.h | 4 ++--
+ gcc/config/mips/linux.h | 18 +++++++++---------
+ gcc/config/nios2/linux.h | 4 ++--
+ gcc/config/riscv/linux.h | 4 ++--
gcc/config/rs6000/linux64.h | 15 +++++----------
- gcc/config/sh/linux.h | 2 +-
+ gcc/config/rs6000/sysv4.h | 4 ++--
+ gcc/config/s390/linux.h | 8 ++++----
+ gcc/config/sh/linux.h | 4 ++--
gcc/config/sparc/linux.h | 2 +-
gcc/config/sparc/linux64.h | 4 ++--
- 13 files changed, 31 insertions(+), 36 deletions(-)
+ 18 files changed, 53 insertions(+), 58 deletions(-)
diff --git a/gcc/config/aarch64/aarch64-linux.h b/gcc/config/aarch64/aarch64-linux.h
-index 7f2529a2a1d..4bcae7f3110 100644
+index 5e4553d79f5..877e8841eb2 100644
--- a/gcc/config/aarch64/aarch64-linux.h
+++ b/gcc/config/aarch64/aarch64-linux.h
@@ -21,10 +21,10 @@
@@ -48,7 +55,7 @@ index 7f2529a2a1d..4bcae7f3110 100644
#undef ASAN_CC1_SPEC
#define ASAN_CC1_SPEC "%{%:sanitize(address):-funwind-tables}"
diff --git a/gcc/config/alpha/linux-elf.h b/gcc/config/alpha/linux-elf.h
-index c1dae8ca2cf..3ce2b76c1a4 100644
+index 17f16a55910..0a7be38fa63 100644
--- a/gcc/config/alpha/linux-elf.h
+++ b/gcc/config/alpha/linux-elf.h
@@ -23,8 +23,8 @@ along with GCC; see the file COPYING3. If not see
@@ -63,7 +70,7 @@ index c1dae8ca2cf..3ce2b76c1a4 100644
#define CHOOSE_DYNAMIC_LINKER(G, U) "%{mglibc:" G ";:" U "}"
#elif DEFAULT_LIBC == LIBC_GLIBC
diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
-index 85d0136e76e..6bd95855827 100644
+index 50cc0bc6d08..17c18b27145 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -65,8 +65,8 @@
@@ -77,8 +84,17 @@ index 85d0136e76e..6bd95855827 100644
#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT
#define GLIBC_DYNAMIC_LINKER \
+@@ -89,7 +89,7 @@
+ #define MUSL_DYNAMIC_LINKER_E "%{mbig-endian:eb}"
+ #endif
+ #define MUSL_DYNAMIC_LINKER \
+- "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
+
+ /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to
+ use the GNU/Linux version, not the generic BPABI version. */
diff --git a/gcc/config/arm/linux-elf.h b/gcc/config/arm/linux-elf.h
-index 0c1c4e70b6b..6bd643ade11 100644
+index df3da67c4f0..37456e9d5a4 100644
--- a/gcc/config/arm/linux-elf.h
+++ b/gcc/config/arm/linux-elf.h
@@ -60,7 +60,7 @@
@@ -91,7 +107,7 @@ index 0c1c4e70b6b..6bd643ade11 100644
#define LINUX_TARGET_LINK_SPEC "%{h*} \
%{static:-Bstatic} \
diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h
-index 04b274f1654..7aafcf3ac2d 100644
+index 5d99ee56d5b..a76022c9ccc 100644
--- a/gcc/config/i386/linux.h
+++ b/gcc/config/i386/linux.h
@@ -20,7 +20,7 @@ along with GCC; see the file COPYING3. If not see
@@ -102,12 +118,13 @@ index 04b274f1654..7aafcf3ac2d 100644
+#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux.so.2"
#undef MUSL_DYNAMIC_LINKER
- #define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-i386.so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-i386.so.1"
diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h
-index b3822ced528..92d303e80d6 100644
+index 8681e36f10d..ddce49b6b60 100644
--- a/gcc/config/i386/linux64.h
+++ b/gcc/config/i386/linux64.h
-@@ -27,9 +27,9 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -27,13 +27,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
@@ -119,12 +136,19 @@ index b3822ced528..92d303e80d6 100644
+#define GLIBC_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-linux-x32.so.2"
#undef MUSL_DYNAMIC_LINKER32
- #define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1"
+-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-i386.so.1"
++#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-i386.so.1"
+ #undef MUSL_DYNAMIC_LINKER64
+-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-x86_64.so.1"
++#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-x86_64.so.1"
+ #undef MUSL_DYNAMIC_LINKERX32
+-#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-x32.so.1"
++#define MUSL_DYNAMIC_LINKERX32 SYSTEMLIBS_DIR "ld-musl-x32.so.1"
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index 4e1db60fced..87efc5f69fe 100644
+index 74f70793d90..4ce173384ef 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
-@@ -94,10 +94,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -99,10 +99,10 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
GLIBC_DYNAMIC_LINKER must be defined for each target using them, or
GLIBC_DYNAMIC_LINKER32 and GLIBC_DYNAMIC_LINKER64 for targets
supporting both 32-bit and 64-bit compilation. */
@@ -139,11 +163,51 @@ index 4e1db60fced..87efc5f69fe 100644
#define BIONIC_DYNAMIC_LINKER "/system/bin/linker"
#define BIONIC_DYNAMIC_LINKER32 "/system/bin/linker"
#define BIONIC_DYNAMIC_LINKER64 "/system/bin/linker64"
+diff --git a/gcc/config/loongarch/gnu-user.h b/gcc/config/loongarch/gnu-user.h
+index 664dc9206ad..082bd7cfc6f 100644
+--- a/gcc/config/loongarch/gnu-user.h
++++ b/gcc/config/loongarch/gnu-user.h
+@@ -31,11 +31,11 @@ along with GCC; see the file COPYING3. If not see
+
+ #undef GLIBC_DYNAMIC_LINKER
+ #define GLIBC_DYNAMIC_LINKER \
+- "/lib" ABI_GRLEN_SPEC "/ld-linux-loongarch-" ABI_SPEC ".so.1"
++ SYSTEMLIBS_DIR "ld-linux-loongarch-" ABI_SPEC ".so.1"
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER \
+- "/lib" ABI_GRLEN_SPEC "/ld-musl-loongarch-" ABI_SPEC ".so.1"
++ SYSTEMLIBS_DIR "ld-musl-loongarch-" ABI_SPEC ".so.1"
+
+ #undef GNU_USER_TARGET_LINK_SPEC
+ #define GNU_USER_TARGET_LINK_SPEC \
+diff --git a/gcc/config/microblaze/linux.h b/gcc/config/microblaze/linux.h
+index 5b1a365eda4..2e63df1ae9c 100644
+--- a/gcc/config/microblaze/linux.h
++++ b/gcc/config/microblaze/linux.h
+@@ -28,7 +28,7 @@
+ #undef TLS_NEEDS_GOT
+ #define TLS_NEEDS_GOT 1
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "/ld.so.1"
+ #define UCLIBC_DYNAMIC_LINKER "/lib/ld-uClibc.so.0"
+
+ #if TARGET_BIG_ENDIAN_DEFAULT == 0 /* LE */
+@@ -38,7 +38,7 @@
+ #endif
+
+ #undef MUSL_DYNAMIC_LINKER
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-microblaze" MUSL_DYNAMIC_LINKER_E ".so.1"
+
+ #undef SUBTARGET_EXTRA_SPECS
+ #define SUBTARGET_EXTRA_SPECS \
diff --git a/gcc/config/mips/linux.h b/gcc/config/mips/linux.h
-index 44a85e410d9..8d41b5574f6 100644
+index 230b7789bb8..d96d134bfcf 100644
--- a/gcc/config/mips/linux.h
+++ b/gcc/config/mips/linux.h
-@@ -22,20 +22,20 @@ along with GCC; see the file COPYING3. If not see
+@@ -22,29 +22,29 @@ along with GCC; see the file COPYING3. If not see
#define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
#define GLIBC_DYNAMIC_LINKER32 \
@@ -170,8 +234,35 @@ index 44a85e410d9..8d41b5574f6 100644
#undef MUSL_DYNAMIC_LINKER32
#define MUSL_DYNAMIC_LINKER32 \
+- "/lib/ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-mips%{mips32r6|mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
+ #undef MUSL_DYNAMIC_LINKER64
+ #define MUSL_DYNAMIC_LINKER64 \
+- "/lib/ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-mips64%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
+ #define MUSL_DYNAMIC_LINKERN32 \
+- "/lib/ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-mipsn32%{mips64r6:r6}%{EL:el}%{msoft-float:-sf}.so.1"
+
+ #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
+ #define GNU_USER_DYNAMIC_LINKERN32 \
+diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h
+index f5dd813acad..7a13e1c9799 100644
+--- a/gcc/config/nios2/linux.h
++++ b/gcc/config/nios2/linux.h
+@@ -29,8 +29,8 @@
+ #undef CPP_SPEC
+ #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1"
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-linux-nios2.so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-nios2.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC LINK_SPEC_ENDIAN \
diff --git a/gcc/config/riscv/linux.h b/gcc/config/riscv/linux.h
-index fce5b896e6e..03aa55cb5ab 100644
+index 38803723ba9..d5ef8a96a19 100644
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -22,7 +22,7 @@ along with GCC; see the file COPYING3. If not see
@@ -183,11 +274,20 @@ index fce5b896e6e..03aa55cb5ab 100644
#define MUSL_ABI_SUFFIX \
"%{mabi=ilp32:-sf}" \
+@@ -33,7 +33,7 @@ along with GCC; see the file COPYING3. If not see
+ "%{mabi=lp64d:}"
+
+ #undef MUSL_DYNAMIC_LINKER
+-#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1"
++#define MUSL_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld-musl-riscv" XLEN_SPEC MUSL_ABI_SUFFIX ".so.1"
+
+ /* Because RISC-V only has word-sized atomics, it requries libatomic where
+ others do not. So link libatomic by default, as needed. */
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
-index e3f2cd254f6..a11e01faa3d 100644
+index b2a7afabc73..364c1a5b155 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
-@@ -336,24 +336,19 @@ extern int dot_symbols;
+@@ -339,24 +339,19 @@ extern int dot_symbols;
#undef LINK_OS_DEFAULT_SPEC
#define LINK_OS_DEFAULT_SPEC "%(link_os_linux)"
@@ -217,12 +317,55 @@ index e3f2cd254f6..a11e01faa3d 100644
#undef DEFAULT_ASM_ENDIAN
#if (TARGET_DEFAULT & MASK_LITTLE_ENDIAN)
+diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
+index 7e2519de5d4..a73954d9de5 100644
+--- a/gcc/config/rs6000/sysv4.h
++++ b/gcc/config/rs6000/sysv4.h
+@@ -779,10 +779,10 @@ GNU_USER_TARGET_CC1_SPEC
+
+ #define MUSL_DYNAMIC_LINKER_E ENDIAN_SELECT("","le","")
+
+-#define GLIBC_DYNAMIC_LINKER "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER SYSTEMLIBS_DIR "ld.so.1"
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER \
+- "/lib/ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
++ SYSTEMLIBS_DIR "ld-musl-powerpc" MUSL_DYNAMIC_LINKER_E "%{msoft-float:-sf}.so.1"
+
+ #ifndef GNU_USER_DYNAMIC_LINKER
+ #define GNU_USER_DYNAMIC_LINKER GLIBC_DYNAMIC_LINKER
+diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h
+index d7b7e7a7b02..0139b4d06ca 100644
+--- a/gcc/config/s390/linux.h
++++ b/gcc/config/s390/linux.h
+@@ -72,13 +72,13 @@ along with GCC; see the file COPYING3. If not see
+ #define MULTILIB_DEFAULTS { "m31" }
+ #endif
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1"
++#define GLIBC_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld.so.1"
++#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld64.so.1"
+
+ #undef MUSL_DYNAMIC_LINKER32
+-#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390.so.1"
++#define MUSL_DYNAMIC_LINKER32 SYSTEMLIBS_DIR "ld-musl-s390.so.1"
+ #undef MUSL_DYNAMIC_LINKER64
+-#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1"
++#define MUSL_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-musl-s390x.so.1"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \
diff --git a/gcc/config/sh/linux.h b/gcc/config/sh/linux.h
-index 7558d2f7195..3aaa6c3a078 100644
+index d96d077c99e..7d27f9893ee 100644
--- a/gcc/config/sh/linux.h
+++ b/gcc/config/sh/linux.h
-@@ -64,7 +64,7 @@ along with GCC; see the file COPYING3. If not see
- "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
+@@ -61,10 +61,10 @@ along with GCC; see the file COPYING3. If not see
+
+ #undef MUSL_DYNAMIC_LINKER
+ #define MUSL_DYNAMIC_LINKER \
+- "/lib/ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
++ SYSTEMLIBS_DIR "ld-musl-sh" MUSL_DYNAMIC_LINKER_E MUSL_DYNAMIC_LINKER_FP \
"%{mfdpic:-fdpic}.so.1"
-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
@@ -231,7 +374,7 @@ index 7558d2f7195..3aaa6c3a078 100644
#undef SUBTARGET_LINK_EMUL_SUFFIX
#define SUBTARGET_LINK_EMUL_SUFFIX "%{mfdpic:_fd;:_linux}"
diff --git a/gcc/config/sparc/linux.h b/gcc/config/sparc/linux.h
-index 2550d7ee8f0..a94f4cd8ba2 100644
+index 6a809e9092d..60603765ad6 100644
--- a/gcc/config/sparc/linux.h
+++ b/gcc/config/sparc/linux.h
@@ -78,7 +78,7 @@ extern const char *host_detect_local_cpu (int argc, const char **argv);
@@ -244,7 +387,7 @@ index 2550d7ee8f0..a94f4cd8ba2 100644
#undef LINK_SPEC
#define LINK_SPEC "-m elf32_sparc %{shared:-shared} \
diff --git a/gcc/config/sparc/linux64.h b/gcc/config/sparc/linux64.h
-index 95af8afa9b5..63127afb074 100644
+index d08a2ef96fe..e6955da0a5b 100644
--- a/gcc/config/sparc/linux64.h
+++ b/gcc/config/sparc/linux64.h
@@ -78,8 +78,8 @@ along with GCC; see the file COPYING3. If not see
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0007-gcc-Fix-argument-list-too-long-error.patch b/poky/meta/recipes-devtools/gcc/gcc/0007-gcc-Fix-argument-list-too-long-error.patch
deleted file mode 100644
index 9f9f8cc856..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0007-gcc-Fix-argument-list-too-long-error.patch
+++ /dev/null
@@ -1,42 +0,0 @@
-From 768e9075e88d811b00207d991123438bb996e4ea Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 29 Mar 2013 09:26:37 +0400
-Subject: [PATCH] gcc: Fix argument list too long error.
-
-There would be an "Argument list too long" error when the
-build directory is longer than 200, this is caused by:
-
-headers=`echo $(PLUGIN_HEADERS) | tr ' ' '\012' | sort -u`
-
-The PLUGIN_HEADERS is too long before sort, so the "echo" can't handle
-it, use the $(sort list) of GNU make which can handle the too long list
-would fix the problem, the header would be short enough after sorted.
-The "tr ' ' '\012'" was used for translating the space to "\n", the
-$(sort list) doesn't need this.
-
-Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
-RP: gcc then added *.h and *.def additions to this list, breaking the original
-fix. Add the sort to the original gcc code, leaving the tr+sort to fix the original
-issue but include the new files too as reported by Zhuang <qiuguang.zqg@alibaba-inc.com>
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=66e157188bd2f789809e17e85f917534c9381599]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gcc/Makefile.in | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 95962ae37b6..d1d4512bba3 100644
---- a/gcc/Makefile.in
-+++ b/gcc/Makefile.in
-@@ -3671,7 +3671,7 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
- # We keep the directory structure for files in config, common/config or
- # c-family and .def files. All other files are flattened to a single directory.
- $(mkinstalldirs) $(DESTDIR)$(plugin_includedir)
-- headers=`echo $(PLUGIN_HEADERS) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
-+ headers=`echo $(sort $(PLUGIN_HEADERS)) $$(cd $(srcdir); echo *.h *.def) | tr ' ' '\012' | sort -u`; \
- srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`; \
- for file in $$headers; do \
- if [ -f $$file ] ; then \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0008-libtool.patch b/poky/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
index 358e1d7b3c..c9bc38ccf0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0008-libtool.patch
@@ -1,4 +1,4 @@
-From b19700ef0103f9414416b9a779a64d6138c58b1f Mon Sep 17 00:00:00 2001
+From 5117519c1897a49b09fe7fff213b9c2ea15d37f5 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:29:11 +0400
Subject: [PATCH] libtool
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch b/poky/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
index ac139542f1..dd67b115f0 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0009-gcc-armv4-pass-fix-v4bx-to-linker-to-support-EABI.patch
@@ -1,4 +1,4 @@
-From 10d23d93697167396e223711bf6210e1642ee926 Mon Sep 17 00:00:00 2001
+From 32129f9682d0d27fc67af10f077ad2768935cbe6 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:30:32 +0400
Subject: [PATCH] gcc: armv4: pass fix-v4bx to linker to support EABI.
@@ -19,12 +19,12 @@ Upstream-Status: Pending
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/gcc/config/arm/linux-eabi.h b/gcc/config/arm/linux-eabi.h
-index 6bd95855827..77befab5da8 100644
+index 17c18b27145..8eacb099317 100644
--- a/gcc/config/arm/linux-eabi.h
+++ b/gcc/config/arm/linux-eabi.h
@@ -91,10 +91,14 @@
#define MUSL_DYNAMIC_LINKER \
- "/lib/ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
+ SYSTEMLIBS_DIR "ld-musl-arm" MUSL_DYNAMIC_LINKER_E "%{mfloat-abi=hard:hf}%{mfdpic:-fdpic}.so.1"
+/* For armv4 we pass --fix-v4bx to linker to support EABI */
+#undef TARGET_FIX_V4BX_SPEC
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch b/poky/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
index 4912fa9dce..45edc62eb5 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0010-Use-the-multilib-config-files-from-B-instead-of-usin.patch
@@ -1,4 +1,4 @@
-From 5970fb3fadccd8c43f7f7030e6ff51e0295731ef Mon Sep 17 00:00:00 2001
+From bf85b8bbcb4b77725d4c22c1bb25a29f6ff21038 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 29 Mar 2013 09:33:04 +0400
Subject: [PATCH] Use the multilib config files from ${B} instead of using the
@@ -18,10 +18,10 @@ Upstream-Status: Inappropriate [configuration]
2 files changed, 36 insertions(+), 8 deletions(-)
diff --git a/gcc/configure b/gcc/configure
-index f5b99d1cf7d..ec3c24482df 100755
+index 3fc0e2f5813..2f0f0e057a9 100755
--- a/gcc/configure
+++ b/gcc/configure
-@@ -13111,10 +13111,20 @@ done
+@@ -13361,10 +13361,20 @@ done
tmake_file_=
for f in ${tmake_file}
do
@@ -46,7 +46,7 @@ index f5b99d1cf7d..ec3c24482df 100755
done
tmake_file="${tmake_file_}${omp_device_property_tmake_file}"
-@@ -13125,6 +13135,10 @@ tm_file_list="options.h"
+@@ -13375,6 +13385,10 @@ tm_file_list="options.h"
tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
@@ -58,10 +58,10 @@ index f5b99d1cf7d..ec3c24482df 100755
f=`echo $f | sed 's/^..//'`
tm_file_list="${tm_file_list} $f"
diff --git a/gcc/configure.ac b/gcc/configure.ac
-index 29005f6d18f..ea794cd1763 100644
+index 46de496b256..6155b83a732 100644
--- a/gcc/configure.ac
+++ b/gcc/configure.ac
-@@ -2274,10 +2274,20 @@ done
+@@ -2312,10 +2312,20 @@ done
tmake_file_=
for f in ${tmake_file}
do
@@ -86,7 +86,7 @@ index 29005f6d18f..ea794cd1763 100644
done
tmake_file="${tmake_file_}${omp_device_property_tmake_file}"
-@@ -2288,6 +2298,10 @@ tm_file_list="options.h"
+@@ -2326,6 +2336,10 @@ tm_file_list="options.h"
tm_include_list="options.h insn-constants.h"
for f in $tm_file; do
case $f in
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch b/poky/meta/recipes-devtools/gcc/gcc/0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
index e3e35942e6..352c6eec29 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0011-Avoid-using-libdir-from-.la-which-usually-points-to-.patch
@@ -1,4 +1,4 @@
-From 2af537b9ff0018945a27a7f89efad736a0f647d4 Mon Sep 17 00:00:00 2001
+From e5463727ff028cee5e452da38f5b4c44d52e412e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 20 Feb 2015 09:39:38 +0000
Subject: [PATCH] Avoid using libdir from .la which usually points to a host
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch b/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch
new file mode 100644
index 0000000000..7e1ebef463
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0012-export-CPP.patch
@@ -0,0 +1,50 @@
+From 20afebc61199cd74481b0b831c1b56465cd37fa0 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Fri, 20 Feb 2015 09:40:59 +0000
+Subject: [PATCH] export CPP
+
+The OE environment sets and exports CPP as being the target gcc. When
+building gcc-cross-canadian for a mingw targetted sdk, the following can be found
+in build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log:
+
+configure:3641: checking for _FILE_OFFSET_BITS value needed for large files
+configure:3666: gcc -c -isystem/media/build1/poky/build/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe conftest.c >&5
+configure:3666: $? = 0
+configure:3698: result: no
+configure:3786: checking how to run the C preprocessor
+configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32
+configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=/media/build1/poky/build/tmp/sysroots/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c
+configure:3876: $? = 0
+
+Note this is a *build* target (in build-x86_64-linux) so it should be
+using the host "gcc", not x86_64-pokysdk-mingw32-gcc. Since the mingw32
+headers are very different, using the wrong cpp is a real problem. It is leaking
+into configure through the CPP variable. Ultimately this leads to build
+failures related to not being able to include a process.h file for pem-unix.c.
+
+The fix is to ensure we export a sane CPP value into the build
+environment when using build targets. We could define a CPP_FOR_BUILD value which may be
+the version which needs to be upstreamed but for now, this fix is good enough to
+avoid the problem.
+
+RP 22/08/2013
+
+Upstream-Status: Pending
+
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ Makefile.in | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile.in b/Makefile.in
+index 1d9c83cc566..11819667751 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -152,6 +152,7 @@ BUILD_EXPORTS = \
+ AR="$(AR_FOR_BUILD)"; export AR; \
+ AS="$(AS_FOR_BUILD)"; export AS; \
+ CC="$(CC_FOR_BUILD)"; export CC; \
++ CPP="$(CC_FOR_BUILD) -E"; export CPP; \
+ CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
+ CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
+ CPP="$(CPP_FOR_BUILD)"; export CPP; \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0012-Ensure-target-gcc-headers-can-be-included.patch b/poky/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch
index d33925eb40..61e61ecc6e 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0012-Ensure-target-gcc-headers-can-be-included.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0013-Ensure-target-gcc-headers-can-be-included.patch
@@ -1,4 +1,4 @@
-From 9427c6cedf88e15f747c48cb4fcf9eda6f5c4555 Mon Sep 17 00:00:00 2001
+From 612801d426e75ff997cfabda380dbe52c2cbc532 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Fri, 20 Feb 2015 10:25:11 +0000
Subject: [PATCH] Ensure target gcc headers can be included
@@ -21,14 +21,14 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
gcc/Makefile.in | 2 ++
gcc/config/linux.h | 8 ++++++++
gcc/config/rs6000/sysv4.h | 8 ++++++++
- gcc/cppdefault.c | 4 ++++
+ gcc/cppdefault.cc | 4 ++++
4 files changed, 22 insertions(+)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index d1d4512bba3..06eb0d27a28 100644
+index a8277254696..07fa63b6640 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -630,6 +630,7 @@ libexecdir = @libexecdir@
+@@ -632,6 +632,7 @@ libexecdir = @libexecdir@
# Directory in which the compiler finds libraries etc.
libsubdir = $(libdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
@@ -36,7 +36,7 @@ index d1d4512bba3..06eb0d27a28 100644
# Directory in which the compiler finds executables
libexecsubdir = $(libexecdir)/gcc/$(real_target_noncanonical)/$(version)$(accel_dir_suffix)
# Directory in which all plugin resources are installed
-@@ -3009,6 +3010,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
+@@ -3024,6 +3025,7 @@ CFLAGS-intl.o += -DLOCALEDIR=\"$(localedir)\"
PREPROCESSOR_DEFINES = \
-DGCC_INCLUDE_DIR=\"$(libsubdir)/include\" \
@@ -45,10 +45,10 @@ index d1d4512bba3..06eb0d27a28 100644
-DGPLUSPLUS_INCLUDE_DIR=\"$(gcc_gxx_include_dir)\" \
-DGPLUSPLUS_INCLUDE_DIR_ADD_SYSROOT=$(gcc_gxx_include_dir_add_sysroot) \
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index 87efc5f69fe..b525bcd56b3 100644
+index 4ce173384ef..8a3cd4f2d34 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
-@@ -165,6 +165,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -170,6 +170,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define INCLUDE_DEFAULTS_MUSL_TOOL
#endif
@@ -62,7 +62,7 @@ index 87efc5f69fe..b525bcd56b3 100644
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
-@@ -191,6 +198,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -196,6 +203,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
INCLUDE_DEFAULTS_MUSL_PREFIX \
INCLUDE_DEFAULTS_MUSL_CROSS \
INCLUDE_DEFAULTS_MUSL_TOOL \
@@ -71,10 +71,10 @@ index 87efc5f69fe..b525bcd56b3 100644
{ GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \
{ 0, 0, 0, 0, 0, 0 } \
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
-index 510abe169c5..0c2bba5ea32 100644
+index a73954d9de5..e5dd6538358 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
-@@ -995,6 +995,13 @@ ncrtn.o%s"
+@@ -994,6 +994,13 @@ ncrtn.o%s"
#define INCLUDE_DEFAULTS_MUSL_TOOL
#endif
@@ -88,7 +88,7 @@ index 510abe169c5..0c2bba5ea32 100644
#ifdef NATIVE_SYSTEM_HEADER_DIR
#define INCLUDE_DEFAULTS_MUSL_NATIVE \
{ NATIVE_SYSTEM_HEADER_DIR, 0, 0, 0, 1, 2 }, \
-@@ -1021,6 +1028,7 @@ ncrtn.o%s"
+@@ -1020,6 +1027,7 @@ ncrtn.o%s"
INCLUDE_DEFAULTS_MUSL_PREFIX \
INCLUDE_DEFAULTS_MUSL_CROSS \
INCLUDE_DEFAULTS_MUSL_TOOL \
@@ -96,10 +96,10 @@ index 510abe169c5..0c2bba5ea32 100644
INCLUDE_DEFAULTS_MUSL_NATIVE \
{ GCC_INCLUDE_DIR, "GCC", 0, 1, 0, 0 }, \
{ 0, 0, 0, 0, 0, 0 } \
-diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c
-index c503d14fc3f..d54d6ce0076 100644
---- a/gcc/cppdefault.c
-+++ b/gcc/cppdefault.c
+diff --git a/gcc/cppdefault.cc b/gcc/cppdefault.cc
+index 7888300f277..52cf14e92f8 100644
+--- a/gcc/cppdefault.cc
++++ b/gcc/cppdefault.cc
@@ -64,6 +64,10 @@ const struct default_include cpp_include_defaults[]
/* This is the dir for gcc's private headers. */
{ GCC_INCLUDE_DIR, "GCC", 0, 0, 0, 0 },
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0013-Don-t-search-host-directory-during-relink-if-inst_pr.patch b/poky/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch
index 5b5d229eff..94308b2aca 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0013-Don-t-search-host-directory-during-relink-if-inst_pr.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0014-Don-t-search-host-directory-during-relink-if-inst_pr.patch
@@ -1,4 +1,4 @@
-From ab6e6af5deca6f4b35b089a6b197776df38780e6 Mon Sep 17 00:00:00 2001
+From 9ae49e7b88c208ab79ec9c2fc4a2fa8a3f1e85bb Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 3 Mar 2015 08:21:19 +0000
Subject: [PATCH] Don't search host directory during "relink" if $inst_prefix
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0015-Makefile.in-Ensure-build-CPP-CPPFLAGS-is-used-for-bu.patch b/poky/meta/recipes-devtools/gcc/gcc/0015-Makefile.in-Ensure-build-CPP-CPPFLAGS-is-used-for-bu.patch
deleted file mode 100644
index 45953f861d..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0015-Makefile.in-Ensure-build-CPP-CPPFLAGS-is-used-for-bu.patch
+++ /dev/null
@@ -1,204 +0,0 @@
-From 667b302f637be0a4b6ef714b5eb0026c54425386 Mon Sep 17 00:00:00 2001
-From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Sun, 31 Oct 2021 17:40:12 -0700
-Subject: [PATCH] Makefile.in: Ensure build CPP/CPPFLAGS is used for build
- targets
-
-During cross compiling, CPP is being set to the target compiler even for
-build targets. As an example, when building a cross compiler targetting
-mingw, the config.log for libiberty in
-build.x86_64-pokysdk-mingw32.i586-poky-linux/build-x86_64-linux/libiberty/config.log
-shows:
-
-configure:3786: checking how to run the C preprocessor
-configure:3856: result: x86_64-pokysdk-mingw32-gcc -E --sysroot=[sysroot]/x86_64-nativesdk-mingw32-pokysdk-mingw32
-configure:3876: x86_64-pokysdk-mingw32-gcc -E --sysroot=[sysroot]/x86_64-nativesdk-mingw32-pokysdk-mingw32 conftest.c
-configure:3876: $? = 0
-
-This is libiberty being built for the build environment, not the target one
-(i.e. in build-x86_64-linux). As such it should be using the build environment's
-gcc and not the target one. In the mingw case the system headers are quite
-different leading to build failures related to not being able to include a
-process.h file for pem-unix.c.
-
-Further analysis shows the same issue occuring for CPPFLAGS too.
-
-Fix this by adding support for CPP_FOR_BUILD and CPPFLAGS_FOR_BUILD which
-for example, avoids mixing the mingw headers for host binaries on linux
-systems.
-
-2021-10-27 Richard Purdie <richard.purdie@linuxfoundation.org>
-
-ChangeLog:
-
- * Makefile.tpl: Add CPP_FOR_BUILD and CPPFLAGS_FOR_BUILD support
- * Makefile.in: Regenerate.
- * configure: Regenerate.
- * configure.ac: Add CPP_FOR_BUILD and CPPFLAGS_FOR_BUILD support
-
-gcc/ChangeLog:
-
- * configure: Regenerate.
- * configure.ac: Use CPPFLAGS_FOR_BUILD for GMPINC
-
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-Submitted [https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582727.html]
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=84401ce5fb4ecab55decb472b168100e7593e01f]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- Makefile.in | 6 ++++++
- Makefile.tpl | 6 ++++++
- configure | 4 ++++
- configure.ac | 4 ++++
- gcc/configure | 2 +-
- gcc/configure.ac | 2 +-
- 6 files changed, 22 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile.in b/Makefile.in
-index 20cbbe2906d..33476d53327 100644
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -154,6 +154,8 @@ BUILD_EXPORTS = \
- CC="$(CC_FOR_BUILD)"; export CC; \
- CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
- CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-+ CPP="$(CPP_FOR_BUILD)"; export CPP; \
-+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
- CXX="$(CXX_FOR_BUILD)"; export CXX; \
- CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
- GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
-@@ -202,6 +204,8 @@ HOST_EXPORTS = \
- AR="$(AR)"; export AR; \
- AS="$(AS)"; export AS; \
- CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-+ CPP_FOR_BUILD="$(CPP_FOR_BUILD)"; export CPP_FOR_BUILD; \
-+ CPPFLAGS_FOR_BUILD="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS_FOR_BUILD; \
- CXX_FOR_BUILD="$(CXX_FOR_BUILD)"; export CXX_FOR_BUILD; \
- DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
- DSYMUTIL="$(DSYMUTIL)"; export DSYMUTIL; \
-@@ -360,6 +364,8 @@ AR_FOR_BUILD = @AR_FOR_BUILD@
- AS_FOR_BUILD = @AS_FOR_BUILD@
- CC_FOR_BUILD = @CC_FOR_BUILD@
- CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
-+CPP_FOR_BUILD = @CPP_FOR_BUILD@
-+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
- CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
- CXX_FOR_BUILD = @CXX_FOR_BUILD@
- DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
-diff --git a/Makefile.tpl b/Makefile.tpl
-index 9adf4f94728..e39d85d1109 100644
---- a/Makefile.tpl
-+++ b/Makefile.tpl
-@@ -157,6 +157,8 @@ BUILD_EXPORTS = \
- CC="$(CC_FOR_BUILD)"; export CC; \
- CFLAGS="$(CFLAGS_FOR_BUILD)"; export CFLAGS; \
- CONFIG_SHELL="$(SHELL)"; export CONFIG_SHELL; \
-+ CPP="$(CPP_FOR_BUILD)"; export CPP; \
-+ CPPFLAGS="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS; \
- CXX="$(CXX_FOR_BUILD)"; export CXX; \
- CXXFLAGS="$(CXXFLAGS_FOR_BUILD)"; export CXXFLAGS; \
- GFORTRAN="$(GFORTRAN_FOR_BUILD)"; export GFORTRAN; \
-@@ -205,6 +207,8 @@ HOST_EXPORTS = \
- AR="$(AR)"; export AR; \
- AS="$(AS)"; export AS; \
- CC_FOR_BUILD="$(CC_FOR_BUILD)"; export CC_FOR_BUILD; \
-+ CPP_FOR_BUILD="$(CPP_FOR_BUILD)"; export CPP_FOR_BUILD; \
-+ CPPFLAGS_FOR_BUILD="$(CPPFLAGS_FOR_BUILD)"; export CPPFLAGS_FOR_BUILD; \
- CXX_FOR_BUILD="$(CXX_FOR_BUILD)"; export CXX_FOR_BUILD; \
- DLLTOOL="$(DLLTOOL)"; export DLLTOOL; \
- DSYMUTIL="$(DSYMUTIL)"; export DSYMUTIL; \
-@@ -363,6 +367,8 @@ AR_FOR_BUILD = @AR_FOR_BUILD@
- AS_FOR_BUILD = @AS_FOR_BUILD@
- CC_FOR_BUILD = @CC_FOR_BUILD@
- CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@
-+CPP_FOR_BUILD = @CPP_FOR_BUILD@
-+CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@
- CXXFLAGS_FOR_BUILD = @CXXFLAGS_FOR_BUILD@
- CXX_FOR_BUILD = @CXX_FOR_BUILD@
- DLLTOOL_FOR_BUILD = @DLLTOOL_FOR_BUILD@
-diff --git a/configure b/configure
-index 45744e6e471..ff0de8a68b4 100755
---- a/configure
-+++ b/configure
-@@ -655,6 +655,8 @@ DSYMUTIL_FOR_BUILD
- DLLTOOL_FOR_BUILD
- CXX_FOR_BUILD
- CXXFLAGS_FOR_BUILD
-+CPPFLAGS_FOR_BUILD
-+CPP_FOR_BUILD
- CFLAGS_FOR_BUILD
- CC_FOR_BUILD
- AS_FOR_BUILD
-@@ -4100,6 +4102,7 @@ if test "${build}" != "${host}" ; then
- AR_FOR_BUILD=${AR_FOR_BUILD-ar}
- AS_FOR_BUILD=${AS_FOR_BUILD-as}
- CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
-+ CPP_FOR_BUILD="${CPP_FOR_BUILD-\$(CPP)}"
- CXX_FOR_BUILD=${CXX_FOR_BUILD-g++}
- DSYMUTIL_FOR_BUILD=${DSYMUTIL_FOR_BUILD-dsymutil}
- GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
-@@ -9831,6 +9834,7 @@ esac
- # our build compiler if desired.
- if test x"${build}" = x"${host}" ; then
- CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
-+ CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
- CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
- LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
- fi
-diff --git a/configure.ac b/configure.ac
-index bf66b51373c..09fa3896dc7 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -1347,6 +1347,7 @@ if test "${build}" != "${host}" ; then
- AR_FOR_BUILD=${AR_FOR_BUILD-ar}
- AS_FOR_BUILD=${AS_FOR_BUILD-as}
- CC_FOR_BUILD=${CC_FOR_BUILD-gcc}
-+ CPP_FOR_BUILD="${CPP_FOR_BUILD-\$(CPP)}"
- CXX_FOR_BUILD=${CXX_FOR_BUILD-g++}
- DSYMUTIL_FOR_BUILD=${DSYMUTIL_FOR_BUILD-dsymutil}
- GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran}
-@@ -3336,6 +3337,7 @@ esac
- # our build compiler if desired.
- if test x"${build}" = x"${host}" ; then
- CFLAGS_FOR_BUILD=${CFLAGS_FOR_BUILD-${CFLAGS}}
-+ CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-${CPPFLAGS}}
- CXXFLAGS_FOR_BUILD=${CXXFLAGS_FOR_BUILD-${CXXFLAGS}}
- LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-${LDFLAGS}}
- fi
-@@ -3402,6 +3404,8 @@ AC_SUBST(AR_FOR_BUILD)
- AC_SUBST(AS_FOR_BUILD)
- AC_SUBST(CC_FOR_BUILD)
- AC_SUBST(CFLAGS_FOR_BUILD)
-+AC_SUBST(CPP_FOR_BUILD)
-+AC_SUBST(CPPFLAGS_FOR_BUILD)
- AC_SUBST(CXXFLAGS_FOR_BUILD)
- AC_SUBST(CXX_FOR_BUILD)
- AC_SUBST(DLLTOOL_FOR_BUILD)
-diff --git a/gcc/configure b/gcc/configure
-index ec3c24482df..31a460dc9d0 100755
---- a/gcc/configure
-+++ b/gcc/configure
-@@ -12740,7 +12740,7 @@ else
- CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
- CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
- LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
-- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
-+ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
- ${realsrcdir}/configure \
- --enable-languages=${enable_languages-all} \
- ${enable_obsolete+--enable-obsolete="$enable_obsolete"} \
-diff --git a/gcc/configure.ac b/gcc/configure.ac
-index ea794cd1763..b965eb036bc 100644
---- a/gcc/configure.ac
-+++ b/gcc/configure.ac
-@@ -2054,7 +2054,7 @@ else
- CC="${CC_FOR_BUILD}" CFLAGS="${CFLAGS_FOR_BUILD}" \
- CXX="${CXX_FOR_BUILD}" CXXFLAGS="${CXXFLAGS_FOR_BUILD}" \
- LD="${LD_FOR_BUILD}" LDFLAGS="${LDFLAGS_FOR_BUILD}" \
-- GMPINC="" CPPFLAGS="${CPPFLAGS} -DGENERATOR_FILE" \
-+ GMPINC="" CPPFLAGS="${CPPFLAGS_FOR_BUILD} -DGENERATOR_FILE" \
- ${realsrcdir}/configure \
- --enable-languages=${enable_languages-all} \
- ${enable_obsolete+--enable-obsolete="$enable_obsolete"} \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0014-libcc1-fix-libcc1-s-install-path-and-rpath.patch b/poky/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch
index b82277cc4b..ce9635ce4d 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0014-libcc1-fix-libcc1-s-install-path-and-rpath.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0015-libcc1-fix-libcc1-s-install-path-and-rpath.patch
@@ -1,4 +1,4 @@
-From fd862c8c112067d8613d921ae89c99056aca54a1 Mon Sep 17 00:00:00 2001
+From bf918db7117f41d3c04162095641165ca241707d Mon Sep 17 00:00:00 2001
From: Robert Yang <liezhi.yang@windriver.com>
Date: Sun, 5 Jul 2015 20:25:18 -0700
Subject: [PATCH] libcc1: fix libcc1's install path and rpath
@@ -20,10 +20,10 @@ Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/libcc1/Makefile.am b/libcc1/Makefile.am
-index 3b75e7d9290..d3a4c4f9ddf 100644
+index 6e3a34ff7e2..3f3f6391aba 100644
--- a/libcc1/Makefile.am
+++ b/libcc1/Makefile.am
-@@ -41,8 +41,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+@@ -40,8 +40,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
$(Wc)$(libiberty_normal)))
libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
@@ -35,10 +35,10 @@ index 3b75e7d9290..d3a4c4f9ddf 100644
if ENABLE_PLUGIN
plugin_LTLIBRARIES = libcc1plugin.la libcp1plugin.la
diff --git a/libcc1/Makefile.in b/libcc1/Makefile.in
-index 07fa9d94c83..a9f737d78f2 100644
+index f8f590d71e9..56462492045 100644
--- a/libcc1/Makefile.in
+++ b/libcc1/Makefile.in
-@@ -398,8 +398,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
+@@ -396,8 +396,8 @@ libiberty = $(if $(wildcard $(libiberty_noasan)),$(Wc)$(libiberty_noasan), \
$(Wc)$(libiberty_normal)))
libiberty_dep = $(patsubst $(Wc)%,%,$(libiberty))
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0017-handle-sysroot-support-for-nativesdk-gcc.patch b/poky/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch
index 5d86e4c12d..3b54719536 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0017-handle-sysroot-support-for-nativesdk-gcc.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0016-handle-sysroot-support-for-nativesdk-gcc.patch
@@ -1,4 +1,4 @@
-From 68802ca536b01ab21cfa58e11ef332e30d9a3c5e Mon Sep 17 00:00:00 2001
+From 4fbbd40d7db89cdbeaf93df1e1da692b1f80a5bc Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 7 Dec 2015 23:39:54 +0000
Subject: [PATCH] handle sysroot support for nativesdk-gcc
@@ -35,21 +35,21 @@ implementation.)
Signed-off-by: Mark Hatle <mark.hatle@kernel.crashing.org>
---
- gcc/c-family/c-opts.c | 4 +--
+ gcc/c-family/c-opts.cc | 4 +--
gcc/config/linux.h | 24 +++++++--------
gcc/config/rs6000/sysv4.h | 24 +++++++--------
- gcc/cppdefault.c | 63 ++++++++++++++++++++++++---------------
+ gcc/cppdefault.cc | 63 ++++++++++++++++++++++++---------------
gcc/cppdefault.h | 13 ++++----
- gcc/gcc.c | 20 +++++++++----
- gcc/incpath.c | 12 ++++----
- gcc/prefix.c | 6 ++--
+ gcc/gcc.cc | 20 +++++++++----
+ gcc/incpath.cc | 12 ++++----
+ gcc/prefix.cc | 6 ++--
8 files changed, 94 insertions(+), 72 deletions(-)
-diff --git a/gcc/c-family/c-opts.c b/gcc/c-family/c-opts.c
-index 6f001e0bb6c..55ab07c278f 100644
---- a/gcc/c-family/c-opts.c
-+++ b/gcc/c-family/c-opts.c
-@@ -1438,8 +1438,8 @@ add_prefixed_path (const char *suffix, incpath_kind chain)
+diff --git a/gcc/c-family/c-opts.cc b/gcc/c-family/c-opts.cc
+index a341a061758..83b0bef4dbb 100644
+--- a/gcc/c-family/c-opts.cc
++++ b/gcc/c-family/c-opts.cc
+@@ -1458,8 +1458,8 @@ add_prefixed_path (const char *suffix, incpath_kind chain)
size_t prefix_len, suffix_len;
suffix_len = strlen (suffix);
@@ -61,11 +61,11 @@ index 6f001e0bb6c..55ab07c278f 100644
path = (char *) xmalloc (prefix_len + suffix_len + 1);
memcpy (path, prefix, prefix_len);
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index b525bcd56b3..ba02c013e30 100644
+index 8a3cd4f2d34..58143dff731 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
-@@ -129,53 +129,53 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
- * Unfortunately, this is mostly duplicated from cppdefault.c */
+@@ -134,53 +134,53 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+ * Unfortunately, this is mostly duplicated from cppdefault.cc */
#if DEFAULT_LIBC == LIBC_MUSL
#define INCLUDE_DEFAULTS_MUSL_GPP \
- { GPLUSPLUS_INCLUDE_DIR, "G++", 1, 1, \
@@ -129,7 +129,7 @@ index b525bcd56b3..ba02c013e30 100644
#else
#define INCLUDE_DEFAULTS_MUSL_NATIVE
#endif
-@@ -200,7 +200,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -205,7 +205,7 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
INCLUDE_DEFAULTS_MUSL_TOOL \
INCLUDE_DEFAULTS_MUSL_SUBDIR_TARGET \
INCLUDE_DEFAULTS_MUSL_NATIVE \
@@ -139,10 +139,10 @@ index b525bcd56b3..ba02c013e30 100644
}
#endif
diff --git a/gcc/config/rs6000/sysv4.h b/gcc/config/rs6000/sysv4.h
-index 0c2bba5ea32..313a8de4417 100644
+index e5dd6538358..b496849b792 100644
--- a/gcc/config/rs6000/sysv4.h
+++ b/gcc/config/rs6000/sysv4.h
-@@ -959,53 +959,53 @@ ncrtn.o%s"
+@@ -958,53 +958,53 @@ ncrtn.o%s"
/* Include order changes for musl, same as in generic linux.h. */
#if DEFAULT_LIBC == LIBC_MUSL
#define INCLUDE_DEFAULTS_MUSL_GPP \
@@ -207,7 +207,7 @@ index 0c2bba5ea32..313a8de4417 100644
#else
#define INCLUDE_DEFAULTS_MUSL_NATIVE
#endif
-@@ -1030,7 +1030,7 @@ ncrtn.o%s"
+@@ -1029,7 +1029,7 @@ ncrtn.o%s"
INCLUDE_DEFAULTS_MUSL_TOOL \
INCLUDE_DEFAULTS_MUSL_SUBDIR_TARGET \
INCLUDE_DEFAULTS_MUSL_NATIVE \
@@ -216,10 +216,10 @@ index 0c2bba5ea32..313a8de4417 100644
{ 0, 0, 0, 0, 0, 0 } \
}
#endif
-diff --git a/gcc/cppdefault.c b/gcc/cppdefault.c
-index d54d6ce0076..784a92a0c24 100644
---- a/gcc/cppdefault.c
-+++ b/gcc/cppdefault.c
+diff --git a/gcc/cppdefault.cc b/gcc/cppdefault.cc
+index 52cf14e92f8..d8977afc05e 100644
+--- a/gcc/cppdefault.cc
++++ b/gcc/cppdefault.cc
@@ -35,6 +35,30 @@
# undef CROSS_INCLUDE_DIR
#endif
@@ -343,7 +343,7 @@ index d54d6ce0076..784a92a0c24 100644
/* This value is set by cpp_relocated at runtime */
const char *gcc_exec_prefix;
diff --git a/gcc/cppdefault.h b/gcc/cppdefault.h
-index fd3c655db1c..20669ac427d 100644
+index fb97c0b5814..6267150facc 100644
--- a/gcc/cppdefault.h
+++ b/gcc/cppdefault.h
@@ -33,7 +33,8 @@
@@ -354,7 +354,7 @@ index fd3c655db1c..20669ac427d 100644
+ const char *fname; /* The name of the directory. */
+
const char *const component; /* The component containing the directory
- (see update_path in prefix.c) */
+ (see update_path in prefix.cc) */
const char cplusplus; /* When this is non-zero, we should only
@@ -55,17 +56,13 @@ struct default_include
};
@@ -377,10 +377,10 @@ index fd3c655db1c..20669ac427d 100644
/* The run-time execution prefix. This is typically the lib/gcc
subdirectory of the actual installation. */
extern const char *gcc_exec_prefix;
-diff --git a/gcc/gcc.c b/gcc/gcc.c
-index bdee2671532..36e8af38630 100644
---- a/gcc/gcc.c
-+++ b/gcc/gcc.c
+diff --git a/gcc/gcc.cc b/gcc/gcc.cc
+index aa4cf92fb78..5569a39a14a 100644
+--- a/gcc/gcc.cc
++++ b/gcc/gcc.cc
@@ -252,6 +252,8 @@ FILE *report_times_to_file = NULL;
#endif
static const char *target_system_root = DEFAULT_TARGET_SYSTEM_ROOT;
@@ -390,7 +390,7 @@ index bdee2671532..36e8af38630 100644
/* Nonzero means pass the updated target_system_root to the compiler. */
static int target_system_root_changed;
-@@ -568,6 +570,7 @@ or with constant text in a single argument.
+@@ -575,6 +577,7 @@ or with constant text in a single argument.
%G process LIBGCC_SPEC as a spec.
%R Output the concatenation of target_system_root and
target_sysroot_suffix.
@@ -398,7 +398,7 @@ index bdee2671532..36e8af38630 100644
%S process STARTFILE_SPEC as a spec. A capital S is actually used here.
%E process ENDFILE_SPEC as a spec. A capital E is actually used here.
%C process CPP_SPEC as a spec.
-@@ -1620,10 +1623,10 @@ static const char *gcc_libexec_prefix;
+@@ -1627,10 +1630,10 @@ static const char *gcc_libexec_prefix;
gcc_exec_prefix is set because, in that case, we know where the
compiler has been installed, and use paths relative to that
location instead. */
@@ -413,7 +413,7 @@ index bdee2671532..36e8af38630 100644
/* For native compilers, these are well-known paths containing
components that may be provided by the system. For cross
-@@ -1631,9 +1634,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
+@@ -1638,9 +1641,9 @@ static const char *const standard_startfile_prefix = STANDARD_STARTFILE_PREFIX;
static const char *md_exec_prefix = MD_EXEC_PREFIX;
static const char *md_startfile_prefix = MD_STARTFILE_PREFIX;
static const char *md_startfile_prefix_1 = MD_STARTFILE_PREFIX_1;
@@ -425,7 +425,7 @@ index bdee2671532..36e8af38630 100644
= STANDARD_STARTFILE_PREFIX_2;
/* A relative path to be used in finding the location of tools
-@@ -6570,6 +6573,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
+@@ -6676,6 +6679,11 @@ do_spec_1 (const char *spec, int inswitch, const char *soft_matched_part)
}
break;
@@ -437,11 +437,11 @@ index bdee2671532..36e8af38630 100644
case 'S':
value = do_spec_1 (startfile_spec, 0, NULL);
if (value != 0)
-diff --git a/gcc/incpath.c b/gcc/incpath.c
-index fbfc0ce03b8..a82e543428b 100644
---- a/gcc/incpath.c
-+++ b/gcc/incpath.c
-@@ -131,7 +131,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
+diff --git a/gcc/incpath.cc b/gcc/incpath.cc
+index c80f100f476..5ac03c08693 100644
+--- a/gcc/incpath.cc
++++ b/gcc/incpath.cc
+@@ -135,7 +135,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
int relocated = cpp_relocated ();
size_t len;
@@ -450,7 +450,7 @@ index fbfc0ce03b8..a82e543428b 100644
{
/* Look for directories that start with the standard prefix.
"Translate" them, i.e. replace /usr/local/lib/gcc... with
-@@ -146,7 +146,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
+@@ -150,7 +150,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
now. */
if (sysroot && p->add_sysroot)
continue;
@@ -459,7 +459,7 @@ index fbfc0ce03b8..a82e543428b 100644
{
char *str = concat (iprefix, p->fname + len, NULL);
if (p->multilib == 1 && imultilib)
-@@ -187,7 +187,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
+@@ -191,7 +191,7 @@ add_standard_paths (const char *sysroot, const char *iprefix,
free (sysroot_no_trailing_dir_separator);
}
else if (!p->add_sysroot && relocated
@@ -468,7 +468,7 @@ index fbfc0ce03b8..a82e543428b 100644
{
static const char *relocated_prefix;
char *ostr;
-@@ -204,12 +204,12 @@ add_standard_paths (const char *sysroot, const char *iprefix,
+@@ -208,12 +208,12 @@ add_standard_paths (const char *sysroot, const char *iprefix,
dummy = concat (gcc_exec_prefix, "dummy", NULL);
relocated_prefix
= make_relative_prefix (dummy,
@@ -484,10 +484,10 @@ index fbfc0ce03b8..a82e543428b 100644
NULL);
str = update_path (ostr, p->component);
free (ostr);
-diff --git a/gcc/prefix.c b/gcc/prefix.c
-index 747c09de638..f728638dc65 100644
---- a/gcc/prefix.c
-+++ b/gcc/prefix.c
+diff --git a/gcc/prefix.cc b/gcc/prefix.cc
+index 096ed5afa3d..2526f0ecc39 100644
+--- a/gcc/prefix.cc
++++ b/gcc/prefix.cc
@@ -72,7 +72,9 @@ License along with GCC; see the file COPYING3. If not see
#include "prefix.h"
#include "common/common-target.h"
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch b/poky/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch
index 0f43e985cf..9b05da64a7 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0018-Search-target-sysroot-gcc-version-specific-dirs-with.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0017-Search-target-sysroot-gcc-version-specific-dirs-with.patch
@@ -1,4 +1,4 @@
-From 14291076874b133e7fb67ef1714b768a2c48ea44 Mon Sep 17 00:00:00 2001
+From 33a1f07a4417247dc24819d4e583ca09f56d5a7b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 7 Dec 2015 23:41:45 +0000
Subject: [PATCH] Search target sysroot gcc version specific dirs with
@@ -47,14 +47,14 @@ RP 2015/7/31
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- gcc/gcc.c | 29 ++++++++++++++++++++++++++++-
+ gcc/gcc.cc | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
-diff --git a/gcc/gcc.c b/gcc/gcc.c
-index 36e8af38630..d1faa788d60 100644
---- a/gcc/gcc.c
-+++ b/gcc/gcc.c
-@@ -2810,7 +2810,7 @@ for_each_path (const struct path_prefix *paths,
+diff --git a/gcc/gcc.cc b/gcc/gcc.cc
+index 5569a39a14a..4598f6cd7c9 100644
+--- a/gcc/gcc.cc
++++ b/gcc/gcc.cc
+@@ -2817,7 +2817,7 @@ for_each_path (const struct path_prefix *paths,
if (path == NULL)
{
len = paths->max_len + extra_space + 1;
@@ -63,7 +63,7 @@ index 36e8af38630..d1faa788d60 100644
path = XNEWVEC (char, len);
}
-@@ -2822,6 +2822,33 @@ for_each_path (const struct path_prefix *paths,
+@@ -2829,6 +2829,33 @@ for_each_path (const struct path_prefix *paths,
/* Look first in MACHINE/VERSION subdirectory. */
if (!skip_multi_dir)
{
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch b/poky/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
index b82fa44537..56793e03a3 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0020-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0018-Add-ssp_nonshared-to-link-commandline-for-musl-targe.patch
@@ -1,4 +1,4 @@
-From af72a47a677ce98c08cb73444bdd741ca8e28422 Mon Sep 17 00:00:00 2001
+From d7dc2861840e88a4592817a398a054a886c3f3ee Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 27 Jun 2017 18:10:54 -0700
Subject: [PATCH] Add ssp_nonshared to link commandline for musl targets
@@ -23,10 +23,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
3 files changed, 27 insertions(+)
diff --git a/gcc/config/linux.h b/gcc/config/linux.h
-index ba02c013e30..8fcaa0c9faf 100644
+index 58143dff731..d2409ccac26 100644
--- a/gcc/config/linux.h
+++ b/gcc/config/linux.h
-@@ -203,6 +203,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
+@@ -208,6 +208,13 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
{ GCC_INCLUDE_DIRVAR, "GCC", 0, 1, 0, 0 }, \
{ 0, 0, 0, 0, 0, 0 } \
}
@@ -41,10 +41,10 @@ index ba02c013e30..8fcaa0c9faf 100644
#if (DEFAULT_LIBC == LIBC_UCLIBC) && defined (SINGLE_LIBC) /* uClinux */
diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
-index 47c9d9ac0b6..d065f88b377 100644
+index 8c9039ac1e5..259cd485973 100644
--- a/gcc/config/rs6000/linux.h
+++ b/gcc/config/rs6000/linux.h
-@@ -94,6 +94,16 @@
+@@ -99,6 +99,16 @@
" -m elf32ppclinux")
#endif
@@ -62,10 +62,10 @@ index 47c9d9ac0b6..d065f88b377 100644
#define LINK_OS_LINUX_SPEC LINK_OS_LINUX_EMUL " %{!shared: %{!static: \
%{!static-pie: \
diff --git a/gcc/config/rs6000/linux64.h b/gcc/config/rs6000/linux64.h
-index a11e01faa3d..ce464f3626b 100644
+index 364c1a5b155..e33d9ae98e0 100644
--- a/gcc/config/rs6000/linux64.h
+++ b/gcc/config/rs6000/linux64.h
-@@ -369,6 +369,16 @@ extern int dot_symbols;
+@@ -372,6 +372,16 @@ extern int dot_symbols;
" -m elf64ppc")
#endif
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0023-Re-introduce-spe-commandline-options.patch b/poky/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch
index 23cf02a6e4..bb1699be25 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0023-Re-introduce-spe-commandline-options.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0019-Re-introduce-spe-commandline-options.patch
@@ -1,4 +1,4 @@
-From ca73043041c3c7aa86af9a3d4f316abc87eb3254 Mon Sep 17 00:00:00 2001
+From bf0d7c463e1fab62804556099b56319fe94be1eb Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 6 Jun 2018 12:10:22 -0700
Subject: [PATCH] Re-introduce spe commandline options
@@ -14,10 +14,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 13 insertions(+)
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
-index 6b0a3e27529..1bd2e356ac9 100644
+index 4931d781c4e..3fb87b6f7d5 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
-@@ -352,6 +352,19 @@ mdebug=
+@@ -348,6 +348,19 @@ mdebug=
Target RejectNegative Joined
-mdebug= Enable debug output.
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch b/poky/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch
deleted file mode 100644
index 76ebfd7f77..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0019-nios2-Define-MUSL_DYNAMIC_LINKER.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 9ec4db8e910d9a51ae43f6b20d4bf1dac2d8cca8 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Tue, 2 Feb 2016 10:26:10 -0800
-Subject: [PATCH] nios2: Define MUSL_DYNAMIC_LINKER
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=e5ddbbf992b909d8e38851bd3179d29389e6ac97]
-
-Signed-off-by: Marek Vasut <marex@denx.de>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gcc/config/nios2/linux.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/gcc/config/nios2/linux.h b/gcc/config/nios2/linux.h
-index 08edf1521f6..15696d86241 100644
---- a/gcc/config/nios2/linux.h
-+++ b/gcc/config/nios2/linux.h
-@@ -30,6 +30,7 @@
- #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} %{pthread:-D_REENTRANT}"
-
- #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-nios2.so.1"
-+#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-nios2.so.1"
-
- #undef LINK_SPEC
- #define LINK_SPEC LINK_SPEC_ENDIAN \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0024-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch b/poky/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
index f915f284ea..f37092089f 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0024-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0020-libgcc_s-Use-alias-for-__cpu_indicator_init-instead-.patch
@@ -1,4 +1,4 @@
-From b3957bc1fd52ec427a1b71b10055905cab4bbc7c Mon Sep 17 00:00:00 2001
+From a32c75b37209d6836eaaa943dc6b1207acba5d27 Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Sat, 24 Oct 2015 20:09:53 +0000
Subject: [PATCH] libgcc_s: Use alias for __cpu_indicator_init instead of
@@ -33,30 +33,30 @@ Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- gcc/config/i386/i386-expand.c | 4 ++--
- libgcc/config/i386/cpuinfo.c | 6 +++---
- libgcc/config/i386/t-linux | 2 +-
+ gcc/config/i386/i386-expand.cc | 4 ++--
+ libgcc/config/i386/cpuinfo.c | 6 +++---
+ libgcc/config/i386/t-linux | 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
-diff --git a/gcc/config/i386/i386-expand.c b/gcc/config/i386/i386-expand.c
-index 31eae75d277..ec7e858ec83 100644
---- a/gcc/config/i386/i386-expand.c
-+++ b/gcc/config/i386/i386-expand.c
-@@ -11066,10 +11066,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
+diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
+index 68978ef8dc2..0c71f36b572 100644
+--- a/gcc/config/i386/i386-expand.cc
++++ b/gcc/config/i386/i386-expand.cc
+@@ -12321,10 +12321,10 @@ ix86_expand_builtin (tree exp, rtx target, rtx subtarget,
{
case IX86_BUILTIN_CPU_INIT:
{
-- /* Make it call __cpu_indicator_init in libgcc. */
-+ /* Make it call __cpu_indicator_init_local in libgcc.a. */
+- /* Make it call __cpu_indicator_init in libgcc. */
++ /* Make it call __cpu_indicator_init_local in libgcc.a. */
tree call_expr, fndecl, type;
- type = build_function_type_list (integer_type_node, NULL_TREE);
+ type = build_function_type_list (integer_type_node, NULL_TREE);
- fndecl = build_fn_decl ("__cpu_indicator_init", type);
+ fndecl = build_fn_decl ("__cpu_indicator_init_local", type);
- call_expr = build_call_expr (fndecl, 0);
+ call_expr = build_call_expr (fndecl, 0);
return expand_expr (call_expr, target, mode, EXPAND_NORMAL);
}
diff --git a/libgcc/config/i386/cpuinfo.c b/libgcc/config/i386/cpuinfo.c
-index ef463848f9d..1a3de052c80 100644
+index dab1d98060f..cf824b4114a 100644
--- a/libgcc/config/i386/cpuinfo.c
+++ b/libgcc/config/i386/cpuinfo.c
@@ -63,7 +63,7 @@ __cpu_indicator_init (void)
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch b/poky/meta/recipes-devtools/gcc/gcc/0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
deleted file mode 100644
index 9b7c5c5642..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0021-Link-libgcc-using-LDFLAGS-not-just-SHLIB_LDFLAGS.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From 79a568dec47baa264eb6290fed3df3244450a92e Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 4 May 2016 21:11:34 -0700
-Subject: [PATCH] Link libgcc using LDFLAGS, not just SHLIB_LDFLAGS
-
-Upstream-Status: Pending
-
-Signed-off-by: Christopher Larson <chris_larson@mentor.com>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- libgcc/config/t-slibgcc | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/libgcc/config/t-slibgcc b/libgcc/config/t-slibgcc
-index c59b43b7b69..ca4c141f526 100644
---- a/libgcc/config/t-slibgcc
-+++ b/libgcc/config/t-slibgcc
-@@ -32,7 +32,7 @@ SHLIB_INSTALL_SOLINK = $(LN_S) $(SHLIB_SONAME) \
- $(DESTDIR)$(slibdir)$(SHLIB_SLIBDIR_QUAL)/$(SHLIB_SOLINK)
-
- SHLIB_LINK = $(CC) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
-- $(SHLIB_LDFLAGS) \
-+ $(LDFLAGS) $(SHLIB_LDFLAGS) \
- -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ \
- $(SHLIB_OBJS) $(SHLIB_LC) && \
- rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0025-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch b/poky/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
index f33193ebcf..f5f04ae314 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0025-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0021-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch
@@ -1,4 +1,4 @@
-From 5fd90d243ae14034a4699443110070dafc0d4d30 Mon Sep 17 00:00:00 2001
+From 4efc42b99c96b026f560b0918de7e237ac3dc8d1 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Tue, 10 Mar 2020 08:26:53 -0700
Subject: [PATCH] gentypes/genmodes: Do not use __LINE__ for maintaining
@@ -12,15 +12,15 @@ Upstream-Status: Inappropriate [OE Reproducibility specific]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- gcc/gengtype.c | 6 +++---
- gcc/genmodes.c | 32 ++++++++++++++++----------------
+ gcc/gengtype.cc | 6 +++---
+ gcc/genmodes.cc | 32 ++++++++++++++++----------------
2 files changed, 19 insertions(+), 19 deletions(-)
-diff --git a/gcc/gengtype.c b/gcc/gengtype.c
-index 98d4626f87e..f602da8b501 100644
---- a/gcc/gengtype.c
-+++ b/gcc/gengtype.c
-@@ -991,7 +991,7 @@ create_field_at (pair_p next, type_p type, const char *name, options_p opt,
+diff --git a/gcc/gengtype.cc b/gcc/gengtype.cc
+index 386ae1b0506..9762e914296 100644
+--- a/gcc/gengtype.cc
++++ b/gcc/gengtype.cc
+@@ -1006,7 +1006,7 @@ create_field_at (pair_p next, type_p type, const char *name, options_p opt,
/* Create a fake field with the given type and name. NEXT is the next
field in the chain. */
#define create_field(next,type,name) \
@@ -29,7 +29,7 @@ index 98d4626f87e..f602da8b501 100644
/* Like create_field, but the field is only valid when condition COND
is true. */
-@@ -1024,7 +1024,7 @@ create_optional_field_ (pair_p next, type_p type, const char *name,
+@@ -1039,7 +1039,7 @@ create_optional_field_ (pair_p next, type_p type, const char *name,
}
#define create_optional_field(next,type,name,cond) \
@@ -38,7 +38,7 @@ index 98d4626f87e..f602da8b501 100644
/* Reverse a linked list of 'struct pair's in place. */
pair_p
-@@ -5189,7 +5189,7 @@ main (int argc, char **argv)
+@@ -5238,7 +5238,7 @@ main (int argc, char **argv)
/* These types are set up with #define or else outside of where
we can see them. We should initialize them before calling
read_input_list. */
@@ -47,11 +47,11 @@ index 98d4626f87e..f602da8b501 100644
Call;} while (0)
POS_HERE (do_scalar_typedef ("CUMULATIVE_ARGS", &pos));
POS_HERE (do_scalar_typedef ("REAL_VALUE_TYPE", &pos));
-diff --git a/gcc/genmodes.c b/gcc/genmodes.c
-index c268ebc4c6e..4361f3f1563 100644
---- a/gcc/genmodes.c
-+++ b/gcc/genmodes.c
-@@ -438,7 +438,7 @@ complete_all_modes (void)
+diff --git a/gcc/genmodes.cc b/gcc/genmodes.cc
+index 59850bb070a..e187f8542a1 100644
+--- a/gcc/genmodes.cc
++++ b/gcc/genmodes.cc
+@@ -440,7 +440,7 @@ complete_all_modes (void)
}
/* For each mode in class CLASS, construct a corresponding complex mode. */
@@ -60,7 +60,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void
make_complex_modes (enum mode_class cl,
const char *file, unsigned int line)
-@@ -497,7 +497,7 @@ make_complex_modes (enum mode_class cl,
+@@ -499,7 +499,7 @@ make_complex_modes (enum mode_class cl,
having as many components as necessary. ORDER is the sorting order
of the mode, with smaller numbers indicating a higher priority. */
#define VECTOR_MODES_WITH_PREFIX(PREFIX, C, W, ORDER) \
@@ -69,16 +69,16 @@ index c268ebc4c6e..4361f3f1563 100644
#define VECTOR_MODES(C, W) VECTOR_MODES_WITH_PREFIX (V, C, W, 0)
static void ATTRIBUTE_UNUSED
make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width,
-@@ -549,7 +549,7 @@ make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width,
- /* Create a vector of booleans called NAME with COUNT elements and
+@@ -552,7 +552,7 @@ make_vector_modes (enum mode_class cl, const char *prefix, unsigned int width,
BYTESIZE bytes in total. */
- #define VECTOR_BOOL_MODE(NAME, COUNT, BYTESIZE) \
-- make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, __LINE__)
-+ make_vector_bool_mode (#NAME, COUNT, BYTESIZE, __FILE__, 0)
+ #define VECTOR_BOOL_MODE(NAME, COUNT, COMPONENT, BYTESIZE) \
+ make_vector_bool_mode (#NAME, COUNT, #COMPONENT, BYTESIZE, \
+- __FILE__, __LINE__)
++ __FILE__, 0)
static void ATTRIBUTE_UNUSED
make_vector_bool_mode (const char *name, unsigned int count,
- unsigned int bytesize, const char *file,
-@@ -571,7 +571,7 @@ make_vector_bool_mode (const char *name, unsigned int count,
+ const char *component, unsigned int bytesize,
+@@ -574,7 +574,7 @@ make_vector_bool_mode (const char *name, unsigned int count,
/* Input. */
#define _SPECIAL_MODE(C, N) \
@@ -87,7 +87,7 @@ index c268ebc4c6e..4361f3f1563 100644
#define RANDOM_MODE(N) _SPECIAL_MODE (RANDOM, N)
#define CC_MODE(N) _SPECIAL_MODE (CC, N)
-@@ -584,7 +584,7 @@ make_special_mode (enum mode_class cl, const char *name,
+@@ -587,7 +587,7 @@ make_special_mode (enum mode_class cl, const char *name,
#define INT_MODE(N, Y) FRACTIONAL_INT_MODE (N, -1U, Y)
#define FRACTIONAL_INT_MODE(N, B, Y) \
@@ -96,7 +96,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void
make_int_mode (const char *name,
-@@ -611,16 +611,16 @@ make_opaque_mode (const char *name,
+@@ -628,16 +628,16 @@ make_opaque_mode (const char *name,
}
#define FRACT_MODE(N, Y, F) \
@@ -117,7 +117,7 @@ index c268ebc4c6e..4361f3f1563 100644
/* Create a fixed-point mode by setting CL, NAME, BYTESIZE, IBIT, FBIT,
FILE, and LINE. */
-@@ -641,7 +641,7 @@ make_fixed_point_mode (enum mode_class cl,
+@@ -658,7 +658,7 @@ make_fixed_point_mode (enum mode_class cl,
#define FLOAT_MODE(N, Y, F) FRACTIONAL_FLOAT_MODE (N, -1U, Y, F)
#define FRACTIONAL_FLOAT_MODE(N, B, Y, F) \
@@ -126,7 +126,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void
make_float_mode (const char *name,
-@@ -658,7 +658,7 @@ make_float_mode (const char *name,
+@@ -675,7 +675,7 @@ make_float_mode (const char *name,
#define DECIMAL_FLOAT_MODE(N, Y, F) \
FRACTIONAL_DECIMAL_FLOAT_MODE (N, -1U, Y, F)
#define FRACTIONAL_DECIMAL_FLOAT_MODE(N, B, Y, F) \
@@ -135,7 +135,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void
make_decimal_float_mode (const char *name,
-@@ -673,7 +673,7 @@ make_decimal_float_mode (const char *name,
+@@ -690,7 +690,7 @@ make_decimal_float_mode (const char *name,
}
#define RESET_FLOAT_FORMAT(N, F) \
@@ -144,7 +144,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void ATTRIBUTE_UNUSED
reset_float_format (const char *name, const char *format,
const char *file, unsigned int line)
-@@ -694,7 +694,7 @@ reset_float_format (const char *name, const char *format,
+@@ -711,7 +711,7 @@ reset_float_format (const char *name, const char *format,
/* __intN support. */
#define INT_N(M,PREC) \
@@ -153,7 +153,7 @@ index c268ebc4c6e..4361f3f1563 100644
static void ATTRIBUTE_UNUSED
make_int_n (const char *m, int bitsize,
const char *file, unsigned int line)
-@@ -723,7 +723,7 @@ make_int_n (const char *m, int bitsize,
+@@ -740,7 +740,7 @@ make_int_n (const char *m, int bitsize,
/* Partial integer modes are specified by relation to a full integer
mode. */
#define PARTIAL_INT_MODE(M,PREC,NAME) \
@@ -162,16 +162,16 @@ index c268ebc4c6e..4361f3f1563 100644
static void ATTRIBUTE_UNUSED
make_partial_integer_mode (const char *base, const char *name,
unsigned int precision,
-@@ -750,7 +750,7 @@ make_partial_integer_mode (const char *base, const char *name,
+@@ -767,7 +767,7 @@ make_partial_integer_mode (const char *base, const char *name,
/* A single vector mode can be specified by naming its component
mode and the number of components. */
- #define VECTOR_MODE(C, M, N) \
-- make_vector_mode (MODE_##C, #M, N, __FILE__, __LINE__);
-+ make_vector_mode (MODE_##C, #M, N, __FILE__, 0);
+ #define VECTOR_MODE_WITH_PREFIX(PREFIX, C, M, N, ORDER) \
+- make_vector_mode (MODE_##C, #PREFIX, #M, N, ORDER, __FILE__, __LINE__);
++ make_vector_mode (MODE_##C, #PREFIX, #M, N, ORDER, __FILE__, 0);
+ #define VECTOR_MODE(C, M, N) VECTOR_MODE_WITH_PREFIX(V, C, M, N, 0);
static void ATTRIBUTE_UNUSED
make_vector_mode (enum mode_class bclass,
- const char *base,
-@@ -793,7 +793,7 @@ make_vector_mode (enum mode_class bclass,
+@@ -814,7 +814,7 @@ make_vector_mode (enum mode_class bclass,
/* Adjustability. */
#define _ADD_ADJUST(A, M, X, C1, C2) \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0026-mingw32-Enable-operation_not_supported.patch b/poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch
index b46bde1eda..f88ad51ee8 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0026-mingw32-Enable-operation_not_supported.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0022-mingw32-Enable-operation_not_supported.patch
@@ -1,4 +1,4 @@
-From 7bc34769f0b055e25286576e4ba6d211e8159834 Mon Sep 17 00:00:00 2001
+From 061cf79e7b6e89fdf0f2630ddaebbf1d7b271ac3 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 12 May 2020 10:39:09 -0700
Subject: [PATCH] mingw32: Enable operation_not_supported
@@ -12,7 +12,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libstdc++-v3/config/os/mingw32/error_constants.h b/libstdc++-v3/config/os/mingw32/error_constants.h
-index eca06a97014..933cfab49cf 100644
+index da5f4c2ac85..e855c86267c 100644
--- a/libstdc++-v3/config/os/mingw32/error_constants.h
+++ b/libstdc++-v3/config/os/mingw32/error_constants.h
@@ -107,7 +107,7 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0022-sync-gcc-stddef.h-with-musl.patch b/poky/meta/recipes-devtools/gcc/gcc/0022-sync-gcc-stddef.h-with-musl.patch
deleted file mode 100644
index 86fb22ffd3..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0022-sync-gcc-stddef.h-with-musl.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 07a06aa8e8285c1bb06d0bebeaa9ad04eb76f2e2 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Fri, 3 Feb 2017 12:56:00 -0800
-Subject: [PATCH] sync gcc stddef.h with musl
-
-musl defines ptrdiff_t size_t and wchar_t
-so dont define them here if musl is definining them
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=85a438fc78dd12249ca854a3e5c577fefeb1a5cd]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gcc/ginclude/stddef.h | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/gcc/ginclude/stddef.h b/gcc/ginclude/stddef.h
-index 66619fe43b1..3f843d6f365 100644
---- a/gcc/ginclude/stddef.h
-+++ b/gcc/ginclude/stddef.h
-@@ -128,6 +128,7 @@ _TYPE_wchar_t;
- #ifndef ___int_ptrdiff_t_h
- #ifndef _GCC_PTRDIFF_T
- #ifndef _PTRDIFF_T_DECLARED /* DragonFly */
-+#ifndef __DEFINED_ptrdiff_t /* musl */
- #define _PTRDIFF_T
- #define _T_PTRDIFF_
- #define _T_PTRDIFF
-@@ -137,10 +138,12 @@ _TYPE_wchar_t;
- #define ___int_ptrdiff_t_h
- #define _GCC_PTRDIFF_T
- #define _PTRDIFF_T_DECLARED
-+#define __DEFINED_ptrdiff_t /* musl */
- #ifndef __PTRDIFF_TYPE__
- #define __PTRDIFF_TYPE__ long int
- #endif
- typedef __PTRDIFF_TYPE__ ptrdiff_t;
-+#endif /* __DEFINED_ptrdiff_t */
- #endif /* _PTRDIFF_T_DECLARED */
- #endif /* _GCC_PTRDIFF_T */
- #endif /* ___int_ptrdiff_t_h */
-@@ -178,6 +181,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
- #ifndef _GCC_SIZE_T
- #ifndef _SIZET_
- #ifndef __size_t
-+#ifndef __DEFINED_size_t /* musl */
- #define __size_t__ /* BeOS */
- #define __SIZE_T__ /* Cray Unicos/Mk */
- #define _SIZE_T
-@@ -194,6 +198,7 @@ typedef __PTRDIFF_TYPE__ ptrdiff_t;
- #define ___int_size_t_h
- #define _GCC_SIZE_T
- #define _SIZET_
-+#define __DEFINED_size_t /* musl */
- #if defined (__FreeBSD__) \
- || defined(__DragonFly__) \
- || defined(__FreeBSD_kernel__) \
-@@ -228,6 +233,7 @@ typedef long ssize_t;
- #endif /* _SIZE_T */
- #endif /* __SIZE_T__ */
- #endif /* __size_t__ */
-+#endif /* __DEFINED_size_t */
- #undef __need_size_t
- #endif /* _STDDEF_H or __need_size_t. */
-
-@@ -257,6 +263,7 @@ typedef long ssize_t;
- #ifndef ___int_wchar_t_h
- #ifndef __INT_WCHAR_T_H
- #ifndef _GCC_WCHAR_T
-+#ifndef __DEFINED_wchar_t /* musl */
- #define __wchar_t__ /* BeOS */
- #define __WCHAR_T__ /* Cray Unicos/Mk */
- #define _WCHAR_T
-@@ -272,6 +279,7 @@ typedef long ssize_t;
- #define __INT_WCHAR_T_H
- #define _GCC_WCHAR_T
- #define _WCHAR_T_DECLARED
-+#define __DEFINED_wchar_t /* musl */
-
- /* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_
- instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other
-@@ -337,6 +345,7 @@ typedef __WCHAR_TYPE__ wchar_t;
- #endif
- #endif /* __WCHAR_T__ */
- #endif /* __wchar_t__ */
-+#endif /* __DEFINED_wchar_t musl */
- #undef __need_wchar_t
- #endif /* _STDDEF_H or __need_wchar_t. */
-
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0027-libatomic-Do-not-enforce-march-on-aarch64.patch b/poky/meta/recipes-devtools/gcc/gcc/0023-libatomic-Do-not-enforce-march-on-aarch64.patch
index 85b1251482..2f01659847 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0027-libatomic-Do-not-enforce-march-on-aarch64.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0023-libatomic-Do-not-enforce-march-on-aarch64.patch
@@ -1,4 +1,4 @@
-From df1c63bbd7a520e8c6d0d0692b4d8bff56952394 Mon Sep 17 00:00:00 2001
+From 52931ec7a708b58d68e69ce9eb99001ae9f099dd Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 13 May 2020 15:10:38 -0700
Subject: [PATCH] libatomic: Do not enforce march on aarch64
@@ -17,7 +17,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 2 deletions(-)
diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am
-index ab8c2da24a1..f614a46b34d 100644
+index d88515e4a03..e0e2f8b442a 100644
--- a/libatomic/Makefile.am
+++ b/libatomic/Makefile.am
@@ -125,7 +125,6 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS)))
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0029-Fix-install-path-of-linux64.h.patch b/poky/meta/recipes-devtools/gcc/gcc/0024-Fix-install-path-of-linux64.h.patch
index d7e156e7a3..555be62328 100644
--- a/poky/meta/recipes-devtools/gcc/gcc/0029-Fix-install-path-of-linux64.h.patch
+++ b/poky/meta/recipes-devtools/gcc/gcc/0024-Fix-install-path-of-linux64.h.patch
@@ -1,4 +1,4 @@
-From 8a62cc0a64670e39f462c1dbbf82e04d2f03b89e Mon Sep 17 00:00:00 2001
+From 3e67c9c77e46132c252911bf1e5e4222dfd3aa34 Mon Sep 17 00:00:00 2001
From: Andrei Gherzan <andrei.gherzan@huawei.com>
Date: Wed, 22 Dec 2021 12:49:25 +0100
Subject: [PATCH] Fix install path of linux64.h
@@ -17,10 +17,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 2 insertions(+)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
-index 06eb0d27a28..a8678ca24ed 100644
+index 07fa63b6640..0def7394454 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
-@@ -3686,6 +3686,8 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
+@@ -3706,6 +3706,8 @@ install-plugin: installdirs lang.install-plugin s-header-vars install-gengtype
"$(srcdir)"/config/* | "$(srcdir)"/common/config/* \
| "$(srcdir)"/c-family/* | "$(srcdir)"/*.def ) \
base=`echo "$$path" | sed -e "s|$$srcdirstrip/||"`;; \
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0025-Move-sched.h-include-ahead-of-user-headers.patch b/poky/meta/recipes-devtools/gcc/gcc/0025-Move-sched.h-include-ahead-of-user-headers.patch
new file mode 100644
index 0000000000..d4aeacfed5
--- /dev/null
+++ b/poky/meta/recipes-devtools/gcc/gcc/0025-Move-sched.h-include-ahead-of-user-headers.patch
@@ -0,0 +1,56 @@
+From 7422adfb471f4b4f2ec870124064632d55f72e50 Mon Sep 17 00:00:00 2001
+From: Khem Raj <raj.khem@gmail.com>
+Date: Mon, 11 Apr 2022 15:46:18 -0700
+Subject: [PATCH] Move sched.h include ahead of user headers
+
+Fix attempt to use poisoned calloc error, this moves the sched.h before
+using system.h from gcc headers which includes #pragma GCC poison calloc
+
+Fixes
+In file included from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/pthread.h:30,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/aarch64-yoe-linux-musl/bits/gthr-default.h:35,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/aarch64-yoe-linux-musl/bits/gthr.h:148,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/ext/atomicity.h:35,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/bits/shared_ptr_base.h:61,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/bits/shared_ptr.h:53,
+ from /mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/c++/12.0.1/memory:77,
+ from ../../../../../../../work-shared/gcc-12.0.1-r0/gcc-12-20220410/libcc1/deleter.hh:23,
+ from ../../../../../../../work-shared/gcc-12.0.1-r0/gcc-12-20220410/libcc1/rpc.hh:25,
+ from ../../../../../../../work-shared/gcc-12.0.1-r0/gcc-12-20220410/libcc1/libcc1plugin.cc:67:
+/mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/sched.h:84:7: error: attempt to use poisoned "calloc"
+ 84 | void *calloc(size_t, size_t);
+ | ^
+/mnt/b/yoe/master/build/tmp/work/cortexa72-yoe-linux-musl/gcc/12.0.1-r0/recipe-sysroot/usr/include/sched.h:124:36: error: attempt to use poisoned "calloc"
+ 124 | #define CPU_ALLOC(n) ((cpu_set_t *)calloc(1,CPU_ALLOC_SIZE(n)))
+
+Upstream-Status: Pending
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ libcc1/libcc1plugin.cc | 1 +
+ libcc1/libcp1plugin.cc | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/libcc1/libcc1plugin.cc b/libcc1/libcc1plugin.cc
+index 12ab5a57c8d..fff9bfab18b 100644
+--- a/libcc1/libcc1plugin.cc
++++ b/libcc1/libcc1plugin.cc
+@@ -17,6 +17,7 @@
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
++#include <sched.h>
+ #include <cc1plugin-config.h>
+
+ #undef PACKAGE_NAME
+diff --git a/libcc1/libcp1plugin.cc b/libcc1/libcp1plugin.cc
+index 83dab7f58b1..0b83ce7a09d 100644
+--- a/libcc1/libcp1plugin.cc
++++ b/libcc1/libcp1plugin.cc
+@@ -18,6 +18,7 @@
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+
++#include <sched.h>
+ #include <cc1plugin-config.h>
+
+ #undef PACKAGE_NAME
diff --git a/poky/meta/recipes-devtools/gcc/gcc/0028-debug-101473-apply-debug-prefix-maps-before-checksum.patch b/poky/meta/recipes-devtools/gcc/gcc/0028-debug-101473-apply-debug-prefix-maps-before-checksum.patch
deleted file mode 100644
index de06793482..0000000000
--- a/poky/meta/recipes-devtools/gcc/gcc/0028-debug-101473-apply-debug-prefix-maps-before-checksum.patch
+++ /dev/null
@@ -1,101 +0,0 @@
-From 49008eeedc97014f44e12afe179d3785e4438372 Mon Sep 17 00:00:00 2001
-From: Richard Biener <rguenther@suse.de>
-Date: Tue, 20 Jul 2021 11:00:33 +0200
-Subject: [PATCH] debug/101473 - apply debug prefix maps before checksumming
- DIEs
-
-The following makes sure to apply the debug prefix maps to filenames
-before checksumming DIEs to create the global symbol for the CU DIE
-used by LTO to link the late debug to the early debug. This avoids
-binary differences (in said symbol) when compiling with toolchains
-installed under a different path and that compensated with appropriate
--fdebug-prefix-map options.
-
-The easiest and most scalable way is to record both the unmapped
-and the remapped filename in the dwarf_file_data so the remapping
-process takes place at a single point and only once (otherwise it
-creates GC garbage at each point doing that).
-
-2021-07-20 Richard Biener <rguenther@suse.de>
-
- PR debug/101473
- * dwarf2out.h (dwarf_file_data): Add key member.
- * dwarf2out.c (dwarf_file_hasher::equal): Compare key.
- (dwarf_file_hasher::hash): Hash key.
- (lookup_filename): Remap the filename and store it in the
- filename member of dwarf_file_data when creating a new
- dwarf_file_data.
- (file_name_acquire): Do not remap the filename again.
- (maybe_emit_file): Likewise.
-
-[YOCTO #14481]
-
-Upstream-Status: Backport [https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=7cc2df084b7977653a9b59cbc34a9ad500ae619c]
-
-The upstream patch was modified to compensate for the definition of
-"struct dwarf_file_data" being in dwarf2out.c rather than dwarf2out.h in
-this version of gcc.
-
-Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- gcc/dwarf2out.c | 13 +++++++------
- 1 file changed, 7 insertions(+), 6 deletions(-)
-
-diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
-index e5d3ce4966d..41ac3008507 100644
---- a/gcc/dwarf2out.c
-+++ b/gcc/dwarf2out.c
-@@ -1283,6 +1283,7 @@ dwarf2out_switch_text_section (void)
-
- /* Data about a single source file. */
- struct GTY((for_user)) dwarf_file_data {
-+ const char * key;
- const char * filename;
- int emitted_number;
- };
-@@ -12335,7 +12336,7 @@ file_name_acquire (dwarf_file_data **slot, file_name_acquire_data *fnad)
-
- fi = fnad->files + fnad->used_files++;
-
-- f = remap_debug_filename (d->filename);
-+ f = d->filename;
-
- /* Skip all leading "./". */
- while (f[0] == '.' && IS_DIR_SEPARATOR (f[1]))
-@@ -27259,13 +27260,13 @@ dwarf2out_ignore_block (const_tree block)
- bool
- dwarf_file_hasher::equal (dwarf_file_data *p1, const char *p2)
- {
-- return filename_cmp (p1->filename, p2) == 0;
-+ return filename_cmp (p1->key, p2) == 0;
- }
-
- hashval_t
- dwarf_file_hasher::hash (dwarf_file_data *p)
- {
-- return htab_hash_string (p->filename);
-+ return htab_hash_string (p->key);
- }
-
- /* Lookup FILE_NAME (in the list of filenames that we know about here in
-@@ -27295,7 +27296,8 @@ lookup_filename (const char *file_name)
- return *slot;
-
- created = ggc_alloc<dwarf_file_data> ();
-- created->filename = file_name;
-+ created->key = file_name;
-+ created->filename = remap_debug_filename (file_name);
- created->emitted_number = 0;
- *slot = created;
- return created;
-@@ -27321,8 +27323,7 @@ maybe_emit_file (struct dwarf_file_data * fd)
- if (output_asm_line_debug_info ())
- {
- fprintf (asm_out_file, "\t.file %u ", fd->emitted_number);
-- output_quoted_string (asm_out_file,
-- remap_debug_filename (fd->filename));
-+ output_quoted_string (asm_out_file, fd->filename);
- fputc ('\n', asm_out_file);
- }
- }
diff --git a/poky/meta/recipes-devtools/gcc/gcc_11.3.bb b/poky/meta/recipes-devtools/gcc/gcc_12.1.bb
index 255fe552bd..255fe552bd 100644
--- a/poky/meta/recipes-devtools/gcc/gcc_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/gcc_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.3.bb b/poky/meta/recipes-devtools/gcc/libgcc-initial_12.1.bb
index a259082b47..a259082b47 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc-initial_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc-initial_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgcc_11.3.bb b/poky/meta/recipes-devtools/gcc/libgcc_12.1.bb
index f88963b0a4..f88963b0a4 100644
--- a/poky/meta/recipes-devtools/gcc/libgcc_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/libgcc_12.1.bb
diff --git a/poky/meta/recipes-devtools/gcc/libgfortran_11.3.bb b/poky/meta/recipes-devtools/gcc/libgfortran_12.1.bb
index 71dd8b4bdc..71dd8b4bdc 100644
--- a/poky/meta/recipes-devtools/gcc/libgfortran_11.3.bb
+++ b/poky/meta/recipes-devtools/gcc/libgfortran_12.1.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb
index 4ab2b7156d..4ab2b7156d 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_11.2.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross-canadian_12.1.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb-cross_11.2.bb b/poky/meta/recipes-devtools/gdb/gdb-cross_12.1.bb
index 3b654a2f0d..3b654a2f0d 100644
--- a/poky/meta/recipes-devtools/gdb/gdb-cross_11.2.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb-cross_12.1.bb
diff --git a/poky/meta/recipes-devtools/gdb/gdb.inc b/poky/meta/recipes-devtools/gdb/gdb.inc
index 649ee28727..3b569fd40e 100644
--- a/poky/meta/recipes-devtools/gdb/gdb.inc
+++ b/poky/meta/recipes-devtools/gdb/gdb.inc
@@ -8,11 +8,11 @@ SRC_URI = "${GNU_MIRROR}/gdb/gdb-${PV}.tar.xz \
file://0001-make-man-install-relative-to-DESTDIR.patch \
file://0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch \
file://0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch \
- file://0005-Dont-disable-libreadline.a-when-using-disable-static.patch \
- file://0006-use-asm-sgidefs.h.patch \
- file://0007-Change-order-of-CFLAGS.patch \
- file://0008-resolve-restrict-keyword-conflict.patch \
- file://0009-Fix-invalid-sigprocmask-call.patch \
- file://0010-gdbserver-ctrl-c-handling.patch \
+ file://0004-Dont-disable-libreadline.a-when-using-disable-static.patch \
+ file://0005-use-asm-sgidefs.h.patch \
+ file://0006-Change-order-of-CFLAGS.patch \
+ file://0007-resolve-restrict-keyword-conflict.patch \
+ file://0008-Fix-invalid-sigprocmask-call.patch \
+ file://0009-gdbserver-ctrl-c-handling.patch \
"
-SRC_URI[sha256sum] = "1497c36a71881b8671a9a84a0ee40faab788ca30d7ba19d8463c3cc787152e32"
+SRC_URI[sha256sum] = "0e1793bf8f2b54d53f46dea84ccfd446f48f81b297b28c4f7fc017b818d69fed"
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch b/poky/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch
index 824b96f6af..16d6cf196f 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0001-make-man-install-relative-to-DESTDIR.patch
@@ -1,7 +1,7 @@
-From a6d3df9d84463ec500d9d01558ab8a17e824e9e5 Mon Sep 17 00:00:00 2001
+From 8eca28eddcda4ce8a345ca031f43ff1ed6f37089 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 2 Mar 2015 02:27:55 +0000
-Subject: [PATCH 01/10] make man install relative to DESTDIR
+Subject: [PATCH 1/9] make man install relative to DESTDIR
Upstream-Status: Pending
@@ -11,10 +11,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
-index 8c2cacea1e5..4a52eef2203 100644
+index 74e5dad3049..9e95c224ba4 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
-@@ -63,7 +63,7 @@ tooldir = $(libdir)/$(target_alias)
+@@ -70,7 +70,7 @@ tooldir = $(libdir)/$(target_alias)
datadir = @datadir@
datarootdir = @datarootdir@
mandir = @mandir@
@@ -24,5 +24,5 @@ index 8c2cacea1e5..4a52eef2203 100644
includedir = @includedir@
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch b/poky/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
index 591c9bfa3f..8d263de896 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0002-mips-linux-nat-Define-_ABIO32-if-not-defined.patch
@@ -1,7 +1,7 @@
-From 7f1f25eaaace289bc33c5aaa1c5fe9e04e719651 Mon Sep 17 00:00:00 2001
+From 37d3afd2eaa95c89ad7cb5d0079b017752e4d0ea Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Wed, 23 Mar 2016 06:30:09 +0000
-Subject: [PATCH 02/10] mips-linux-nat: Define _ABIO32 if not defined
+Subject: [PATCH 2/9] mips-linux-nat: Define _ABIO32 if not defined
This helps building gdb on mips64 on musl, since
musl does not provide sgidefs.h this define is
@@ -16,7 +16,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 4 insertions(+)
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
-index b21c7cb2ea6..6614b4de31e 100644
+index 20e12b6889e..6adc61235aa 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -41,6 +41,10 @@
@@ -31,5 +31,5 @@ index b21c7cb2ea6..6614b4de31e 100644
class mips_linux_nat_target final : public linux_nat_trad_target
{
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch b/poky/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
index 09ea533b00..7e09404bb0 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0003-ppc-ptrace-Define-pt_regs-uapi_pt_regs-on-GLIBC-syst.patch
@@ -1,8 +1,7 @@
-From 0cb233ec3951582fa1a051a16bfd644ef4969df5 Mon Sep 17 00:00:00 2001
+From e689eec672ee8c53b3adb2ade2b5deb9b7cd99d4 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 18:32:14 -0700
-Subject: [PATCH 03/10] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC
- systems
+Subject: [PATCH 3/9] ppc/ptrace: Define pt_regs uapi_pt_regs on !GLIBC systems
Upstream-Status: Pending
@@ -13,7 +12,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 12 insertions(+)
diff --git a/gdb/nat/ppc-linux.h b/gdb/nat/ppc-linux.h
-index e712a9a5713..76bbcca0928 100644
+index 1094f6b0be3..d8588a646c2 100644
--- a/gdb/nat/ppc-linux.h
+++ b/gdb/nat/ppc-linux.h
@@ -18,7 +18,13 @@
@@ -31,7 +30,7 @@ index e712a9a5713..76bbcca0928 100644
/* This sometimes isn't defined. */
diff --git a/gdbserver/linux-ppc-low.cc b/gdbserver/linux-ppc-low.cc
-index db9a88219ea..151e4183bb1 100644
+index 08824887003..69afbae5359 100644
--- a/gdbserver/linux-ppc-low.cc
+++ b/gdbserver/linux-ppc-low.cc
@@ -23,7 +23,13 @@
@@ -49,5 +48,5 @@ index db9a88219ea..151e4183bb1 100644
#include "arch/ppc-linux-common.h"
#include "arch/ppc-linux-tdesc.h"
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch b/poky/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch
index 02ea30f9bf..a1e85e91b3 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0005-Dont-disable-libreadline.a-when-using-disable-static.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0004-Dont-disable-libreadline.a-when-using-disable-static.patch
@@ -1,7 +1,7 @@
-From e2efd044c479895767f1b929f5a54fa0c689f318 Mon Sep 17 00:00:00 2001
+From 15ee6a626242efb8f367be49c13e00d0b72317f0 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 15:25:03 -0700
-Subject: [PATCH 05/10] Dont disable libreadline.a when using --disable-static
+Subject: [PATCH 4/9] Dont disable libreadline.a when using --disable-static
If gdb is configured with --disable-static then this is dutifully passed to
readline which then disables libreadline.a, which causes a problem when gdb
@@ -19,10 +19,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/Makefile.def b/Makefile.def
-index 5a460f1dbbc..77a702ac6d6 100644
+index acdcd625ed6..78fc31e1199 100644
--- a/Makefile.def
+++ b/Makefile.def
-@@ -105,7 +105,8 @@ host_modules= { module= libiconv;
+@@ -120,7 +120,8 @@ host_modules= { module= libiconv;
missing= install-html;
missing= install-info; };
host_modules= { module= m4; };
@@ -33,10 +33,10 @@ index 5a460f1dbbc..77a702ac6d6 100644
host_modules= { module= sim; };
host_modules= { module= texinfo; no_install= true; };
diff --git a/Makefile.in b/Makefile.in
-index 9b3a5d75735..98cbe844fca 100644
+index 3aacd2daac9..aa58adada4a 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -25607,7 +25607,7 @@ configure-readline:
+@@ -32791,7 +32791,7 @@ configure-readline:
$$s/$$module_srcdir/configure \
--srcdir=$${topdir}/$$module_srcdir \
$(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \
@@ -46,5 +46,5 @@ index 9b3a5d75735..98cbe844fca 100644
@endif readline
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch b/poky/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch
index ef271c45e2..242099b9b1 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0006-use-asm-sgidefs.h.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0005-use-asm-sgidefs.h.patch
@@ -1,7 +1,7 @@
-From 5077518c11e8d75e9bf65cdf9ca21c59564e1037 Mon Sep 17 00:00:00 2001
+From 25a75aaf29791f4302f0e4452f7ebaf735d4f083 Mon Sep 17 00:00:00 2001
From: Andre McCurdy <amccurdy@gmail.com>
Date: Sat, 30 Apr 2016 15:29:06 -0700
-Subject: [PATCH 06/10] use <asm/sgidefs.h>
+Subject: [PATCH 5/9] use <asm/sgidefs.h>
Build fix for MIPS with musl libc
@@ -19,7 +19,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
-index 6614b4de31e..237eb6eb975 100644
+index 6adc61235aa..afb40066744 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -31,7 +31,7 @@
@@ -32,5 +32,5 @@ index 6614b4de31e..237eb6eb975 100644
#include <asm/ptrace.h>
#include "inf-ptrace.h"
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch b/poky/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch
index 40d12579c0..58c9b1d0a7 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0007-Change-order-of-CFLAGS.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0006-Change-order-of-CFLAGS.patch
@@ -1,7 +1,7 @@
-From 80080e6c8425ac51498f49c2063b960a08f9a27d Mon Sep 17 00:00:00 2001
+From c0e7c34134aa1f9644075c596a2338a50d3d923e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 30 Apr 2016 15:35:39 -0700
-Subject: [PATCH 07/10] Change order of CFLAGS
+Subject: [PATCH 6/9] Change order of CFLAGS
Lets us override Werror if need be
@@ -13,10 +13,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdbserver/Makefile.in b/gdbserver/Makefile.in
-index 12e9b2777ae..ad44fbc3309 100644
+index 47648b8d962..5599779de57 100644
--- a/gdbserver/Makefile.in
+++ b/gdbserver/Makefile.in
-@@ -172,7 +172,7 @@ WIN32APILIBS = @WIN32APILIBS@
+@@ -156,7 +156,7 @@ WIN32APILIBS = @WIN32APILIBS@
INTERNAL_CFLAGS_BASE = ${GLOBAL_CFLAGS} \
${PROFILE_CFLAGS} ${INCLUDE_CFLAGS} ${CPPFLAGS} $(PTHREAD_CFLAGS)
INTERNAL_WARN_CFLAGS = ${INTERNAL_CFLAGS_BASE} $(WARN_CFLAGS)
@@ -26,5 +26,5 @@ index 12e9b2777ae..ad44fbc3309 100644
# LDFLAGS is specifically reserved for setting from the command line
# when running make.
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch b/poky/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch
index 9095f90582..bbd1f0b27f 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0008-resolve-restrict-keyword-conflict.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0007-resolve-restrict-keyword-conflict.patch
@@ -1,7 +1,7 @@
-From 4ee7e8afb9ff259e889ac938c673fda9ddc5e15a Mon Sep 17 00:00:00 2001
+From 44fa1ecfbd8a5fe0cfea12a175fa041686842a0c Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Tue, 10 May 2016 08:47:05 -0700
-Subject: [PATCH 08/10] resolve restrict keyword conflict
+Subject: [PATCH 7/9] resolve restrict keyword conflict
GCC detects that we call 'restrict' as param name in function
signatures and complains since both params are called 'restrict'
@@ -44,5 +44,5 @@ index 90a67d18426..664641a1fe8 100644
_GL_CXXALIASWARN (gettimeofday);
# if defined __cplusplus && defined GNULIB_NAMESPACE
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch b/poky/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch
index 5b9d1cfaf9..ed1310ced2 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0009-Fix-invalid-sigprocmask-call.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0008-Fix-invalid-sigprocmask-call.patch
@@ -1,7 +1,7 @@
-From 5740876d92ddb67b039d5fbcd1b71e6c58823c08 Mon Sep 17 00:00:00 2001
+From 5bdd15553daef7370ca3c1f12d8f14247fdd4907 Mon Sep 17 00:00:00 2001
From: Yousong Zhou <yszhou4tech@gmail.com>
Date: Fri, 24 Mar 2017 10:36:03 +0800
-Subject: [PATCH 09/10] Fix invalid sigprocmask call
+Subject: [PATCH 8/9] Fix invalid sigprocmask call
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@@ -32,7 +32,7 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdbsupport/signals-state-save-restore.cc b/gdbsupport/signals-state-save-restore.cc
-index 95c156e5036..f4aa512d105 100644
+index 92e799d3551..a4a0234272a 100644
--- a/gdbsupport/signals-state-save-restore.cc
+++ b/gdbsupport/signals-state-save-restore.cc
@@ -38,7 +38,7 @@ save_original_signals_state (bool quiet)
@@ -45,5 +45,5 @@ index 95c156e5036..f4aa512d105 100644
perror_with_name (("sigprocmask"));
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch b/poky/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch
index cb4744e5dd..f53d3bd1e5 100644
--- a/poky/meta/recipes-devtools/gdb/gdb/0010-gdbserver-ctrl-c-handling.patch
+++ b/poky/meta/recipes-devtools/gdb/gdb/0009-gdbserver-ctrl-c-handling.patch
@@ -1,7 +1,7 @@
-From d611a68f05c0c86af27bf6beae189a90a946e2e3 Mon Sep 17 00:00:00 2001
+From bc3b1f6aacf2d8fe66b022fbfcf28cd82c76e52f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 29 Nov 2018 18:00:23 -0800
-Subject: [PATCH 10/10] gdbserver ctrl-c handling
+Subject: [PATCH 9/9] gdbserver ctrl-c handling
This problem was created by the upstream commit 78708b7c8c
After applying the commit, it will send SIGINT to the process
@@ -23,10 +23,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdbserver/linux-low.cc b/gdbserver/linux-low.cc
-index 5c6191d941c..7f7acf6700d 100644
+index 7726a4a0c36..f750e074a03 100644
--- a/gdbserver/linux-low.cc
+++ b/gdbserver/linux-low.cc
-@@ -5733,7 +5733,7 @@ linux_process_target::request_interrupt ()
+@@ -5496,7 +5496,7 @@ linux_process_target::request_interrupt ()
{
/* Send a SIGINT to the process group. This acts just like the user
typed a ^C on the controlling terminal. */
@@ -36,5 +36,5 @@ index 5c6191d941c..7f7acf6700d 100644
bool
--
-2.33.1
+2.36.1
diff --git a/poky/meta/recipes-devtools/gdb/gdb_11.2.bb b/poky/meta/recipes-devtools/gdb/gdb_12.1.bb
index 9c6db4ca2c..9c6db4ca2c 100644
--- a/poky/meta/recipes-devtools/gdb/gdb_11.2.bb
+++ b/poky/meta/recipes-devtools/gdb/gdb_12.1.bb
diff --git a/poky/meta/recipes-devtools/git/git/0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch b/poky/meta/recipes-devtools/git/git/0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch
index e0f702f327..d80d082ba3 100644
--- a/poky/meta/recipes-devtools/git/git/0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch
+++ b/poky/meta/recipes-devtools/git/git/0001-config.mak.uname-do-not-force-RHEL-7-specific-build-.patch
@@ -1,4 +1,4 @@
-From 3b2505435bc6f982226eff84bad6bf9a36381573 Mon Sep 17 00:00:00 2001
+From c0c5241abdc113acbe6bcd960686cea414bce357 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex@linutronix.de>
Date: Mon, 7 Feb 2022 10:13:15 +0100
Subject: [PATCH] config.mak.uname: do not force RHEL-7 specific build settings
@@ -8,22 +8,22 @@ different flags than git builds on other host distros.
Upstream-Status: Inappropriate [upstream needs to check compiler and component versions properly]
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+
---
- config.mak.uname | 5 -----
- 1 file changed, 5 deletions(-)
+ config.mak.uname | 4 ----
+ 1 file changed, 4 deletions(-)
diff --git a/config.mak.uname b/config.mak.uname
-index c48db45..9b3e9bf 100644
+index 259d151..136ae3b 100644
--- a/config.mak.uname
+++ b/config.mak.uname
-@@ -63,11 +63,6 @@ ifeq ($(uname_S),Linux)
+@@ -64,10 +64,6 @@ ifeq ($(uname_S),Linux)
PROCFS_EXECUTABLE_PATH = /proc/self/exe
HAVE_PLATFORM_PROCINFO = YesPlease
COMPAT_OBJS += compat/linux/procinfo.o
- # centos7/rhel7 provides gcc 4.8.5 and zlib 1.2.7.
- ifneq ($(findstring .el7.,$(uname_R)),)
- BASIC_CFLAGS += -std=c99
-- NO_UNCOMPRESS2 = YesPlease
- endif
endif
ifeq ($(uname_S),GNU/kFreeBSD)
diff --git a/poky/meta/recipes-devtools/git/git_2.35.3.bb b/poky/meta/recipes-devtools/git/git_2.36.1.bb
index 68981d4fde..2c53616642 100644
--- a/poky/meta/recipes-devtools/git/git_2.35.3.bb
+++ b/poky/meta/recipes-devtools/git/git_2.36.1.bb
@@ -165,4 +165,4 @@ EXTRA_OECONF += "ac_cv_snprintf_returns_bogus=no \
"
EXTRA_OEMAKE += "NO_GETTEXT=1"
-SRC_URI[tarball.sha256sum] = "cad708072d5c0b390c71651f5edb44143f00b357766973470bf9adebc0944c03"
+SRC_URI[tarball.sha256sum] = "37d936fd17c81aa9ddd3dba4e56e88a45fa534ad0ba946454e8ce818760c6a2c"
diff --git a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
index 07aef75715..0b2bcc0b26 100644
--- a/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
+++ b/poky/meta/recipes-devtools/gnu-config/gnu-config_git.bb
@@ -9,8 +9,8 @@ DEPENDS:class-native = "hostperl-runtime-native"
INHIBIT_DEFAULT_DEPS = "1"
-SRCREV = "c179db1b6f2ae484bfca1e9f8bae273e3319fa7d"
-PV = "20220425+git${SRCPV}"
+SRCREV = "f56a7140386d08a531bcfd444d632b28c61a6329"
+PV = "20220516+git${SRCPV}"
SRC_URI = "git://git.savannah.gnu.org/git/config.git;protocol=https;branch=master \
file://gnu-configize.in"
diff --git a/poky/meta/recipes-devtools/go/go-1.18.1.inc b/poky/meta/recipes-devtools/go/go-1.18.2.inc
index 64426471df..8f4f47db9e 100644
--- a/poky/meta/recipes-devtools/go/go-1.18.1.inc
+++ b/poky/meta/recipes-devtools/go/go-1.18.2.inc
@@ -14,4 +14,4 @@ SRC_URI += "\
file://0001-exec.go-do-not-write-linker-flags-into-buildids.patch \
file://0001-src-cmd-dist-buildgo.go-do-not-hardcode-host-compile.patch \
"
-SRC_URI[main.sha256sum] = "efd43e0f1402e083b73a03d444b7b6576bb4c539ac46208b63a916b69aca4088"
+SRC_URI[main.sha256sum] = "2c44d03ea2c34092137ab919ba602f2c261a038d08eb468528a3f3a28e5667e2"
diff --git a/poky/meta/recipes-devtools/go/go-binary-native_1.18.1.bb b/poky/meta/recipes-devtools/go/go-binary-native_1.18.2.bb
index da9f39f428..c5514c5fdf 100644
--- a/poky/meta/recipes-devtools/go/go-binary-native_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-binary-native_1.18.2.bb
@@ -8,8 +8,8 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=5d4950ecb7b26d2c5e4e7b4e0dd74707"
PROVIDES = "go-native"
SRC_URI = "https://dl.google.com/go/go${PV}.${BUILD_GOOS}-${BUILD_GOARCH}.tar.gz;name=go_${BUILD_GOTUPLE}"
-SRC_URI[go_linux_amd64.sha256sum] = "b3b815f47ababac13810fc6021eb73d65478e0b2db4b09d348eefad9581a2334"
-SRC_URI[go_linux_arm64.sha256sum] = "56a91851c97fb4697077abbca38860f735c32b38993ff79b088dac46e4735633"
+SRC_URI[go_linux_amd64.sha256sum] = "e54bec97a1a5d230fc2f9ad0880fcbabb5888f30ed9666eca4a91c5a32e86cbc"
+SRC_URI[go_linux_arm64.sha256sum] = "fc4ad28d0501eaa9c9d6190de3888c9d44d8b5fb02183ce4ae93713f67b8a35b"
UPSTREAM_CHECK_URI = "https://golang.org/dl/"
UPSTREAM_CHECK_REGEX = "go(?P<pver>\d+(\.\d+)+)\.linux"
diff --git a/poky/meta/recipes-devtools/go/go-cross-canadian_1.18.1.bb b/poky/meta/recipes-devtools/go/go-cross-canadian_1.18.2.bb
index 7ac9449e47..7ac9449e47 100644
--- a/poky/meta/recipes-devtools/go/go-cross-canadian_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-cross-canadian_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-cross_1.18.1.bb b/poky/meta/recipes-devtools/go/go-cross_1.18.2.bb
index 80b5a03f6c..80b5a03f6c 100644
--- a/poky/meta/recipes-devtools/go/go-cross_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-cross_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-crosssdk_1.18.1.bb b/poky/meta/recipes-devtools/go/go-crosssdk_1.18.2.bb
index 1857c8a577..1857c8a577 100644
--- a/poky/meta/recipes-devtools/go/go-crosssdk_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-crosssdk_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-native_1.18.1.bb b/poky/meta/recipes-devtools/go/go-native_1.18.2.bb
index 76c0ab73a6..76c0ab73a6 100644
--- a/poky/meta/recipes-devtools/go/go-native_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-native_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/go/go-runtime_1.18.1.bb b/poky/meta/recipes-devtools/go/go-runtime_1.18.2.bb
index 63464a1501..63464a1501 100644
--- a/poky/meta/recipes-devtools/go/go-runtime_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go-runtime_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/go/go_1.18.1.bb b/poky/meta/recipes-devtools/go/go_1.18.2.bb
index 98977673ee..98977673ee 100644
--- a/poky/meta/recipes-devtools/go/go_1.18.1.bb
+++ b/poky/meta/recipes-devtools/go/go_1.18.2.bb
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf/0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch b/poky/meta/recipes-devtools/libdnf/libdnf/0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch
index 9adb345b68..643a5f37b6 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf/0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch
+++ b/poky/meta/recipes-devtools/libdnf/libdnf/0004-Set-libsolv-variables-with-pkg-config-cmake-s-own-mo.patch
@@ -1,4 +1,4 @@
-From 18c2c06017784cd641cc8a3deee5fc472008f7f4 Mon Sep 17 00:00:00 2001
+From fbb181d25ad85778add7ed45b6aaf114e02d0f79 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Fri, 30 Dec 2016 18:24:50 +0200
Subject: [PATCH] Set libsolv variables with pkg-config (cmake's own module
@@ -7,24 +7,22 @@ Subject: [PATCH] Set libsolv variables with pkg-config (cmake's own module
Upstream-Status: Submitted [https://github.com/rpm-software-management/libdnf/pull/312]
Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
---
CMakeLists.txt | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index fd6e3f0..5383744 100644
+index 405dc4e8..53837448 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -52,7 +52,8 @@ endif()
# build dependencies
find_package(Gpgme REQUIRED)
--find_package(LibSolv 0.6.30 REQUIRED COMPONENTS ext)
+-find_package(LibSolv 0.7.21 REQUIRED COMPONENTS ext)
+PKG_CHECK_MODULES (LIBSOLV REQUIRED libsolv)
+set(LIBSOLV_LIBRARY ${LIBSOLV_LIBRARIES})
# build dependencies via pkg-config
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/libdnf/libdnf_0.66.0.bb b/poky/meta/recipes-devtools/libdnf/libdnf_0.67.0.bb
index 2558f96851..69255c5a57 100644
--- a/poky/meta/recipes-devtools/libdnf/libdnf_0.66.0.bb
+++ b/poky/meta/recipes-devtools/libdnf/libdnf_0.67.0.bb
@@ -13,7 +13,7 @@ SRC_URI = "git://github.com/rpm-software-management/libdnf;branch=dnf-4-master;p
file://0001-libdnf-dnf-context.cpp-do-not-try-to-access-BDB-data.patch \
"
-SRCREV = "add5d5418b140a86d08667dd2b14793093984875"
+SRCREV = "1742be5225b3a4928707696db8c69391def55f5a"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(?!4\.90)\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/librepo/librepo_1.14.2.bb b/poky/meta/recipes-devtools/librepo/librepo_1.14.3.bb
index 8dece946b4..2c8e592251 100644
--- a/poky/meta/recipes-devtools/librepo/librepo_1.14.2.bb
+++ b/poky/meta/recipes-devtools/librepo/librepo_1.14.3.bb
@@ -10,7 +10,7 @@ SRC_URI = "git://github.com/rpm-software-management/librepo.git;branch=master;pr
file://0004-Set-gpgme-variables-with-pkg-config-not-with-cmake-m.patch \
"
-SRCREV = "3b9a8d17188ba602d139f79b6e61305030f21109"
+SRCREV = "8fc7950795282d9c7c50071f45973006de5594ab"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-devtools/llvm/llvm_git.bb b/poky/meta/recipes-devtools/llvm/llvm_git.bb
index 53ae1abd57..0b5301cbff 100644
--- a/poky/meta/recipes-devtools/llvm/llvm_git.bb
+++ b/poky/meta/recipes-devtools/llvm/llvm_git.bb
@@ -19,14 +19,14 @@ inherit cmake pkgconfig
PROVIDES += "llvm${PV}"
-PV = "14.0.1"
+PV = "14.0.3"
MAJOR_VERSION = "${@oe.utils.trim_version("${PV}", 1)}"
LLVM_RELEASE = "${PV}"
BRANCH = "release/${MAJOR_VERSION}.x"
-SRCREV = "c62053979489ccb002efe411c3af059addcb5d7d"
+SRCREV = "1f9140064dfbfb0bbda8e51306ea51080b2f7aac"
SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH};protocol=https \
file://0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch;striplevel=2 \
file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
diff --git a/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb b/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
index addefe9abf..3e611d1306 100644
--- a/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
+++ b/poky/meta/recipes-devtools/mmc/mmc-utils_git.bb
@@ -5,7 +5,7 @@ LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://mmc.c;beginline=1;endline=20;md5=fae32792e20f4d27ade1c5a762d16b7d"
SRCBRANCH ?= "master"
-SRCREV = "4303889c8bd9a2357587eb6ebacecb70098a264d"
+SRCREV = "b7e4d5a6ae9942d26a11de9b05ae7d52c0802802"
PV = "0.1+git${SRCPV}"
diff --git a/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb b/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
index 497f480347..67e5811f3c 100644
--- a/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
+++ b/poky/meta/recipes-devtools/perl/liberror-perl_0.17029.bb
@@ -9,6 +9,10 @@ LICENSE = "Artistic-1.0 | GPL-1.0-or-later"
LIC_FILES_CHKSUM = "file://LICENSE;md5=8f3499d09ee74a050c0319391ff9d100"
+# remove at next version upgrade or when output changes
+PR = "r1"
+HASHEQUIV_HASH_VERSION .= ".1"
+
DEPENDS += "perl"
RDEPENDS:${PN} += " \
diff --git a/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
index 5e2ee454da..a2b7a519af 100644
--- a/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
+++ b/poky/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch
@@ -1,4 +1,4 @@
-From da88c57fe03e4474ba20325edacf519e80c1d7a8 Mon Sep 17 00:00:00 2001
+From d1b4fa4a99774878035a0f664ec0d9686e7f0c89 Mon Sep 17 00:00:00 2001
From: Hongxu Jia <hongxu.jia@windriver.com>
Date: Tue, 17 Jul 2018 10:13:38 +0800
Subject: [PATCH] conditionally do not fetch code by easy_install
@@ -15,10 +15,10 @@ Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
1 file changed, 5 insertions(+)
diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py
-index fc848d0..c04a5de 100644
+index 444d3b3..61e445a 100644
--- a/setuptools/command/easy_install.py
+++ b/setuptools/command/easy_install.py
-@@ -642,6 +642,11 @@ class easy_install(Command):
+@@ -648,6 +648,11 @@ class easy_install(Command):
os.path.exists(tmpdir) and rmtree(tmpdir)
def easy_install(self, spec, deps=False):
diff --git a/poky/meta/recipes-devtools/python/python3-babel_2.9.1.bb b/poky/meta/recipes-devtools/python/python3-babel_2.10.1.bb
index 11c8d60105..d06eb2bf5c 100644
--- a/poky/meta/recipes-devtools/python/python3-babel_2.9.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-babel_2.10.1.bb
@@ -1,9 +1,9 @@
DESCRIPTION = "A collection of tools for internationalizing Python applications"
HOMEPAGE = "http://babel.edgewall.org/"
LICENSE = "BSD-3-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=05fb707293a85504aa67afc8ea34d747"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=1b3f4650099e6d6a73e5a7fc8774ff18"
-SRC_URI[sha256sum] = "bc0c176f9f6a994582230df350aa6e05ba2ebe4b3ac317eab29d9be5d2768da0"
+SRC_URI[sha256sum] = "98aeaca086133efb3e1e2aad0396987490c8425929ddbcfe0550184fdc54cd13"
PYPI_PACKAGE = "Babel"
diff --git a/poky/meta/recipes-devtools/python/python3-bcrypt_3.2.0.bb b/poky/meta/recipes-devtools/python/python3-bcrypt_3.2.2.bb
index 6a4d1aef5c..54070e4b9c 100644
--- a/poky/meta/recipes-devtools/python/python3-bcrypt_3.2.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-bcrypt_3.2.2.bb
@@ -5,8 +5,7 @@ HOMEPAGE = "https://pypi.org/project/bcrypt/"
DEPENDS += "${PYTHON_PN}-cffi-native"
-SRC_URI[md5sum] = "fe31390dab603728f756cd3d6830c80a"
-SRC_URI[sha256sum] = "5b93c1726e50a93a033c36e5ca7fdcd29a5c7395af50a6892f5d9e7c6cfbfb29"
+SRC_URI[sha256sum] = "433c410c2177057705da2a9f2cd01dd157493b2a7ac14c8593a16b3dab6b6bfb"
inherit pypi python_setuptools_build_meta ptest
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography-vectors_36.0.2.bb b/poky/meta/recipes-devtools/python/python3-cryptography-vectors_37.0.2.bb
index be0eda056e..3dbdc8ce3e 100644
--- a/poky/meta/recipes-devtools/python/python3-cryptography-vectors_36.0.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-cryptography-vectors_37.0.2.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8c3617db4fb6fae01f1d253ab91511e4 \
# NOTE: Make sure to keep this recipe at the same version as python3-cryptography
# Upgrade both recipes at the same time
-SRC_URI[sha256sum] = "2a7924449a03025faf7f8754a6f4200001cab210734a6ce6ac1f6bdacd3a68e4"
+SRC_URI[sha256sum] = "7c65d3de51756f418142df605417ec2c6e961c364f70cc8a103030889d5a3219"
PYPI_PACKAGE = "cryptography_vectors"
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography/0001-Cargo.toml-specify-pem-version.patch b/poky/meta/recipes-devtools/python/python3-cryptography/0001-Cargo.toml-specify-pem-version.patch
index d7ab757bb5..7266fd7bef 100644
--- a/poky/meta/recipes-devtools/python/python3-cryptography/0001-Cargo.toml-specify-pem-version.patch
+++ b/poky/meta/recipes-devtools/python/python3-cryptography/0001-Cargo.toml-specify-pem-version.patch
@@ -1,4 +1,4 @@
-From ec8d3f3c61280c8140b34ed1479baef5e706f064 Mon Sep 17 00:00:00 2001
+From d41203b9b79f5edc2d33b0d62921822294dfaa6b Mon Sep 17 00:00:00 2001
From: Tim Orling <tim.orling@konsulko.com>
Date: Fri, 14 Jan 2022 22:02:25 -0800
Subject: [PATCH] Cargo.toml: specify pem version
@@ -9,23 +9,21 @@ pem = { version: "1.0.2"}
Upstream-Status: Pending
Signed-off-by: Tim Orling <tim.orling@konsulko.com>
+
---
src/rust/Cargo.toml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/rust/Cargo.toml b/src/rust/Cargo.toml
-index 617167d0..174eaa80 100644
+index d17245d..f8f6416 100644
--- a/src/rust/Cargo.toml
+++ b/src/rust/Cargo.toml
@@ -9,7 +9,7 @@ publish = false
lazy_static = "1"
- pyo3 = { version = "0.15.1" }
+ pyo3 = { version = "0.15.2" }
asn1 = { version = "0.8.7", default-features = false, features = ["derive"] }
-pem = "1.0"
+pem = { version = "1.0.2" }
chrono = { version = "0.4", default-features = false, features = ["alloc", "clock"] }
- ouroboros = "0.13"
+ ouroboros = "0.15"
---
-2.30.2
-
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch b/poky/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch
new file mode 100644
index 0000000000..481f595246
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-cryptography/0001-pyproject.toml-remove-benchmark-disable-option.patch
@@ -0,0 +1,40 @@
+From ce972ea92d724f232323a9a6265a8b44d913d4d8 Mon Sep 17 00:00:00 2001
+From: Mingli Yu <mingli.yu@windriver.com>
+Date: Tue, 17 May 2022 17:22:48 +0800
+Subject: [PATCH] pyproject.toml: remove --benchmark-disable option
+
+The new version introduced below change, so remove the option
+to avoid python3-pytest-benchmark rdepends to fix the gap.
+496703c8 Refs #7079 -- added basic scaffholding for benchmarks (#7087)
+
+Fixes:
+ # ./run-ptest
+ Free memory: 31.283 GB
+ ERROR: usage: pytest [options] [file_or_dir] [file_or_dir] [...]
+ pytest: error: unrecognized arguments: --benchmark-disable
+ inifile: /usr/lib/python3-cryptography/ptest/pyproject.toml
+ rootdir: /usr/lib/python3-cryptography/ptest
+
+Upstream-Status: Inappropriate [OE specific]
+
+Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
+---
+ pyproject.toml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pyproject.toml b/pyproject.toml
+index 4d58129..b011fca 100644
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -15,7 +15,7 @@ line-length = 79
+ target-version = ["py36"]
+
+ [tool.pytest.ini_options]
+-addopts = "-r s --capture=no --strict-markers --benchmark-disable"
++addopts = "-r s --capture=no --strict-markers"
+ markers = [
+ "skip_fips: this test is not executed in FIPS mode",
+ "supported: parametrized test requiring only_if and skip_message",
+--
+2.25.1
+
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography/fix-leak-metric.patch b/poky/meta/recipes-devtools/python/python3-cryptography/fix-leak-metric.patch
deleted file mode 100644
index 904984f43d..0000000000
--- a/poky/meta/recipes-devtools/python/python3-cryptography/fix-leak-metric.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Trigger hashlib initialisation so that the test_create_certificate_with_extensions
-test doesn't fail.
-
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From dc989d563ab6a078651160e5e6d4ee3df8cb08d7 Mon Sep 17 00:00:00 2001
-From: Alex Gaynor <alex.gaynor@gmail.com>
-Date: Thu, 7 Apr 2022 03:15:09 -0400
-Subject: [PATCH] Added Ubuntu Jammy to CI (#7047)
-
-* Added Ubuntu Jammy to CI
-
-* try thing
----
- .github/workflows/ci.yml | 1 +
- docs/installation.rst | 2 +-
- tests/hazmat/backends/test_openssl_memleak.py | 3 +++
- 3 files changed, 5 insertions(+), 1 deletion(-)
-
-diff --git a/tests/hazmat/backends/test_openssl_memleak.py b/tests/hazmat/backends/test_openssl_memleak.py
-index 835c9256a6..2605566bd5 100644
---- a/tests/hazmat/backends/test_openssl_memleak.py
-+++ b/tests/hazmat/backends/test_openssl_memleak.py
-@@ -82,8 +82,11 @@ def free(ptr, path, line):
- assert result == 1
-
- # Trigger a bunch of initialization stuff.
-+ import hashlib
- from cryptography.hazmat.backends.openssl.backend import backend
-
-+ hashlib.sha256()
-+
- start_heap = set(heap)
-
- try:
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb b/poky/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb
deleted file mode 100644
index 9ef5ff39c8..0000000000
--- a/poky/meta/recipes-devtools/python/python3-cryptography_36.0.2.bb
+++ /dev/null
@@ -1,123 +0,0 @@
-SUMMARY = "Provides cryptographic recipes and primitives to python developers"
-HOMEPAGE = "https://cryptography.io/"
-SECTION = "devel/python"
-LICENSE = "( Apache-2.0 | BSD-3-Clause ) & PSF-2.0"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=bf405a8056a6647e7d077b0e7bc36aba \
- file://LICENSE.APACHE;md5=4e168cce331e5c827d4c2b68a6200e1b \
- file://LICENSE.BSD;md5=5ae30ba4123bc4f2fa49aa0b0dce887b \
- file://LICENSE.PSF;md5=43c37d21e1dbad10cddcd150ba2c0595 \
- "
-LDSHARED += "-pthread"
-
-SRC_URI[sha256sum] = "70f8f4f7bb2ac9f340655cbac89d68c527af5bb4387522a8413e841e3e6628c9"
-
-SRC_URI += " \
- file://run-ptest \
- file://check-memfree.py \
- file://0001-Cargo.toml-specify-pem-version.patch \
- file://0002-Cargo.toml-edition-2018-2021.patch \
- file://fix-leak-metric.patch \
-"
-
-inherit pypi python_setuptools3_rust
-
-DEPENDS += " \
- ${PYTHON_PN}-asn1crypto-native \
- ${PYTHON_PN}-cffi-native \
- ${PYTHON_PN}-setuptools-rust-native \
- ${PYTHON_PN}-six-native \
-"
-
-SRC_URI += " \
- crate://crates.io/Inflector/0.11.4 \
- crate://crates.io/aliasable/0.1.3 \
- crate://crates.io/asn1/0.8.7 \
- crate://crates.io/asn1_derive/0.8.7 \
- crate://crates.io/autocfg/1.0.1 \
- crate://crates.io/base64/0.13.0 \
- crate://crates.io/bitflags/1.3.2 \
- crate://crates.io/cfg-if/1.0.0 \
- crate://crates.io/chrono/0.4.19 \
- crate://crates.io/indoc-impl/0.3.6 \
- crate://crates.io/indoc/0.3.6 \
- crate://crates.io/instant/0.1.12 \
- crate://crates.io/lazy_static/1.4.0 \
- crate://crates.io/libc/0.2.120 \
- crate://crates.io/lock_api/0.4.5 \
- crate://crates.io/num-integer/0.1.44 \
- crate://crates.io/num-traits/0.2.14 \
- crate://crates.io/once_cell/1.9.0 \
- crate://crates.io/ouroboros/0.13.0 \
- crate://crates.io/ouroboros_macro/0.13.0 \
- crate://crates.io/parking_lot/0.11.2 \
- crate://crates.io/parking_lot_core/0.8.5 \
- crate://crates.io/paste-impl/0.1.18 \
- crate://crates.io/paste/0.1.18 \
- crate://crates.io/pem/1.0.2 \
- crate://crates.io/proc-macro-error-attr/1.0.4 \
- crate://crates.io/proc-macro-error/1.0.4 \
- crate://crates.io/proc-macro-hack/0.5.19 \
- crate://crates.io/proc-macro2/1.0.36 \
- crate://crates.io/pyo3-build-config/0.15.1 \
- crate://crates.io/pyo3-macros-backend/0.15.1 \
- crate://crates.io/pyo3-macros/0.15.1 \
- crate://crates.io/pyo3/0.15.1 \
- crate://crates.io/quote/1.0.14 \
- crate://crates.io/redox_syscall/0.2.10 \
- crate://crates.io/scopeguard/1.1.0 \
- crate://crates.io/smallvec/1.7.0 \
- crate://crates.io/stable_deref_trait/1.2.0 \
- crate://crates.io/syn/1.0.85 \
- crate://crates.io/unicode-xid/0.2.2 \
- crate://crates.io/unindent/0.1.7 \
- crate://crates.io/version_check/0.9.4 \
- crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
- crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
- crate://crates.io/winapi/0.3.9 \
-"
-
-RDEPENDS:${PN} += " \
- ${PYTHON_PN}-asn1crypto \
- ${PYTHON_PN}-cffi \
- ${PYTHON_PN}-idna \
- ${PYTHON_PN}-setuptools \
- ${PYTHON_PN}-six \
-"
-
-RDEPENDS:${PN}:append:class-target = " \
- ${PYTHON_PN}-numbers \
- ${PYTHON_PN}-threading \
-"
-
-RDEPENDS:${PN}-ptest += " \
- ${PYTHON_PN}-bcrypt \
- ${PYTHON_PN}-cryptography-vectors (= ${PV}) \
- ${PYTHON_PN}-hypothesis \
- ${PYTHON_PN}-iso8601 \
- ${PYTHON_PN}-pretend \
- ${PYTHON_PN}-psutil \
- ${PYTHON_PN}-pytest \
- ${PYTHON_PN}-pytest-subtests \
- ${PYTHON_PN}-pytz \
- ${PYTHON_PN}-tomli \
-"
-
-inherit ptest
-
-do_install_ptest() {
- install -D ${WORKDIR}/check-memfree.py ${D}${PTEST_PATH}/
- install -d ${D}${PTEST_PATH}/tests
- cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
- install -d ${D}${PTEST_PATH}/tests/hazmat
- cp -rf ${S}/tests/hazmat/* ${D}${PTEST_PATH}/tests/hazmat/
- cp -r ${S}/pyproject.toml ${D}${PTEST_PATH}/
-}
-
-FILES:${PN}-ptest += " \
- ${PTEST_PATH}/check-memfree.py \
-"
-FILES:${PN}-dbg += " \
- ${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/hazmat/bindings/.debug \
-"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-cryptography_37.0.2.bb b/poky/meta/recipes-devtools/python/python3-cryptography_37.0.2.bb
new file mode 100644
index 0000000000..d7a720bf2b
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-cryptography_37.0.2.bb
@@ -0,0 +1,119 @@
+SUMMARY = "Provides cryptographic recipes and primitives to python developers"
+HOMEPAGE = "https://cryptography.io/"
+SECTION = "devel/python"
+LICENSE = "( Apache-2.0 | BSD-3-Clause ) & PSF-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=bf405a8056a6647e7d077b0e7bc36aba \
+ file://LICENSE.APACHE;md5=4e168cce331e5c827d4c2b68a6200e1b \
+ file://LICENSE.BSD;md5=5ae30ba4123bc4f2fa49aa0b0dce887b \
+ file://LICENSE.PSF;md5=43c37d21e1dbad10cddcd150ba2c0595 \
+ "
+LDSHARED += "-pthread"
+
+SRC_URI[sha256sum] = "f224ad253cc9cea7568f49077007d2263efa57396a2f2f78114066fd54b5c68e"
+
+SRC_URI += "file://run-ptest \
+ file://check-memfree.py \
+ file://0001-Cargo.toml-specify-pem-version.patch \
+ file://0002-Cargo.toml-edition-2018-2021.patch \
+ file://0001-pyproject.toml-remove-benchmark-disable-option.patch \
+ crate://crates.io/Inflector/0.11.4 \
+ crate://crates.io/aliasable/0.1.3 \
+ crate://crates.io/asn1/0.8.7 \
+ crate://crates.io/asn1_derive/0.8.7 \
+ crate://crates.io/autocfg/1.1.0 \
+ crate://crates.io/base64/0.13.0 \
+ crate://crates.io/bitflags/1.3.2 \
+ crate://crates.io/cfg-if/1.0.0 \
+ crate://crates.io/chrono/0.4.19 \
+ crate://crates.io/indoc-impl/0.3.6 \
+ crate://crates.io/indoc/0.3.6 \
+ crate://crates.io/instant/0.1.12 \
+ crate://crates.io/lazy_static/1.4.0 \
+ crate://crates.io/libc/0.2.124 \
+ crate://crates.io/lock_api/0.4.7 \
+ crate://crates.io/num-integer/0.1.44 \
+ crate://crates.io/num-traits/0.2.14 \
+ crate://crates.io/once_cell/1.10.0 \
+ crate://crates.io/ouroboros/0.15.0 \
+ crate://crates.io/ouroboros_macro/0.15.0 \
+ crate://crates.io/parking_lot/0.11.2 \
+ crate://crates.io/parking_lot_core/0.8.5 \
+ crate://crates.io/paste-impl/0.1.18 \
+ crate://crates.io/paste/0.1.18 \
+ crate://crates.io/pem/1.0.2 \
+ crate://crates.io/proc-macro-error-attr/1.0.4 \
+ crate://crates.io/proc-macro-error/1.0.4 \
+ crate://crates.io/proc-macro-hack/0.5.19 \
+ crate://crates.io/proc-macro2/1.0.37 \
+ crate://crates.io/pyo3-build-config/0.15.2 \
+ crate://crates.io/pyo3-macros-backend/0.15.2 \
+ crate://crates.io/pyo3-macros/0.15.2 \
+ crate://crates.io/pyo3/0.15.2 \
+ crate://crates.io/quote/1.0.18 \
+ crate://crates.io/redox_syscall/0.2.13 \
+ crate://crates.io/scopeguard/1.1.0 \
+ crate://crates.io/smallvec/1.8.0 \
+ crate://crates.io/stable_deref_trait/1.2.0 \
+ crate://crates.io/syn/1.0.91 \
+ crate://crates.io/unicode-xid/0.2.2 \
+ crate://crates.io/unindent/0.1.8 \
+ crate://crates.io/version_check/0.9.4 \
+ crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
+ crate://crates.io/winapi/0.3.9 \
+ "
+
+inherit pypi python_setuptools3_rust
+
+DEPENDS += " \
+ ${PYTHON_PN}-asn1crypto-native \
+ ${PYTHON_PN}-cffi-native \
+ ${PYTHON_PN}-setuptools-rust-native \
+ ${PYTHON_PN}-six-native \
+"
+
+RDEPENDS:${PN} += " \
+ ${PYTHON_PN}-asn1crypto \
+ ${PYTHON_PN}-cffi \
+ ${PYTHON_PN}-idna \
+ ${PYTHON_PN}-setuptools \
+ ${PYTHON_PN}-six \
+"
+
+RDEPENDS:${PN}:append:class-target = " \
+ ${PYTHON_PN}-numbers \
+ ${PYTHON_PN}-threading \
+"
+
+RDEPENDS:${PN}-ptest += " \
+ ${PYTHON_PN}-bcrypt \
+ ${PYTHON_PN}-cryptography-vectors (= ${PV}) \
+ ${PYTHON_PN}-hypothesis \
+ ${PYTHON_PN}-iso8601 \
+ ${PYTHON_PN}-pretend \
+ ${PYTHON_PN}-psutil \
+ ${PYTHON_PN}-pytest \
+ ${PYTHON_PN}-pytest-subtests \
+ ${PYTHON_PN}-pytz \
+ ${PYTHON_PN}-tomli \
+"
+
+inherit ptest
+
+do_install_ptest() {
+ install -D ${WORKDIR}/check-memfree.py ${D}${PTEST_PATH}/
+ install -d ${D}${PTEST_PATH}/tests
+ cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+ install -d ${D}${PTEST_PATH}/tests/hazmat
+ cp -rf ${S}/tests/hazmat/* ${D}${PTEST_PATH}/tests/hazmat/
+ cp -r ${S}/pyproject.toml ${D}${PTEST_PATH}/
+}
+
+FILES:${PN}-ptest += " \
+ ${PTEST_PATH}/check-memfree.py \
+"
+FILES:${PN}-dbg += " \
+ ${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}/hazmat/bindings/.debug \
+"
+
+BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-devtools/python/python3-dtschema_2022.1.bb b/poky/meta/recipes-devtools/python/python3-dtschema_2022.4.bb
index d73e5810b8..7bc89c844c 100644
--- a/poky/meta/recipes-devtools/python/python3-dtschema_2022.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-dtschema_2022.4.bb
@@ -7,7 +7,7 @@ inherit pypi setuptools3
PYPI_PACKAGE = "dtschema"
-SRC_URI[sha256sum] = "1b92b3b9a31b6e4b8b2be70dbf3065775530bc4c52e991955b67be19741114c5"
+SRC_URI[sha256sum] = "c70a644e0100b5bacd44839a2316291d8eee91f6535a8419459de59fd0fcf6ce"
DEPENDS += "python3-setuptools-scm-native"
RDEPENDS:${PN} += "python3-ruamel-yaml python3-jsonschema python3-rfc3987"
diff --git a/poky/meta/recipes-devtools/python/python3-hypothesis_6.44.0.bb b/poky/meta/recipes-devtools/python/python3-hypothesis_6.46.4.bb
index e0f80b0e11..86d6793670 100644
--- a/poky/meta/recipes-devtools/python/python3-hypothesis_6.44.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-hypothesis_6.46.4.bb
@@ -13,7 +13,7 @@ SRC_URI += " \
file://test_rle.py \
"
-SRC_URI[sha256sum] = "620ffa1782f9cb0b732b66b811d11c3beeb678b96fae947740aaab1dfd74a996"
+SRC_URI[sha256sum] = "f5c24a3d3f8a0d8de2dd33079bf1580a3cfbfe74763187d47570fc9beea84c9b"
RDEPENDS:${PN} += " \
python3-attrs \
diff --git a/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb b/poky/meta/recipes-devtools/python/python3-jinja2_3.1.2.bb
index c38686a5c2..80e0b85670 100644
--- a/poky/meta/recipes-devtools/python/python3-jinja2_3.1.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-jinja2_3.1.2.bb
@@ -4,7 +4,7 @@ HOMEPAGE = "https://pypi.org/project/Jinja2/"
LICENSE = "BSD-3-Clause"
LIC_FILES_CHKSUM = "file://LICENSE.rst;md5=5dc88300786f1c214c1e9827a5229462"
-SRC_URI[sha256sum] = "640bed4bb501cbd17194b3cace1dc2126f5b619cf068a726b98192a0fde74ae9"
+SRC_URI[sha256sum] = "31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852"
PYPI_PACKAGE = "Jinja2"
diff --git a/poky/meta/recipes-devtools/python/python3-jsonschema_4.4.0.bb b/poky/meta/recipes-devtools/python/python3-jsonschema_4.5.1.bb
index 10b39e76b2..9f8719870c 100644
--- a/poky/meta/recipes-devtools/python/python3-jsonschema_4.4.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-jsonschema_4.5.1.bb
@@ -4,7 +4,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=7a60a81c146ec25599a3e1dabb8610a8 \
file://json/LICENSE;md5=9d4de43111d33570c8fe49b4cb0e01af"
-SRC_URI[sha256sum] = "636694eb41b3535ed608fe04129f26542b59ed99808b4f688aa32dcf55317a83"
+SRC_URI[sha256sum] = "7c6d882619340c3347a1bf7315e147e6d3dae439033ae6383d6acb908c101dfc"
inherit pypi python_setuptools_build_meta
diff --git a/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb b/poky/meta/recipes-devtools/python/python3-mako_1.2.0.bb
index 71e5d96ba1..11e5f326bd 100644
--- a/poky/meta/recipes-devtools/python/python3-mako_1.1.6.bb
+++ b/poky/meta/recipes-devtools/python/python3-mako_1.2.0.bb
@@ -2,16 +2,18 @@ SUMMARY = "Templating library for Python"
HOMEPAGE = "http://www.makotemplates.org/"
SECTION = "devel/python"
LICENSE = "MIT"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=943eb67718222db21d44a4ef1836675f"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b32291f107a8f1ea94c4a41e00a6a18d"
PYPI_PACKAGE = "Mako"
inherit pypi python_setuptools_build_meta
-SRC_URI[sha256sum] = "4e9e345a41924a954251b95b4b28e14a301145b544901332e658907a7464b6b2"
+SRC_URI[sha256sum] = "9a7c7e922b87db3686210cf49d5d767033a41d4010b284e747682c92bddd8b39"
RDEPENDS:${PN} = "${PYTHON_PN}-html \
+ ${PYTHON_PN}-markupsafe \
${PYTHON_PN}-netclient \
+ ${PYTHON_PN}-pygments \
${PYTHON_PN}-threading \
"
diff --git a/poky/meta/recipes-devtools/python/python3-markdown_3.3.6.bb b/poky/meta/recipes-devtools/python/python3-markdown_3.3.7.bb
index 5ce9fef7dd..c456cecc78 100644
--- a/poky/meta/recipes-devtools/python/python3-markdown_3.3.6.bb
+++ b/poky/meta/recipes-devtools/python/python3-markdown_3.3.7.bb
@@ -6,7 +6,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.md;md5=745aaad0c69c60039e638bff9ffc59ed"
inherit pypi python_setuptools_build_meta
PYPI_PACKAGE = "Markdown"
-SRC_URI[sha256sum] = "76df8ae32294ec39dcf89340382882dfa12975f87f45c3ed1ecdb1e8cefc7006"
+SRC_URI[sha256sum] = "cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874"
BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb b/poky/meta/recipes-devtools/python/python3-more-itertools_8.13.0.bb
index c1e34b205d..94f6f9e4d5 100644
--- a/poky/meta/recipes-devtools/python/python3-more-itertools_8.12.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-more-itertools_8.13.0.bb
@@ -3,9 +3,9 @@ HOMEPAGE = "https://github.com/erikrose/more-itertools"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3396ea30f9d21389d7857719816f83b5"
-SRC_URI[sha256sum] = "7dc6ad46f05f545f900dd59e8dfb4e84a4827b97b3cfecb175ea0c7d247f6064"
+SRC_URI[sha256sum] = "a42901a0a5b169d925f6f217cd5a190e32ef54360905b9c39ee7db5313bfec0f"
-inherit pypi setuptools3 ptest
+inherit pypi python_flit_core ptest
SRC_URI += " \
file://run-ptest \
diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb
deleted file mode 100644
index c8664018fa..0000000000
--- a/poky/meta/recipes-devtools/python/python3-pbr_5.8.1.bb
+++ /dev/null
@@ -1,4 +0,0 @@
-inherit setuptools3
-require python-pbr.inc
-
-SRC_URI[sha256sum] = "66bc5a34912f408bb3925bf21231cb6f59206267b7f63f3503ef865c1a292e25"
diff --git a/poky/meta/recipes-devtools/python/python3-pbr_5.9.0.bb b/poky/meta/recipes-devtools/python/python3-pbr_5.9.0.bb
new file mode 100644
index 0000000000..c93b71dbd3
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-pbr_5.9.0.bb
@@ -0,0 +1,4 @@
+inherit setuptools3
+require python-pbr.inc
+
+SRC_URI[sha256sum] = "e8dca2f4b43560edef58813969f52a56cef023146cbb8931626db80e6c1c4308"
diff --git a/poky/meta/recipes-devtools/python/python3-pip_22.0.4.bb b/poky/meta/recipes-devtools/python/python3-pip_22.1.bb
index 899b04d2c2..1aef9bca33 100644
--- a/poky/meta/recipes-devtools/python/python3-pip_22.0.4.bb
+++ b/poky/meta/recipes-devtools/python/python3-pip_22.1.bb
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "\
file://src/pip/_vendor/chardet/LICENSE;md5=a6f89e2100d9b6cdffcea4f398e37343 \
file://src/pip/_vendor/colorama/LICENSE.txt;md5=b4936429a56a652b84c5c01280dcaa26 \
file://src/pip/_vendor/distlib/LICENSE.txt;md5=f6a11430d5cd6e2cd3832ee94f22ddfc \
- file://src/pip/_vendor/distro.LICENSE;md5=d2794c0df5b907fdace235a619d80314 \
+ file://src/pip/_vendor/distro/LICENSE;md5=d2794c0df5b907fdace235a619d80314 \
file://src/pip/_vendor/html5lib/LICENSE;md5=1ba5ada9e6fead1fdc32f43c9f10ba7c \
file://src/pip/_vendor/idna/LICENSE.md;md5=239668a7c6066d9e0c5382e9c8c6c0e1 \
file://src/pip/_vendor/msgpack/COPYING;md5=cd9523181d9d4fbf7ffca52eaa2a5751 \
@@ -18,7 +18,6 @@ LIC_FILES_CHKSUM = "\
file://src/pip/_vendor/pep517/LICENSE;md5=aad69c93f605003e3342b174d9b0708c \
file://src/pip/_vendor/pkg_resources/LICENSE;md5=9a33897f1bca1160d7aad3835152e158 \
file://src/pip/_vendor/platformdirs/LICENSE.txt;md5=282c970bb844954c8535dd6e9733db7f \
- file://src/pip/_vendor/progress/LICENSE;md5=00ab78a4113b09aacf63d762a7bb9644 \
file://src/pip/_vendor/pygments/LICENSE;md5=98419e351433ac106a24e3ad435930bc \
file://src/pip/_vendor/pyparsing/LICENSE;md5=657a566233888513e1f07ba13e2f47f1 \
file://src/pip/_vendor/requests/LICENSE;md5=34400b68072d710fecd0a2940a0d1658 \
@@ -38,7 +37,7 @@ SRC_URI += "file://0001-change-shebang-to-python3.patch"
SRC_URI += "file://no_shebang_mangling.patch"
SRC_URI += "file://reproducible.patch"
-SRC_URI[sha256sum] = "b3a9de2c6ef801e9247d1527a4b16f92f2cc141cd1489f3fffaf6a9e96729764"
+SRC_URI[sha256sum] = "2debf847016cfe643fa1512e2d781d3ca9e5c878ba0652583842d50cc2bcc605"
do_install:append() {
rm -f ${D}/${bindir}/pip
diff --git a/poky/meta/recipes-devtools/python/python3-pygments_2.11.2.bb b/poky/meta/recipes-devtools/python/python3-pygments_2.12.0.bb
index 35d288c89e..b47e0aff67 100644
--- a/poky/meta/recipes-devtools/python/python3-pygments_2.11.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygments_2.12.0.bb
@@ -2,10 +2,10 @@ SUMMARY = "Pygments is a syntax highlighting package written in Python."
DESCRIPTION = "Pygments is a syntax highlighting package written in Python."
HOMEPAGE = "http://pygments.org/"
LICENSE = "BSD-2-Clause"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=98419e351433ac106a24e3ad435930bc"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=36a13c90514e2899f1eba7f41c3ee592"
inherit setuptools3
-SRC_URI[sha256sum] = "4e426f72023d88d03b2fa258de560726ce890ff3b630f88c21cbb8b2503b8c6a"
+SRC_URI[sha256sum] = "5eb116118f9612ff1ee89ac96437bb6b49e8f04d8a13b514ba26f620208e26eb"
DEPENDS += "\
${PYTHON_PN} \
diff --git a/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb b/poky/meta/recipes-devtools/python/python3-pygobject_3.42.1.bb
index 360996dbb7..443605ae26 100644
--- a/poky/meta/recipes-devtools/python/python3-pygobject_3.42.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-pygobject_3.42.1.bb
@@ -18,7 +18,7 @@ SRC_URI = " \
http://ftp.gnome.org/pub/GNOME/sources/${SRCNAME}/${@gnome_verdir("${PV}")}/${SRCNAME}-${PV}.tar.xz \
file://0001-Do-not-build-tests.patch \
"
-SRC_URI[sha256sum] = "9b12616e32cfc792f9dc841d9c472a41a35b85ba67d3a6eb427e307a6fe4367b"
+SRC_URI[sha256sum] = "1f34b5f7624de35e44eb5a7eb428353285bd03004d55131a5f7f7fa9b90f3cc9"
S = "${WORKDIR}/${SRCNAME}-${PV}"
diff --git a/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.8.bb b/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.9.bb
index 30be4bb87c..b858073c3b 100644
--- a/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.8.bb
+++ b/poky/meta/recipes-devtools/python/python3-pyparsing_3.0.9.bb
@@ -10,7 +10,7 @@ BUGTRACKER = "https://github.com/pyparsing/pyparsing/issues"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=657a566233888513e1f07ba13e2f47f1"
-SRC_URI[sha256sum] = "7bf433498c016c4314268d95df76c81b842a4cb2b276fa3312cfb1e1d85f6954"
+SRC_URI[sha256sum] = "2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"
UPSTREAM_CHECK_REGEX = "pyparsing-(?P<pver>.*)\.tar"
diff --git a/poky/meta/recipes-devtools/python/python3-pytest_7.1.1.bb b/poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb
index 1cb2fb01c0..c642d9a232 100644
--- a/poky/meta/recipes-devtools/python/python3-pytest_7.1.1.bb
+++ b/poky/meta/recipes-devtools/python/python3-pytest_7.1.2.bb
@@ -5,7 +5,7 @@ DESCRIPTION = "The pytest framework makes it easy to write small tests, yet scal
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=bd27e41b6550fe0fc45356d1d81ee37c"
-SRC_URI[sha256sum] = "841132caef6b1ad17a9afde46dc4f6cfa59a05f9555aae5151f73bdf2820ca63"
+SRC_URI[sha256sum] = "a06a0425453864a270bc45e71f783330a7428defb4230fb5e6a731fde06ecd45"
DEPENDS += "python3-setuptools-scm-native"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools-rust-native_1.1.2.bb b/poky/meta/recipes-devtools/python/python3-setuptools-rust_1.3.0.bb
index 8ec9a86f00..51e27b843e 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools-rust-native_1.1.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools-rust_1.3.0.bb
@@ -10,9 +10,9 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=011cd92e702dd9e6b1a26157b6fd53f5"
SRC_URI = "https://files.pythonhosted.org/packages/67/08/e1aa2c582c62ac76e4d60f8e454bd3bba933781a06a88b4e38797445822a/setuptools-rust-${PV}.tar.gz"
-SRC_URI[sha256sum] = "a0adb9b503c0ffc4e8fe80b7c617898cefa78049983aaaea7f747e153a3e65d1"
+SRC_URI[sha256sum] = "958c5bf4ab6483d59dab888538121871cc5006354a42fb0fbd50acf03caad1de"
-inherit cargo pypi python_setuptools_build_meta native
+inherit cargo pypi python_setuptools_build_meta
DEPENDS += "python3-setuptools-scm-native python3-wheel-native"
@@ -24,3 +24,5 @@ RDEPENDS:${PN}:class-native += " \
python3-typing-extensions-native \
python3-wheel-native \
"
+
+BBCLASSEXTEND = "native"
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb
index e09c598bf5..9aaae071d3 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools-scm_6.4.2.bb
@@ -11,6 +11,8 @@ inherit pypi python_setuptools_build_meta
UPSTREAM_CHECK_REGEX = "setuptools_scm-(?P<pver>.*)\.tar"
+DEPENDS += "python3-tomli-native"
+
RDEPENDS:${PN} = "\
${PYTHON_PN}-packaging \
${PYTHON_PN}-pyparsing \
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch b/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch
deleted file mode 100644
index 3150187951..0000000000
--- a/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 1ff575308248b183639c8cb14afee7c8572bd2b8 Mon Sep 17 00:00:00 2001
-From: Tim Orling <timothy.t.orling@intel.com>
-Date: Wed, 20 Oct 2021 17:38:10 +0000
-Subject: [PATCH] _distutils/sysconfig: append
- STAGING_LIBDIR/python-sysconfigdata to sys.path
-
-When python modules set SETUPTOOLS_USE_DISTULS='local', this uses the
-vendored _distutils in setuptools rather than distutils in the Standard
-Library. This is needed so that target configuration can be used with
-python3-setuptools-native.
-
-Based on python3/0001-distutils-sysconfig-append-STAGING_LIBDIR-python-sys.patch
-from Alex Kanavin <alex.kanavin@gmail.com>
-
-Upstream-Status: Inappropriate [oe-specific]
-
-Signed-off-by: Tim Orling <timothy.t.orling@intel.com>
-
----
- setuptools/_distutils/sysconfig.py | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/setuptools/_distutils/sysconfig.py b/setuptools/_distutils/sysconfig.py
-index d36d94f..616eb91 100644
---- a/setuptools/_distutils/sysconfig.py
-+++ b/setuptools/_distutils/sysconfig.py
-@@ -484,6 +484,8 @@ def _init_posix():
- multiarch=getattr(sys.implementation, '_multiarch', ''),
- ),
- )
-+ if 'STAGING_LIBDIR' in os.environ:
-+ sys.path.append(os.environ['STAGING_LIBDIR']+'/python-sysconfigdata')
- try:
- _temp = __import__(name, globals(), locals(), ['build_time_vars'], 0)
- except ImportError:
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch b/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
new file mode 100644
index 0000000000..c1b3dd6a30
--- /dev/null
+++ b/poky/meta/recipes-devtools/python/python3-setuptools/0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch
@@ -0,0 +1,60 @@
+From 41f78746cbe88d263400ee948abef5b3f89cce29 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Wed, 11 May 2022 21:41:14 +0200
+Subject: [PATCH] _distutils/sysconfig.py: make it possible to substite the
+ prefix to target sysroot
+
+This is done by probing STAGING_INCDIR/STAGING_LIBDIRenv vars:
+not the most elegant solution, but distutils/sysconfig has been
+tweaked to do this for many, many year, and so it's easiest
+to replicate here as well, the original is
+meta/recipes-devtools/python/python3/12-distutils-prefix-is-inside-staging-area.patch
+
+I'm not sure exactly why setuptools now needs a copy, and what
+would happen to this module in light of distutils deprecation.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ setuptools/_distutils/sysconfig.py | 14 +++++++++++---
+ 1 file changed, 11 insertions(+), 3 deletions(-)
+
+diff --git a/setuptools/_distutils/sysconfig.py b/setuptools/_distutils/sysconfig.py
+index 55a42e1..ead63b9 100644
+--- a/setuptools/_distutils/sysconfig.py
++++ b/setuptools/_distutils/sysconfig.py
+@@ -102,7 +102,9 @@ def get_python_inc(plat_specific=0, prefix=None):
+ If 'prefix' is supplied, use it instead of sys.base_prefix or
+ sys.base_exec_prefix -- i.e., ignore 'plat_specific'.
+ """
+- if prefix is None:
++ if prefix is None and os.environ.get('STAGING_INCDIR', ""):
++ prefix = os.environ['STAGING_INCDIR'].rstrip('include')
++ elif prefix is None:
+ prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
+ if os.name == "posix":
+ if IS_PYPY and sys.version_info < (3, 8):
+@@ -167,7 +169,13 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
+
+ early_prefix = prefix
+
+- if prefix is None:
++ if os.environ.get('STAGING_LIBDIR', ""):
++ lib_basename = os.environ['STAGING_LIBDIR'].split('/')[-1]
++ else:
++ lib_basename = "lib"
++ if prefix is None and os.environ.get('STAGING_LIBDIR', ""):
++ prefix = os.environ['STAGING_LIBDIR'].rstrip(lib_basename)
++ elif prefix is None:
+ if standard_lib:
+ prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX
+ else:
+@@ -182,7 +190,7 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None):
+ # Pure Python
+ libdir = "lib"
+ implementation = 'pypy' if IS_PYPY else 'python'
+- libpython = os.path.join(prefix, libdir,
++ libpython = os.path.join(prefix, lib_basename,
+ implementation + get_python_version())
+ return _posix_lib(standard_lib, libpython, early_prefix, prefix)
+ elif os.name == "nt":
diff --git a/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb b/poky/meta/recipes-devtools/python/python3-setuptools_62.3.1.bb
index f2810e18d3..c9367c180f 100644
--- a/poky/meta/recipes-devtools/python/python3-setuptools_59.5.0.bb
+++ b/poky/meta/recipes-devtools/python/python3-setuptools_62.3.1.bb
@@ -8,12 +8,10 @@ inherit pypi python_setuptools_build_meta
SRC_URI:append:class-native = " file://0001-conditionally-do-not-fetch-code-by-easy_install.patch"
-SRC_URI += "\
- file://0001-change-shebang-to-python3.patch \
- file://0001-_distutils-sysconfig-append-STAGING_LIBDIR-python-sy.patch \
-"
+SRC_URI += "file://0001-change-shebang-to-python3.patch \
+ file://0001-_distutils-sysconfig.py-make-it-possible-to-substite.patch"
-SRC_URI[sha256sum] = "d144f85102f999444d06f9c0e8c737fd0194f10f2f7e5fdb77573f6e2fa4fad0"
+SRC_URI[sha256sum] = "28c79c24d83c42a5e6d6cc711e5e9a6c1b89326229feaa5807fc277040658600"
DEPENDS += "${PYTHON_PN}"
diff --git a/poky/meta/recipes-devtools/python/python3/run-ptest b/poky/meta/recipes-devtools/python/python3/run-ptest
index 405b07f495..05396e91ab 100644
--- a/poky/meta/recipes-devtools/python/python3/run-ptest
+++ b/poky/meta/recipes-devtools/python/python3/run-ptest
@@ -1,3 +1,3 @@
#!/bin/sh
-python3 -m test -v | sed -u -e '/\.\.\. ok/ s/^/PASS: /g' -r -e '/\.\.\. (ERROR|FAIL)/ s/^/FAIL: /g' -e '/\.\.\. skipped/ s/^/SKIP: /g' -e 's/ \.\.\. ok//g' -e 's/ \.\.\. ERROR//g' -e 's/ \.\.\. FAIL//g' -e 's/ \.\.\. skipped//g'
+SETUPTOOLS_USE_DISTUTILS=nonlocal python3 -m test -v | sed -u -e '/\.\.\. ok/ s/^/PASS: /g' -r -e '/\.\.\. (ERROR|FAIL)/ s/^/FAIL: /g' -e '/\.\.\. skipped/ s/^/SKIP: /g' -e 's/ \.\.\. ok//g' -e 's/ \.\.\. ERROR//g' -e 's/ \.\.\. FAIL//g' -e 's/ \.\.\. skipped//g'
diff --git a/poky/meta/recipes-devtools/python/python3_3.10.4.bb b/poky/meta/recipes-devtools/python/python3_3.10.4.bb
index d678d55083..2ef320350e 100644
--- a/poky/meta/recipes-devtools/python/python3_3.10.4.bb
+++ b/poky/meta/recipes-devtools/python/python3_3.10.4.bb
@@ -193,6 +193,11 @@ do_install:append() {
rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_range.cpython*
rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/test/__pycache__/test_xml_etree.cpython*
+ # Similar to the above, we're getting reproducibility issues with
+ # /usr/lib/python3.10/__pycache__/traceback.cpython-310.pyc
+ # so remove it too
+ rm -f ${D}${libdir}/python${PYTHON_MAJMIN}/__pycache__/traceback.cpython*
+
# Remove the opt-1.pyc and opt-2.pyc files. They effectively waste space on embedded
# style targets as they're only used when python is called with the -O or -OO options
# which is rare.
diff --git a/poky/meta/recipes-devtools/qemu/qemu-native_6.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb
index a94dc0b61e..a94dc0b61e 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-native_6.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-native_7.0.0.bb
diff --git a/poky/meta/recipes-devtools/qemu/qemu-system-native_6.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb
index bc5384d472..bc5384d472 100644
--- a/poky/meta/recipes-devtools/qemu/qemu-system-native_6.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu-system-native_7.0.0.bb
diff --git a/poky/meta/recipes-devtools/qemu/qemu.inc b/poky/meta/recipes-devtools/qemu/qemu.inc
index 09a2d47005..5f303992be 100644
--- a/poky/meta/recipes-devtools/qemu/qemu.inc
+++ b/poky/meta/recipes-devtools/qemu/qemu.inc
@@ -17,27 +17,20 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
SRC_URI = "https://download.qemu.org/${BPN}-${PV}.tar.xz \
file://powerpc_rom.bin \
file://run-ptest \
- file://0001-qemu-Add-missing-wacom-HID-descriptor.patch \
- file://0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch \
- file://0006-chardev-connect-socket-to-a-spawned-command.patch \
- file://0007-apic-fixup-fallthrough-to-PIC.patch \
- file://0010-configure-Add-pkg-config-handling-for-libgcrypt.patch \
- file://0001-qemu-Do-not-include-file-if-not-exists.patch \
- file://mmap2.patch \
- file://determinism.patch \
- file://0001-tests-meson.build-use-relative-path-to-refer-to-file.patch \
- file://0001-riscv-Set-5.4-as-minimum-kernel-version-for-riscv32.patch \
- file://0001-acpi-tpm-Add-missing-device-identification-objects.patch \
- file://0001-ppc-Include-asm-ptrace.h-for-pt_regs-struct-definiti.patch \
- file://0001-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \
- file://0001-vhost-vsock-detach-the-virqueue-element-in-case-of-e.patch \
- file://0002-virtio-net-fix-map-leaking-on-error-during-receive.patch \
- file://pvrdma.patch \
- file://no-ps2.patch \
+ file://0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch \
+ file://0002-chardev-connect-socket-to-a-spawned-command.patch \
+ file://0003-apic-fixup-fallthrough-to-PIC.patch \
+ file://0004-configure-Add-pkg-config-handling-for-libgcrypt.patch \
+ file://0005-qemu-Do-not-include-file-if-not-exists.patch \
+ file://0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch \
+ file://0007-qemu-Determinism-fixes.patch \
+ file://0008-tests-meson.build-use-relative-path-to-refer-to-file.patch \
+ file://0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch \
+ file://0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch \
"
UPSTREAM_CHECK_REGEX = "qemu-(?P<pver>\d+(\.\d+)+)\.tar"
-SRC_URI[sha256sum] = "68e15d8e45ac56326e0b9a4afa8b49a3dfe8aba3488221d098c84698bca65b45"
+SRC_URI[sha256sum] = "f6b375c7951f728402798b0baabb2d86478ca53d44cedbefabbe1c46bf46f839"
SRC_URI:append:class-target = " file://cross.patch"
SRC_URI:append:class-nativesdk = " file://cross.patch"
@@ -152,7 +145,6 @@ PACKAGECONFIG:remove:mingw32 = "kvm virglrenderer epoxy gtk+"
PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,libsdl2"
PACKAGECONFIG[virtfs] = "--enable-virtfs --enable-attr --enable-cap-ng,--disable-virtfs,libcap-ng attr,"
PACKAGECONFIG[aio] = "--enable-linux-aio,--disable-linux-aio,libaio,"
-PACKAGECONFIG[xfs] = "--enable-xfsctl,--disable-xfsctl,xfsprogs,"
PACKAGECONFIG[xen] = "--enable-xen,--disable-xen,xen-tools,xen-tools-libxenstore xen-tools-libxenctrl xen-tools-libxenguest"
PACKAGECONFIG[vnc-sasl] = "--enable-vnc --enable-vnc-sasl,--disable-vnc-sasl,cyrus-sasl,"
PACKAGECONFIG[vnc-jpeg] = "--enable-vnc --enable-vnc-jpeg,--disable-vnc-jpeg,jpeg,"
@@ -185,7 +177,6 @@ PACKAGECONFIG[snappy] = "--enable-snappy,--disable-snappy,snappy"
PACKAGECONFIG[glusterfs] = "--enable-glusterfs,--disable-glusterfs,glusterfs"
PACKAGECONFIG[xkbcommon] = "--enable-xkbcommon,--disable-xkbcommon,libxkbcommon"
PACKAGECONFIG[libudev] = "--enable-libudev,--disable-libudev,eudev"
-PACKAGECONFIG[libxml2] = "--enable-libxml2,--disable-libxml2,libxml2"
PACKAGECONFIG[attr] = "--enable-attr,--disable-attr,attr,"
PACKAGECONFIG[rbd] = "--enable-rbd,--disable-rbd,ceph,ceph"
PACKAGECONFIG[vhost] = "--enable-vhost-net,--disable-vhost-net,,"
@@ -197,6 +188,7 @@ PACKAGECONFIG[libnfs] = "--enable-libnfs,--disable-libnfs,libnfs"
PACKAGECONFIG[pmem] = "--enable-libpmem,--disable-libpmem,pmdk"
PACKAGECONFIG[pulsedio] = "--enable-pa,--disable-pa,pulseaudio"
PACKAGECONFIG[selinux] = "--enable-selinux,--disable-selinux"
+PACKAGECONFIG[bpf] = "--enable-bpf,--disable-bpf,libbpf"
INSANE_SKIP:${PN} = "arch"
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-acpi-tpm-Add-missing-device-identification-objects.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-acpi-tpm-Add-missing-device-identification-objects.patch
deleted file mode 100644
index ff91674879..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-acpi-tpm-Add-missing-device-identification-objects.patch
+++ /dev/null
@@ -1,83 +0,0 @@
-From 5903646d3913af6544680f6645fcb7296d0b3a1c Mon Sep 17 00:00:00 2001
-From: Stefan Berger <stefanb@linux.ibm.com>
-Date: Tue, 4 Jan 2022 12:58:05 -0500
-Subject: [PATCH] acpi: tpm: Add missing device identification objects
-
-Add missing TPM device identification objects _STR and _UID. They will
-appear as files 'description' and 'uid' under Linux sysfs.
-
-Following inspection of sysfs entries for hardware TPMs we chose
-uid '1'.
-
-Upstream-Status: Backport [5903646d3913af6544680f6645fcb7296d0b3a1c]
-
-Cc: Shannon Zhao <shannon.zhaosl@gmail.com>
-Cc: Michael S. Tsirkin <mst@redhat.com>
-Cc: Igor Mammedov <imammedo@redhat.com>
-Cc: Ani Sinha <ani@anisinha.ca>
-Resolves: https://gitlab.com/qemu-project/qemu/-/issues/708
-Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
-Reviewed-by: Ani Sinha <ani@anisinha.ca>
-Reviewed-by: Shannon Zhao <shannon.zhaosl@gmail.com>
-Message-id: 20211223022310.575496-3-stefanb@linux.ibm.com
-Message-Id: <20220104175806.872996-3-stefanb@linux.ibm.com>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
-Reviewed-by: Igor Mammedov <imammedo@redhat.com>
-Signed-off-by: Liwei Song <liwei.song@windriver.com>
----
- hw/arm/virt-acpi-build.c | 1 +
- hw/i386/acpi-build.c | 7 +++++++
- 2 files changed, 8 insertions(+)
-
-diff --git a/hw/arm/virt-acpi-build.c b/hw/arm/virt-acpi-build.c
-index d0f4867fdfe5..f2514ce77c0b 100644
---- a/hw/arm/virt-acpi-build.c
-+++ b/hw/arm/virt-acpi-build.c
-@@ -229,6 +229,7 @@ static void acpi_dsdt_add_tpm(Aml *scope, VirtMachineState *vms)
-
- Aml *dev = aml_device("TPM0");
- aml_append(dev, aml_name_decl("_HID", aml_string("MSFT0101")));
-+ aml_append(dev, aml_name_decl("_STR", aml_string("TPM 2.0 Device")));
- aml_append(dev, aml_name_decl("_UID", aml_int(0)));
-
- Aml *crs = aml_resource_template();
-diff --git a/hw/i386/acpi-build.c b/hw/i386/acpi-build.c
-index 0234fe7588b7..ce823e8fcb97 100644
---- a/hw/i386/acpi-build.c
-+++ b/hw/i386/acpi-build.c
-@@ -1812,11 +1812,15 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
- dev = aml_device("TPM");
- aml_append(dev, aml_name_decl("_HID",
- aml_string("MSFT0101")));
-+ aml_append(dev,
-+ aml_name_decl("_STR",
-+ aml_string("TPM 2.0 Device")));
- } else {
- dev = aml_device("ISA.TPM");
- aml_append(dev, aml_name_decl("_HID",
- aml_eisaid("PNP0C31")));
- }
-+ aml_append(dev, aml_name_decl("_UID", aml_int(1)));
-
- aml_append(dev, aml_name_decl("_STA", aml_int(0xF)));
- crs = aml_resource_template();
-@@ -1844,12 +1848,15 @@ build_dsdt(GArray *table_data, BIOSLinker *linker,
- if (TPM_IS_CRB(tpm)) {
- dev = aml_device("TPM");
- aml_append(dev, aml_name_decl("_HID", aml_string("MSFT0101")));
-+ aml_append(dev, aml_name_decl("_STR",
-+ aml_string("TPM 2.0 Device")));
- crs = aml_resource_template();
- aml_append(crs, aml_memory32_fixed(TPM_CRB_ADDR_BASE,
- TPM_CRB_ADDR_SIZE, AML_READ_WRITE));
- aml_append(dev, aml_name_decl("_CRS", crs));
-
- aml_append(dev, aml_name_decl("_STA", aml_int(0xf)));
-+ aml_append(dev, aml_name_decl("_UID", aml_int(1)));
-
- tpm_build_ppi_acpi(tpm, dev);
-
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-ppc-Include-asm-ptrace.h-for-pt_regs-struct-definiti.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-ppc-Include-asm-ptrace.h-for-pt_regs-struct-definiti.patch
deleted file mode 100644
index e8e42007df..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-ppc-Include-asm-ptrace.h-for-pt_regs-struct-definiti.patch
+++ /dev/null
@@ -1,92 +0,0 @@
-From 91e15627fd05d5a59fd2b88bc5c3491d3e0b56b0 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Mon, 14 Mar 2022 09:58:21 -0700
-Subject: [PATCH] ppc: Include asm/ptrace.h for pt_regs struct definition
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Fixes
-../qemu-6.2.0/linux-user/host/ppc64/../ppc/host-signal.h:16:32: error: incomplete definition of type 'struct pt_regs'
- return uc->uc_mcontext.regs->nip;
- ~~~~~~~~~~~~~~~~~~~~^
-
-Upstream-Status: Submitted [https://patchwork.kernel.org/project/qemu-devel/patch/20220314170223.554679-1-raj.khem@gmail.com/]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Cc: Peter Maydell <peter.maydell@linaro.org>
-Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
-Cc: Richard Henderson <richard.henderson@linaro.org>
----
- linux-user/include/host/ppc/host-signal.h | 4 ++++
- 1 file changed, 4 insertions(+)
-
---- a/linux-user/host/ppc/host-signal.h
-+++ /dev/null
-@@ -1,30 +0,0 @@
--/*
-- * host-signal.h: signal info dependent on the host architecture
-- *
-- * Copyright (c) 2003-2005 Fabrice Bellard
-- * Copyright (c) 2021 Linaro Limited
-- *
-- * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
-- * See the COPYING file in the top-level directory.
-- */
--
--#ifndef PPC_HOST_SIGNAL_H
--#define PPC_HOST_SIGNAL_H
--
--static inline uintptr_t host_signal_pc(ucontext_t *uc)
--{
-- return uc->uc_mcontext.regs->nip;
--}
--
--static inline void host_signal_set_pc(ucontext_t *uc, uintptr_t pc)
--{
-- uc->uc_mcontext.regs->nip = pc;
--}
--
--static inline bool host_signal_write(siginfo_t *info, ucontext_t *uc)
--{
-- return uc->uc_mcontext.regs->trap != 0x400
-- && (uc->uc_mcontext.regs->dsisr & 0x02000000);
--}
--
--#endif
---- a/linux-user/host/ppc64/host-signal.h
-+++ b/linux-user/host/ppc64/host-signal.h
-@@ -1 +1,32 @@
--#include "../ppc/host-signal.h"
-+/*
-+ * host-signal.h: signal info dependent on the host architecture
-+ *
-+ * Copyright (c) 2003-2005 Fabrice Bellard
-+ * Copyright (c) 2021 Linaro Limited
-+ *
-+ * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
-+ * See the COPYING file in the top-level directory.
-+ */
-+
-+#ifndef PPC_HOST_SIGNAL_H
-+#define PPC_HOST_SIGNAL_H
-+
-+#include <asm/ptrace.h>
-+
-+static inline uintptr_t host_signal_pc(ucontext_t *uc)
-+{
-+ return uc->uc_mcontext.gp_regs[PT_NIP];
-+}
-+
-+static inline void host_signal_set_pc(ucontext_t *uc, uintptr_t pc)
-+{
-+ uc->uc_mcontext.gp_regs[PT_NIP] = pc;
-+}
-+
-+static inline bool host_signal_write(siginfo_t *info, ucontext_t *uc)
-+{
-+ return uc->uc_mcontext.gp_regs[PT_TRAP] != 0x400
-+ && (uc->uc_mcontext.gp_regs[PT_DSISR] & 0x02000000);
-+}
-+
-+#endif
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch
index 733789be29..6fb160e6d3 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0003-qemu-Add-addition-environment-space-to-boot-loader-q.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-addition-environment-space-to-boot-loader-q.patch
@@ -1,7 +1,7 @@
-From ce1eceab2350d27960ec254650717085f6a11c9a Mon Sep 17 00:00:00 2001
+From de64af82950a6908f9407dfc92b83c17e2af3eab Mon Sep 17 00:00:00 2001
From: Jason Wessel <jason.wessel@windriver.com>
Date: Fri, 28 Mar 2014 17:42:43 +0800
-Subject: [PATCH] qemu: Add addition environment space to boot loader
+Subject: [PATCH 01/12] qemu: Add addition environment space to boot loader
qemu-system-mips
Upstream-Status: Inappropriate - OE uses deep paths
@@ -18,11 +18,11 @@ Signed-off-by: Roy Li <rongqing.li@windriver.com>
hw/mips/malta.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: qemu-6.0.0/hw/mips/malta.c
-===================================================================
---- qemu-6.0.0.orig/hw/mips/malta.c
-+++ qemu-6.0.0/hw/mips/malta.c
-@@ -65,7 +65,7 @@
+diff --git a/hw/mips/malta.c b/hw/mips/malta.c
+index 628851172..12d37f35d 100644
+--- a/hw/mips/malta.c
++++ b/hw/mips/malta.c
+@@ -61,7 +61,7 @@
#define ENVP_PADDR 0x2000
#define ENVP_VADDR cpu_mips_phys_to_kseg0(NULL, ENVP_PADDR)
#define ENVP_NB_ENTRIES 16
@@ -31,3 +31,6 @@ Index: qemu-6.0.0/hw/mips/malta.c
/* Hardware addresses */
#define FLASH_ADDRESS 0x1e000000ULL
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch
deleted file mode 100644
index 2f2d19f536..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Add-missing-wacom-HID-descriptor.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-From 883feb43129dc39b491e492c7ccfe89aefe53c44 Mon Sep 17 00:00:00 2001
-From: Richard Purdie <richard.purdie@linuxfoundation.org>
-Date: Thu, 27 Nov 2014 14:04:29 +0000
-Subject: [PATCH] qemu: Add missing wacom HID descriptor
-
-The USB wacom device is missing a HID descriptor which causes it
-to fail to operate with recent kernels (e.g. 3.17).
-
-This patch adds a HID desriptor to the device, based upon one from
-real wcom device.
-
-Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-
-Upstream-Status: Submitted
-2014/11/27
-
-[update patch context]
-Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
----
- hw/usb/dev-wacom.c | 94 +++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 93 insertions(+), 1 deletion(-)
-
-Index: qemu-6.0.0/hw/usb/dev-wacom.c
-===================================================================
---- qemu-6.0.0.orig/hw/usb/dev-wacom.c
-+++ qemu-6.0.0/hw/usb/dev-wacom.c
-@@ -69,6 +69,89 @@ static const USBDescStrings desc_strings
- [STR_SERIALNUMBER] = "1",
- };
-
-+static const uint8_t qemu_tablet_hid_report_descriptor[] = {
-+ 0x05, 0x01, /* Usage Page (Generic Desktop) */
-+ 0x09, 0x02, /* Usage (Mouse) */
-+ 0xa1, 0x01, /* Collection (Application) */
-+ 0x85, 0x01, /* Report ID (1) */
-+ 0x09, 0x01, /* Usage (Pointer) */
-+ 0xa1, 0x00, /* Collection (Physical) */
-+ 0x05, 0x09, /* Usage Page (Button) */
-+ 0x19, 0x01, /* Usage Minimum (1) */
-+ 0x29, 0x05, /* Usage Maximum (5) */
-+ 0x15, 0x00, /* Logical Minimum (0) */
-+ 0x25, 0x01, /* Logical Maximum (1) */
-+ 0x95, 0x05, /* Report Count (5) */
-+ 0x75, 0x01, /* Report Size (1) */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0x95, 0x01, /* Report Count (1) */
-+ 0x75, 0x03, /* Report Size (3) */
-+ 0x81, 0x01, /* Input (Constant) */
-+ 0x05, 0x01, /* Usage Page (Generic Desktop) */
-+ 0x09, 0x30, /* Usage (X) */
-+ 0x09, 0x31, /* Usage (Y) */
-+ 0x15, 0x81, /* Logical Minimum (-127) */
-+ 0x25, 0x7f, /* Logical Maximum (127) */
-+ 0x75, 0x08, /* Report Size (8) */
-+ 0x95, 0x02, /* Report Count (2) */
-+ 0x81, 0x06, /* Input (Data, Variable, Relative) */
-+ 0xc0, /* End Collection */
-+ 0xc0, /* End Collection */
-+ 0x05, 0x0d, /* Usage Page (Digitizer) */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0xa1, 0x01, /* Collection (Application) */
-+ 0x85, 0x02, /* Report ID (2) */
-+ 0xa1, 0x00, /* Collection (Physical) */
-+ 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0x15, 0x00, /* Logical Minimum (0) */
-+ 0x26, 0xff, 0x00, /* Logical Maximum (255) */
-+ 0x75, 0x08, /* Report Size (8) */
-+ 0x95, 0x08, /* Report Count (8) */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0xc0, /* End Collection */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0x85, 0x02, /* Report ID (2) */
-+ 0x95, 0x01, /* Report Count (1) */
-+ 0xb1, 0x02, /* FEATURE (2) */
-+ 0xc0, /* End Collection */
-+ 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0xa1, 0x01, /* Collection (Application) */
-+ 0x85, 0x02, /* Report ID (2) */
-+ 0x05, 0x0d, /* Usage Page (Digitizer) */
-+ 0x09, 0x22, /* Usage (Finger) */
-+ 0xa1, 0x00, /* Collection (Physical) */
-+ 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0x15, 0x00, /* Logical Minimum (0) */
-+ 0x26, 0xff, 0x00, /* Logical Maximum */
-+ 0x75, 0x08, /* Report Size (8) */
-+ 0x95, 0x02, /* Report Count (2) */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0x05, 0x01, /* Usage Page (Generic Desktop) */
-+ 0x09, 0x30, /* Usage (X) */
-+ 0x35, 0x00, /* Physical Minimum */
-+ 0x46, 0xe0, 0x2e, /* Physical Maximum */
-+ 0x26, 0xe0, 0x01, /* Logical Maximum */
-+ 0x75, 0x10, /* Report Size (16) */
-+ 0x95, 0x01, /* Report Count (1) */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0x09, 0x31, /* Usage (Y) */
-+ 0x46, 0x40, 0x1f, /* Physical Maximum */
-+ 0x26, 0x40, 0x01, /* Logical Maximum */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0x06, 0x00, 0xff, /* Usage Page (Vendor 0xff00) */
-+ 0x09, 0x01, /* Usage (Digitizer) */
-+ 0x26, 0xff, 0x00, /* Logical Maximum */
-+ 0x75, 0x08, /* Report Size (8) */
-+ 0x95, 0x0d, /* Report Count (13) */
-+ 0x81, 0x02, /* Input (Data, Variable, Absolute) */
-+ 0xc0, /* End Collection */
-+ 0xc0, /* End Collection */
-+};
-+
-+
- static const USBDescIface desc_iface_wacom = {
- .bInterfaceNumber = 0,
- .bNumEndpoints = 1,
-@@ -86,7 +169,7 @@ static const USBDescIface desc_iface_wac
- 0x00, /* u8 country_code */
- 0x01, /* u8 num_descriptors */
- USB_DT_REPORT, /* u8 type: Report */
-- 0x6e, 0, /* u16 len */
-+ sizeof(qemu_tablet_hid_report_descriptor), 0, /* u16 len */
- },
- },
- },
-@@ -266,6 +349,15 @@ static void usb_wacom_handle_control(USB
- }
-
- switch (request) {
-+ case InterfaceRequest | USB_REQ_GET_DESCRIPTOR:
-+ switch (value >> 8) {
-+ case 0x22:
-+ memcpy(data, qemu_tablet_hid_report_descriptor,
-+ sizeof(qemu_tablet_hid_report_descriptor));
-+ p->actual_length = sizeof(qemu_tablet_hid_report_descriptor);
-+ break;
-+ }
-+ break;
- case WACOM_SET_REPORT:
- if (s->mouse_grabbed) {
- qemu_remove_mouse_event_handler(s->eh_entry);
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-riscv-Set-5.4-as-minimum-kernel-version-for-riscv32.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-riscv-Set-5.4-as-minimum-kernel-version-for-riscv32.patch
deleted file mode 100644
index ac4b6dcc44..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-riscv-Set-5.4-as-minimum-kernel-version-for-riscv32.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 359dc12eb32b2395cf10796157002024e6a58054 Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 15 Dec 2021 23:31:11 -0800
-Subject: [PATCH] riscv: Set 5.4 as minimum kernel version for riscv32
-
-5.4 is first stable API as far as rv32 is concerned see [1]
-
-[1] https://sourceware.org/git/?p=glibc.git;a=commit;h=7a55dd3fb6d2c307a002a16776be84310b9c8989
-
-Upstream-Status: Submitted [https://lists.nongnu.org/archive/html/qemu-devel/2021-12/msg02495.html]
-
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-Cc: Palmer Dabbelt <palmer@dabbelt.com>
-Cc: Alistair Francis <alistair.francis@wdc.com>
-Cc: Bin Meng <bin.meng@windriver.com>
-Signed-off-by: Matt Madison <matt@madison.systems>
----
- linux-user/riscv/target_syscall.h | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/linux-user/riscv/target_syscall.h b/linux-user/riscv/target_syscall.h
-index dc597c897..9b1316132 100644
---- a/linux-user/riscv/target_syscall.h
-+++ b/linux-user/riscv/target_syscall.h
-@@ -45,10 +45,11 @@ struct target_pt_regs {
-
- #ifdef TARGET_RISCV32
- #define UNAME_MACHINE "riscv32"
-+#define UNAME_MINIMUM_RELEASE "5.4.0"
- #else
- #define UNAME_MACHINE "riscv64"
--#endif
- #define UNAME_MINIMUM_RELEASE "4.15.0"
-+#endif
-
- #define TARGET_MINSIGSTKSZ 2048
- #define TARGET_MCL_CURRENT 1
---
-2.32.0
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-vhost-vsock-detach-the-virqueue-element-in-case-of-e.patch b/poky/meta/recipes-devtools/qemu/qemu/0001-vhost-vsock-detach-the-virqueue-element-in-case-of-e.patch
deleted file mode 100644
index dcea9040c7..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-vhost-vsock-detach-the-virqueue-element-in-case-of-e.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-CVE: CVE-2022-26354
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 0190d651a73463dc2b8f170b29326d1f38140a04 Mon Sep 17 00:00:00 2001
-From: Stefano Garzarella <sgarzare@redhat.com>
-Date: Mon, 28 Feb 2022 10:50:58 +0100
-Subject: [PATCH 1/2] vhost-vsock: detach the virqueue element in case of error
-
-In vhost_vsock_common_send_transport_reset(), if an element popped from
-the virtqueue is invalid, we should call virtqueue_detach_element() to
-detach it from the virtqueue before freeing its memory.
-
-Fixes: fc0b9b0e1c ("vhost-vsock: add virtio sockets device")
-Fixes: CVE-2022-26354
-Cc: qemu-stable@nongnu.org
-Reported-by: VictorV <vv474172261@gmail.com>
-Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
-Message-Id: <20220228095058.27899-1-sgarzare@redhat.com>
-Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
----
- hw/virtio/vhost-vsock-common.c | 10 +++++++---
- 1 file changed, 7 insertions(+), 3 deletions(-)
-
-diff --git a/hw/virtio/vhost-vsock-common.c b/hw/virtio/vhost-vsock-common.c
-index 3f3771274e..ed706681ac 100644
---- a/hw/virtio/vhost-vsock-common.c
-+++ b/hw/virtio/vhost-vsock-common.c
-@@ -153,19 +153,23 @@ static void vhost_vsock_common_send_transport_reset(VHostVSockCommon *vvc)
- if (elem->out_num) {
- error_report("invalid vhost-vsock event virtqueue element with "
- "out buffers");
-- goto out;
-+ goto err;
- }
-
- if (iov_from_buf(elem->in_sg, elem->in_num, 0,
- &event, sizeof(event)) != sizeof(event)) {
- error_report("vhost-vsock event virtqueue element is too short");
-- goto out;
-+ goto err;
- }
-
- virtqueue_push(vq, elem, sizeof(event));
- virtio_notify(VIRTIO_DEVICE(vvc), vq);
-
--out:
-+ g_free(elem);
-+ return;
-+
-+err:
-+ virtqueue_detach_element(vq, elem, 0);
- g_free(elem);
- }
-
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch
index cf8b0e7a45..63a99c9620 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0006-chardev-connect-socket-to-a-spawned-command.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0002-chardev-connect-socket-to-a-spawned-command.patch
@@ -1,7 +1,7 @@
-From bcc63f775e265df69963a4ad7805b8678ace68f0 Mon Sep 17 00:00:00 2001
+From 14cd62607c9de232edf0a9b8503bd02783e03411 Mon Sep 17 00:00:00 2001
From: Alistair Francis <alistair.francis@xilinx.com>
Date: Thu, 21 Dec 2017 11:35:16 -0800
-Subject: [PATCH] chardev: connect socket to a spawned command
+Subject: [PATCH 02/12] chardev: connect socket to a spawned command
The command is started in a shell (sh -c) with stdin connect to QEMU
via a Unix domain stream socket. QEMU then exchanges data via its own
@@ -46,16 +46,16 @@ Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
---
- chardev/char-socket.c | 101 ++++++++++++++++++++++++++++++++++++++++++
+ chardev/char-socket.c | 100 ++++++++++++++++++++++++++++++++++++++++++
chardev/char.c | 3 ++
qapi/char.json | 5 +++
- 3 files changed, 109 insertions(+)
+ 3 files changed, 108 insertions(+)
-Index: qemu-6.2.0/chardev/char-socket.c
-===================================================================
---- qemu-6.2.0.orig/chardev/char-socket.c
-+++ qemu-6.2.0/chardev/char-socket.c
-@@ -1362,6 +1362,67 @@ static bool qmp_chardev_validate_socket(
+diff --git a/chardev/char-socket.c b/chardev/char-socket.c
+index fab2d791d..c79641f24 100644
+--- a/chardev/char-socket.c
++++ b/chardev/char-socket.c
+@@ -1315,6 +1315,67 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
return true;
}
@@ -123,7 +123,7 @@ Index: qemu-6.2.0/chardev/char-socket.c
static void qmp_chardev_open_socket(Chardev *chr,
ChardevBackend *backend,
-@@ -1370,6 +1431,9 @@ static void qmp_chardev_open_socket(Char
+@@ -1323,6 +1384,9 @@ static void qmp_chardev_open_socket(Chardev *chr,
{
SocketChardev *s = SOCKET_CHARDEV(chr);
ChardevSocket *sock = backend->u.socket.data;
@@ -133,7 +133,7 @@ Index: qemu-6.2.0/chardev/char-socket.c
bool do_nodelay = sock->has_nodelay ? sock->nodelay : false;
bool is_listen = sock->has_server ? sock->server : true;
bool is_telnet = sock->has_telnet ? sock->telnet : false;
-@@ -1440,6 +1504,14 @@ static void qmp_chardev_open_socket(Char
+@@ -1393,6 +1457,14 @@ static void qmp_chardev_open_socket(Chardev *chr,
update_disconnected_filename(s);
@@ -148,7 +148,7 @@ Index: qemu-6.2.0/chardev/char-socket.c
if (s->is_listen) {
if (qmp_chardev_open_socket_server(chr, is_telnet || is_tn3270,
is_waitconnect, errp) < 0) {
-@@ -1459,6 +1531,9 @@ static void qemu_chr_parse_socket(QemuOp
+@@ -1412,6 +1484,9 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
const char *host = qemu_opt_get(opts, "host");
const char *port = qemu_opt_get(opts, "port");
const char *fd = qemu_opt_get(opts, "fd");
@@ -158,7 +158,7 @@ Index: qemu-6.2.0/chardev/char-socket.c
#ifdef CONFIG_LINUX
bool tight = qemu_opt_get_bool(opts, "tight", true);
bool abstract = qemu_opt_get_bool(opts, "abstract", false);
-@@ -1466,6 +1541,20 @@ static void qemu_chr_parse_socket(QemuOp
+@@ -1419,6 +1494,20 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
SocketAddressLegacy *addr;
ChardevSocket *sock;
@@ -176,10 +176,10 @@ Index: qemu-6.2.0/chardev/char-socket.c
+ } else
+#endif
+
- if ((!!path + !!fd + !!host) != 1) {
+ if ((!!path + !!fd + !!host) > 1) {
error_setg(errp,
- "Exactly one of 'path', 'fd' or 'host' required");
-@@ -1516,13 +1605,24 @@ static void qemu_chr_parse_socket(QemuOp
+ "None or one of 'path', 'fd' or 'host' option required.");
+@@ -1469,13 +1558,24 @@ static void qemu_chr_parse_socket(QemuOpts *opts, ChardevBackend *backend,
sock->tls_creds = g_strdup(qemu_opt_get(opts, "tls-creds"));
sock->has_tls_authz = qemu_opt_get(opts, "tls-authz");
sock->tls_authz = g_strdup(qemu_opt_get(opts, "tls-authz"));
@@ -204,24 +204,24 @@ Index: qemu-6.2.0/chardev/char-socket.c
#ifdef CONFIG_LINUX
q_unix->has_tight = true;
q_unix->tight = tight;
-Index: qemu-6.2.0/chardev/char.c
-===================================================================
---- qemu-6.2.0.orig/chardev/char.c
-+++ qemu-6.2.0/chardev/char.c
-@@ -836,6 +836,9 @@ QemuOptsList qemu_chardev_opts = {
+diff --git a/chardev/char.c b/chardev/char.c
+index 0169d8dde..ce9a21f41 100644
+--- a/chardev/char.c
++++ b/chardev/char.c
+@@ -835,6 +835,9 @@ QemuOptsList qemu_chardev_opts = {
+ },{
.name = "path",
.type = QEMU_OPT_STRING,
- },{
++ },{
+ .name = "cmd",
+ .type = QEMU_OPT_STRING,
-+ },{
+ },{
.name = "host",
.type = QEMU_OPT_STRING,
- },{
-Index: qemu-6.2.0/qapi/char.json
-===================================================================
---- qemu-6.2.0.orig/qapi/char.json
-+++ qemu-6.2.0/qapi/char.json
+diff --git a/qapi/char.json b/qapi/char.json
+index 7b4215157..37feabdac 100644
+--- a/qapi/char.json
++++ b/qapi/char.json
@@ -250,6 +250,10 @@
#
# @addr: socket address to listen on (server=true)
@@ -241,3 +241,6 @@ Index: qemu-6.2.0/qapi/char.json
'*tls-creds': 'str',
'*tls-authz' : 'str',
'*server': 'bool',
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0002-virtio-net-fix-map-leaking-on-error-during-receive.patch b/poky/meta/recipes-devtools/qemu/qemu/0002-virtio-net-fix-map-leaking-on-error-during-receive.patch
deleted file mode 100644
index 59ccfdd03c..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/0002-virtio-net-fix-map-leaking-on-error-during-receive.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-CVE: CVE-2022-26353
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From 4d65ecbddd16f38a8cf23b3053ca5c3594f8d4a4 Mon Sep 17 00:00:00 2001
-From: Jason Wang <jasowang@redhat.com>
-Date: Tue, 8 Mar 2022 10:42:51 +0800
-Subject: [PATCH 2/2] virtio-net: fix map leaking on error during receive
-
-Commit bedd7e93d0196 ("virtio-net: fix use after unmap/free for sg")
-tries to fix the use after free of the sg by caching the virtqueue
-elements in an array and unmap them at once after receiving the
-packets, But it forgot to unmap the cached elements on error which
-will lead to leaking of mapping and other unexpected results.
-
-Fixing this by detaching the cached elements on error. This addresses
-CVE-2022-26353.
-
-Reported-by: Victor Tom <vv474172261@gmail.com>
-Cc: qemu-stable@nongnu.org
-Fixes: CVE-2022-26353
-Fixes: bedd7e93d0196 ("virtio-net: fix use after unmap/free for sg")
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Jason Wang <jasowang@redhat.com>
----
- hw/net/virtio-net.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
-index f2014d5ea0..e1f4748831 100644
---- a/hw/net/virtio-net.c
-+++ b/hw/net/virtio-net.c
-@@ -1862,6 +1862,7 @@ static ssize_t virtio_net_receive_rcu(NetClientState *nc, const uint8_t *buf,
-
- err:
- for (j = 0; j < i; j++) {
-+ virtqueue_detach_element(q->rx_vq, elems[j], lens[j]);
- g_free(elems[j]);
- }
-
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch b/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch
index 3491fa8a53..f350ffce47 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0007-apic-fixup-fallthrough-to-PIC.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0003-apic-fixup-fallthrough-to-PIC.patch
@@ -1,7 +1,7 @@
-From a59a98d100123030a4145e7efe3b8a001920a9f1 Mon Sep 17 00:00:00 2001
+From dc2a8ccd440ee3741b61606eafed3f7e092f4312 Mon Sep 17 00:00:00 2001
From: Mark Asselstine <mark.asselstine@windriver.com>
Date: Tue, 26 Feb 2013 11:43:28 -0500
-Subject: [PATCH] apic: fixup fallthrough to PIC
+Subject: [PATCH 03/12] apic: fixup fallthrough to PIC
Commit 0e21e12bb311c4c1095d0269dc2ef81196ccb60a [Don't route PIC
interrupts through the local APIC if the local APIC config says so.]
@@ -29,11 +29,11 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
hw/intc/apic.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-Index: qemu-6.0.0/hw/intc/apic.c
-===================================================================
---- qemu-6.0.0.orig/hw/intc/apic.c
-+++ qemu-6.0.0/hw/intc/apic.c
-@@ -606,7 +606,7 @@ int apic_accept_pic_intr(DeviceState *de
+diff --git a/hw/intc/apic.c b/hw/intc/apic.c
+index 3df11c34d..9506c88ce 100644
+--- a/hw/intc/apic.c
++++ b/hw/intc/apic.c
+@@ -605,7 +605,7 @@ int apic_accept_pic_intr(DeviceState *dev)
APICCommonState *s = APIC(dev);
uint32_t lvt0;
@@ -42,3 +42,6 @@ Index: qemu-6.0.0/hw/intc/apic.c
return -1;
lvt0 = s->lvt[APIC_LVT_LINT0];
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch b/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch
index 4298964dfa..6faebd4e09 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0010-configure-Add-pkg-config-handling-for-libgcrypt.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0004-configure-Add-pkg-config-handling-for-libgcrypt.patch
@@ -1,7 +1,7 @@
-From b51e6dd833172954c718bd600d846540eeb07220 Mon Sep 17 00:00:00 2001
+From d8265abdce5dc2bf74b3fccdf2b7257b4f3894f0 Mon Sep 17 00:00:00 2001
From: He Zhe <zhe.he@windriver.com>
Date: Wed, 28 Aug 2019 19:56:28 +0800
-Subject: [PATCH] configure: Add pkg-config handling for libgcrypt
+Subject: [PATCH 04/12] configure: Add pkg-config handling for libgcrypt
libgcrypt may also be controlled by pkg-config, this patch adds pkg-config
handling for libgcrypt.
@@ -15,10 +15,10 @@ Signed-off-by: He Zhe <zhe.he@windriver.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
-index b3e7ec0e9..4cbe715b7 100644
+index 861de93c4..d45ff2d7c 100644
--- a/meson.build
+++ b/meson.build
-@@ -874,7 +874,7 @@ endif
+@@ -1063,7 +1063,7 @@ endif
if not gnutls_crypto.found()
if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled()
gcrypt = dependency('libgcrypt', version: '>=1.8',
@@ -27,3 +27,6 @@ index b3e7ec0e9..4cbe715b7 100644
required: get_option('gcrypt'),
kwargs: static_kwargs)
# Debian has removed -lgpg-error from libgcrypt-config
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch
index b8d288d3a2..3f3c39f996 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-qemu-Do-not-include-file-if-not-exists.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0005-qemu-Do-not-include-file-if-not-exists.patch
@@ -1,7 +1,7 @@
-From 34247f83095f8cdcdc1f9d7f0c6ffbd46b25d979 Mon Sep 17 00:00:00 2001
+From f39e7bfc5ed07b5ecaeb705c4eae4855ca120d47 Mon Sep 17 00:00:00 2001
From: Oleksiy Obitotskyy <oobitots@cisco.com>
Date: Wed, 25 Mar 2020 21:21:35 +0200
-Subject: [PATCH] qemu: Do not include file if not exists
+Subject: [PATCH 05/12] qemu: Do not include file if not exists
Script configure checks for if_alg.h and check failed but
if_alg.h still included.
@@ -11,14 +11,15 @@ Signed-off-by: Oleksiy Obitotskyy <oobitots@cisco.com>
[update patch context]
Signed-off-by: Sakib Sajal <sakib.sajal@windriver.com>
+
---
linux-user/syscall.c | 2 ++
1 file changed, 2 insertions(+)
-Index: qemu-6.0.0/linux-user/syscall.c
-===================================================================
---- qemu-6.0.0.orig/linux-user/syscall.c
-+++ qemu-6.0.0/linux-user/syscall.c
+diff --git a/linux-user/syscall.c b/linux-user/syscall.c
+index f65045efe..340e0c6f0 100644
+--- a/linux-user/syscall.c
++++ b/linux-user/syscall.c
@@ -113,7 +113,9 @@
#include <linux/blkpg.h>
#include <netpacket/packet.h>
@@ -29,3 +30,6 @@ Index: qemu-6.0.0/linux-user/syscall.c
#include <linux/rtc.h>
#include <sound/asound.h>
#ifdef HAVE_BTRFS_H
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/mmap2.patch b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch
index e115473b70..75c0369318 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/mmap2.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0006-qemu-Add-some-user-space-mmap-tweaks-to-address-musl.patch
@@ -1,3 +1,9 @@
+From 375cae3dd6151ef33cae8f243f6a2c2da6c0c356 Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Fri, 8 Jan 2021 17:27:06 +0000
+Subject: [PATCH 06/12] qemu: Add some user space mmap tweaks to address musl
+ 32 bit
+
When using qemu-i386 to build qemux86 webkitgtk on musl, it sits in an
infinite loop of mremap calls of ever decreasing/increasing addresses.
@@ -13,11 +19,15 @@ rather than ENOMEM so adjust the other part of the test to this.
Upstream-Status: Submitted [https://lists.gnu.org/archive/html/qemu-devel/2021-01/msg01355.html]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org
-Index: qemu-6.0.0/linux-user/mmap.c
-===================================================================
---- qemu-6.0.0.orig/linux-user/mmap.c
-+++ qemu-6.0.0/linux-user/mmap.c
-@@ -733,12 +733,16 @@ abi_long target_mremap(abi_ulong old_add
+---
+ linux-user/mmap.c | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/linux-user/mmap.c b/linux-user/mmap.c
+index c125031b9..e651834a5 100644
+--- a/linux-user/mmap.c
++++ b/linux-user/mmap.c
+@@ -749,12 +749,16 @@ abi_long target_mremap(abi_ulong old_addr, abi_ulong old_size,
int prot;
void *host_addr;
@@ -37,3 +47,6 @@ Index: qemu-6.0.0/linux-user/mmap.c
return -1;
}
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/determinism.patch b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch
index 330a31204d..0d7dae3689 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/determinism.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0007-qemu-Determinism-fixes.patch
@@ -1,4 +1,9 @@
-When sources are included within debug information, a couple of areas of the
+From 50bab5c2605b609ea7ea154f57a9be96d656725a Mon Sep 17 00:00:00 2001
+From: Richard Purdie <richard.purdie@linuxfoundation.org>
+Date: Mon, 1 Mar 2021 13:00:47 +0000
+Subject: [PATCH 07/12] qemu: Determinism fixes
+
+When sources are included within debug information, a couple of areas of the
qemu build are not reproducible due to either full buildpaths or timestamps.
Replace the full paths with relative ones. I couldn't figure out how to get
@@ -7,11 +12,15 @@ meson to pass relative paths but we can fix that in the script.
Upstream-Status: Pending [some version of all/part of this may be accepted]
RP 2021/3/1
-Index: qemu-6.0.0/scripts/decodetree.py
-===================================================================
---- qemu-6.0.0.orig/scripts/decodetree.py
-+++ qemu-6.0.0/scripts/decodetree.py
-@@ -1304,7 +1304,7 @@ def main():
+---
+ scripts/decodetree.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/decodetree.py b/scripts/decodetree.py
+index a03dc6b5e..4ea24c1f3 100644
+--- a/scripts/decodetree.py
++++ b/scripts/decodetree.py
+@@ -1328,7 +1328,7 @@ def main():
toppat = ExcMultiPattern(0)
for filename in args:
@@ -20,3 +29,6 @@ Index: qemu-6.0.0/scripts/decodetree.py
f = open(filename, 'rt', encoding='utf-8')
parse_file(f, toppat)
f.close()
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-tests-meson.build-use-relative-path-to-refer-to-file.patch b/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch
index fcef129181..43d3c7cf1f 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-tests-meson.build-use-relative-path-to-refer-to-file.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0008-tests-meson.build-use-relative-path-to-refer-to-file.patch
@@ -1,7 +1,7 @@
-From a4bdc0416134477e4eae386db04b1de7491163bb Mon Sep 17 00:00:00 2001
+From 2bf9388b801d4389e2d57e95a7897bfc1c42786e Mon Sep 17 00:00:00 2001
From: Changqing Li <changqing.li@windriver.com>
Date: Thu, 14 Jan 2021 06:33:04 +0000
-Subject: [PATCH] tests/meson.build: use relative path to refer to files
+Subject: [PATCH 08/12] tests/meson.build: use relative path to refer to files
Fix error like:
Fatal error: can't create tests/ptimer-test.p/..._qemu-5.2.0_hw_core_ptimer.c.o: File name too long
@@ -12,14 +12,15 @@ filename too long. Fixed by using relative path to refer to files
Upstream-Status: Submitted [send to qemu-devel]
Signed-off-by: Changqing Li <changqing.li@windriver.com>
+
---
- tests/meson.build | 2 +-
- 1 files changed, 1 insertions(+), 1 deletion(-)
+ tests/unit/meson.build | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
-Index: qemu-6.2.0/tests/unit/meson.build
-===================================================================
---- qemu-6.2.0.orig/tests/unit/meson.build
-+++ qemu-6.2.0/tests/unit/meson.build
+diff --git a/tests/unit/meson.build b/tests/unit/meson.build
+index 96b295263..e4c3246dc 100644
+--- a/tests/unit/meson.build
++++ b/tests/unit/meson.build
@@ -44,9 +44,9 @@ tests = {
'test-keyval': [testqapi],
'test-logging': [],
@@ -32,3 +33,6 @@ Index: qemu-6.2.0/tests/unit/meson.build
}
if have_system or have_tools
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/0001-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch b/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
index 4691a3672a..23d0a69802 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/0001-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0009-Define-MAP_SYNC-and-MAP_SHARED_VALIDATE-on-needed-li.patch
@@ -1,7 +1,7 @@
-From 444e80e63d35006f41e7d658e2bf6d7c9f7641df Mon Sep 17 00:00:00 2001
+From ebf4bb2f51da83af0c61480414cfa156f7308b34 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 21 Mar 2022 10:09:38 -0700
-Subject: [PATCH] Define MAP_SYNC and MAP_SHARED_VALIDATE on needed linux
+Subject: [PATCH 09/12] Define MAP_SYNC and MAP_SHARED_VALIDATE on needed linux
systems
linux only wires MAP_SYNC and MAP_SHARED_VALIDATE for architectures
@@ -13,12 +13,13 @@ Upstream-Status: Submitted [https://lists.nongnu.org/archive/html/qemu-devel/202
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Cc: Zhang Yi <yi.z.zhang@linux.intel.com>
Cc: Michael S. Tsirkin <mst@redhat.com>
+
---
util/mmap-alloc.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/util/mmap-alloc.c b/util/mmap-alloc.c
-index 893d864354..86d3cda248 100644
+index 893d86435..86d3cda24 100644
--- a/util/mmap-alloc.c
+++ b/util/mmap-alloc.c
@@ -10,14 +10,18 @@
@@ -44,5 +45,5 @@ index 893d864354..86d3cda248 100644
#include "qemu/host-utils.h"
#include "qemu/cutils.h"
--
-2.35.1
+2.30.2
diff --git a/poky/meta/recipes-devtools/qemu/qemu/pvrdma.patch b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
index 7b0335b1dc..826d42fc20 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/pvrdma.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/0010-hw-pvrdma-Protect-against-buggy-or-malicious-guest-d.patch
@@ -1,4 +1,8 @@
-hw/pvrdma: Protect against buggy or malicious guest driver
+From 52c38fa9f3a790a7c2805e7d8cce3ea9262d6ae2 Mon Sep 17 00:00:00 2001
+From: Yuval Shaia <yuval.shaia.ml@gmail.com>
+Date: Tue, 12 Apr 2022 11:01:51 +0100
+Subject: [PATCH 10/12] hw/pvrdma: Protect against buggy or malicious guest
+ driver
Guest driver might execute HW commands when shared buffers are not yet
allocated.
@@ -12,10 +16,15 @@ Signed-off-by: Yuval Shaia <yuval.shaia.ml@gmail.com>
CVE: CVE-2022-1050
Upstream-Status: Submitted [https://lists.nongnu.org/archive/html/qemu-devel/2022-03/msg05197.html]
-Index: qemu-6.2.0/hw/rdma/vmw/pvrdma_cmd.c
-===================================================================
---- qemu-6.2.0.orig/hw/rdma/vmw/pvrdma_cmd.c
-+++ qemu-6.2.0/hw/rdma/vmw/pvrdma_cmd.c
+---
+ hw/rdma/vmw/pvrdma_cmd.c | 6 ++++++
+ hw/rdma/vmw/pvrdma_main.c | 3 ++-
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/hw/rdma/vmw/pvrdma_cmd.c b/hw/rdma/vmw/pvrdma_cmd.c
+index da7ddfa54..89db963c4 100644
+--- a/hw/rdma/vmw/pvrdma_cmd.c
++++ b/hw/rdma/vmw/pvrdma_cmd.c
@@ -796,6 +796,12 @@ int pvrdma_exec_cmd(PVRDMADev *dev)
dsr_info = &dev->dsr_info;
@@ -29,11 +38,11 @@ Index: qemu-6.2.0/hw/rdma/vmw/pvrdma_cmd.c
if (dsr_info->req->hdr.cmd >= sizeof(cmd_handlers) /
sizeof(struct cmd_handler)) {
rdma_error_report("Unsupported command");
-Index: qemu-6.2.0/hw/rdma/vmw/pvrdma_main.c
-===================================================================
---- qemu-6.2.0.orig/hw/rdma/vmw/pvrdma_main.c
-+++ qemu-6.2.0/hw/rdma/vmw/pvrdma_main.c
-@@ -249,7 +249,8 @@ static void init_dsr_dev_caps(PVRDMADev
+diff --git a/hw/rdma/vmw/pvrdma_main.c b/hw/rdma/vmw/pvrdma_main.c
+index 91206dbb8..0b7d908e2 100644
+--- a/hw/rdma/vmw/pvrdma_main.c
++++ b/hw/rdma/vmw/pvrdma_main.c
+@@ -249,7 +249,8 @@ static void init_dsr_dev_caps(PVRDMADev *dev)
{
struct pvrdma_device_shared_region *dsr;
@@ -43,3 +52,6 @@ Index: qemu-6.2.0/hw/rdma/vmw/pvrdma_main.c
rdma_error_report("Can't initialized DSR");
return;
}
+--
+2.30.2
+
diff --git a/poky/meta/recipes-devtools/qemu/qemu/cross.patch b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
index bdb77ec7d0..d1256a1229 100644
--- a/poky/meta/recipes-devtools/qemu/qemu/cross.patch
+++ b/poky/meta/recipes-devtools/qemu/qemu/cross.patch
@@ -1,7 +1,7 @@
-From f51ece86f84c877f255746cba22a6745f37d2b7f Mon Sep 17 00:00:00 2001
+From 76c3fc4c87231bed32974ebbbdb5079cff45a6b7 Mon Sep 17 00:00:00 2001
From: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Tue, 5 Jan 2021 23:00:14 +0000
-Subject: [PATCH] qemu: Upgrade 5.1.0->5.2.0
+Subject: [PATCH 12/12] qemu: Upgrade 5.1.0->5.2.0
We need to be able to trigger configure's cross code but we don't want
to set cross_prefix as it does other things we don't want. Patch things
@@ -9,23 +9,24 @@ so we can do what we need in the target config case.
Upstream-Status: Inappropriate [may be rewritten in a way upstream may accept?]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
---
configure | 4 ----
1 file changed, 4 deletions(-)
diff --git a/configure b/configure
-index 9a79a004d..563b7827f 100755
+index 7c08c1835..0613279f9 100755
--- a/configure
+++ b/configure
-@@ -5128,7 +5128,6 @@ if test "$skip_meson" = no; then
+@@ -3118,7 +3118,6 @@ if test "$skip_meson" = no; then
fi
echo "strip = [$(meson_quote $strip)]" >> $cross
echo "windres = [$(meson_quote $windres)]" >> $cross
- if test "$cross_compile" = "yes"; then
cross_arg="--cross-file config-meson.cross"
echo "[host_machine]" >> $cross
- if test "$mingw32" = "yes" ; then
-@@ -5160,9 +5159,6 @@ if test "$skip_meson" = no; then
+ echo "system = '$targetos'" >> $cross
+@@ -3136,9 +3135,6 @@ if test "$skip_meson" = no; then
else
echo "endian = 'little'" >> $cross
fi
@@ -36,5 +37,5 @@ index 9a79a004d..563b7827f 100755
rm -rf meson-private meson-info meson-logs
--
-2.17.1
+2.30.2
diff --git a/poky/meta/recipes-devtools/qemu/qemu/no-ps2.patch b/poky/meta/recipes-devtools/qemu/qemu/no-ps2.patch
deleted file mode 100644
index 8c167521d7..0000000000
--- a/poky/meta/recipes-devtools/qemu/qemu/no-ps2.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-Upstream-Status: Backport [4ccd5fe22feb95137d325f422016a6473541fe9f]
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From ec2d4aa7ca28127faa7ccdbf89d2bf5a4984b62f Mon Sep 17 00:00:00 2001
-From: Joelle van Dyne <j@getutm.app>
-Date: Sun, 27 Feb 2022 13:06:55 -0800
-Subject: [PATCH] pc: add option to disable PS/2 mouse/keyboard
-
-On some older software like Windows 7 installer, having both a PS/2
-mouse and USB mouse results in only one device working property (which
-might be a different device each boot). While the workaround to not use
-a USB mouse with such software is valid, it creates an inconsistent
-experience if the user wishes to always use a USB mouse.
-
-This introduces a new machine property to inhibit the creation of the
-i8042 PS/2 controller.
-
-Signed-off-by: Joelle van Dyne <j@getutm.app>
-Message-Id: <20220227210655.45592-1-j@getutm.app>
-Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
-Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
----
- hw/i386/pc.c | 28 ++++++++++++++++++++++++++--
- include/hw/i386/pc.h | 2 ++
- 2 files changed, 28 insertions(+), 2 deletions(-)
-
-diff --git a/hw/i386/pc.c b/hw/i386/pc.c
-index a2ef40ecbc..8a6a089ee2 100644
---- a/hw/i386/pc.c
-+++ b/hw/i386/pc.c
-@@ -1008,7 +1008,8 @@ static const MemoryRegionOps ioportF0_io_ops = {
- },
- };
-
--static void pc_superio_init(ISABus *isa_bus, bool create_fdctrl, bool no_vmport)
-+static void pc_superio_init(ISABus *isa_bus, bool create_fdctrl,
-+ bool create_i8042, bool no_vmport)
- {
- int i;
- DriveInfo *fd[MAX_FD];
-@@ -1030,6 +1031,10 @@ static void pc_superio_init(ISABus *isa_bus, bool create_fdctrl, bool no_vmport)
- }
- }
-
-+ if (!create_i8042) {
-+ return;
-+ }
-+
- i8042 = isa_create_simple(isa_bus, "i8042");
- if (!no_vmport) {
- isa_create_simple(isa_bus, TYPE_VMPORT);
-@@ -1125,7 +1130,8 @@ void pc_basic_device_init(struct PCMachineState *pcms,
- i8257_dma_init(isa_bus, 0);
-
- /* Super I/O */
-- pc_superio_init(isa_bus, create_fdctrl, pcms->vmport != ON_OFF_AUTO_ON);
-+ pc_superio_init(isa_bus, create_fdctrl, pcms->i8042_enabled,
-+ pcms->vmport != ON_OFF_AUTO_ON);
- }
-
- void pc_nic_init(PCMachineClass *pcmc, ISABus *isa_bus, PCIBus *pci_bus)
-@@ -1506,6 +1512,20 @@ static void pc_machine_set_hpet(Object *obj, bool value, Error **errp)
- pcms->hpet_enabled = value;
- }
-
-+static bool pc_machine_get_i8042(Object *obj, Error **errp)
-+{
-+ PCMachineState *pcms = PC_MACHINE(obj);
-+
-+ return pcms->i8042_enabled;
-+}
-+
-+static void pc_machine_set_i8042(Object *obj, bool value, Error **errp)
-+{
-+ PCMachineState *pcms = PC_MACHINE(obj);
-+
-+ pcms->i8042_enabled = value;
-+}
-+
- static bool pc_machine_get_default_bus_bypass_iommu(Object *obj, Error **errp)
- {
- PCMachineState *pcms = PC_MACHINE(obj);
-@@ -1616,6 +1636,7 @@ static void pc_machine_initfn(Object *obj)
- pcms->smbus_enabled = true;
- pcms->sata_enabled = true;
- pcms->pit_enabled = true;
-+ pcms->i8042_enabled = true;
- pcms->max_fw_size = 8 * MiB;
- #ifdef CONFIG_HPET
- pcms->hpet_enabled = true;
-@@ -1744,6 +1765,9 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
- object_class_property_add_bool(oc, "hpet",
- pc_machine_get_hpet, pc_machine_set_hpet);
-
-+ object_class_property_add_bool(oc, PC_MACHINE_I8042,
-+ pc_machine_get_i8042, pc_machine_set_i8042);
-+
- object_class_property_add_bool(oc, "default-bus-bypass-iommu",
- pc_machine_get_default_bus_bypass_iommu,
- pc_machine_set_default_bus_bypass_iommu);
-diff --git a/include/hw/i386/pc.h b/include/hw/i386/pc.h
-index 9ab39e428f..642c915aa3 100644
---- a/include/hw/i386/pc.h
-+++ b/include/hw/i386/pc.h
-@@ -46,6 +46,7 @@ typedef struct PCMachineState {
- bool sata_enabled;
- bool pit_enabled;
- bool hpet_enabled;
-+ bool i8042_enabled;
- bool default_bus_bypass_iommu;
- uint64_t max_fw_size;
-
-@@ -62,6 +63,7 @@ typedef struct PCMachineState {
- #define PC_MACHINE_SMBUS "smbus"
- #define PC_MACHINE_SATA "sata"
- #define PC_MACHINE_PIT "pit"
-+#define PC_MACHINE_I8042 "i8042"
- #define PC_MACHINE_MAX_FW_SIZE "max-fw-size"
- /**
- * PCMachineClass:
---
-2.25.1
-
diff --git a/poky/meta/recipes-devtools/qemu/qemu_6.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb
index 9f7fad9886..9f7fad9886 100644
--- a/poky/meta/recipes-devtools/qemu/qemu_6.2.0.bb
+++ b/poky/meta/recipes-devtools/qemu/qemu_7.0.0.bb
diff --git a/poky/meta/recipes-devtools/repo/repo_2.23.bb b/poky/meta/recipes-devtools/repo/repo_2.25.bb
index 0b4e9743a6..b7332515c8 100644
--- a/poky/meta/recipes-devtools/repo/repo_2.23.bb
+++ b/poky/meta/recipes-devtools/repo/repo_2.25.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://gerrit.googlesource.com/git-repo.git;protocol=https;branch=main \
file://0001-python3-shebang.patch \
"
-SRCREV = "d56e2eb4216827284220fcc35af42e60b4faaea6"
+SRCREV = "501733c2abb1180679f25b2f78970d73a2f8d413"
MIRRORS += "git://gerrit.googlesource.com/git-repo.git git://github.com/GerritCodeReview/git-repo.git"
diff --git a/poky/meta/recipes-devtools/rsync/files/0001-rsync-ssl-Verify-the-hostname-in-the-certificate-whe.patch b/poky/meta/recipes-devtools/rsync/files/0001-rsync-ssl-Verify-the-hostname-in-the-certificate-whe.patch
deleted file mode 100644
index 2d51ddf965..0000000000
--- a/poky/meta/recipes-devtools/rsync/files/0001-rsync-ssl-Verify-the-hostname-in-the-certificate-whe.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From fbe85634d88e82fbb439ae2a5d1aca8b8c309bea Mon Sep 17 00:00:00 2001
-From: Matt McCutchen <matt@mattmccutchen.net>
-Date: Wed, 26 Aug 2020 12:16:08 -0400
-Subject: [PATCH] rsync-ssl: Verify the hostname in the certificate when using
- openssl.
-
-CVE: CVE-2020-14387
-
-Upstream-Status: Backport [https://git.samba.org/?p=rsync.git;a=commit;h=c3f7414]
-
-Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
----
- rsync-ssl | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/rsync-ssl b/rsync-ssl
-index 8101975..46701af 100755
---- a/rsync-ssl
-+++ b/rsync-ssl
-@@ -129,7 +129,7 @@ function rsync_ssl_helper {
- fi
-
- if [[ $RSYNC_SSL_TYPE == openssl ]]; then
-- exec $RSYNC_SSL_OPENSSL s_client $caopt $certopt -quiet -verify_quiet -servername $hostname -connect $hostname:$port
-+ exec $RSYNC_SSL_OPENSSL s_client $caopt $certopt -quiet -verify_quiet -servername $hostname -verify_hostname $hostname -connect $hostname:$port
- elif [[ $RSYNC_SSL_TYPE == gnutls ]]; then
- exec $RSYNC_SSL_GNUTLS --logfile=/dev/null $gnutls_cert_opt $gnutls_opts $hostname:$port
- else
---
-2.17.1
-
diff --git a/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch b/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
index 4ba7665280..92ed1f4419 100644
--- a/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
+++ b/poky/meta/recipes-devtools/rsync/files/makefile-no-rebuild.patch
@@ -1,4 +1,4 @@
-From 1f29584e57f5fda09970c66f3b94f4720e09c1bb Mon Sep 17 00:00:00 2001
+From 81700d1a0e51391028c761cc8ef1cd660084d114 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 12 Apr 2016 15:51:54 +0100
Subject: [PATCH] rsync: remove upstream's rebuild logic
@@ -14,12 +14,12 @@ Signed-off-by: Ross Burton <ross.burton@intel.com>
1 file changed, 54 deletions(-)
diff --git a/Makefile.in b/Makefile.in
-index 672fcc4..c12d8d4 100644
+index 3cde955..d963a70 100644
--- a/Makefile.in
+++ b/Makefile.in
-@@ -168,60 +168,6 @@ gen: conf proto.h man
- gensend: gen
- rsync -aic $(GENFILES) $${SAMBA_HOST-samba.org}:/home/ftp/pub/rsync/generated-files/
+@@ -190,60 +190,6 @@ gensend: gen
+ fi
+ rsync -aic $(GENFILES) git-version.h $${SAMBA_HOST-samba.org}:/home/ftp/pub/rsync/generated-files/ || true
-aclocal.m4: $(srcdir)/m4/*.m4
- aclocal -I $(srcdir)/m4
@@ -41,7 +41,7 @@ index 672fcc4..c12d8d4 100644
- else \
- echo "config.h.in has CHANGED."; \
- fi
-- @if test -f configure.sh.old -o -f config.h.in.old; then \
+- @if test -f configure.sh.old || test -f config.h.in.old; then \
- if test "$(MAKECMDGOALS)" = reconfigure; then \
- echo 'Continuing with "make reconfigure".'; \
- else \
diff --git a/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb b/poky/meta/recipes-devtools/rsync/rsync_3.2.4.bb
index 6168ee85fc..e6f917b5cd 100644
--- a/poky/meta/recipes-devtools/rsync/rsync_3.2.3.bb
+++ b/poky/meta/recipes-devtools/rsync/rsync_3.2.4.bb
@@ -6,7 +6,7 @@ SECTION = "console/network"
# GPL-2.0-or-later (<< 3.0.0), GPL-3.0-or-later (>= 3.0.0)
# Includes opennsh and xxhash dynamic link exception
LICENSE = "GPL-3.0-or-later"
-LIC_FILES_CHKSUM = "file://COPYING;md5=9e5a4f9b3a253d51520617aa54f8eb26"
+LIC_FILES_CHKSUM = "file://COPYING;md5=24423708fe159c9d12be1ea29fcb18c7"
DEPENDS = "popt"
@@ -14,10 +14,9 @@ SRC_URI = "https://download.samba.org/pub/${BPN}/src/${BP}.tar.gz \
file://rsyncd.conf \
file://makefile-no-rebuild.patch \
file://determism.patch \
- file://0001-rsync-ssl-Verify-the-hostname-in-the-certificate-whe.patch \
"
-SRC_URI[sha256sum] = "becc3c504ceea499f4167a260040ccf4d9f2ef9499ad5683c179a697146ce50e"
+SRC_URI[sha256sum] = "6f761838d08052b0b6579cf7f6737d93e47f01f4da04c5d24d3447b7f2a5fad1"
# -16548 required for v3.1.3pre1. Already in v3.1.3.
CVE_CHECK_IGNORE += " CVE-2017-16548 "
@@ -41,7 +40,17 @@ PACKAGECONFIG[zstd] = "--enable-zstd,--disable-zstd,zstd"
CACHED_CONFIGUREVARS += "rsync_cv_can_hardlink_special=yes rsync_cv_can_hardlink_symlink=yes"
EXTRA_OEMAKE = 'STRIP=""'
-EXTRA_OECONF = "--disable-simd --disable-md2man --disable-asm --with-nobody-group=nogroup"
+EXTRA_OECONF = "--disable-md2man --with-nobody-group=nogroup"
+
+#| ./simd-checksum-x86_64.cpp: In function 'uint32_t get_checksum1_cpp(char*, int32_t)':
+#| ./simd-checksum-x86_64.cpp:89:52: error: multiversioning needs 'ifunc' which is not supported on this target
+#| 89 | __attribute__ ((target("default"))) MVSTATIC int32 get_checksum1_avx2_64(schar* buf, int32 len, int32 i, uint32* ps1, uint32* ps2) { return i; }
+#| | ^~~~~~~~~~~~~~~~~~~~~
+#| ./simd-checksum-x86_64.cpp:480:1: error: use of multiversioned function without a default
+#| 480 | }
+#| | ^
+#| If you can't fix the issue, re-run ./configure with --disable-roll-simd.
+EXTRA_OECONF:append:libc-musl = " --disable-roll-simd"
# rsync 3.0 uses configure.sh instead of configure, and
# makefile checks the existence of configure.sh
diff --git a/poky/meta/recipes-devtools/rust/libstd-rs/0001-Add-400-series-syscalls-to-musl-riscv64-definitions.patch b/poky/meta/recipes-devtools/rust/libstd-rs/0001-Add-400-series-syscalls-to-musl-riscv64-definitions.patch
index 12f529b07b..2f2ca27910 100644
--- a/poky/meta/recipes-devtools/rust/libstd-rs/0001-Add-400-series-syscalls-to-musl-riscv64-definitions.patch
+++ b/poky/meta/recipes-devtools/rust/libstd-rs/0001-Add-400-series-syscalls-to-musl-riscv64-definitions.patch
@@ -9,10 +9,10 @@ Signed-off-by: Khem Raj <raj.khem@gmail.com>
.../linux_like/linux/musl/b64/riscv64/mod.rs | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
-diff --git a/vendor/libc-0.2.112/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/vendor/libc-0.2.112/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
+diff --git a/vendor/libc-0.2.116/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/vendor/libc-0.2.116/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
index 6b17621c7..2036583d5 100644
---- a/vendor/libc-0.2.112/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
-+++ b/vendor/libc-0.2.112/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
+--- a/vendor/libc-0.2.116/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
++++ b/vendor/libc-0.2.116/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
@@ -465,6 +465,25 @@ pub const SYS_pkey_mprotect: ::c_long = 288;
pub const SYS_pkey_alloc: ::c_long = 289;
pub const SYS_pkey_free: ::c_long = 290;
diff --git a/poky/meta/recipes-devtools/rust/libstd-rs/0001-Update-checksums-for-modified-vendored-libc.patch b/poky/meta/recipes-devtools/rust/libstd-rs/0001-Update-checksums-for-modified-vendored-libc.patch
index 1569a36581..923a8fbf84 100644
--- a/poky/meta/recipes-devtools/rust/libstd-rs/0001-Update-checksums-for-modified-vendored-libc.patch
+++ b/poky/meta/recipes-devtools/rust/libstd-rs/0001-Update-checksums-for-modified-vendored-libc.patch
@@ -7,15 +7,12 @@ Upstream-Status: Inappropriate [Relevant until backported patch is needed]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
- vendor/libc-0.2.108/.cargo-checksum.json | 2 +-
+ vendor/libc-0.2.116/.cargo-checksum.json | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/vendor/libc-0.2.108/.cargo-checksum.json b/vendor/libc-0.2.108/.cargo-checksum.json
-index 6b976e48a..a6906588e 100644
---- a/vendor/libc-0.2.112/.cargo-checksum.json
-+++ b/vendor/libc-0.2.112/.cargo-checksum.json
-@@ -1 +1,2 @@
--{"files":{"CONTRIBUTING.md":"752eea5a703d11b485c6b5f195f51bd2c79aa5159b619ce09555c779e1fb586b","Cargo.toml":"b670b7ca8ac1e9704e03b839ded5f4a70be9eb7ff46613e0d87cdae07275f85c","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"8228847944f1332882fbb00275b6f30e4a8aad08a13569c25d52cac012cc2a47","build.rs":"0a4edcc040533d370a2a736f2e218516182471e8b0d9ed5dc2a6c08d5d852a83","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"34c60f12ec5eeb90f13ec3b954427532111c2446e69617616a97aefc1086a9f1","src/fuchsia/aarch64.rs":"378776a9e40766154a54c94c2a7b4675b5c302a38e6e42da99e67bfbaee60e56","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"520300ff260d377930f2f456135ec9a3ac7740a949ce7bf5269c0dc60d56c0df","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"d3bfce41e4463d4be8020a2d063c9bfa8b665f45f1cc6cbf3163f5d01e7cb21f","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"adc4f6af60e57eadc01042ec4312bd592fa3002850b8c70740bfd95ddd2d77fb","src/macros.rs":"148cf62f43a1732a8f37c5e7c9673e51b69cee124c27ee9883c94d2da8edff20","src/psp.rs":"dd31aabd46171d474ec5828372e28588935120e7355c90c105360d8fa9264c1c","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"8cdae0cc37c43dabd4253a534e700bec6b6a57293c0c8e36c9ce16675d16799a","src/solid/arm.rs":"852b58a0837fde089cb9b5af131bf653daeb8c726f7540032756db8b7d4f8149","src/solid/mod.rs":"98dc29c3e5773318ba258a4a2b7407f25aa52d40885a0024fbe43676fe54d14b","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"2546ad3eb6aecb95f916648bc63264117c92b4b4859532b34cb011e4c75a5a72","src/unix/bsd/apple/b64/aarch64/align.rs":"f0c321265dd7671f16106b84951ac7dd77ed2e65c6623cbf2d29e76531984770","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"f5e278a1af7fb358891d1c9be4eb7e815aaca0c5cb738d0c3604ba2208a856f7","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/mod.rs":"490002f64087a48628aa8c5cf74460df0d45ea743c00fee920f2db4adc78688f","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"76c6ef6b031531a8a9690eb9da59bed9400917166a57efc0dce30a91a8c4f20b","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"2a215bd6136b8617aacedf9be738ccee94da9d29b418e9a78101d6291c182352","src/unix/bsd/freebsdlike/freebsd/arm.rs":"59d6a670eea562fb87686e243e0a84603d29a2028a3d4b3f99ccc01bd04d2f47","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"a6eee615e6ca5a6e04b526bb6b22d13b9356e87e51825cda33476c37a46cb0ef","src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"266fe364867d858610b51a950e936fb10c7990f5e627cd59f7947f4b232ab259","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"12bf5c9aef74d43005aca762a48c2c6d64c21d138bd789b20f7143fc20a6db95","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"fdbc49a641a247aabb6e725647826bc5341447d9bff1319bfe092ba5fcda7b26","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/mod.rs":"b0ca3ff81feac745632b28e796aae00a74c6844d0375d08e228bd163d6ff83a1","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"9ca3f82f88974e6db5569f2d76a5a3749b248a31747a6c0da5820492bdfeca42","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"2dae3ecc87eac3b11657aa98915def55fc4b5c0de11fe26aae23329a54628a9a","src/unix/bsd/freebsdlike/freebsd/riscv64.rs":"8f591bd273464d684c4f64365f8ed56a8138175daa70d96008541393057a0dae","src/unix/bsd/freebsdlike/freebsd/x86.rs":"c5005e3249eb7c93cfbac72a9e9272320d80ce7983da990ceb05a447f59a02c5","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"c3a0111252e201c172b99e7d9cbee4cf088d3dd47995110e819f04276bccd198","src/unix/bsd/freebsdlike/mod.rs":"8b9d9a5e386ff865c1bdaaa56fcd14de46ad8ea9e4d2098e0f9134206b21f840","src/unix/bsd/mod.rs":"2fed08973739d7f6a7412b204724af64b1a915c712689c250cf9a08263ba05ff","src/unix/bsd/netbsdlike/mod.rs":"07b97b75fa72215b54c9869f50eee3167ea835fd674cf3fa036bdbd6904c563b","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"65dcb58d11e8d8028401a9d07ca3eb4cb4f053e04249cc877353449d84ccc4cb","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"d1f07341db020df73a72bd8133e739230ca3d088de5f59b55e5b92b864f189ae","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"1afe5ef46b14397cdd68664b5b232e4f5b035b6db1d4cf411c899d51ebca9f30","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/arm.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/mips64.rs":"8532a189ae10c7d668d9d4065da8b05d124e09bd39442c9f74a7f231c43eca48","src/unix/bsd/netbsdlike/openbsd/mod.rs":"a68db9ef7dd9661155dfa037e5d0d307ef55aaf59358991b5692d222bf3bfc80","src/unix/bsd/netbsdlike/openbsd/powerpc.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/powerpc64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/riscv64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"41c1cc641a21a2433fe38e9b4038c4ac94ef10a00c38351c79c4e7f3affadc6e","src/unix/haiku/native.rs":"44855f52906f607de137fc4baa8c6b1b9a26baaa666f25d5f7a7ec5e017c8be6","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"859814f5df89e28fd4b345db399d181e11e7ed413841b6ff703a1fcbdbf013ae","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/linux_like/android/b32/arm.rs":"433c1530f602cc5ed26610c58055dde0c4ceea5e00150063b24ddc60768332a4","src/unix/linux_like/android/b32/mod.rs":"d971b98530a96f5892f98e1edc3133cf278d1b3939d77ab0a27a6323e0961715","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"8388bd3a0fcb5636bf965eee6dc95ae6860b85a2b555b387c868aa4d4e01ec89","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/mod.rs":"8fe667d2b14abc5ac8aad32e16c3da24350471d8156eaea9ab4989f73dd9f9fc","src/unix/linux_like/android/b64/mod.rs":"d7bbbadafdb2cb2ff8e9cde3d89a03b9facaabb6b2d45705225d3ece1c5cce37","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"06b22dc184e85a988ab969c75cadc52b9878faeab0eb9d21215878c95fe07c19","src/unix/linux_like/android/mod.rs":"74eca5386105cd693bb1f34cd3a89a13029ce14815cba138d7163410d683e33e","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/mod.rs":"b71d37106750f57bc2dae4e9bcb473ff098ef48235827e41a1687a39825f0aa4","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"213e70ebed2703e14a9cf17666b21ecbf180b7bff7fa22fdbb36dbbd52df326d","src/unix/linux_like/linux/arch/generic/mod.rs":"f5e75ccd83c506e16d0f9c677e91f3d1d3cdb0bfd54149ac0c8eed91775bb70b","src/unix/linux_like/linux/arch/mips/mod.rs":"ebb82dd4bbcc4212a9d7f48be9fb066c56c801328023edd7d4041c978fcd98db","src/unix/linux_like/linux/arch/mod.rs":"466a29622e47c6c7f1500682b2eb17f5566dd81b322cd6348f0fdd355cec593a","src/unix/linux_like/linux/arch/powerpc/mod.rs":"99b6fa85b47f503ab6783515968a13204ea934d299014fbaa17a13fc905aa5c0","src/unix/linux_like/linux/arch/sparc/mod.rs":"8390eb8e9627c659d2d742d44754c74e74fdd9d8fab869451d33db6c2201347d","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"bc2272a2e7cbc160baa454c8203932d6c5f59a32c2bf3a0e0cf37057f25484cb","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"46a72f8be5fc8260a002996ad30b55a0f1df33ca20bff808427c449425cbc4a5","src/unix/linux_like/linux/gnu/b32/mod.rs":"794dbcbae7dae8fd6b0b814573243197ceb532b56ef0772ad86b4b401478fcd9","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"c21dd4f8bedf341c8ea799f923a8dd55b9b907acfc1da717755c37f5e71cd4bb","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"9ace9d12271e83967f76fdc6b6670027528f2382e17912a7299c357e196262bc","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"8afb0bcd6d947fb50dcd81e1c0f89242ce2365233d5165627c9dcb996ce66a0a","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"0fbf5120805535aca7dd4e06c11439341d8f528ae95b9b93140b984e0b246251","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"21a21503ef2e095f4371044915d4bfb07a8578011cb5c713cd9f45947b0b5730","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"e78c3cd197f44832338b414d1a9bc0d194f44c74db77bd7bf830c1fff62b2690","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"3587b384a42ac52df67471ba9a56f4624872a7ff3338ec152118acf501647677","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"8871eeff3a338b8f06a775e1735b637174bc2c0923d581ad88867428693a4cfa","src/unix/linux_like/linux/gnu/b64/mod.rs":"6336065423c26b59681fd2ce77f1117ea36af13e163fdadaefd108bd8191e8c8","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"7533175c322e22cafb932364c9b310658d08d1ac6e2cea03e42f551eff955999","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"aa9368dc335306d43dc05628c4419ed1e15244060f182cfa24d3c34e7d25cd90","src/unix/linux_like/linux/gnu/b64/s390x.rs":"0c1725854b8146a191df36e83931bf591a31334f2d72dc6867d143d44b8a53b6","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"37d7cf814319678512547b0f122cf84c9fc4cdad83e9ebbf0dee2c2baa10d9a1","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"580ef4c16a36a15e51407faa8e3875430394887d006d16cc93a4b3e67e268ad1","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"f775ac2b754f90b63053fe22afe1d19d306b5404995568d6805baa9249fb617f","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"4ba1b58468f55254717366f50fdfd3e4114fde6dc442a56681926c4d7e5b6b0d","src/unix/linux_like/linux/gnu/mod.rs":"b8243a2ba9b942560ccf7ce86d0f374df8d2bd30bd1c190376e8aebf7b1cc903","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"a9e58a9c519e87ba13371b2c8cbec6e3eb0b09a28322ea7b2ecf22b1c80a9ac3","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"da189402060f8a777126b818a6011041e09f3b4b40952ac82cbc6268a7f30193","src/unix/linux_like/linux/musl/b32/hexagon.rs":"bfeb3121229d8f1bc6ba519bf35f7f64a8c45a1f285b25ad18cfaab7845164d8","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"e23a8784925f1f7d9d504bb2db3efc483fba7cd854cd743747d9ad3bbb9ac287","src/unix/linux_like/linux/musl/b32/mod.rs":"8ede3985e6243882814ce91e8ce543e7edbafc0cee5932816072b6f14207a671","src/unix/linux_like/linux/musl/b32/powerpc.rs":"14d18bf690bc41b73823152376b4e73a11e57638e0b359e6cb84f3fdd39c5605","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"3223e0d87b94c865f97a47a3e47dadd3a2beebbf06b11825475bc26cee8fefd4","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"798a9229d70ce235394f2dd625f6c4c1e10519a94382dc5b091952b638ae2928","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"6b9c1a3474b8fa23ca14eec9b5abb0cbc85b62076055ad0173c46005d77f9a0b","src/unix/linux_like/linux/musl/b64/mips64.rs":"5ff053e8f489f9672244b3b67117a7c64d01df0c68964fcb87104b294c68c790","src/unix/linux_like/linux/musl/b64/mod.rs":"d847206d9f2d594c8febe780a938cdccf40d985dafc11e90f235947735a09bac","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"5386ab54bacc199c5d4e1bc07592b151bb61fb86eb4eee2d15d7a351672bed13","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"c9c9f68ca13a2fd0e1a7176d1e6bb4eb99a848332685a297fab0c071c847863b","src/unix/linux_like/linux/musl/b64/s390x.rs":"20149a2b8c3739be7be7903ce361cf2f8d3f7bb464f782990fcccb38665f347d","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"3789856e0f550fbd847db0dcc9402f870567efaddd6c1c1355d2f4382dc5e228","src/unix/linux_like/linux/musl/mod.rs":"c8526a1d99d6983c6443543cb48dda07d8a7eeed39a163d56daa03c92ded87d0","src/unix/linux_like/linux/no_align.rs":"5ed04c53bf9d27da9b4d65ba7625c6ac53330162683d1b3df98950caafa3507b","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"1e3bf809508b5872949136859bf48ddf58b7d24ae9f0b663e79f0efd1aaeb6a6","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"fa4102d9a596d90de604ce2962b0e64f184dfbf10552a4c3ecf28f12d4704379","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"e3085ba56cfbc528d7c3c55065880603238c333b6047ef51c58177508a487fcd","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"a2877679fef0f14f54a89ccbc41fb02f0c25bf6e536f9eb2cb2fa437e1d3f739","src/unix/linux_like/linux/uclibc/mod.rs":"abb9a1a905a7d992ed290557e3619627d9f3a1ccf3a6d4ba9506b936fc56fa04","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"024eba5753e852dbdd212427351affe7e83f9916c1864bce414d7aa2618f192e","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"66e8f5b7509a6e638b8b904906f89badbab0da8fb5b602d07ebd88649c4b961a","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"ffce98bdd208fd9d335c65feafbf0d9742bea67c7eec1ee48657f292132ec3f0","src/unix/mod.rs":"22300f25d8f3adcdcd419222a2d5657e44c835eb4a0f90e05b691c7bcc3a787e","src/unix/newlib/aarch64/mod.rs":"bb269c1468a9676442554600e87417079a787fe6220dfc23b3109639259e8710","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"c71be856bfd7f576b2db28af9f680211cbe6c1cac7d537bbc8020b39591af07c","src/unix/newlib/espidf/mod.rs":"c198cb4beccdab483be61c102da74dc51ac80f766797e33021f3110394ed5a3d","src/unix/newlib/mod.rs":"d7271c13748be08305d36f9af6f41f6950a7a1d6d4382149194a35d5fe2090de","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"2d0f7af28b47f7a2a6c210ebd1c1f33ed8eac62e56b5af2b856de2ad3fdc5187","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/redox/mod.rs":"cc4794afa4fbed9d6612894ea476228f9d8533950162d6416fc4d16073e1dac4","src/unix/solarish/compat.rs":"b07a5bfac925eb012003a459ba6bddbd3bfa9c44b3394da2ac5a602e54beae9c","src/unix/solarish/illumos.rs":"7d8f47fd37880715b449723688aaee568785325a46f1c360a05bdca13252278e","src/unix/solarish/mod.rs":"c7376a8b0cd093bf67157fac19065b114aeae271fbaf0b7a9cc27c369a915196","src/unix/solarish/solaris.rs":"65b005453aefa9b9d4fc860fe77cfec80d8c97a51342b15daf55fc3e808bb384","src/unix/solarish/x86_64.rs":"9d761573bdccbdd1ac61da571f7e96b5374df70241d9b72d45a069611f495085","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"aea3da66f2140f2a82dfc9c58f6e6531d2dd9c15ea696e0f95a0d4a2a187b5b6","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi.rs":"817e7592e47f06ece5266fb35625c1aba0a23128e4015a9de2fbf94aba5f1312","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"e3ad95ba54f76e74c301611fe868d3d94f6b8939b03be672f568b06b10ae71c7","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"1b03d17f364a3a042d5e5d46b053bbbf82c92c9430c592dd4c064dc6ee997125"}
+--- a/vendor/libc-0.2.116/.cargo-checksum.json
++++ b/vendor/libc-0.2.116/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{"CONTRIBUTING.md":"752eea5a703d11b485c6b5f195f51bd2c79aa5159b619ce09555c779e1fb586b","Cargo.toml":"5bb1b7c99c97f4a5c211e2803482b3bac420044ad1c53a24c06630d4c8df3348","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"8228847944f1332882fbb00275b6f30e4a8aad08a13569c25d52cac012cc2a47","build.rs":"0a4edcc040533d370a2a736f2e218516182471e8b0d9ed5dc2a6c08d5d852a83","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"34c60f12ec5eeb90f13ec3b954427532111c2446e69617616a97aefc1086a9f1","src/fuchsia/aarch64.rs":"378776a9e40766154a54c94c2a7b4675b5c302a38e6e42da99e67bfbaee60e56","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"bc8c46531bd1a2429f36aaf2bc137b50e42505b798de83f34eecfa94ad89179b","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"d3bfce41e4463d4be8020a2d063c9bfa8b665f45f1cc6cbf3163f5d01e7cb21f","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"adc4f6af60e57eadc01042ec4312bd592fa3002850b8c70740bfd95ddd2d77fb","src/macros.rs":"148cf62f43a1732a8f37c5e7c9673e51b69cee124c27ee9883c94d2da8edff20","src/psp.rs":"dd31aabd46171d474ec5828372e28588935120e7355c90c105360d8fa9264c1c","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"a726e47f324adf73a4a0b67a2c183408d0cad105ae66acf36db37a42ab7f8707","src/solid/arm.rs":"e39a4f74ebbef3b97b8c95758ad741123d84ed3eb48d9cf4f1f4872097fc27fe","src/solid/mod.rs":"98dc29c3e5773318ba258a4a2b7407f25aa52d40885a0024fbe43676fe54d14b","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"2546ad3eb6aecb95f916648bc63264117c92b4b4859532b34cb011e4c75a5a72","src/unix/bsd/apple/b64/aarch64/align.rs":"f0c321265dd7671f16106b84951ac7dd77ed2e65c6623cbf2d29e76531984770","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"f5e278a1af7fb358891d1c9be4eb7e815aaca0c5cb738d0c3604ba2208a856f7","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/mod.rs":"394a28c9924c4d973d980dc529627cdccf6ca710f7aec46500a868fa76f493df","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"829c863803f2029396177026b6f6bd7f91e857032c5a133aa48247a6c3c01431","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"2a215bd6136b8617aacedf9be738ccee94da9d29b418e9a78101d6291c182352","src/unix/bsd/freebsdlike/freebsd/arm.rs":"59d6a670eea562fb87686e243e0a84603d29a2028a3d4b3f99ccc01bd04d2f47","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"a6eee615e6ca5a6e04b526bb6b22d13b9356e87e51825cda33476c37a46cb0ef","src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"266fe364867d858610b51a950e936fb10c7990f5e627cd59f7947f4b232ab259","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"12bf5c9aef74d43005aca762a48c2c6d64c21d138bd789b20f7143fc20a6db95","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"fdbc49a641a247aabb6e725647826bc5341447d9bff1319bfe092ba5fcda7b26","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/mod.rs":"9e6d77f35ff7d9f3cdd8596ca88f2eb39fd74cd8a135f99cc487fdb164422f83","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"9ca3f82f88974e6db5569f2d76a5a3749b248a31747a6c0da5820492bdfeca42","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"2dae3ecc87eac3b11657aa98915def55fc4b5c0de11fe26aae23329a54628a9a","src/unix/bsd/freebsdlike/freebsd/riscv64.rs":"8f591bd273464d684c4f64365f8ed56a8138175daa70d96008541393057a0dae","src/unix/bsd/freebsdlike/freebsd/x86.rs":"c5005e3249eb7c93cfbac72a9e9272320d80ce7983da990ceb05a447f59a02c5","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"51e4dd0c8ae247bb652feda5adad9333ea3bb30c750c3a3935e0b0e47d7803eb","src/unix/bsd/freebsdlike/mod.rs":"365ab1c1ce8b7ca061b1bdb38aac534cb600e978746eb309f6d1792b3f67db39","src/unix/bsd/mod.rs":"2fed08973739d7f6a7412b204724af64b1a915c712689c250cf9a08263ba05ff","src/unix/bsd/netbsdlike/mod.rs":"07b97b75fa72215b54c9869f50eee3167ea835fd674cf3fa036bdbd6904c563b","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"65dcb58d11e8d8028401a9d07ca3eb4cb4f053e04249cc877353449d84ccc4cb","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"5f927d3d26165689b3ae7a7535ea5504068a406ef76705572c610995dbea1f0e","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"1afe5ef46b14397cdd68664b5b232e4f5b035b6db1d4cf411c899d51ebca9f30","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/arm.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/mips64.rs":"8532a189ae10c7d668d9d4065da8b05d124e09bd39442c9f74a7f231c43eca48","src/unix/bsd/netbsdlike/openbsd/mod.rs":"98c95365b892679b4976b928714a0b6fc61f01fe662e7066170448d6c1eaef5e","src/unix/bsd/netbsdlike/openbsd/powerpc.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/powerpc64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/riscv64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"41c1cc641a21a2433fe38e9b4038c4ac94ef10a00c38351c79c4e7f3affadc6e","src/unix/haiku/native.rs":"44855f52906f607de137fc4baa8c6b1b9a26baaa666f25d5f7a7ec5e017c8be6","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"859814f5df89e28fd4b345db399d181e11e7ed413841b6ff703a1fcbdbf013ae","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/linux_like/android/b32/arm.rs":"433c1530f602cc5ed26610c58055dde0c4ceea5e00150063b24ddc60768332a4","src/unix/linux_like/android/b32/mod.rs":"d971b98530a96f5892f98e1edc3133cf278d1b3939d77ab0a27a6323e0961715","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"8388bd3a0fcb5636bf965eee6dc95ae6860b85a2b555b387c868aa4d4e01ec89","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/mod.rs":"78b837d764c5ab6d262f12c3824d8ef05a94c03b9342b88462454ca7a52d203d","src/unix/linux_like/android/b64/mod.rs":"d7bbbadafdb2cb2ff8e9cde3d89a03b9facaabb6b2d45705225d3ece1c5cce37","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"06b22dc184e85a988ab969c75cadc52b9878faeab0eb9d21215878c95fe07c19","src/unix/linux_like/android/mod.rs":"f19d7ce918bd273709578b3cfc3be02192ff1b0d4561de0018796db3fe04b179","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/mod.rs":"b71d37106750f57bc2dae4e9bcb473ff098ef48235827e41a1687a39825f0aa4","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"213e70ebed2703e14a9cf17666b21ecbf180b7bff7fa22fdbb36dbbd52df326d","src/unix/linux_like/linux/arch/generic/mod.rs":"b6efaded9b9631410a265dd52398d9bddb387d35b9f513e9c0432dc5233dda39","src/unix/linux_like/linux/arch/mips/mod.rs":"4588078cd2b1c046379c8a55f728b838ff7f9151fcd8a1a5389683f1bda13550","src/unix/linux_like/linux/arch/mod.rs":"466a29622e47c6c7f1500682b2eb17f5566dd81b322cd6348f0fdd355cec593a","src/unix/linux_like/linux/arch/powerpc/mod.rs":"c447e417cdb966a4da64e2755fd91f64ab14098f529098bf437053d7e08843db","src/unix/linux_like/linux/arch/sparc/mod.rs":"9b89a4e798bb83b3e0f4052fa2d2bb6f5e9508da69a2e5b40b40795e4b4256ae","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"877ff42aa56e599084df9a8374e1f3eaf8ec05a445f2887b10aee5744c093f02","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"9fdf7cf98bc92153854ba04b2892009ec8bd855d12e1f68e91d3df2418ff6364","src/unix/linux_like/linux/gnu/b32/mod.rs":"ad23b70a5f849d5a6dbbf6d608221d2928b1834956d71d072bcc0eb941b0d856","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"240468afe2fe42fd60a5568add147dc0ff097a6469ffadfdd5b9756dfd0323f2","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"dc99518121e911db120b157ad289e5e6964f3a42df53b091eaf071dbf5c04098","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"ae203726810da9312b484b0b7891a35527748c069f11e91d6d9afc73297b1cbb","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"eb8d002ccb3dfcf6c94e8826afe9f8c496a813fa3d770c7dbc1024b45f870c2f","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"21a21503ef2e095f4371044915d4bfb07a8578011cb5c713cd9f45947b0b5730","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"e78c3cd197f44832338b414d1a9bc0d194f44c74db77bd7bf830c1fff62b2690","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"79991b28010bfa01501dc5aa0ba2f7d8394539447398169a052c541cb21e20bd","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"506050a20f8de53907a893d2711f1bed6e6c019580d5dde55f5dbdcfa40802f5","src/unix/linux_like/linux/gnu/b64/mod.rs":"6336065423c26b59681fd2ce77f1117ea36af13e163fdadaefd108bd8191e8c8","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"b53ee7b973b91c2175d16476c87547f8b36c2f0b716f456018fdd2728ab4d59f","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"7cbadd208b719c3cbab0432cb6bb236f1e79a01823790aa6b07366433ca0991b","src/unix/linux_like/linux/gnu/b64/s390x.rs":"59228db655d6a54d20b9431c705ed7966f94b98d61e53b992c8f8ee05e176e77","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"cb9750d9153428712eb32928fb85a1e67f9687f42ef698c3bb79951c219361d0","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"e4cbe0f5a3d100490f4f648bcadcd26899cf2f4760e6ee8ccb56ce16d598cc18","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"f775ac2b754f90b63053fe22afe1d19d306b5404995568d6805baa9249fb617f","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"4ba1b58468f55254717366f50fdfd3e4114fde6dc442a56681926c4d7e5b6b0d","src/unix/linux_like/linux/gnu/mod.rs":"13899330d3118c5e41854f897c2e455f1b7db949384d36cff1d3042fd25a4475","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"3aaa8a783a1ec2134e27a45d7de6296b97f94e543bf5ec2c6c4ea5d24afb167f","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"8625290735a1294a50b34bb2b8d3b515305325187027cc577c72b0762f3a265e","src/unix/linux_like/linux/musl/b32/hexagon.rs":"dbc8aeb2bd3cd2269e0e95858c5ba0e0204b1ca0bcc5df517fb3f7f71134d044","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"65e3917900a9dfa0b4602e87d17305ebfa56a0c0dea61e3975099c9a6b9e967b","src/unix/linux_like/linux/musl/b32/mod.rs":"bac24312f6629ef76aa12dd41123061e3a77a244e7fda7bbfcdf5c57996b61e6","src/unix/linux_like/linux/musl/b32/powerpc.rs":"e898b490365c84c0f1856ea8640463c558b5a247d845ca0c11677679272ea20f","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"9a9f4926d5a1fbe406f5ab84742680fe4941ab929005e7fefc4e2bc6686ba5eb","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"798a9229d70ce235394f2dd625f6c4c1e10519a94382dc5b091952b638ae2928","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"cddcde68c13104f18edd611ce23e60a4f9b4fcae1baa57fb92284495d3a77850","src/unix/linux_like/linux/musl/b64/mips64.rs":"4a5d543195da94aaa45be067d6d145c8092bebf3611898aa2beccc0cd55d5f3f","src/unix/linux_like/linux/musl/b64/mod.rs":"d847206d9f2d594c8febe780a938cdccf40d985dafc11e90f235947735a09bac","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"37b08e5f5f84bc72b62c439ac9282db71ff59b80cd2775c5588941b7a135e6bc","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"88d58ec165c404ab8e44ae43ee51ae6982924dae07309dbc504404f142515b7a","src/unix/linux_like/linux/musl/b64/s390x.rs":"9b05b1fae6bcb7cb6d909b9973977fde01684175f3e26c27dcb44223cc3933d9","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"d3762f374cd3aaa1e0e3f79d36f9edc7fd4c8492e561ee4bd0e80e727eef4e9e","src/unix/linux_like/linux/musl/mod.rs":"c9a24828d62f20e0cc0b835197f48bc31aa51db7ca4880341292271cc2df7aae","src/unix/linux_like/linux/no_align.rs":"5ed04c53bf9d27da9b4d65ba7625c6ac53330162683d1b3df98950caafa3507b","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"6d83b37ebe54384269b5c5cc3c9c370f97bdc8c646c9aee8705f0de1aca80067","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"edb86245bcc0e340de277e20752463cb4004104fe97737a71afdcc8b06bee703","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"57d5e24ceb98e1ef90de231c4cf7f0275ac410d407607b240af6744504ec1f2a","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"4eea5256e47e485dd1e50c147a56697d286e0395a77674317e83a28fb43a12d8","src/unix/linux_like/linux/uclibc/mod.rs":"d2f5d6a3381bceec0b036bb3979c113c9c4144b134368e39b3f9f2fbef79f5cc","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"024eba5753e852dbdd212427351affe7e83f9916c1864bce414d7aa2618f192e","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"583349563b537104e2265be893f65e302e568a54f4022b8f14a2cf3200ac39ba","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"dd4f7a1d66d8501b4a2c4e75e6e9305ed69f1002ae99e410596a6c636878595a","src/unix/mod.rs":"22300f25d8f3adcdcd419222a2d5657e44c835eb4a0f90e05b691c7bcc3a787e","src/unix/newlib/aarch64/mod.rs":"bb269c1468a9676442554600e87417079a787fe6220dfc23b3109639259e8710","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"c71be856bfd7f576b2db28af9f680211cbe6c1cac7d537bbc8020b39591af07c","src/unix/newlib/espidf/mod.rs":"c198cb4beccdab483be61c102da74dc51ac80f766797e33021f3110394ed5a3d","src/unix/newlib/horizon/mod.rs":"95cb1e5f469a3d90ce27f03d8f70121c82edd26ab762db4aa373857b87e12d98","src/unix/newlib/mod.rs":"c33c46ad76627c24927b63953d9271e01bbc7f4967381675baf61442470a41cb","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"2d0f7af28b47f7a2a6c210ebd1c1f33ed8eac62e56b5af2b856de2ad3fdc5187","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/redox/mod.rs":"cc4794afa4fbed9d6612894ea476228f9d8533950162d6416fc4d16073e1dac4","src/unix/solarish/compat.rs":"b07a5bfac925eb012003a459ba6bddbd3bfa9c44b3394da2ac5a602e54beae9c","src/unix/solarish/illumos.rs":"a092f6676a0d208e803819bf32f928714e93606fb9062cf55b5fb7a121d47481","src/unix/solarish/mod.rs":"01dc4208b5b0d901550dc9a6f060e7d446a303919287b328fda556d9dc569b34","src/unix/solarish/solaris.rs":"65b005453aefa9b9d4fc860fe77cfec80d8c97a51342b15daf55fc3e808bb384","src/unix/solarish/x86_64.rs":"9d761573bdccbdd1ac61da571f7e96b5374df70241d9b72d45a069611f495085","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"aea3da66f2140f2a82dfc9c58f6e6531d2dd9c15ea696e0f95a0d4a2a187b5b6","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi.rs":"817e7592e47f06ece5266fb35625c1aba0a23128e4015a9de2fbf94aba5f1312","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"e3ad95ba54f76e74c301611fe868d3d94f6b8939b03be672f568b06b10ae71c7","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"565dbd88872dbe4cc8a46e527f26483c1d1f7afa6b884a3bd6cd893d4f98da74"}
\ No newline at end of file
-+{"files":{"CONTRIBUTING.md":"752eea5a703d11b485c6b5f195f51bd2c79aa5159b619ce09555c779e1fb586b","Cargo.toml":"b9b717fb9711be557a118b14d96536014cfa6a8e877ca7efc50d8c2a0bab3e50","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"8228847944f1332882fbb00275b6f30e4a8aad08a13569c25d52cac012cc2a47","build.rs":"0a4edcc040533d370a2a736f2e218516182471e8b0d9ed5dc2a6c08d5d852a83","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"34c60f12ec5eeb90f13ec3b954427532111c2446e69617616a97aefc1086a9f1","src/fuchsia/aarch64.rs":"378776a9e40766154a54c94c2a7b4675b5c302a38e6e42da99e67bfbaee60e56","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"520300ff260d377930f2f456135ec9a3ac7740a949ce7bf5269c0dc60d56c0df","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"d3bfce41e4463d4be8020a2d063c9bfa8b665f45f1cc6cbf3163f5d01e7cb21f","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"adc4f6af60e57eadc01042ec4312bd592fa3002850b8c70740bfd95ddd2d77fb","src/macros.rs":"148cf62f43a1732a8f37c5e7c9673e51b69cee124c27ee9883c94d2da8edff20","src/psp.rs":"dd31aabd46171d474ec5828372e28588935120e7355c90c105360d8fa9264c1c","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"8cdae0cc37c43dabd4253a534e700bec6b6a57293c0c8e36c9ce16675d16799a","src/solid/arm.rs":"852b58a0837fde089cb9b5af131bf653daeb8c726f7540032756db8b7d4f8149","src/solid/mod.rs":"98dc29c3e5773318ba258a4a2b7407f25aa52d40885a0024fbe43676fe54d14b","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"2546ad3eb6aecb95f916648bc63264117c92b4b4859532b34cb011e4c75a5a72","src/unix/bsd/apple/b64/aarch64/align.rs":"f0c321265dd7671f16106b84951ac7dd77ed2e65c6623cbf2d29e76531984770","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"f5e278a1af7fb358891d1c9be4eb7e815aaca0c5cb738d0c3604ba2208a856f7","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/mod.rs":"490002f64087a48628aa8c5cf74460df0d45ea743c00fee920f2db4adc78688f","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"6c70759e7fc945e8eedf2657ff58b1f1ce76bf1357b3d4b94b60852b8dc43bd9","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"2a215bd6136b8617aacedf9be738ccee94da9d29b418e9a78101d6291c182352","src/unix/bsd/freebsdlike/freebsd/arm.rs":"59d6a670eea562fb87686e243e0a84603d29a2028a3d4b3f99ccc01bd04d2f47","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"8c45b3c623512b996f116e96a5041fa8d6018f737bd5eea6c93e986ed4c46ecf","src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"684f692968eb1f285d69daec15837257088408bdb016f6130b6c0bbfcd867c72","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"e7102c14ffa535958751785b26d5320f5ceb7e568ecedad8a6aefa2f7d95463a","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"f33c5b22f11d15effdcb8a9723c8f56164b630a1d4a4bc387ac6e413e623a4e4","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/mod.rs":"c075711f7b9f06fe48ac222c8472c2cb2f5818b64cf523dc675efa2861823510","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"9ca3f82f88974e6db5569f2d76a5a3749b248a31747a6c0da5820492bdfeca42","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"2dae3ecc87eac3b11657aa98915def55fc4b5c0de11fe26aae23329a54628a9a","src/unix/bsd/freebsdlike/freebsd/x86.rs":"c5005e3249eb7c93cfbac72a9e9272320d80ce7983da990ceb05a447f59a02c5","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"c3a0111252e201c172b99e7d9cbee4cf088d3dd47995110e819f04276bccd198","src/unix/bsd/freebsdlike/mod.rs":"d0569c1a6261fb39ad80bae3b55ffc2900a6d80ee52d28276ba58048ccb8d3d8","src/unix/bsd/mod.rs":"2fed08973739d7f6a7412b204724af64b1a915c712689c250cf9a08263ba05ff","src/unix/bsd/netbsdlike/mod.rs":"07b97b75fa72215b54c9869f50eee3167ea835fd674cf3fa036bdbd6904c563b","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"65dcb58d11e8d8028401a9d07ca3eb4cb4f053e04249cc877353449d84ccc4cb","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"ddbdc8526a0267ffeb0ab9bb5f01ebb38a14cf759c025b5c0b0ff1178fec889b","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"1afe5ef46b14397cdd68664b5b232e4f5b035b6db1d4cf411c899d51ebca9f30","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/mod.rs":"52f1487bea76ecc82c6f781081b4bedd7a8a986e18872d2ebcd09c7b6db4a890","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"aadfb394c0025b5fa7247ca9d5933edd121efa9b27f5c6a32c91c38cc60fa255","src/unix/haiku/native.rs":"44855f52906f607de137fc4baa8c6b1b9a26baaa666f25d5f7a7ec5e017c8be6","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"859814f5df89e28fd4b345db399d181e11e7ed413841b6ff703a1fcbdbf013ae","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/linux_like/android/b32/arm.rs":"433c1530f602cc5ed26610c58055dde0c4ceea5e00150063b24ddc60768332a4","src/unix/linux_like/android/b32/mod.rs":"d971b98530a96f5892f98e1edc3133cf278d1b3939d77ab0a27a6323e0961715","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"8388bd3a0fcb5636bf965eee6dc95ae6860b85a2b555b387c868aa4d4e01ec89","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/mod.rs":"8fe667d2b14abc5ac8aad32e16c3da24350471d8156eaea9ab4989f73dd9f9fc","src/unix/linux_like/android/b64/mod.rs":"d7bbbadafdb2cb2ff8e9cde3d89a03b9facaabb6b2d45705225d3ece1c5cce37","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"06b22dc184e85a988ab969c75cadc52b9878faeab0eb9d21215878c95fe07c19","src/unix/linux_like/android/mod.rs":"755db99ecd7598eee9c0c21656cda3e63ae2c4c952f8285b3d7095d983ee4631","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/mod.rs":"b71d37106750f57bc2dae4e9bcb473ff098ef48235827e41a1687a39825f0aa4","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"213e70ebed2703e14a9cf17666b21ecbf180b7bff7fa22fdbb36dbbd52df326d","src/unix/linux_like/linux/arch/generic/mod.rs":"52706a1e232f0b3d4ef1c064306eb4ae312535a16635c982c2fa6d9aa957d4cd","src/unix/linux_like/linux/arch/mips/mod.rs":"2c1fbabc54efc5fb3e7ae218d0b0084281b67eceec0c62e5978e20aea8c512ef","src/unix/linux_like/linux/arch/mod.rs":"466a29622e47c6c7f1500682b2eb17f5566dd81b322cd6348f0fdd355cec593a","src/unix/linux_like/linux/arch/powerpc/mod.rs":"96f702ef5b0bae40ce3bfff58ec99fe8291b37de139890c011147f0ebc906771","src/unix/linux_like/linux/arch/sparc/mod.rs":"66c0d9590cdc88920860ac8539a59846ad83d34a207c8350fa00a027ed2e82c8","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"bc2272a2e7cbc160baa454c8203932d6c5f59a32c2bf3a0e0cf37057f25484cb","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"46a72f8be5fc8260a002996ad30b55a0f1df33ca20bff808427c449425cbc4a5","src/unix/linux_like/linux/gnu/b32/mod.rs":"794dbcbae7dae8fd6b0b814573243197ceb532b56ef0772ad86b4b401478fcd9","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"c21dd4f8bedf341c8ea799f923a8dd55b9b907acfc1da717755c37f5e71cd4bb","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"9ace9d12271e83967f76fdc6b6670027528f2382e17912a7299c357e196262bc","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"8afb0bcd6d947fb50dcd81e1c0f89242ce2365233d5165627c9dcb996ce66a0a","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"0fbf5120805535aca7dd4e06c11439341d8f528ae95b9b93140b984e0b246251","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"21a21503ef2e095f4371044915d4bfb07a8578011cb5c713cd9f45947b0b5730","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"e78c3cd197f44832338b414d1a9bc0d194f44c74db77bd7bf830c1fff62b2690","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"3587b384a42ac52df67471ba9a56f4624872a7ff3338ec152118acf501647677","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"8871eeff3a338b8f06a775e1735b637174bc2c0923d581ad88867428693a4cfa","src/unix/linux_like/linux/gnu/b64/mod.rs":"6336065423c26b59681fd2ce77f1117ea36af13e163fdadaefd108bd8191e8c8","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"7533175c322e22cafb932364c9b310658d08d1ac6e2cea03e42f551eff955999","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"aa9368dc335306d43dc05628c4419ed1e15244060f182cfa24d3c34e7d25cd90","src/unix/linux_like/linux/gnu/b64/s390x.rs":"0c1725854b8146a191df36e83931bf591a31334f2d72dc6867d143d44b8a53b6","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"37d7cf814319678512547b0f122cf84c9fc4cdad83e9ebbf0dee2c2baa10d9a1","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"580ef4c16a36a15e51407faa8e3875430394887d006d16cc93a4b3e67e268ad1","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"f775ac2b754f90b63053fe22afe1d19d306b5404995568d6805baa9249fb617f","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"4ba1b58468f55254717366f50fdfd3e4114fde6dc442a56681926c4d7e5b6b0d","src/unix/linux_like/linux/gnu/mod.rs":"d5442593aab9becf1a955f8c6fb2aa1a3133730fac4b7f85263cdd0d0a641d61","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"2a26a908b0426923fa32010dd143c4ff0a9f7c2e6675ffe3b84fd545d43cf469","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"da189402060f8a777126b818a6011041e09f3b4b40952ac82cbc6268a7f30193","src/unix/linux_like/linux/musl/b32/hexagon.rs":"bfeb3121229d8f1bc6ba519bf35f7f64a8c45a1f285b25ad18cfaab7845164d8","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"e23a8784925f1f7d9d504bb2db3efc483fba7cd854cd743747d9ad3bbb9ac287","src/unix/linux_like/linux/musl/b32/mod.rs":"8ede3985e6243882814ce91e8ce543e7edbafc0cee5932816072b6f14207a671","src/unix/linux_like/linux/musl/b32/powerpc.rs":"14d18bf690bc41b73823152376b4e73a11e57638e0b359e6cb84f3fdd39c5605","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"3223e0d87b94c865f97a47a3e47dadd3a2beebbf06b11825475bc26cee8fefd4","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"798a9229d70ce235394f2dd625f6c4c1e10519a94382dc5b091952b638ae2928","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"6b9c1a3474b8fa23ca14eec9b5abb0cbc85b62076055ad0173c46005d77f9a0b","src/unix/linux_like/linux/musl/b64/mips64.rs":"5ff053e8f489f9672244b3b67117a7c64d01df0c68964fcb87104b294c68c790","src/unix/linux_like/linux/musl/b64/mod.rs":"d847206d9f2d594c8febe780a938cdccf40d985dafc11e90f235947735a09bac","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"5386ab54bacc199c5d4e1bc07592b151bb61fb86eb4eee2d15d7a351672bed13","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"b46633c76eeaffa619e7008b91fbfbcfccac0d75c20c9df3bf2a0078a64fa4b0","src/unix/linux_like/linux/musl/b64/s390x.rs":"20149a2b8c3739be7be7903ce361cf2f8d3f7bb464f782990fcccb38665f347d","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"3789856e0f550fbd847db0dcc9402f870567efaddd6c1c1355d2f4382dc5e228","src/unix/linux_like/linux/musl/mod.rs":"3a949d409efb3dbd77a3732a8fd95269ae0a9ee764efc12243903e16c1e1c2d7","src/unix/linux_like/linux/no_align.rs":"5ed04c53bf9d27da9b4d65ba7625c6ac53330162683d1b3df98950caafa3507b","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"1e3bf809508b5872949136859bf48ddf58b7d24ae9f0b663e79f0efd1aaeb6a6","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"fa4102d9a596d90de604ce2962b0e64f184dfbf10552a4c3ecf28f12d4704379","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"e3085ba56cfbc528d7c3c55065880603238c333b6047ef51c58177508a487fcd","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"a2877679fef0f14f54a89ccbc41fb02f0c25bf6e536f9eb2cb2fa437e1d3f739","src/unix/linux_like/linux/uclibc/mod.rs":"abb9a1a905a7d992ed290557e3619627d9f3a1ccf3a6d4ba9506b936fc56fa04","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"024eba5753e852dbdd212427351affe7e83f9916c1864bce414d7aa2618f192e","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"66e8f5b7509a6e638b8b904906f89badbab0da8fb5b602d07ebd88649c4b961a","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"ffce98bdd208fd9d335c65feafbf0d9742bea67c7eec1ee48657f292132ec3f0","src/unix/mod.rs":"b72f18e053cca0ade0f0606f1848a773fcf1885c72cbb31889275e8195f060bd","src/unix/newlib/aarch64/mod.rs":"bb269c1468a9676442554600e87417079a787fe6220dfc23b3109639259e8710","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"c71be856bfd7f576b2db28af9f680211cbe6c1cac7d537bbc8020b39591af07c","src/unix/newlib/espidf/mod.rs":"c198cb4beccdab483be61c102da74dc51ac80f766797e33021f3110394ed5a3d","src/unix/newlib/mod.rs":"d7271c13748be08305d36f9af6f41f6950a7a1d6d4382149194a35d5fe2090de","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"2d0f7af28b47f7a2a6c210ebd1c1f33ed8eac62e56b5af2b856de2ad3fdc5187","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/redox/mod.rs":"cc4794afa4fbed9d6612894ea476228f9d8533950162d6416fc4d16073e1dac4","src/unix/solarish/compat.rs":"b07a5bfac925eb012003a459ba6bddbd3bfa9c44b3394da2ac5a602e54beae9c","src/unix/solarish/illumos.rs":"7d8f47fd37880715b449723688aaee568785325a46f1c360a05bdca13252278e","src/unix/solarish/mod.rs":"c7376a8b0cd093bf67157fac19065b114aeae271fbaf0b7a9cc27c369a915196","src/unix/solarish/solaris.rs":"65b005453aefa9b9d4fc860fe77cfec80d8c97a51342b15daf55fc3e808bb384","src/unix/solarish/x86_64.rs":"9d761573bdccbdd1ac61da571f7e96b5374df70241d9b72d45a069611f495085","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"aea3da66f2140f2a82dfc9c58f6e6531d2dd9c15ea696e0f95a0d4a2a187b5b6","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi.rs":"0935c061e947e3389b77a3597ab2ce289d913132f9ea2727a2c98732fade7691","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"e3ad95ba54f76e74c301611fe868d3d94f6b8939b03be672f568b06b10ae71c7","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"8521a1b57e76b1ec69af7599e75e38e7b7fad6610f037db8c79b127201b5d119"}
-+
++{"files":{"CONTRIBUTING.md":"752eea5a703d11b485c6b5f195f51bd2c79aa5159b619ce09555c779e1fb586b","Cargo.toml":"5bb1b7c99c97f4a5c211e2803482b3bac420044ad1c53a24c06630d4c8df3348","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"a8d47ff51ca256f56a8932dba07660672dbfe3004257ca8de708aac1415937a1","README.md":"8228847944f1332882fbb00275b6f30e4a8aad08a13569c25d52cac012cc2a47","build.rs":"0a4edcc040533d370a2a736f2e218516182471e8b0d9ed5dc2a6c08d5d852a83","rustfmt.toml":"eaa2ea84fc1ba0359b77680804903e07bb38d257ab11986b95b158e460f787b2","src/fixed_width_ints.rs":"34c60f12ec5eeb90f13ec3b954427532111c2446e69617616a97aefc1086a9f1","src/fuchsia/aarch64.rs":"378776a9e40766154a54c94c2a7b4675b5c302a38e6e42da99e67bfbaee60e56","src/fuchsia/align.rs":"ae1cf8f011a99737eabeb14ffff768e60f13b13363d7646744dbb0f443dab3d6","src/fuchsia/mod.rs":"bc8c46531bd1a2429f36aaf2bc137b50e42505b798de83f34eecfa94ad89179b","src/fuchsia/no_align.rs":"303f3f1b255e0088b5715094353cf00476131d8e94e6aebb3f469557771c8b8a","src/fuchsia/x86_64.rs":"93a3632b5cf67d2a6bcb7dc0a558605252d5fe689e0f38d8aa2ec5852255ac87","src/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/hermit/mod.rs":"d3bfce41e4463d4be8020a2d063c9bfa8b665f45f1cc6cbf3163f5d01e7cb21f","src/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/lib.rs":"adc4f6af60e57eadc01042ec4312bd592fa3002850b8c70740bfd95ddd2d77fb","src/macros.rs":"148cf62f43a1732a8f37c5e7c9673e51b69cee124c27ee9883c94d2da8edff20","src/psp.rs":"dd31aabd46171d474ec5828372e28588935120e7355c90c105360d8fa9264c1c","src/sgx.rs":"16a95cdefc81c5ee00d8353a60db363c4cc3e0f75abcd5d0144723f2a306ed1b","src/solid/aarch64.rs":"a726e47f324adf73a4a0b67a2c183408d0cad105ae66acf36db37a42ab7f8707","src/solid/arm.rs":"e39a4f74ebbef3b97b8c95758ad741123d84ed3eb48d9cf4f1f4872097fc27fe","src/solid/mod.rs":"98dc29c3e5773318ba258a4a2b7407f25aa52d40885a0024fbe43676fe54d14b","src/switch.rs":"9da3dd39b3de45a7928789926e8572d00e1e11a39e6f7289a1349aadce90edba","src/unix/align.rs":"2cdc7c826ef7ae61f5171c5ae8c445a743d86f1a7f2d9d7e4ceeec56d6874f65","src/unix/bsd/apple/b32/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b32/mod.rs":"2546ad3eb6aecb95f916648bc63264117c92b4b4859532b34cb011e4c75a5a72","src/unix/bsd/apple/b64/aarch64/align.rs":"f0c321265dd7671f16106b84951ac7dd77ed2e65c6623cbf2d29e76531984770","src/unix/bsd/apple/b64/aarch64/mod.rs":"44c217a4f263afe7a97435de9323d20a96c37836f899ca0925306d4b7e073c27","src/unix/bsd/apple/b64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/mod.rs":"f5e278a1af7fb358891d1c9be4eb7e815aaca0c5cb738d0c3604ba2208a856f7","src/unix/bsd/apple/b64/x86_64/align.rs":"ec833a747866fe19ca2d9b4d3c9ff0385faba5edf4bd0d15fa68884c40b0e26c","src/unix/bsd/apple/b64/x86_64/mod.rs":"8c87c5855038aae5d433c8f5eb3b29b0a175879a0245342b3bfd83bdf4cfd936","src/unix/bsd/apple/mod.rs":"394a28c9924c4d973d980dc529627cdccf6ca710f7aec46500a868fa76f493df","src/unix/bsd/freebsdlike/dragonfly/errno.rs":"8295b8bb0dfd38d2cdb4d9192cdeeb534cc6c3b208170e64615fa3e0edb3e578","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"829c863803f2029396177026b6f6bd7f91e857032c5a133aa48247a6c3c01431","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"2a215bd6136b8617aacedf9be738ccee94da9d29b418e9a78101d6291c182352","src/unix/bsd/freebsdlike/freebsd/arm.rs":"59d6a670eea562fb87686e243e0a84603d29a2028a3d4b3f99ccc01bd04d2f47","src/unix/bsd/freebsdlike/freebsd/freebsd11/b64.rs":"9808d152c1196aa647f1b0f0cf84dac8c930da7d7f897a44975545e3d9d17681","src/unix/bsd/freebsdlike/freebsd/freebsd11/mod.rs":"a6eee615e6ca5a6e04b526bb6b22d13b9356e87e51825cda33476c37a46cb0ef","src/unix/bsd/freebsdlike/freebsd/freebsd12/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd12/mod.rs":"266fe364867d858610b51a950e936fb10c7990f5e627cd59f7947f4b232ab259","src/unix/bsd/freebsdlike/freebsd/freebsd12/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd13/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd13/mod.rs":"12bf5c9aef74d43005aca762a48c2c6d64c21d138bd789b20f7143fc20a6db95","src/unix/bsd/freebsdlike/freebsd/freebsd13/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/freebsd14/b64.rs":"61cbe45f8499bedb168106b686d4f8239472f25c7553b069eec2afe197ff2df6","src/unix/bsd/freebsdlike/freebsd/freebsd14/mod.rs":"fdbc49a641a247aabb6e725647826bc5341447d9bff1319bfe092ba5fcda7b26","src/unix/bsd/freebsdlike/freebsd/freebsd14/x86_64.rs":"2df36a7f122f6d6e5753cfb4d22e915cc80f6bc91c0161b3daae55a481bfd052","src/unix/bsd/freebsdlike/freebsd/mod.rs":"9e6d77f35ff7d9f3cdd8596ca88f2eb39fd74cd8a135f99cc487fdb164422f83","src/unix/bsd/freebsdlike/freebsd/powerpc.rs":"9ca3f82f88974e6db5569f2d76a5a3749b248a31747a6c0da5820492bdfeca42","src/unix/bsd/freebsdlike/freebsd/powerpc64.rs":"2dae3ecc87eac3b11657aa98915def55fc4b5c0de11fe26aae23329a54628a9a","src/unix/bsd/freebsdlike/freebsd/riscv64.rs":"8f591bd273464d684c4f64365f8ed56a8138175daa70d96008541393057a0dae","src/unix/bsd/freebsdlike/freebsd/x86.rs":"c5005e3249eb7c93cfbac72a9e9272320d80ce7983da990ceb05a447f59a02c5","src/unix/bsd/freebsdlike/freebsd/x86_64/align.rs":"0e1f69a88fca1c32874b1daf5db3d446fefbe518dca497f096cc9168c39dde70","src/unix/bsd/freebsdlike/freebsd/x86_64/mod.rs":"51e4dd0c8ae247bb652feda5adad9333ea3bb30c750c3a3935e0b0e47d7803eb","src/unix/bsd/freebsdlike/mod.rs":"365ab1c1ce8b7ca061b1bdb38aac534cb600e978746eb309f6d1792b3f67db39","src/unix/bsd/mod.rs":"2fed08973739d7f6a7412b204724af64b1a915c712689c250cf9a08263ba05ff","src/unix/bsd/netbsdlike/mod.rs":"07b97b75fa72215b54c9869f50eee3167ea835fd674cf3fa036bdbd6904c563b","src/unix/bsd/netbsdlike/netbsd/aarch64.rs":"65dcb58d11e8d8028401a9d07ca3eb4cb4f053e04249cc877353449d84ccc4cb","src/unix/bsd/netbsdlike/netbsd/arm.rs":"58cdbb70b0d6f536551f0f3bb3725d2d75c4690db12c26c034e7d6ec4a924452","src/unix/bsd/netbsdlike/netbsd/mod.rs":"5f927d3d26165689b3ae7a7535ea5504068a406ef76705572c610995dbea1f0e","src/unix/bsd/netbsdlike/netbsd/powerpc.rs":"ee7ff5d89d0ed22f531237b5059aa669df93a3b5c489fa641465ace8d405bf41","src/unix/bsd/netbsdlike/netbsd/sparc64.rs":"9489f4b3e4566f43bb12dfb92238960613dac7f6a45cc13068a8d152b902d7d9","src/unix/bsd/netbsdlike/netbsd/x86.rs":"20692320e36bfe028d1a34d16fe12ca77aa909cb02bda167376f98f1a09aefe7","src/unix/bsd/netbsdlike/netbsd/x86_64.rs":"1afe5ef46b14397cdd68664b5b232e4f5b035b6db1d4cf411c899d51ebca9f30","src/unix/bsd/netbsdlike/openbsd/aarch64.rs":"dd91931d373b7ecaf6e2de25adadee10d16fa9b12c2cbacdff3eb291e1ba36af","src/unix/bsd/netbsdlike/openbsd/arm.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/mips64.rs":"8532a189ae10c7d668d9d4065da8b05d124e09bd39442c9f74a7f231c43eca48","src/unix/bsd/netbsdlike/openbsd/mod.rs":"98c95365b892679b4976b928714a0b6fc61f01fe662e7066170448d6c1eaef5e","src/unix/bsd/netbsdlike/openbsd/powerpc.rs":"01580d261bc6447bb327a0d982181b7bdabfa066cee65a30373d3ced729ad307","src/unix/bsd/netbsdlike/openbsd/powerpc64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/riscv64.rs":"1dd5449dd1fd3d51e30ffdeeaece91d0aaf05c710e0ac699fecc5461cfa2c28e","src/unix/bsd/netbsdlike/openbsd/sparc64.rs":"d04fd287afbaa2c5df9d48c94e8374a532a3ba491b424ddf018270c7312f4085","src/unix/bsd/netbsdlike/openbsd/x86.rs":"6f7f5c4fde2a2259eb547890cbd86570cea04ef85347d7569e94e679448bec87","src/unix/bsd/netbsdlike/openbsd/x86_64.rs":"d31db31630289c85af3339dbe357998a21ca584cbae31607448fe2cf7675a4e1","src/unix/haiku/b32.rs":"a2efdbf7158a6da341e1db9176b0ab193ba88b449616239ed95dced11f54d87b","src/unix/haiku/b64.rs":"ff8115367d3d7d354f792d6176dfaaa26353f57056197b563bf4681f91ff7985","src/unix/haiku/mod.rs":"41c1cc641a21a2433fe38e9b4038c4ac94ef10a00c38351c79c4e7f3affadc6e","src/unix/haiku/native.rs":"44855f52906f607de137fc4baa8c6b1b9a26baaa666f25d5f7a7ec5e017c8be6","src/unix/haiku/x86_64.rs":"3ec3aeeb7ed208b8916f3e32d42bfd085ff5e16936a1a35d9a52789f043b7237","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"859814f5df89e28fd4b345db399d181e11e7ed413841b6ff703a1fcbdbf013ae","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/linux_like/android/b32/arm.rs":"433c1530f602cc5ed26610c58055dde0c4ceea5e00150063b24ddc60768332a4","src/unix/linux_like/android/b32/mod.rs":"d971b98530a96f5892f98e1edc3133cf278d1b3939d77ab0a27a6323e0961715","src/unix/linux_like/android/b32/x86/align.rs":"812914e4241df82e32b12375ca3374615dc3a4bdd4cf31f0423c5815320c0dab","src/unix/linux_like/android/b32/x86/mod.rs":"8388bd3a0fcb5636bf965eee6dc95ae6860b85a2b555b387c868aa4d4e01ec89","src/unix/linux_like/android/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/android/b64/aarch64/mod.rs":"78b837d764c5ab6d262f12c3824d8ef05a94c03b9342b88462454ca7a52d203d","src/unix/linux_like/android/b64/mod.rs":"d7bbbadafdb2cb2ff8e9cde3d89a03b9facaabb6b2d45705225d3ece1c5cce37","src/unix/linux_like/android/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/android/b64/x86_64/mod.rs":"06b22dc184e85a988ab969c75cadc52b9878faeab0eb9d21215878c95fe07c19","src/unix/linux_like/android/mod.rs":"f19d7ce918bd273709578b3cfc3be02192ff1b0d4561de0018796db3fe04b179","src/unix/linux_like/emscripten/align.rs":"86c95cbed7a7161b1f23ee06843e7b0e2340ad92b2cb86fe2a8ef3e0e8c36216","src/unix/linux_like/emscripten/mod.rs":"b71d37106750f57bc2dae4e9bcb473ff098ef48235827e41a1687a39825f0aa4","src/unix/linux_like/emscripten/no_align.rs":"0128e4aa721a9902754828b61b5ec7d8a86619983ed1e0544a85d35b1051fad6","src/unix/linux_like/linux/align.rs":"213e70ebed2703e14a9cf17666b21ecbf180b7bff7fa22fdbb36dbbd52df326d","src/unix/linux_like/linux/arch/generic/mod.rs":"b6efaded9b9631410a265dd52398d9bddb387d35b9f513e9c0432dc5233dda39","src/unix/linux_like/linux/arch/mips/mod.rs":"4588078cd2b1c046379c8a55f728b838ff7f9151fcd8a1a5389683f1bda13550","src/unix/linux_like/linux/arch/mod.rs":"466a29622e47c6c7f1500682b2eb17f5566dd81b322cd6348f0fdd355cec593a","src/unix/linux_like/linux/arch/powerpc/mod.rs":"c447e417cdb966a4da64e2755fd91f64ab14098f529098bf437053d7e08843db","src/unix/linux_like/linux/arch/sparc/mod.rs":"9b89a4e798bb83b3e0f4052fa2d2bb6f5e9508da69a2e5b40b40795e4b4256ae","src/unix/linux_like/linux/gnu/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/gnu/b32/arm/align.rs":"3fed009dc9af3cc81be7087da9d2d7d1f39845e4497e290259c5cdbae25f039d","src/unix/linux_like/linux/gnu/b32/arm/mod.rs":"877ff42aa56e599084df9a8374e1f3eaf8ec05a445f2887b10aee5744c093f02","src/unix/linux_like/linux/gnu/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/gnu/b32/mips/mod.rs":"9fdf7cf98bc92153854ba04b2892009ec8bd855d12e1f68e91d3df2418ff6364","src/unix/linux_like/linux/gnu/b32/mod.rs":"ad23b70a5f849d5a6dbbf6d608221d2928b1834956d71d072bcc0eb941b0d856","src/unix/linux_like/linux/gnu/b32/powerpc.rs":"240468afe2fe42fd60a5568add147dc0ff097a6469ffadfdd5b9756dfd0323f2","src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs":"dc99518121e911db120b157ad289e5e6964f3a42df53b091eaf071dbf5c04098","src/unix/linux_like/linux/gnu/b32/sparc/align.rs":"21adbed27df73e2d1ed934aaf733a643003d7baf2bde9c48ea440895bcca6d41","src/unix/linux_like/linux/gnu/b32/sparc/mod.rs":"ae203726810da9312b484b0b7891a35527748c069f11e91d6d9afc73297b1cbb","src/unix/linux_like/linux/gnu/b32/x86/align.rs":"e4bafdc4a519a7922a81b37a62bbfd1177a2f620890eef8f1fbc47162e9eb413","src/unix/linux_like/linux/gnu/b32/x86/mod.rs":"eb8d002ccb3dfcf6c94e8826afe9f8c496a813fa3d770c7dbc1024b45f870c2f","src/unix/linux_like/linux/gnu/b64/aarch64/align.rs":"2179c3b1608fa4bf68840482bfc2b2fa3ee2faf6fcae3770f9e505cddca35c7b","src/unix/linux_like/linux/gnu/b64/aarch64/ilp32.rs":"21a21503ef2e095f4371044915d4bfb07a8578011cb5c713cd9f45947b0b5730","src/unix/linux_like/linux/gnu/b64/aarch64/lp64.rs":"e78c3cd197f44832338b414d1a9bc0d194f44c74db77bd7bf830c1fff62b2690","src/unix/linux_like/linux/gnu/b64/aarch64/mod.rs":"79991b28010bfa01501dc5aa0ba2f7d8394539447398169a052c541cb21e20bd","src/unix/linux_like/linux/gnu/b64/mips64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/mips64/mod.rs":"506050a20f8de53907a893d2711f1bed6e6c019580d5dde55f5dbdcfa40802f5","src/unix/linux_like/linux/gnu/b64/mod.rs":"6336065423c26b59681fd2ce77f1117ea36af13e163fdadaefd108bd8191e8c8","src/unix/linux_like/linux/gnu/b64/powerpc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/powerpc64/mod.rs":"b53ee7b973b91c2175d16476c87547f8b36c2f0b716f456018fdd2728ab4d59f","src/unix/linux_like/linux/gnu/b64/riscv64/mod.rs":"7cbadd208b719c3cbab0432cb6bb236f1e79a01823790aa6b07366433ca0991b","src/unix/linux_like/linux/gnu/b64/s390x.rs":"59228db655d6a54d20b9431c705ed7966f94b98d61e53b992c8f8ee05e176e77","src/unix/linux_like/linux/gnu/b64/sparc64/align.rs":"e29c4868bbecfa4a6cd8a2ad06193f3bbc78a468cc1dc9df83f002f1268130d9","src/unix/linux_like/linux/gnu/b64/sparc64/mod.rs":"cb9750d9153428712eb32928fb85a1e67f9687f42ef698c3bb79951c219361d0","src/unix/linux_like/linux/gnu/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/gnu/b64/x86_64/mod.rs":"e4cbe0f5a3d100490f4f648bcadcd26899cf2f4760e6ee8ccb56ce16d598cc18","src/unix/linux_like/linux/gnu/b64/x86_64/not_x32.rs":"f775ac2b754f90b63053fe22afe1d19d306b5404995568d6805baa9249fb617f","src/unix/linux_like/linux/gnu/b64/x86_64/x32.rs":"4ba1b58468f55254717366f50fdfd3e4114fde6dc442a56681926c4d7e5b6b0d","src/unix/linux_like/linux/gnu/mod.rs":"13899330d3118c5e41854f897c2e455f1b7db949384d36cff1d3042fd25a4475","src/unix/linux_like/linux/gnu/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/mod.rs":"3aaa8a783a1ec2134e27a45d7de6296b97f94e543bf5ec2c6c4ea5d24afb167f","src/unix/linux_like/linux/musl/b32/arm/align.rs":"3e8ac052c1043764776b54c93ba4260e061df998631737a897d9d47d54f7b80c","src/unix/linux_like/linux/musl/b32/arm/mod.rs":"8625290735a1294a50b34bb2b8d3b515305325187027cc577c72b0762f3a265e","src/unix/linux_like/linux/musl/b32/hexagon.rs":"dbc8aeb2bd3cd2269e0e95858c5ba0e0204b1ca0bcc5df517fb3f7f71134d044","src/unix/linux_like/linux/musl/b32/mips/align.rs":"429fb5e005cb7143602d430098b6ebfb7d360685b194f333dfd587472ae954ee","src/unix/linux_like/linux/musl/b32/mips/mod.rs":"65e3917900a9dfa0b4602e87d17305ebfa56a0c0dea61e3975099c9a6b9e967b","src/unix/linux_like/linux/musl/b32/mod.rs":"bac24312f6629ef76aa12dd41123061e3a77a244e7fda7bbfcdf5c57996b61e6","src/unix/linux_like/linux/musl/b32/powerpc.rs":"e898b490365c84c0f1856ea8640463c558b5a247d845ca0c11677679272ea20f","src/unix/linux_like/linux/musl/b32/x86/align.rs":"08e77fbd7435d7dec2ff56932433bece3f02e47ce810f89004a275a86d39cbe1","src/unix/linux_like/linux/musl/b32/x86/mod.rs":"9a9f4926d5a1fbe406f5ab84742680fe4941ab929005e7fefc4e2bc6686ba5eb","src/unix/linux_like/linux/musl/b64/aarch64/align.rs":"798a9229d70ce235394f2dd625f6c4c1e10519a94382dc5b091952b638ae2928","src/unix/linux_like/linux/musl/b64/aarch64/mod.rs":"cddcde68c13104f18edd611ce23e60a4f9b4fcae1baa57fb92284495d3a77850","src/unix/linux_like/linux/musl/b64/mips64.rs":"4a5d543195da94aaa45be067d6d145c8092bebf3611898aa2beccc0cd55d5f3f","src/unix/linux_like/linux/musl/b64/mod.rs":"d847206d9f2d594c8febe780a938cdccf40d985dafc11e90f235947735a09bac","src/unix/linux_like/linux/musl/b64/powerpc64.rs":"37b08e5f5f84bc72b62c439ac9282db71ff59b80cd2775c5588941b7a135e6bc","src/unix/linux_like/linux/musl/b64/riscv64/mod.rs":"0c7ee2f0ef9868b2ee628748d20cfb2f5ed52da2c862500c9b8406269a89dc52","src/unix/linux_like/linux/musl/b64/s390x.rs":"9b05b1fae6bcb7cb6d909b9973977fde01684175f3e26c27dcb44223cc3933d9","src/unix/linux_like/linux/musl/b64/x86_64/align.rs":"7169d07a9fd4716f7512719aec9fda5d8bed306dc0720ffc1b21696c9951e3c6","src/unix/linux_like/linux/musl/b64/x86_64/mod.rs":"d3762f374cd3aaa1e0e3f79d36f9edc7fd4c8492e561ee4bd0e80e727eef4e9e","src/unix/linux_like/linux/musl/mod.rs":"c9a24828d62f20e0cc0b835197f48bc31aa51db7ca4880341292271cc2df7aae","src/unix/linux_like/linux/no_align.rs":"5ed04c53bf9d27da9b4d65ba7625c6ac53330162683d1b3df98950caafa3507b","src/unix/linux_like/linux/non_exhaustive.rs":"181a05bf94fdb911db83ce793b993bd6548a4115b306a7ef3c10f745a8fea3e9","src/unix/linux_like/linux/uclibc/align.rs":"9ed16138d8e439bd90930845a65eafa7ebd67366e6bf633936d44014f6e4c959","src/unix/linux_like/linux/uclibc/arm/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/arm/mod.rs":"6d83b37ebe54384269b5c5cc3c9c370f97bdc8c646c9aee8705f0de1aca80067","src/unix/linux_like/linux/uclibc/arm/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips32/align.rs":"e4a3c27fe20a57b8d612c34cb05bc70646edb5cec7251957315afa53a7b9f936","src/unix/linux_like/linux/uclibc/mips/mips32/mod.rs":"edb86245bcc0e340de277e20752463cb4004104fe97737a71afdcc8b06bee703","src/unix/linux_like/linux/uclibc/mips/mips32/no_align.rs":"9cd223135de75315840ff9c3fd5441ba1cb632b96b5c85a76f8316c86653db25","src/unix/linux_like/linux/uclibc/mips/mips64/align.rs":"a7bdcb18a37a2d91e64d5fad83ea3edc78f5412adb28f77ab077dbb26dd08b2d","src/unix/linux_like/linux/uclibc/mips/mips64/mod.rs":"57d5e24ceb98e1ef90de231c4cf7f0275ac410d407607b240af6744504ec1f2a","src/unix/linux_like/linux/uclibc/mips/mips64/no_align.rs":"4a18e3875698c85229599225ac3401a2a40da87e77b2ad4ef47c6fcd5a24ed30","src/unix/linux_like/linux/uclibc/mips/mod.rs":"4eea5256e47e485dd1e50c147a56697d286e0395a77674317e83a28fb43a12d8","src/unix/linux_like/linux/uclibc/mod.rs":"d2f5d6a3381bceec0b036bb3979c113c9c4144b134368e39b3f9f2fbef79f5cc","src/unix/linux_like/linux/uclibc/no_align.rs":"3f28637046524618adaa1012e26cb7ffe94b9396e6b518cccdc69d59f274d709","src/unix/linux_like/linux/uclibc/x86_64/l4re.rs":"024eba5753e852dbdd212427351affe7e83f9916c1864bce414d7aa2618f192e","src/unix/linux_like/linux/uclibc/x86_64/mod.rs":"583349563b537104e2265be893f65e302e568a54f4022b8f14a2cf3200ac39ba","src/unix/linux_like/linux/uclibc/x86_64/other.rs":"42c3f71e58cabba373f6a55a623f3c31b85049eb64824c09c2b082b3b2d6a0a8","src/unix/linux_like/mod.rs":"dd4f7a1d66d8501b4a2c4e75e6e9305ed69f1002ae99e410596a6c636878595a","src/unix/mod.rs":"22300f25d8f3adcdcd419222a2d5657e44c835eb4a0f90e05b691c7bcc3a787e","src/unix/newlib/aarch64/mod.rs":"bb269c1468a9676442554600e87417079a787fe6220dfc23b3109639259e8710","src/unix/newlib/align.rs":"28aaf87fafbc6b312622719d472d8cf65f9e5467d15339df5f73e66d8502b28a","src/unix/newlib/arm/mod.rs":"c71be856bfd7f576b2db28af9f680211cbe6c1cac7d537bbc8020b39591af07c","src/unix/newlib/espidf/mod.rs":"c198cb4beccdab483be61c102da74dc51ac80f766797e33021f3110394ed5a3d","src/unix/newlib/horizon/mod.rs":"95cb1e5f469a3d90ce27f03d8f70121c82edd26ab762db4aa373857b87e12d98","src/unix/newlib/mod.rs":"c33c46ad76627c24927b63953d9271e01bbc7f4967381675baf61442470a41cb","src/unix/newlib/no_align.rs":"e0743b2179495a9514bc3a4d1781e492878c4ec834ee0085d0891dd1712e82fb","src/unix/newlib/powerpc/mod.rs":"2d0f7af28b47f7a2a6c210ebd1c1f33ed8eac62e56b5af2b856de2ad3fdc5187","src/unix/no_align.rs":"c06e95373b9088266e0b14bba0954eef95f93fb2b01d951855e382d22de78e53","src/unix/redox/mod.rs":"cc4794afa4fbed9d6612894ea476228f9d8533950162d6416fc4d16073e1dac4","src/unix/solarish/compat.rs":"b07a5bfac925eb012003a459ba6bddbd3bfa9c44b3394da2ac5a602e54beae9c","src/unix/solarish/illumos.rs":"a092f6676a0d208e803819bf32f928714e93606fb9062cf55b5fb7a121d47481","src/unix/solarish/mod.rs":"01dc4208b5b0d901550dc9a6f060e7d446a303919287b328fda556d9dc569b34","src/unix/solarish/solaris.rs":"65b005453aefa9b9d4fc860fe77cfec80d8c97a51342b15daf55fc3e808bb384","src/unix/solarish/x86_64.rs":"9d761573bdccbdd1ac61da571f7e96b5374df70241d9b72d45a069611f495085","src/vxworks/aarch64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/arm.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/mod.rs":"aea3da66f2140f2a82dfc9c58f6e6531d2dd9c15ea696e0f95a0d4a2a187b5b6","src/vxworks/powerpc.rs":"acb7968ce99fe3f4abdf39d98f8133d21a4fba435b8ef7084777cb181d788e88","src/vxworks/powerpc64.rs":"98f0afdc511cd02557e506c21fed6737585490a1dce7a9d4941d08c437762b99","src/vxworks/x86.rs":"552f007f38317620b23889cb7c49d1d115841252439060122f52f434fbc6e5ba","src/vxworks/x86_64.rs":"018d92be3ad628a129eff9f2f5dfbc0883d8b8e5f2fa917b900a7f98ed6b514a","src/wasi.rs":"817e7592e47f06ece5266fb35625c1aba0a23128e4015a9de2fbf94aba5f1312","src/windows/gnu/align.rs":"b2c13ec1b9f3b39a75c452c80c951dff9d0215e31d77e883b4502afb31794647","src/windows/gnu/mod.rs":"3c8c7edb7cdf5d0c44af936db2a94869585c69dfabeef30571b4f4e38375767a","src/windows/mod.rs":"e3ad95ba54f76e74c301611fe868d3d94f6b8939b03be672f568b06b10ae71c7","src/windows/msvc/mod.rs":"c068271e00fca6b62bc4bf44bcf142cfc38caeded9b6c4e01d1ceef3ccf986f4","tests/const_fn.rs":"cb75a1f0864f926aebe79118fc34d51a0d1ade2c20a394e7774c7e545f21f1f4"},"package":"565dbd88872dbe4cc8a46e527f26483c1d1f7afa6b884a3bd6cd893d4f98da74"}
diff --git a/poky/meta/recipes-devtools/rust/rust-common.inc b/poky/meta/recipes-devtools/rust/rust-common.inc
index 310aecef22..621cd4ad57 100644
--- a/poky/meta/recipes-devtools/rust/rust-common.inc
+++ b/poky/meta/recipes-devtools/rust/rust-common.inc
@@ -119,17 +119,15 @@ def llvm_features(d):
## arm-unknown-linux-gnueabihf
-DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
-LLVM_TARGET[arm-eabi] = "${RUST_TARGET_SYS}"
-TARGET_ENDIAN[arm-eabi] = "little"
-TARGET_POINTER_WIDTH[arm-eabi] = "32"
-TARGET_C_INT_WIDTH[arm-eabi] = "32"
-MAX_ATOMIC_WIDTH[arm-eabi] = "64"
-FEATURES[arm-eabi] = "+v6,+vfp2"
+DATA_LAYOUT[arm] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
+TARGET_ENDIAN[arm] = "little"
+TARGET_POINTER_WIDTH[arm] = "32"
+TARGET_C_INT_WIDTH[arm] = "32"
+MAX_ATOMIC_WIDTH[arm] = "64"
+FEATURES[arm] = "+v6,+vfp2"
## armv7-unknown-linux-gnueabihf
DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
-LLVM_TARGET[armv7-eabi] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[armv7-eabi] = "little"
TARGET_POINTER_WIDTH[armv7-eabi] = "32"
TARGET_C_INT_WIDTH[armv7-eabi] = "32"
@@ -138,7 +136,6 @@ FEATURES[armv7-eabi] = "+v7,+vfp2,+thumb2"
## aarch64-unknown-linux-{gnu, musl}
DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
-LLVM_TARGET[aarch64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[aarch64] = "little"
TARGET_POINTER_WIDTH[aarch64] = "64"
TARGET_C_INT_WIDTH[aarch64] = "32"
@@ -146,7 +143,6 @@ MAX_ATOMIC_WIDTH[aarch64] = "128"
## x86_64-unknown-linux-{gnu, musl}
DATA_LAYOUT[x86_64] = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
-LLVM_TARGET[x86_64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[x86_64] = "little"
TARGET_POINTER_WIDTH[x86_64] = "64"
TARGET_C_INT_WIDTH[x86_64] = "32"
@@ -154,7 +150,6 @@ MAX_ATOMIC_WIDTH[x86_64] = "64"
## x86_64-unknown-linux-gnux32
DATA_LAYOUT[x86_64-x32] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
-LLVM_TARGET[x86_64-x32] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[x86_64-x32] = "little"
TARGET_POINTER_WIDTH[x86_64-x32] = "32"
TARGET_C_INT_WIDTH[x86_64-x32] = "32"
@@ -162,7 +157,6 @@ MAX_ATOMIC_WIDTH[x86_64-x32] = "64"
## i686-unknown-linux-{gnu, musl}
DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
-LLVM_TARGET[i686] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[i686] = "little"
TARGET_POINTER_WIDTH[i686] = "32"
TARGET_C_INT_WIDTH[i686] = "32"
@@ -170,7 +164,6 @@ MAX_ATOMIC_WIDTH[i686] = "64"
## XXX: a bit of a hack so qemux86 builds, clone of i686-unknown-linux-{gnu, musl} above
DATA_LAYOUT[i586] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
-LLVM_TARGET[i586] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[i586] = "little"
TARGET_POINTER_WIDTH[i586] = "32"
TARGET_C_INT_WIDTH[i586] = "32"
@@ -178,7 +171,6 @@ MAX_ATOMIC_WIDTH[i586] = "64"
## mips-unknown-linux-{gnu, musl}
DATA_LAYOUT[mips] = "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
-LLVM_TARGET[mips] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mips] = "big"
TARGET_POINTER_WIDTH[mips] = "32"
TARGET_C_INT_WIDTH[mips] = "32"
@@ -186,7 +178,6 @@ MAX_ATOMIC_WIDTH[mips] = "32"
## mipsel-unknown-linux-{gnu, musl}
DATA_LAYOUT[mipsel] = "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64"
-LLVM_TARGET[mipsel] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mipsel] = "little"
TARGET_POINTER_WIDTH[mipsel] = "32"
TARGET_C_INT_WIDTH[mipsel] = "32"
@@ -194,7 +185,6 @@ MAX_ATOMIC_WIDTH[mipsel] = "32"
## mips64-unknown-linux-{gnu, musl}
DATA_LAYOUT[mips64] = "E-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128"
-LLVM_TARGET[mips64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mips64] = "big"
TARGET_POINTER_WIDTH[mips64] = "64"
TARGET_C_INT_WIDTH[mips64] = "64"
@@ -202,7 +192,6 @@ MAX_ATOMIC_WIDTH[mips64] = "64"
## mips64el-unknown-linux-{gnu, musl}
DATA_LAYOUT[mips64el] = "e-m:e-i8:8:32-i16:16:32-i64:64-n32:64-S128"
-LLVM_TARGET[mips64el] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[mips64el] = "little"
TARGET_POINTER_WIDTH[mips64el] = "64"
TARGET_C_INT_WIDTH[mips64el] = "64"
@@ -210,7 +199,6 @@ MAX_ATOMIC_WIDTH[mips64el] = "64"
## powerpc-unknown-linux-{gnu, musl}
DATA_LAYOUT[powerpc] = "E-m:e-p:32:32-i64:64-n32"
-LLVM_TARGET[powerpc] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[powerpc] = "big"
TARGET_POINTER_WIDTH[powerpc] = "32"
TARGET_C_INT_WIDTH[powerpc] = "32"
@@ -218,7 +206,6 @@ MAX_ATOMIC_WIDTH[powerpc] = "32"
## powerpc64-unknown-linux-{gnu, musl}
DATA_LAYOUT[powerpc64] = "E-m:e-i64:64-n32:64-S128-v256:256:256-v512:512:512"
-LLVM_TARGET[powerpc64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[powerpc64] = "big"
TARGET_POINTER_WIDTH[powerpc64] = "64"
TARGET_C_INT_WIDTH[powerpc64] = "64"
@@ -226,7 +213,6 @@ MAX_ATOMIC_WIDTH[powerpc64] = "64"
## powerpc64le-unknown-linux-{gnu, musl}
DATA_LAYOUT[powerpc64le] = "e-m:e-i64:64-n32:64-v256:256:256-v512:512:512"
-LLVM_TARGET[powerpc64le] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[powerpc64le] = "little"
TARGET_POINTER_WIDTH[powerpc64le] = "64"
TARGET_C_INT_WIDTH[powerpc64le] = "64"
@@ -234,7 +220,6 @@ MAX_ATOMIC_WIDTH[powerpc64le] = "64"
## riscv32-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv32] = "e-m:e-p:32:32-i64:64-n32-S128"
-LLVM_TARGET[riscv32] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[riscv32] = "little"
TARGET_POINTER_WIDTH[riscv32] = "32"
TARGET_C_INT_WIDTH[riscv32] = "32"
@@ -242,7 +227,6 @@ MAX_ATOMIC_WIDTH[riscv32] = "32"
## riscv64-unknown-linux-{gnu, musl}
DATA_LAYOUT[riscv64] = "e-m:e-p:64:64-i64:64-i128:128-n64-S128"
-LLVM_TARGET[riscv64] = "${RUST_TARGET_SYS}"
TARGET_ENDIAN[riscv64] = "little"
TARGET_POINTER_WIDTH[riscv64] = "64"
TARGET_C_INT_WIDTH[riscv64] = "64"
@@ -325,7 +309,10 @@ def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""):
# build tspec
tspec = {}
- tspec['llvm-target'] = d.getVarFlag('LLVM_TARGET', arch_abi)
+ if bb.data.inherits_class('cross-canadian', d):
+ tspec['llvm-target'] = d.getVar('RUST_HOST_SYS', arch_abi)
+ else:
+ tspec['llvm-target'] = d.getVar('RUST_TARGET_SYS', arch_abi)
tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi)
tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi))
tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi)
@@ -360,6 +347,11 @@ def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""):
with open(wd + sys + '.json', 'w') as f:
json.dump(tspec, f, indent=4)
+# These are accounted for in tmpdir path names so don't need to be in the task sig
+rust_gen_target[vardepsexclude] += "RUST_HOST_SYS RUST_TARGET_SYS"
+
+do_rust_gen_targets[vardeps] += "DATA_LAYOUT TARGET_ENDIAN TARGET_POINTER_WIDTH TARGET_C_INT_WIDTH MAX_ATOMIC_WIDTH FEATURES"
+
python do_rust_gen_targets () {
wd = d.getVar('WORKDIR') + '/targets/'
build_arch = d.getVar('BUILD_ARCH')
diff --git a/poky/meta/recipes-devtools/rust/rust-cross-canadian-common.inc b/poky/meta/recipes-devtools/rust/rust-cross-canadian-common.inc
index 827000f7bd..1f21c8af26 100644
--- a/poky/meta/recipes-devtools/rust/rust-cross-canadian-common.inc
+++ b/poky/meta/recipes-devtools/rust/rust-cross-canadian-common.inc
@@ -25,7 +25,6 @@ DEBUG_PREFIX_MAP = "-fdebug-prefix-map=${WORKDIR}=/usr/src/debug/${PN}/${EXTENDP
-fdebug-prefix-map=${STAGING_DIR_NATIVE}= \
"
-LLVM_TARGET[x86_64] = "${RUST_HOST_SYS}"
python do_rust_gen_targets () {
wd = d.getVar('WORKDIR') + '/targets/'
rust_gen_target(d, 'TARGET', wd, d.getVar('TARGET_LLVM_FEATURES') or "", d.getVar('TARGET_LLVM_CPU'), d.getVar('TARGET_ARCH'))
diff --git a/poky/meta/recipes-devtools/strace/strace/0001-landlock-update-expected-string.patch b/poky/meta/recipes-devtools/strace/strace/0001-landlock-update-expected-string.patch
new file mode 100644
index 0000000000..9d67d68331
--- /dev/null
+++ b/poky/meta/recipes-devtools/strace/strace/0001-landlock-update-expected-string.patch
@@ -0,0 +1,67 @@
+From d0dae2fb30b907bc9bf70382f37c9e00207ae036 Mon Sep 17 00:00:00 2001
+From: Bruce Ashfield <bruce.ashfield@gmail.com>
+Date: Sat, 30 Apr 2022 01:09:42 -0400
+Subject: [PATCH] landlock: update expected string
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Kernel commit:
+
+ commit 3d4b396a616d0d67bf95d6823ad1197f6247292e
+ Author: Christian Brauner <christian.brauner@ubuntu.com>
+ Date: Mon Oct 11 15:37:04 2021 +0200
+
+ landlock: Use square brackets around "landlock-ruleset"
+
+ commit aea0b9f2486da8497f35c7114b764bf55e17c7ea upstream.
+
+ Make the name of the anon inode fd "[landlock-ruleset]" instead of
+ "landlock-ruleset". This is minor but most anon inode fds already
+ carry square brackets around their name:
+
+ [eventfd]
+ [eventpoll]
+ [fanotify]
+ [fscontext]
+ [io_uring]
+ [pidfd]
+ [signalfd]
+ [timerfd]
+ [userfaultfd]
+
+ For the sake of consistency lets do the same for the landlock-ruleset anon
+ inode fd that comes with landlock. We did the same in
+ 1cdc415f1083 ("uapi, fsopen: use square brackets around "fscontext" [ver #2]")
+ for the new mount api.
+
+ Cc: linux-security-module@vger.kernel.org
+ Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
+ Link: https://lore.kernel.org/r/20211011133704.1704369-1-brauner@kernel.org
+ Cc: stable@vger.kernel.org
+ Signed-off-by: Mickaël Salaün <mic@linux.microsoft.com>
+ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+
+Changed the format of the landlock tracing. We need to update the strace
+expected string to match.
+
+Upstream-Status: Submitted [https://lists.strace.io/pipermail/strace-devel/2022-April/011064.html]
+
+Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
+---
+ tests/landlock_create_ruleset-y.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/landlock_create_ruleset-y.c b/tests/landlock_create_ruleset-y.c
+index a30966b..50e19c2 100644
+--- a/tests/landlock_create_ruleset-y.c
++++ b/tests/landlock_create_ruleset-y.c
+@@ -1,4 +1,4 @@
+-#define FD_PATH "<anon_inode:landlock-ruleset>"
++#define FD_PATH "<anon_inode:[landlock-ruleset]>"
+ #define SKIP_IF_PROC_IS_UNAVAILABLE skip_if_unavailable("/proc/self/fd/")
+
+ #include "landlock_create_ruleset.c"
+--
+2.19.1
+
diff --git a/poky/meta/recipes-devtools/strace/strace_5.17.bb b/poky/meta/recipes-devtools/strace/strace_5.17.bb
index 129db87af8..c7fd9edf40 100644
--- a/poky/meta/recipes-devtools/strace/strace_5.17.bb
+++ b/poky/meta/recipes-devtools/strace/strace_5.17.bb
@@ -13,6 +13,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
file://ptest-spacesave.patch \
file://0001-strace-fix-reproducibilty-issues.patch \
file://skip-load.patch \
+ file://0001-landlock-update-expected-string.patch \
"
SRC_URI[sha256sum] = "5fb298dbd1331fd1e1bc94c5c32395860d376101b87c6cd3d1ba9f9aa15c161f"
diff --git a/poky/meta/recipes-devtools/vala/vala_0.56.0.bb b/poky/meta/recipes-devtools/vala/vala_0.56.0.bb
deleted file mode 100644
index a4d6760f10..0000000000
--- a/poky/meta/recipes-devtools/vala/vala_0.56.0.bb
+++ /dev/null
@@ -1,3 +0,0 @@
-require ${BPN}.inc
-
-SRC_URI[sha256sum] = "d92bd13c5630905eeb6a983dcb702204da9731460c2a6e4e39f867996f371040"
diff --git a/poky/meta/recipes-devtools/vala/vala_0.56.1.bb b/poky/meta/recipes-devtools/vala/vala_0.56.1.bb
new file mode 100644
index 0000000000..48d21685e8
--- /dev/null
+++ b/poky/meta/recipes-devtools/vala/vala_0.56.1.bb
@@ -0,0 +1,3 @@
+require ${BPN}.inc
+
+SRC_URI[sha256sum] = "c518b81dfdda82d1cdf586b3f9b2323162cb96bd3cb5a2c03650cea025d91fb9"
diff --git a/poky/meta/recipes-extended/cronie/cronie_1.6.0.bb b/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb
index d2f08c9af0..6d150dd3c7 100644
--- a/poky/meta/recipes-extended/cronie/cronie_1.6.0.bb
+++ b/poky/meta/recipes-extended/cronie/cronie_1.6.1.bb
@@ -25,7 +25,7 @@ SRC_URI = "https://github.com/cronie-crond/cronie/releases/download/cronie-${PV}
PAM_SRC_URI = "file://crond_pam_config.patch"
PAM_DEPS = "libpam libpam-runtime pam-plugin-access pam-plugin-loginuid"
-SRC_URI[sha256sum] = "3f7cc263d21838b53a9943eb2a26b862059e2ae36c3f11789ac33cd6818e3628"
+SRC_URI[sha256sum] = "2cd0f0dd1680e6b9c39bf1e3a5e7ad6df76aa940de1ee90a453633aa59984e62"
inherit autotools update-rc.d useradd systemd
diff --git a/poky/meta/recipes-extended/iptables/iptables/0001-iptables-xshared.h-add-missing-sys.types.h-include.patch b/poky/meta/recipes-extended/iptables/iptables/0001-iptables-xshared.h-add-missing-sys.types.h-include.patch
new file mode 100644
index 0000000000..17dd032434
--- /dev/null
+++ b/poky/meta/recipes-extended/iptables/iptables/0001-iptables-xshared.h-add-missing-sys.types.h-include.patch
@@ -0,0 +1,30 @@
+From 796b8f6fc1e584c27c42ba302f623fd1c5aa0667 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 17 May 2022 10:56:59 +0200
+Subject: [PATCH] iptables/xshared.h: add missing sys.types.h include
+
+This resolves the build error under musl:
+
+| ../../../../../../../workspace/sources/iptables/iptables/xshared.h:83:56: error: unknown type name 'u_int16_t'; did you mean 'uint16_t'?
+| 83 | set_option(unsigned int *options, unsigned int option, u_int16_t *invflg,
+| | ^~~~~~~~~
+| | uint16_t
+
+Upstream-Status: Submitted [via email to phil@nwl.cc]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ iptables/xshared.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/iptables/xshared.h b/iptables/xshared.h
+index 14568bb..73b1017 100644
+--- a/iptables/xshared.h
++++ b/iptables/xshared.h
+@@ -6,6 +6,7 @@
+ #include <stdint.h>
+ #include <netinet/in.h>
+ #include <net/if.h>
++#include <sys/types.h>
+ #include <linux/netfilter_arp/arp_tables.h>
+ #include <linux/netfilter_ipv4/ip_tables.h>
+ #include <linux/netfilter_ipv6/ip6_tables.h>
diff --git a/poky/meta/recipes-extended/iptables/iptables/format-security.patch b/poky/meta/recipes-extended/iptables/iptables/format-security.patch
new file mode 100644
index 0000000000..be1e077b49
--- /dev/null
+++ b/poky/meta/recipes-extended/iptables/iptables/format-security.patch
@@ -0,0 +1,30 @@
+From b72eb12ea5a61df0655ad99d5048994e916be83a Mon Sep 17 00:00:00 2001
+From: Phil Sutter <phil@nwl.cc>
+Date: Fri, 13 May 2022 16:51:58 +0200
+Subject: xshared: Fix build for -Werror=format-security
+
+Gcc complains about the omitted format string.
+
+Signed-off-by: Phil Sutter <phil@nwl.cc>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ iptables/xshared.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/iptables/xshared.c b/iptables/xshared.c
+index fae5ddd5..a8512d38 100644
+--- a/iptables/xshared.c
++++ b/iptables/xshared.c
+@@ -1307,7 +1307,7 @@ static void check_empty_interface(struct xtables_args *args, const char *arg)
+ return;
+
+ if (args->family != NFPROTO_ARP)
+- xtables_error(PARAMETER_PROBLEM, msg);
++ xtables_error(PARAMETER_PROBLEM, "%s", msg);
+
+ fprintf(stderr, "%s", msg);
+ }
+--
+cgit v1.2.3
+
diff --git a/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb b/poky/meta/recipes-extended/iptables/iptables_1.8.8.bb
index 3b41882841..54d027220b 100644
--- a/poky/meta/recipes-extended/iptables/iptables_1.8.7.bb
+++ b/poky/meta/recipes-extended/iptables/iptables_1.8.8.bb
@@ -12,12 +12,14 @@ SRC_URI = "http://netfilter.org/projects/iptables/files/iptables-${PV}.tar.bz2 \
file://0001-configure-Add-option-to-enable-disable-libnfnetlink.patch \
file://0001-Makefile.am-do-not-install-etc-ethertypes.patch \
file://0002-configure.ac-only-check-conntrack-when-libnfnetlink-enabled.patch \
+ file://format-security.patch \
file://iptables.service \
file://iptables.rules \
file://ip6tables.service \
file://ip6tables.rules \
+ file://0001-iptables-xshared.h-add-missing-sys.types.h-include.patch \
"
-SRC_URI[sha256sum] = "c109c96bb04998cd44156622d36f8e04b140701ec60531a10668cfdff5e8d8f0"
+SRC_URI[sha256sum] = "71c75889dc710676631553eb1511da0177bbaaf1b551265b912d236c3f51859f"
SYSTEMD_SERVICE:${PN} = "\
iptables.service \
@@ -28,6 +30,8 @@ inherit autotools pkgconfig systemd
EXTRA_OECONF = "--with-kernel=${STAGING_INCDIR}"
+CFLAGS:append:libc-musl = " -D__UAPI_DEF_ETHHDR=0"
+
PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
@@ -41,6 +45,9 @@ 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
+
+ # Copy a header to fix out of tree builds
+ cp -f ${S}/libiptc/linux_list.h ${S}/include/libiptc/
}
IPTABLES_RULES_DIR ?= "${sysconfdir}/${BPN}"
@@ -108,7 +115,7 @@ RDEPENDS:${PN}-apply = "${PN} bash"
# Include the symlinks as well in respective packages
FILES:${PN}-module-xt-conntrack += "${libdir}/xtables/libxt_state.so"
-FILES:${PN}-module-xt-ct += "${libdir}/xtables/libxt_NOTRACK.so"
+FILES:${PN}-module-xt-ct += "${libdir}/xtables/libxt_NOTRACK.so ${libdir}/xtables/libxt_REDIRECT.so"
ALLOW_EMPTY:${PN}-modules = "1"
diff --git a/poky/meta/recipes-extended/libmnl/libmnl_1.0.4.bb b/poky/meta/recipes-extended/libmnl/libmnl_1.0.5.bb
index 4dbd9c2450..3c5bde3319 100644
--- a/poky/meta/recipes-extended/libmnl/libmnl_1.0.4.bb
+++ b/poky/meta/recipes-extended/libmnl/libmnl_1.0.5.bb
@@ -7,8 +7,7 @@ LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "https://netfilter.org/projects/libmnl/files/libmnl-${PV}.tar.bz2;name=tar"
-SRC_URI[tar.md5sum] = "be9b4b5328c6da1bda565ac5dffadb2d"
-SRC_URI[tar.sha256sum] = "171f89699f286a5854b72b91d06e8f8e3683064c5901fb09d954a9ab6f551f81"
+SRC_URI[tar.sha256sum] = "274b9b919ef3152bfb3da3a13c950dd60d6e2bcd54230ffeca298d03b40d0525"
inherit autotools pkgconfig
diff --git a/poky/meta/recipes-extended/libpipeline/libpipeline_1.5.5.bb b/poky/meta/recipes-extended/libpipeline/libpipeline_1.5.6.bb
index 67072e8c99..7007608a39 100644
--- a/poky/meta/recipes-extended/libpipeline/libpipeline_1.5.5.bb
+++ b/poky/meta/recipes-extended/libpipeline/libpipeline_1.5.6.bb
@@ -7,7 +7,7 @@ LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=1ebbd3e34237af26da5dc08a4e440464"
SRC_URI = "${SAVANNAH_GNU_MIRROR}/libpipeline/libpipeline-${PV}.tar.gz"
-SRC_URI[sha256sum] = "0c8367f8b82bb721b50647a647115b6e62a37e3b2e954a9685e4d933f30c00cc"
+SRC_URI[sha256sum] = "60fbb9e7dc398528e5f3a776af57bb28ca3fe5d9f0cd8a961ac6cebfe6e9b797"
inherit pkgconfig autotools
diff --git a/poky/meta/recipes-extended/lsof/files/lsof-remove-host-information.patch b/poky/meta/recipes-extended/lsof/files/lsof-remove-host-information.patch
index 70155f9a1d..08f083cf83 100644
--- a/poky/meta/recipes-extended/lsof/files/lsof-remove-host-information.patch
+++ b/poky/meta/recipes-extended/lsof/files/lsof-remove-host-information.patch
@@ -1,4 +1,4 @@
-From 95b8a13c1ea4274f58304bf5c4f7ca3d036b10f3 Mon Sep 17 00:00:00 2001
+From 4233b5ac1629c225a7a80f33efc0eff527a95851 Mon Sep 17 00:00:00 2001
From: Li Wang <li.wang@windriver.com>
Date: Wed, 30 Aug 2017 15:05:16 +0800
Subject: [PATCH] Remove host information from version.h
@@ -10,24 +10,22 @@ Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Li Wang <li.wang@windriver.com>
---
- dialects/linux/Makefile | 50 ++++++++---------------------------------
- 1 file changed, 9 insertions(+), 41 deletions(-)
+ dialects/linux/Makefile | 48 +++++++----------------------------------
+ 1 file changed, 8 insertions(+), 40 deletions(-)
diff --git a/dialects/linux/Makefile b/dialects/linux/Makefile
-index 61e8643..5458a0a 100644
+index 46c83c2..50f03cc 100644
--- a/dialects/linux/Makefile
+++ b/dialects/linux/Makefile
-@@ -95,48 +95,16 @@ version.h: FRC
+@@ -84,47 +84,15 @@ version.h: FRC
@echo Constructing version.h
@rm -f version.h
@echo '#define LSOF_BLDCMT "${LSOF_BLDCMT}"' > version.h;
- @echo '#define LSOF_CC "${CC}"' >> version.h
- @echo '#define LSOF_CCV "${CCV}"' >> version.h
-- @echo '#define LSOF_CCDATE "$(BUILD_DATE)"' >> version.h
- @echo '#define LSOF_CCFLAGS "'`echo ${CFLAGS} | sed 's/\\\\(/\\(/g' | sed 's/\\\\)/\\)/g' | sed 's/"/\\\\"/g'`'"' >> version.h
+ @echo '#define LSOF_CC ""' >> version.h
+ @echo '#define LSOF_CCV ""' >> version.h
-+ @echo '#define LSOF_CCDATE ""' >> version.h
+ @echo '#define LSOF_CCFLAGS ""' >> version.h
@echo '#define LSOF_CINFO "${CINFO}"' >> version.h
- @if [ "X${LSOF_HOST}" = "X" ]; then \
diff --git a/poky/meta/recipes-extended/lsof/lsof_4.94.0.bb b/poky/meta/recipes-extended/lsof/lsof_4.95.0.bb
index c2b8bc839b..f380de0b6b 100644
--- a/poky/meta/recipes-extended/lsof/lsof_4.94.0.bb
+++ b/poky/meta/recipes-extended/lsof/lsof_4.95.0.bb
@@ -15,7 +15,7 @@ SRC_URI = "git://github.com/lsof-org/lsof;branch=master;protocol=https \
file://lsof-remove-host-information.patch \
"
-SRCREV = "005e014e1abdadb2493d8b3ce87b37a2c0a2351d"
+SRCREV = "67d8c828e7bdc01ba93f8ff79765dd424da0c9d7"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-extended/man-pages/man-pages_5.13.bb b/poky/meta/recipes-extended/man-pages/man-pages_5.13.bb
index c0198b77be..f8602c699e 100644
--- a/poky/meta/recipes-extended/man-pages/man-pages_5.13.bb
+++ b/poky/meta/recipes-extended/man-pages/man-pages_5.13.bb
@@ -30,7 +30,8 @@ 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:${PN} = "crypt.3 crypt_r.3 getspnam.3 passwd.5"
ALTERNATIVE_LINK_NAME[crypt.3] = "${mandir}/man3/crypt.3"
+ALTERNATIVE_LINK_NAME[crypt_r.3] = "${mandir}/man3/crypt_r.3"
+ALTERNATIVE_LINK_NAME[getspnam.3] = "${mandir}/man3/getspnam.3"
+ALTERNATIVE_LINK_NAME[passwd.5] = "${mandir}/man5/passwd.5"
diff --git a/poky/meta/recipes-extended/parted/files/check-vfat.patch b/poky/meta/recipes-extended/parted/files/check-vfat.patch
deleted file mode 100644
index fad50292d9..0000000000
--- a/poky/meta/recipes-extended/parted/files/check-vfat.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-Add checks for both mkfs.vfat and the vfat file system in the kernel before
-running tests.
-
-Upstream-Status: Submitted [https://alioth-lists.debian.net/pipermail/parted-devel/2021-August/005653.html]
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-diff --git a/tests/t-lib-helpers.sh b/tests/t-lib-helpers.sh
-index 4c6c75f..2cc7577 100644
---- a/tests/t-lib-helpers.sh
-+++ b/tests/t-lib-helpers.sh
-@@ -418,3 +418,13 @@ require_64bit_()
- ;;
- esac
- }
-+
-+# Check if the specified filesystem is either built into the kernel, or can be loaded
-+# as a module
-+# Usage: has_filesystem vfat
-+# Ruturns 0 if the filesystem is available, otherwise skips the test
-+require_filesystem_()
-+{
-+ grep -q $1 /proc/filesystems && return 0
-+ modprobe --quiet --dry-run $1 || skip_ "this test requires kernel support for $1"
-+}
-diff --git a/tests/t1100-busy-label.sh b/tests/t1100-busy-label.sh
-index f1a13df..0f47b08 100755
---- a/tests/t1100-busy-label.sh
-+++ b/tests/t1100-busy-label.sh
-@@ -19,6 +19,9 @@
- . "${srcdir=.}/init.sh"; path_prepend_ ../parted
- require_root_
- require_scsi_debug_module_
-+require_fat_
-+require_filesystem_ vfat
-+
- ss=$sector_size_
-
- scsi_debug_setup_ sector_size=$ss dev_size_mb=90 > dev-name ||
-diff --git a/tests/t1101-busy-partition.sh b/tests/t1101-busy-partition.sh
-index e35e6f0..c813848 100755
---- a/tests/t1101-busy-partition.sh
-+++ b/tests/t1101-busy-partition.sh
-@@ -22,6 +22,8 @@ test "$VERBOSE" = yes && parted --version
-
- require_root_
- require_scsi_debug_module_
-+require_fat_
-+require_filesystem_ vfat
-
- # create memory-backed device
- scsi_debug_setup_ dev_size_mb=80 > dev-name ||
diff --git a/poky/meta/recipes-extended/parted/files/run-ptest b/poky/meta/recipes-extended/parted/files/run-ptest
index c3d6fca339..096078967f 100644
--- a/poky/meta/recipes-extended/parted/files/run-ptest
+++ b/poky/meta/recipes-extended/parted/files/run-ptest
@@ -1,7 +1,7 @@
#!/bin/sh
-mkdir -p /etc/udev/mount.blacklist.d
-echo /dev/sda1 >> /etc/udev/mount.blacklist.d/parted-tmp
+mkdir -p /etc/udev/mount.ignorelist.d
+echo /dev/sda1 >> /etc/udev/mount.ignorelist.d/parted-tmp
rm -f tests/*.log
make -C tests test-suite.log
-rm /etc/udev/mount.blacklist.d/parted-tmp
+rm /etc/udev/mount.ignorelist.d/parted-tmp
diff --git a/poky/meta/recipes-extended/parted/parted_3.4.bb b/poky/meta/recipes-extended/parted/parted_3.5.bb
index d83b002f82..ea2b68bbd8 100644
--- a/poky/meta/recipes-extended/parted/parted_3.4.bb
+++ b/poky/meta/recipes-extended/parted/parted_3.5.bb
@@ -9,11 +9,9 @@ DEPENDS = "ncurses util-linux virtual/libiconv"
SRC_URI = "${GNU_MIRROR}/parted/parted-${PV}.tar.xz \
file://fix-doc-mandir.patch \
file://run-ptest \
- file://check-vfat.patch \
"
-SRC_URI[md5sum] = "357d19387c6e7bc4a8a90fe2d015fe80"
-SRC_URI[sha256sum] = "e1298022472da5589b7f2be1d5ee3c1b66ec3d96dfbad03dc642afd009da5342"
+SRC_URI[sha256sum] = "4938dd5c1c125f6c78b1f4b3e297526f18ee74aa43d45c248578b1d2470c05a2"
inherit autotools pkgconfig gettext texinfo ptest
diff --git a/poky/meta/recipes-extended/psmisc/psmisc_23.4.bb b/poky/meta/recipes-extended/psmisc/psmisc_23.5.bb
index 94caa2ddb7..1c390f3615 100644
--- a/poky/meta/recipes-extended/psmisc/psmisc_23.4.bb
+++ b/poky/meta/recipes-extended/psmisc/psmisc_23.5.bb
@@ -5,5 +5,5 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3"
SRC_URI = "git://gitlab.com/psmisc/psmisc.git;protocol=https;branch=master \
file://0001-Use-UINTPTR_MAX-instead-of-__WORDSIZE.patch \
"
-SRCREV = "5fab6b7ab385080f1db725d6803136ec1841a15f"
+SRCREV = "17353f3fddef6b360bc47f7834f2cd011bea2b87"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Makefile-quote-CC.patch b/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Makefile-quote-CC.patch
deleted file mode 100644
index 498a024830..0000000000
--- a/poky/meta/recipes-extended/stress-ng/stress-ng/0001-Makefile-quote-CC.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From f6162ced588c17c1141a8f6154475a299a2ebc0d Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Tue, 26 Apr 2022 22:35:35 +0200
-Subject: [PATCH] Makefile: quote CC
-
-It can contain command line options, and therefore spaces, and so
-needs to be quoted.
-
-Upstream-Status: Submitted [https://github.com/ColinIanKing/stress-ng/pull/188]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- Makefile | 2 +-
- Makefile.config | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/Makefile b/Makefile
-index 501093f5..8a454edd 100644
---- a/Makefile
-+++ b/Makefile
-@@ -432,7 +432,7 @@ stress-ng: $(OBJS)
- $(V)sync
-
- config.h:
-- $(MAKE) CC=$(CC) STATIC=$(STATIC) -f Makefile.config
-+ $(MAKE) CC="$(CC)" STATIC=$(STATIC) -f Makefile.config
-
- .PHONY:
- makeconfig: config.h
-diff --git a/Makefile.config b/Makefile.config
-index b76d0903..f03f7a85 100644
---- a/Makefile.config
-+++ b/Makefile.config
-@@ -69,7 +69,7 @@ else
- endif
-
-
--MAKE_OPTS=CC=$(CC) -f Makefile.config --no-print-directory
-+MAKE_OPTS=CC="$(CC)" -f Makefile.config --no-print-directory
-
- comma = ,
-
diff --git a/poky/meta/recipes-extended/stress-ng/stress-ng_0.14.00.bb b/poky/meta/recipes-extended/stress-ng/stress-ng_0.14.01.bb
index ada35dbc4c..cba15e947e 100644
--- a/poky/meta/recipes-extended/stress-ng/stress-ng_0.14.00.bb
+++ b/poky/meta/recipes-extended/stress-ng/stress-ng_0.14.01.bb
@@ -5,10 +5,8 @@ HOMEPAGE = "https://github.com/ColinIanKing/stress-ng#readme"
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master \
- file://0001-Makefile-quote-CC.patch \
- "
-SRCREV = "ec7f6c4731a54f0e515bef7f7e84ef9e9b8125a2"
+SRC_URI = "git://github.com/ColinIanKing/stress-ng.git;protocol=https;branch=master"
+SRCREV = "597da6154263c9317291f2dd0ed71a8ff1e8b2dc"
S = "${WORKDIR}/git"
DEPENDS = "coreutils-native"
@@ -20,7 +18,7 @@ RCONFLICTS:${PN} = "stress"
inherit bash-completion
-do_configure:prepend() {
+do_compile:prepend() {
mkdir -p configs
touch configs/HAVE_APPARMOR
}
diff --git a/poky/meta/recipes-gnome/epiphany/epiphany_42.0.bb b/poky/meta/recipes-gnome/epiphany/epiphany_42.2.bb
index 1cf731c7d6..dc1b34ac92 100644
--- a/poky/meta/recipes-gnome/epiphany/epiphany_42.0.bb
+++ b/poky/meta/recipes-gnome/epiphany/epiphany_42.2.bb
@@ -28,7 +28,7 @@ SRC_URI = "${GNOME_MIRROR}/${GNOMEBN}/${@oe.utils.trim_version("${PV}", 1)}/${GN
file://migrator.patch \
file://distributor.patch \
"
-SRC_URI[archive.sha256sum] = "3dbfa8c00e45b7f44e1824d01f0febe83707b5fb9330c261173f68b7f03cd5e3"
+SRC_URI[archive.sha256sum] = "92c02cf886d10d2ccff5de658e1a420eab31d20bb50e746d430e9535b485192d"
PACKAGECONFIG_SOUP ?= "soup2"
PACKAGECONFIG ??= "${PACKAGECONFIG_SOUP}"
diff --git a/poky/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch b/poky/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch
deleted file mode 100644
index 7b2a512738..0000000000
--- a/poky/meta/recipes-gnome/libhandy/libhandy/0001-Add-private-headers.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-From e7c3e8fa00f6a68b2e0629db5ee115e641ea710e Mon Sep 17 00:00:00 2001
-From: Mingli Yu <mingli.yu@windriver.com>
-Date: Wed, 8 Dec 2021 07:35:52 +0000
-Subject: [PATCH] Add private headers
-
-After the commit(8157ecc Separate public and private enums) introduced,
-there comes a race as below:
- | In file included from ../git/src/hdy-settings.c:11:
- | ../git/src/hdy-settings-private.h:16:10: fatal error: hdy-enums-private.h: No such file or directory
- | 16 | #include "hdy-enums-private.h"
-
-So also add private headers like private sources to libhandy_sources to
-fix the issue.
-
-Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libhandy/-/merge_requests/796]
-
-Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
----
- src/meson.build | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/meson.build b/src/meson.build
-index d087323..6f11f27 100644
---- a/src/meson.build
-+++ b/src/meson.build
-@@ -64,7 +64,7 @@ hdy_private_enums = gnome.mkenums('hdy-enums-private',
- )
-
- libhandy_public_sources += [hdy_public_enums[0]]
--libhandy_private_sources += [hdy_private_enums[0]]
-+libhandy_private_sources += hdy_private_enums
- libhandy_generated_headers += [hdy_public_enums[1]]
-
- src_headers = [
---
-2.32.0
-
diff --git a/poky/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb b/poky/meta/recipes-gnome/libhandy/libhandy_1.6.2.bb
index 722593dfb1..8d9904637f 100644
--- a/poky/meta/recipes-gnome/libhandy/libhandy_1.5.0.bb
+++ b/poky/meta/recipes-gnome/libhandy/libhandy_1.6.2.bb
@@ -9,18 +9,15 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/libhandy/-/issues"
LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
-SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https;branch=master \
- file://0001-Add-private-headers.patch \
-"
-SRCREV = "8fa8306a79215fc6ebf2483145da98bf9b2495ab"
+SRC_URI = "git://gitlab.gnome.org/GNOME/libhandy.git;protocol=https;branch=libhandy-1-6"
+SRCREV = "f050453109db05621b9a47b9931fe1b571905e67"
S = "${WORKDIR}/git"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>\d+\.(\d*[02468])+(\.\d+))"
GIR_MESON_ENABLE_FLAG = 'enabled'
GIR_MESON_DISABLE_FLAG = 'disabled'
-GTKDOC_MESON_OPTION = 'gtk_doc'
-inherit meson gobject-introspection vala gettext gtk-doc features_check
+inherit meson gobject-introspection vala gettext gi-docgen features_check pkgconfig
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
diff --git a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.12.bb
index fa3253b616..21e737fd45 100644
--- a/poky/meta/recipes-gnome/libnotify/libnotify_0.7.9.bb
+++ b/poky/meta/recipes-gnome/libnotify/libnotify_0.7.12.bb
@@ -22,8 +22,7 @@ inherit gnomebase gtk-doc features_check gobject-introspection
# depends on gtk+3 if tests are enabled
ANY_OF_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'tests', '${GTK3DISTROFEATURES}', '', d)}"
-SRC_URI[archive.md5sum] = "ccd9c53364174cc8d13e18a1988faa76"
-SRC_URI[archive.sha256sum] = "66c0517ed16df7af258e83208faaf5069727dfd66995c4bbc51c16954d674761"
+SRC_URI[archive.sha256sum] = "744b2b37508135f8261b755a9debe6e09add421adc75bde930f6e198b70ab46e"
EXTRA_OEMESON = "-Dman=false"
diff --git a/poky/meta/recipes-gnome/librsvg/librsvg/0001-Disable-docs.patch b/poky/meta/recipes-gnome/librsvg/librsvg/0001-Disable-docs.patch
deleted file mode 100644
index 13d25d4f08..0000000000
--- a/poky/meta/recipes-gnome/librsvg/librsvg/0001-Disable-docs.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From e62887dfa36812d5b8bc1c2c2fec69ba985309d8 Mon Sep 17 00:00:00 2001
-From: Alexander Kanavin <alex@linutronix.de>
-Date: Tue, 5 Apr 2022 09:21:14 +0200
-Subject: [PATCH] Disable docs
-
-Upstream has replaced gtk-doc with rst2man and gi-docgen in a way
-that is not possible to disable and requires g-i. There's a
-pull request to address this, until then let's patch it out:
-https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/687
-
-Upstream-Status: Inappropriate [see above]
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
-
-diff --git a/Makefile.am b/Makefile.am
-index e380bc9..5b3fbb5 100644
---- a/Makefile.am
-+++ b/Makefile.am
-@@ -1,4 +1,4 @@
--SUBDIRS = . gdk-pixbuf-loader tests doc win32
-+SUBDIRS = . gdk-pixbuf-loader tests win32
-
- NULL =
-
diff --git a/poky/meta/recipes-gnome/librsvg/librsvg_2.54.0.bb b/poky/meta/recipes-gnome/librsvg/librsvg_2.54.3.bb
index 96c54f16d6..3578898692 100644
--- a/poky/meta/recipes-gnome/librsvg/librsvg_2.54.0.bb
+++ b/poky/meta/recipes-gnome/librsvg/librsvg_2.54.3.bb
@@ -11,19 +11,16 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
"
SECTION = "x11/utils"
-# Note: docutils/gi-docgen should be made optional when upstream enables that
-# https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/687
-DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango python3-docutils-native gi-docgen-native"
+DEPENDS = "cairo gdk-pixbuf glib-2.0 libxml2 pango python3-docutils-native"
BBCLASSEXTEND = "native nativesdk"
-inherit gnomebase pixbufcache upstream-version-is-even gobject-introspection rust vala
+inherit gnomebase pixbufcache upstream-version-is-even gobject-introspection rust vala gi-docgen
SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \
- file://0001-Disable-docs.patch \
"
-SRC_URI[archive.sha256sum] = "baf8ebc147f146b4261bb3d0cd0fac944bf8dbb4b1f2347d23341f974dcc3085"
+SRC_URI[archive.sha256sum] = "66158f2ef46dde260026846c4da102e4a9dd4e5293010f30949c6cc26dd6efe8"
# librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles
# so we cannot use cargo class directly, but still need bits and pieces from it
diff --git a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
index 0b5d1d548f..67081bb8cb 100644
--- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
+++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb
@@ -18,7 +18,9 @@ LICENSE:${PN}-gobject = "MPL-1.1 | LGPL-2.1-only"
LICENSE:${PN}-script-interpreter = "MPL-1.1 | LGPL-2.1-only"
LICENSE:${PN}-perf-utils = "GPL-3.0-or-later"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77"
+LIC_FILES_CHKSUM = "file://COPYING;md5=e73e999e0c72b5ac9012424fa157ad77 \
+ file://util/cairo-trace/COPYING-GPL-3;md5=d32239bcb673463ab874e80d47fae504"
+
DEPENDS = "fontconfig glib-2.0 libpng pixman zlib"
@@ -53,6 +55,7 @@ PACKAGECONFIG[valgrind] = "--enable-valgrind=yes,--disable-valgrind,valgrind"
PACKAGECONFIG[egl] = "--enable-egl=yes,--disable-egl,virtual/egl"
PACKAGECONFIG[glesv2] = "--enable-glesv2,--disable-glesv2,virtual/libgles2"
PACKAGECONFIG[opengl] = "--enable-gl,--disable-gl,virtual/libgl"
+# trace is under GPLv3
PACKAGECONFIG[trace] = "--enable-trace,--disable-trace"
EXTRA_OECONF += " \
diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.12.0.bb b/poky/meta/recipes-graphics/freetype/freetype_2.12.1.bb
index 3034977cd4..46c6182630 100644
--- a/poky/meta/recipes-graphics/freetype/freetype_2.12.0.bb
+++ b/poky/meta/recipes-graphics/freetype/freetype_2.12.1.bb
@@ -13,7 +13,7 @@ LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=a5927784d823d443c6cae55701d01553 \
file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec"
SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz"
-SRC_URI[sha256sum] = "ef5c336aacc1a079ff9262d6308d6c2a066dd4d2a905301c4adda9b354399033"
+SRC_URI[sha256sum] = "4766f20157cc4cf0cd292f80bf917f92d1c439b243ac3018debf6b9140c41a7f"
UPSTREAM_CHECK_REGEX = "freetype-(?P<pver>\d+(\.\d+)+)"
diff --git a/poky/meta/recipes-graphics/glslang/glslang_1.3.204.1.bb b/poky/meta/recipes-graphics/glslang/glslang_1.3.211.0.bb
index 2af406212f..37dea07a8a 100644
--- a/poky/meta/recipes-graphics/glslang/glslang_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/glslang/glslang_1.3.211.0.bb
@@ -8,7 +8,7 @@ HOMEPAGE = "https://www.khronos.org/opengles/sdk/tools/Reference-Compiler"
LICENSE = "BSD-3-Clause & BSD-2-Clause & MIT & Apache-2.0 & GPL-3-with-bison-exception"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=2a2b5acd7bc4844964cfda45fe807dc3"
-SRCREV = "2742e959347ae2fac58acd0d022c92a0ff1f24bf"
+SRCREV = "9bb8cfffb0eed010e07132282c41d73064a7a609"
SRC_URI = "git://github.com/KhronosGroup/glslang.git;protocol=https;branch=master \
file://0001-generate-glslang-pkg-config.patch"
PE = "1"
diff --git a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.0.bb b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.1.bb
index 44d42e6904..05d5aefd87 100644
--- a/poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.0.bb
+++ b/poky/meta/recipes-graphics/harfbuzz/harfbuzz_4.2.1.bb
@@ -12,7 +12,7 @@ UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
UPSTREAM_CHECK_REGEX = "harfbuzz-(?P<pver>\d+(\.\d+)+).tar"
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "f2200f177768bdc21445aa09703326f3bbe8114ac083d081fe1a79d305c7ae73"
+SRC_URI[sha256sum] = "bd17916513829aeff961359a5ccebba6de2f4bf37a91faee3ac29c120e3d7ee1"
inherit meson pkgconfig lib_package gtk-doc gobject-introspection
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch
index 214664f621..57bc522393 100644
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch
@@ -1,4 +1,4 @@
-From 50c691e83f81b235bb96ef996dd4568ffaae256f Mon Sep 17 00:00:00 2001
+From 0234c546d86174fafe9ab280cf5f44de50b73676 Mon Sep 17 00:00:00 2001
From: Carlos Rafael Giani <crg7475@mailbox.org>
Date: Fri, 18 Mar 2022 12:06:23 +0100
Subject: [PATCH] Disable libunwind in native OE builds by not looking for
@@ -16,15 +16,16 @@ By not looking for the libunwind header, the rest of the libunwind
specific bits in the CMake build script are disabled.
Upstream-Status: Inappropriate [OE specific]
+
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 64f9fbf..12a4d8f 100644
+index 644715a..bbf2e28 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
-@@ -862,7 +862,7 @@ if(SDL_LIBC)
+@@ -869,7 +869,7 @@ if(SDL_LIBC)
check_include_file(sys/types.h HAVE_SYS_TYPES_H)
foreach(_HEADER
stdio.h stdlib.h stddef.h stdarg.h malloc.h memory.h string.h limits.h float.h
@@ -33,6 +34,3 @@ index 64f9fbf..12a4d8f 100644
string(TOUPPER "HAVE_${_HEADER}" _UPPER)
string(REPLACE "." "_" _HAVE_H ${_UPPER})
check_include_file("${_HEADER}" ${_HAVE_H})
---
-2.32.0
-
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch
deleted file mode 100644
index e5d6cda0eb..0000000000
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From dbf0a3f6ea77a1d5f5e3c4dec7a22fcc09a49537 Mon Sep 17 00:00:00 2001
-From: Max Krummenacher <max.krummenacher@toradex.com>
-Date: Mon, 10 Jan 2022 21:52:02 +0000
-Subject: [PATCH] cmake: sdlchecks.cmake: pass cflags to the appropriate cmake
- variable
-
-If egl.pc sets at least two macros as the i.MX Vivante driver does, e.g.:
-| Cflags: -I${includedir} -DLINUX -DWL_EGL_PLATFORM
-
-then we get the following error during configuration:
-
-| -- Performing Test HAVE_OPENGL_EGL
-| CMake Error: Parse error in command line argument: WL_EGL_PLATFORM
-| Should be: VAR:type=value
-
-If one changes to add a value to the macro, e.g.
-| Cflags: -I${includedir} -DLINUX=1 -DWL_EGL_PLATFORM=1
-then cmake does not error out but the macro is not passed to the
-C compiler.
-
-CMAKE_REQUIRED_FLAGS is the wrong variable to pass the CFLAGS in,
-CMAKE_REQUIRED_DEFINITIONS should be used.
-
-Upstream-Status: Submitted [https://github.com/libsdl-org/SDL/pull/5209]
-Signed-off-by: Max Krummenacher <max.krummenacher@toradex.com>
----
- cmake/sdlchecks.cmake | 3 +--
- 1 file changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/cmake/sdlchecks.cmake b/cmake/sdlchecks.cmake
-index 32be19c..f61b8df 100644
---- a/cmake/sdlchecks.cmake
-+++ b/cmake/sdlchecks.cmake
-@@ -808,8 +808,7 @@ endmacro()
- macro(CheckEGL)
- if (SDL_OPENGL OR SDL_OPENGLES)
- pkg_check_modules(EGL egl)
-- string(REPLACE "-D_THREAD_SAFE;" "-D_THREAD_SAFE=1;" EGL_CFLAGS "${EGL_CFLAGS}")
-- set(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} ${EGL_CFLAGS}")
-+ set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} ${EGL_CFLAGS}")
- check_c_source_compiles("
- #define EGL_API_FB
- #define MESA_EGL_NO_X11_HEADERS
---
-2.20.1
-
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-video-restore-ability-to-disable-fb-accel-via-hint.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-video-restore-ability-to-disable-fb-accel-via-hint.patch
new file mode 100644
index 0000000000..fc74d30556
--- /dev/null
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2/0001-video-restore-ability-to-disable-fb-accel-via-hint.patch
@@ -0,0 +1,36 @@
+From 14ad91658fd296e34bb9e833281e72c871bfb189 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 3 May 2022 12:31:50 +0200
+Subject: [PATCH] video: restore ability to disable fb accel via hint
+
+Somewhere in code refactoring between .20 and .22 this check
+was lost, and so the hint had no effect anymore.
+
+Upstream-Status: Submitted [https://github.com/libsdl-org/SDL/pull/5611]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ src/video/SDL_video.c | 8 ++++++++
+ 1 file changed, 8 insertions(+)
+
+diff --git a/src/video/SDL_video.c b/src/video/SDL_video.c
+index 93c803e..cbe7616 100644
+--- a/src/video/SDL_video.c
++++ b/src/video/SDL_video.c
+@@ -2503,6 +2503,14 @@ SDL_CreateWindowFramebuffer(SDL_Window * window)
+ if (!_this->checked_texture_framebuffer) {
+ SDL_bool attempt_texture_framebuffer = SDL_TRUE;
+
++ /* See if the user or application wants to specifically disable the framebuffer */
++ const char *hint = SDL_GetHint(SDL_HINT_FRAMEBUFFER_ACCELERATION);
++ if (hint) {
++ if (*hint == '0' || SDL_strcasecmp(hint, "false") == 0) {
++ attempt_texture_framebuffer = SDL_FALSE;
++ }
++ }
++
+ if (_this->is_dummy) { /* dummy driver never has GPU support, of course. */
+ attempt_texture_framebuffer = SDL_FALSE;
+ }
+--
+2.30.2
+
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2/optional-libunwind-generic.patch b/poky/meta/recipes-graphics/libsdl2/libsdl2/optional-libunwind-generic.patch
deleted file mode 100644
index 757b99a5f6..0000000000
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2/optional-libunwind-generic.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Do not error when libunwind-generic is not found, Not all
-implementations of libunwind will provide this library therefore
-do not make it hard error if its not found.
-
-Upstream-Status: Submitted [https://github.com/libsdl-org/SDL/pull/5194]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1358,7 +1358,7 @@ elseif(UNIX AND NOT APPLE AND NOT ANDROI
- if(HAVE_LIBUNWIND_H)
- # We've already found the header, so REQUIRE the lib to be present
- pkg_search_module(UNWIND REQUIRED libunwind)
-- pkg_search_module(UNWIND_GENERIC REQUIRED libunwind-generic)
-+ pkg_search_module(UNWIND_GENERIC libunwind-generic)
- list(APPEND EXTRA_LIBS ${UNWIND_LIBRARIES} ${UNWIND_GENERIC_LIBRARIES})
- endif()
- endif()
diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb
index c1c827af79..b112d63784 100644
--- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.20.bb
+++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.22.bb
@@ -22,14 +22,13 @@ LIC_FILES_CHKSUM:append = " ${@bb.utils.contains('PACKAGECONFIG', 'arm-neon', 'f
PROVIDES = "virtual/libsdl2"
SRC_URI = "http://www.libsdl.org/release/SDL2-${PV}.tar.gz \
- file://optional-libunwind-generic.patch \
- file://0001-sdlchecks.cmake-pass-cflags-to-the-appropriate-cmake.patch \
+ file://0001-video-restore-ability-to-disable-fb-accel-via-hint.patch \
"
SRC_URI:append:class-native = " file://0001-Disable-libunwind-in-native-OE-builds-by-not-looking.patch"
S = "${WORKDIR}/SDL2-${PV}"
-SRC_URI[sha256sum] = "c56aba1d7b5b0e7e999e4a7698c70b63a3394ff9704b5f6e1c57e0c16f04dd06"
+SRC_URI[sha256sum] = "fe7cbf3127882e3fc7259a75a0cb585620272c51745d3852ab9dd87960697f2e"
inherit cmake lib_package binconfig-disabled pkgconfig
@@ -44,9 +43,7 @@ EXTRA_OECMAKE = "-DSDL_OSS=OFF -DSDL_ESD=OFF -DSDL_ARTS=OFF \
-DSDL_PTHREADS=ON \
-DSDL_RPATH=OFF \
-DSDL_SNDIO=OFF \
- -DSDL_X11_XVM=OFF \
-DSDL_X11_XCURSOR=OFF \
- -DSDL_X11_XINERAMA=OFF \
-DSDL_X11_XDBE=OFF \
-DSDL_X11_XFIXES=OFF \
-DSDL_X11_XINPUT=OFF \
@@ -73,6 +70,9 @@ PACKAGECONFIG[directfb] = "-DSDL_DIRECTFB=ON,-DSDL_DIRECTFB=OFF,directfb,direc
PACKAGECONFIG[gles2] = "-DSDL_OPENGLES=ON,-DSDL_OPENGLES=OFF,virtual/libgles2"
PACKAGECONFIG[jack] = "-DSDL_JACK=ON,-DSDL_JACK=OFF,jack"
PACKAGECONFIG[kmsdrm] = "-DSDL_KMSDRM=ON,-DSDL_KMSDRM=OFF,libdrm virtual/libgbm"
+# The hidraw support doesn't catch Xbox, PS4 and Nintendo controllers,
+# so we'll just use libusb when it's available.
+PACKAGECONFIG[libusb] = ",,libusb1"
PACKAGECONFIG[opengl] = "-DSDL_OPENGL=ON,-DSDL_OPENGL=OFF,virtual/egl"
PACKAGECONFIG[pulseaudio] = "-DSDL_PULSEAUDIO=ON,-DSDL_PULSEAUDIO=OFF,pulseaudio"
PACKAGECONFIG[wayland] = "-DSDL_WAYLAND=ON,-DSDL_WAYLAND=OFF,wayland-native wayland wayland-protocols libxkbcommon"
diff --git a/poky/meta/recipes-graphics/mesa/mesa-gl_22.0.0.bb b/poky/meta/recipes-graphics/mesa/mesa-gl_22.0.3.bb
index f2bc8f6b5b..f2bc8f6b5b 100644
--- a/poky/meta/recipes-graphics/mesa/mesa-gl_22.0.0.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa-gl_22.0.3.bb
diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc
index 21fa1a6a9e..a5de6f9dbf 100644
--- a/poky/meta/recipes-graphics/mesa/mesa.inc
+++ b/poky/meta/recipes-graphics/mesa/mesa.inc
@@ -22,7 +22,7 @@ SRC_URI = "https://mesa.freedesktop.org/archive/mesa-${PV}.tar.xz \
file://0001-util-format-Check-for-NEON-before-using-it.patch \
"
-SRC_URI[sha256sum] = "e6c41928b5b9917485bd67cec22d15e62cad7a358bf4c711a647979987601250"
+SRC_URI[sha256sum] = "9f2b30f5276a9abaf71aafc6979685e2636189de1a87aea2c9e69744a6d0ebb9"
UPSTREAM_CHECK_GITTAGREGEX = "mesa-(?P<pver>\d+(\.\d+)+)"
@@ -286,7 +286,7 @@ PACKAGESPLITFUNCS:prepend = "mesa_populate_packages "
PACKAGES_DYNAMIC += "^mesa-driver-.*"
PACKAGES_DYNAMIC:class-native = "^mesa-driver-.*-native"
-FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d/00-mesa-defaults.conf"
+FILES:mesa-megadriver = "${libdir}/dri/* ${datadir}/drirc.d"
FILES:mesa-vulkan-drivers = "${libdir}/libvulkan_*.so ${datadir}/vulkan"
FILES:${PN}-vdpau-drivers = "${libdir}/vdpau/*.so.*"
FILES:libegl-mesa = "${libdir}/libEGL.so.*"
diff --git a/poky/meta/recipes-graphics/mesa/mesa_22.0.0.bb b/poky/meta/recipes-graphics/mesa/mesa_22.0.3.bb
index 96e8aa38d6..96e8aa38d6 100644
--- a/poky/meta/recipes-graphics/mesa/mesa_22.0.0.bb
+++ b/poky/meta/recipes-graphics/mesa/mesa_22.0.3.bb
diff --git a/poky/meta/recipes-graphics/pango/pango_1.50.6.bb b/poky/meta/recipes-graphics/pango/pango_1.50.7.bb
index 93e1653464..727c170288 100644
--- a/poky/meta/recipes-graphics/pango/pango_1.50.6.bb
+++ b/poky/meta/recipes-graphics/pango/pango_1.50.7.bb
@@ -22,7 +22,7 @@ SRC_URI += "file://run-ptest \
file://0001-Skip-running-test-layout-test.patch \
"
-SRC_URI[archive.sha256sum] = "a998bcf36881c3ac20495d40bceb304f4eaa9175bd2967c85656434cbdafe86a"
+SRC_URI[archive.sha256sum] = "0477f369a3d4c695df7299a6989dc004756a7f4de27eecac405c6790b7e3ad33"
DEPENDS = "glib-2.0 glib-2.0-native fontconfig freetype virtual/libiconv cairo harfbuzz fribidi"
diff --git a/poky/meta/recipes-graphics/piglit/piglit_git.bb b/poky/meta/recipes-graphics/piglit/piglit_git.bb
index 436d1b28d3..28f76fed37 100644
--- a/poky/meta/recipes-graphics/piglit/piglit_git.bb
+++ b/poky/meta/recipes-graphics/piglit/piglit_git.bb
@@ -14,7 +14,7 @@ SRC_URI = "git://gitlab.freedesktop.org/mesa/piglit.git;protocol=https;branch=ma
"
UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "0d7481136080ffed96a33d31a04547012903ba25"
+SRCREV = "65892137809f7d0d4d7d65dd84af59902b3e7f1e"
# (when PV goes above 1.0 remove the trailing r)
PV = "1.0+gitr${SRCPV}"
diff --git a/poky/meta/recipes-graphics/spir/spirv-headers_1.3.204.1.bb b/poky/meta/recipes-graphics/spir/spirv-headers_1.3.211.0.bb
index 72416b441f..910ba668af 100644
--- a/poky/meta/recipes-graphics/spir/spirv-headers_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/spir/spirv-headers_1.3.211.0.bb
@@ -7,7 +7,7 @@ HOMEPAGE = "https://www.khronos.org/registry/spir-v"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=c938b85bceb8fb26c1a807f28a52ae2d"
-SRCREV = "b42ba6d92faf6b4938e6f22ddd186dbdacc98d78"
+SRCREV = "4995a2f2723c401eb0ea3e10c81298906bf1422b"
SRC_URI = "git://github.com/KhronosGroup/SPIRV-Headers;protocol=https;branch=master"
PE = "1"
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
diff --git a/poky/meta/recipes-graphics/spir/spirv-tools_1.3.204.1.bb b/poky/meta/recipes-graphics/spir/spirv-tools_1.3.211.0.bb
index 4c908d88c0..9804febbcd 100644
--- a/poky/meta/recipes-graphics/spir/spirv-tools_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/spir/spirv-tools_1.3.211.0.bb
@@ -7,8 +7,8 @@ SECTION = "graphics"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRCREV = "45dd184c790d6bfc78a5a74a10c37e888b1823fa"
-SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;branch=sdk-1.3.204;protocol=https"
+SRCREV = "7826e1941eab1aa66fbe84c48b95921bff402a96"
+SRC_URI = "git://github.com/KhronosGroup/SPIRV-Tools.git;branch=master;protocol=https"
PE = "1"
UPSTREAM_CHECK_GITTAGREGEX = "sdk-(?P<pver>\d+(\.\d+)+)"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.204.1.bb b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.211.0.bb
index 7397f40fb4..c74eb4cf5b 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-headers_1.3.211.0.bb
@@ -11,7 +11,7 @@ LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://github.com/KhronosGroup/Vulkan-Headers.git;branch=main;protocol=https"
-SRCREV = "1dace16d8044758d32736eb59802d171970e9448"
+SRCREV = "76f00ef6cbb1886eb1162d1fa39bee8b51e22ee8"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.204.1.bb b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.211.0.bb
index 8924ca34a6..cb4932ef79 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-loader_1.3.211.0.bb
@@ -9,8 +9,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=7dbefed23242760aa3475ee42801c5ac"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.3.204;protocol=https"
-SRCREV = "f3e995134211d3fd663febede48e740e44982e27"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Loader.git;branch=sdk-1.3.211;protocol=https"
+SRCREV = "bfb419161602361626e40a7a3af0a63e06bcf204"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb b/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
index 467295dbc0..57d3bd8fe5 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-samples_git.bb
@@ -11,7 +11,7 @@ SRC_URI = "gitsm://github.com/KhronosGroup/Vulkan-Samples.git;branch=master;prot
"
UPSTREAM_CHECK_COMMITS = "1"
-SRCREV = "2d20e243b8d2553b2a9d6c9a636bf9649b76ee03"
+SRCREV = "0cc04a63583769bd13bcc51229a5a263d59343df"
UPSTREAM_CHECK_GITTAGREGEX = "These are not the releases you're looking for"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.204.1.bb b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.211.0.bb
index ae062f3ee2..3cb4ccc23f 100644
--- a/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.204.1.bb
+++ b/poky/meta/recipes-graphics/vulkan/vulkan-tools_1.3.211.0.bb
@@ -6,8 +6,8 @@ SECTION = "libs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=3b83ef96387f14655fc854ddc3c6bd57"
-SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.3.204;protocol=https"
-SRCREV = "b9a87a24a814e443b1adfc5a6bc2e57243446f6c"
+SRC_URI = "git://github.com/KhronosGroup/Vulkan-Tools.git;branch=sdk-1.3.211;protocol=https"
+SRCREV = "4fdfd2b1187ab44f062d091ba3113c5e3eab5a1b"
S = "${WORKDIR}/git"
diff --git a/poky/meta/recipes-graphics/wayland/libinput_1.19.3.bb b/poky/meta/recipes-graphics/wayland/libinput_1.19.4.bb
index a7f13240d5..a7d0c4be69 100644
--- a/poky/meta/recipes-graphics/wayland/libinput_1.19.3.bb
+++ b/poky/meta/recipes-graphics/wayland/libinput_1.19.4.bb
@@ -16,7 +16,7 @@ SRC_URI = "http://www.freedesktop.org/software/${BPN}/${BP}.tar.xz \
file://run-ptest \
file://determinism.patch \
"
-SRC_URI[sha256sum] = "3cae78ccde19d7d0f387e58bc734d4d17ab5f6426f54a9e8b728c90b17baa068"
+SRC_URI[sha256sum] = "ff33a570b5a936c81e6c08389a8581c2665311d026ce3d225c88d09c49f9b440"
UPSTREAM_CHECK_REGEX = "libinput-(?P<pver>\d+\.\d+\.(?!9\d+)\d+)"
diff --git a/poky/meta/recipes-graphics/xorg-app/xauth_1.1.1.bb b/poky/meta/recipes-graphics/xorg-app/xauth_1.1.2.bb
index 48259a69ff..1ad18ef63b 100644
--- a/poky/meta/recipes-graphics/xorg-app/xauth_1.1.1.bb
+++ b/poky/meta/recipes-graphics/xorg-app/xauth_1.1.2.bb
@@ -8,7 +8,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5ec74dd7ea4d10c4715a7c44f159a40b"
DEPENDS += "libxau libxext libxmu"
PE = "1"
-SRC_URI[sha256sum] = "164ea0a29137b284a47b886ef2affcb0a74733bf3aad04f9b106b1a6c82ebd92"
+SRC_URI_EXT = "xz"
+SRC_URI[sha256sum] = "78ba6afd19536ced1dddb3276cba6e9555a211b468a06f95f6a97c62ff8ee200"
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.5.bb b/poky/meta/recipes-graphics/xorg-lib/libx11_1.8.bb
index 2a6f66957c..6d5a8626d6 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libx11_1.7.5.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libx11_1.8.bb
@@ -16,7 +16,7 @@ SRC_URI = "${XORG_MIRROR}/individual/lib/${XORG_PN}-${PV}.tar.xz"
SRC_URI += "file://disable_tests.patch \
"
-SRC_URI[sha256sum] = "5a1847e2e2c248e1a203a24a1338a5586d6f48472eac58f6f08539110a965151"
+SRC_URI[sha256sum] = "081bf42ebab023aa92cfdb20c7af8c5ae13d13e88a5e22f90f4453ef80bbdde4"
PROVIDES = "virtual/libx11"
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb/disable-check.patch b/poky/meta/recipes-graphics/xorg-lib/libxcb/disable-check.patch
deleted file mode 100644
index c0efbdc213..0000000000
--- a/poky/meta/recipes-graphics/xorg-lib/libxcb/disable-check.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-The "check" package is checked for without an explicit enable/disable option,
-which can lead to non-deterministic build issues with both check and libxslt.
-
-As the unit test suite is minimal at present, simply disable the test suite. In
-the future if the test suite is expanded this can be made conditional on the
-ptest DISTRO_FEATURE.
-
-Upstream-Status: Inappropriate
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-
-
-Index: libxcb-1.12/configure.ac
-===================================================================
---- libxcb-1.12.orig/configure.ac
-+++ libxcb-1.12/configure.ac
-@@ -36,7 +36,8 @@ if test x"$HAVE_DOT" = xno; then
- AC_MSG_WARN([dot not found - doxygen targets will be skipped])
- fi
-
--PKG_CHECK_MODULES(CHECK, [check >= 0.9.4], [HAVE_CHECK=yes], [HAVE_CHECK=no])
-+dnl PKG_CHECK_MODULES(CHECK, [check >= 0.9.4], [HAVE_CHECK=yes], [HAVE_CHECK=no])
-+HAVE_CHECK=no
- AM_CONDITIONAL(HAVE_CHECK, test x$HAVE_CHECK = xyes)
-
- XSLTPROC=no
diff --git a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.15.bb
index 5341bbd4bc..839577326e 100644
--- a/poky/meta/recipes-graphics/xorg-lib/libxcb_1.14.bb
+++ b/poky/meta/recipes-graphics/xorg-lib/libxcb_1.15.bb
@@ -9,11 +9,9 @@ SECTION = "x11/libs"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7"
-SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.xz \
- file://disable-check.patch \
- "
+SRC_URI = "http://xcb.freedesktop.org/dist/libxcb-${PV}.tar.xz"
-SRC_URI[sha256sum] = "a55ed6db98d43469801262d81dc2572ed124edc3db31059d4e9916eb9f844c34"
+SRC_URI[sha256sum] = "cc38744f817cf6814c847e2df37fcb8997357d72fa4bcbc228ae0fe47219a059"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.15.bb
index e530a055ab..f050ed366c 100644
--- a/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.14.1.bb
+++ b/poky/meta/recipes-graphics/xorg-proto/xcb-proto_1.15.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d763b081cb10c223435b01e00dc0aba7 \
file://src/dri2.xml;beginline=2;endline=28;md5=f8763b13ff432e8597e0d610cf598e65"
SRC_URI = "https://xorg.freedesktop.org/archive/individual/proto/${BP}.tar.xz"
-SRC_URI[sha256sum] = "f04add9a972ac334ea11d9d7eb4fc7f8883835da3e4859c9afa971efdf57fcc3"
+SRC_URI[sha256sum] = "d34c3b264e8365d16fa9db49179cfa3e9952baaf9275badda0f413966b65955f"
inherit autotools pkgconfig python3native
diff --git a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.5.bb b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2022.1.bb
index 8f1ed36291..7786318476 100644
--- a/poky/meta/recipes-graphics/xorg-proto/xorgproto_2021.5.bb
+++ b/poky/meta/recipes-graphics/xorg-proto/xorgproto_2022.1.bb
@@ -9,7 +9,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING-x11proto;md5=dfc4bd2b0568b31725b85b0604e69b56"
SRC_URI = "${XORG_MIRROR}/individual/proto/${BP}.tar.bz2"
-SRC_URI[sha256sum] = "aa2f663b8dbd632960b24f7477aa07d901210057f6ab1a1db5158732569ca015"
+SRC_URI[sha256sum] = "1d2dcc66963f234d2c1e1f8d98a0d3e8725149cdac0a263df4097593c48bc2a6"
inherit meson
diff --git a/poky/meta/recipes-graphics/xwayland/xwayland_22.1.0.bb b/poky/meta/recipes-graphics/xwayland/xwayland_22.1.1.bb
index 9769235ce6..b512b9932d 100644
--- a/poky/meta/recipes-graphics/xwayland/xwayland_22.1.0.bb
+++ b/poky/meta/recipes-graphics/xwayland/xwayland_22.1.1.bb
@@ -10,7 +10,7 @@ LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=5df87950af51ac2c5822094553ea1880"
SRC_URI = "https://www.x.org/archive/individual/xserver/xwayland-${PV}.tar.xz"
-SRC_URI[sha256sum] = "1752d6d0a930e71292b5a308d3811ebd54d8cc68cacff44de654265b8617a2bf"
+SRC_URI[sha256sum] = "f5d0e0ba37e19bb87c62f61da5970bd204939f2120620964bed4cc8495baa657"
UPSTREAM_CHECK_REGEX = "xwayland-(?P<pver>\d+(\.(?!90\d)\d+)+)\.tar"
diff --git a/poky/meta/recipes-kernel/linux-firmware/files/0001-Makefile-replace-mkdir-by-install.patch b/poky/meta/recipes-kernel/linux-firmware/files/0001-Makefile-replace-mkdir-by-install.patch
new file mode 100644
index 0000000000..b1ac5a16ab
--- /dev/null
+++ b/poky/meta/recipes-kernel/linux-firmware/files/0001-Makefile-replace-mkdir-by-install.patch
@@ -0,0 +1,84 @@
+From 71514e74f35f2b51ca24062573d6d913525b30db Mon Sep 17 00:00:00 2001
+From: Konrad Weihmann <kweihmann@outlook.com>
+Date: Mon, 9 May 2022 12:57:57 +0200
+Subject: [PATCH] Makefile: replace mkdir by install
+
+mkdir -p creates paths that are bound to user's settings and therefore
+can lead to different file mode bits of the base paths accross different
+machines.
+Use install instead, as this tool is not prone to such behavior.
+
+Signed-off-by: Konrad Weihmann <kweihmann@outlook.com>
+Upstream-Status: Submitted [https://lore.kernel.org/linux-firmware/PR2PR09MB310088EA719E6D7CA5C268F1A8C69@PR2PR09MB3100.eurprd09.prod.outlook.com/]
+---
+ Makefile | 2 +-
+ carl9170fw/toolchain/Makefile | 4 ++--
+ copy-firmware.sh | 6 +++---
+ 3 files changed, 6 insertions(+), 6 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index e1c362f..83a0ec6 100644
+--- a/Makefile
++++ b/Makefile
+@@ -9,5 +9,5 @@ check:
+ @./check_whence.py
+
+ install:
+- mkdir -p $(DESTDIR)$(FIRMWAREDIR)
++ install -d $(DESTDIR)$(FIRMWAREDIR)
+ ./copy-firmware.sh $(DESTDIR)$(FIRMWAREDIR)
+diff --git a/carl9170fw/toolchain/Makefile b/carl9170fw/toolchain/Makefile
+index 2b25ffe..aaea8e8 100644
+--- a/carl9170fw/toolchain/Makefile
++++ b/carl9170fw/toolchain/Makefile
+@@ -46,14 +46,14 @@ src/gcc-$(GCC_VER): src/$(GCC_TAR) src/newlib-$(NEWLIB_VER)
+ ln -s $(BASEDIR)/src/newlib-$(NEWLIB_VER)/libgloss $@
+
+ binutils: src/binutils-$(BINUTILS_VER)
+- mkdir -p build/binutils
++ install -d build/binutils
+ cd build/binutils; \
+ $(BASEDIR)/$</configure --target=sh-elf --prefix=$(BASEDIR)/inst; \
+ $(MAKE) -j3; \
+ $(MAKE) install
+
+ gcc: src/gcc-$(GCC_VER) binutils
+- mkdir -p build/gcc
++ install -d build/gcc
+ cd build/gcc; \
+ $(BASEDIR)/$</configure --target=sh-elf --prefix=$(BASEDIR)/inst -enable-languages=c --without-pkgversion --with-newlib; \
+ $(MAKE) -j3; \
+diff --git a/copy-firmware.sh b/copy-firmware.sh
+index 9b46b63..bbacb92 100755
+--- a/copy-firmware.sh
++++ b/copy-firmware.sh
+@@ -34,7 +34,7 @@ done
+ grep '^File:' WHENCE | sed -e's/^File: *//g' -e's/"//g' | while read f; do
+ test -f "$f" || continue
+ $verbose "copying file $f"
+- mkdir -p $destdir/$(dirname "$f")
++ install -d $destdir/$(dirname "$f")
+ cp -d "$f" $destdir/"$f"
+ done
+
+@@ -42,7 +42,7 @@ grep -E '^Link:' WHENCE | sed -e's/^Link: *//g' -e's/-> //g' | while read f d; d
+ if test -L "$f"; then
+ test -f "$destdir/$f" && continue
+ $verbose "copying link $f"
+- mkdir -p $destdir/$(dirname "$f")
++ install -d $destdir/$(dirname "$f")
+ cp -d "$f" $destdir/"$f"
+
+ if test "x$d" != "x"; then
+@@ -63,7 +63,7 @@ grep -E '^Link:' WHENCE | sed -e's/^Link: *//g' -e's/-> //g' | while read f d; d
+ fi
+ else
+ $verbose "creating link $f -> $d"
+- mkdir -p $destdir/$(dirname "$f")
++ install -d $destdir/$(dirname "$f")
+ ln -sf "$d" "$destdir/$f"
+ fi
+ done
+--
+2.25.1
+
diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220411.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220509.bb
index 89e1b8cbaf..6e328e5726 100644
--- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220411.bb
+++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20220509.bb
@@ -132,7 +132,7 @@ LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \
file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \
file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \
file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \
- file://WHENCE;md5=4cf67d71a21887c682c3989a4318745e \
+ file://WHENCE;md5=d3eb82686904888f8bbbe8d865371404 \
"
# These are not common licenses, set NO_GENERIC_LICENSE for them
@@ -203,9 +203,12 @@ NO_GENERIC_LICENSE[WHENCE] = "WHENCE"
PE = "1"
-SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz"
+SRC_URI = "\
+ ${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz \
+ file://0001-Makefile-replace-mkdir-by-install.patch \
+"
-SRC_URI[sha256sum] = "020b11f6412f4956f5a6f98de7d41867d2b30ea0ce81b1e2d206ec9840363849"
+SRC_URI[sha256sum] = "376e0b3d7b4f8aaa2abf7f5ab74803dcf14b06b94e3d841b1467cd9a2848255e"
inherit allarch
@@ -304,8 +307,9 @@ PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \
${PN}-qcom-license \
${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 ${PN}-qcom-venus-5.2 ${PN}-qcom-venus-5.4 \
${PN}-qcom-vpu-1.0 ${PN}-qcom-vpu-2.0 \
- ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 \
+ ${PN}-qcom-adreno-a2xx ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a4xx ${PN}-qcom-adreno-a530 \
${PN}-qcom-adreno-a630 ${PN}-qcom-adreno-a650 ${PN}-qcom-adreno-a660 \
+ ${PN}-qcom-apq8096-audio ${PN}-qcom-apq8096-modem \
${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \
${PN}-qcom-sm8250-audio ${PN}-qcom-sm8250-compute \
${PN}-amlogic-vdec-license ${PN}-amlogic-vdec \
@@ -962,11 +966,15 @@ FILES:${PN}-qcom-venus-5.2 = "${nonarch_base_libdir}/firmware/qcom/venus-5.2/*"
FILES:${PN}-qcom-venus-5.4 = "${nonarch_base_libdir}/firmware/qcom/venus-5.4/*"
FILES:${PN}-qcom-vpu-1.0 = "${nonarch_base_libdir}/firmware/qcom/vpu-1.0/*"
FILES:${PN}-qcom-vpu-2.0 = "${nonarch_base_libdir}/firmware/qcom/vpu-2.0/*"
-FILES:${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw"
+FILES:${PN}-qcom-adreno-a2xx = "${nonarch_base_libdir}/firmware/qcom/leia_*.fw"
+FILES:${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a3*_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw"
+FILES:${PN}-qcom-adreno-a4xx = "${nonarch_base_libdir}/firmware/qcom/a4*_*.fw"
FILES:${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*"
FILES:${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*"
FILES:${PN}-qcom-adreno-a650 = "${nonarch_base_libdir}/firmware/qcom/a650*.* ${nonarch_base_libdir}/firmware/qcom/sm8250/a650*.*"
FILES:${PN}-qcom-adreno-a660 = "${nonarch_base_libdir}/firmware/qcom/a660*.*"
+FILES:${PN}-qcom-apq8096-audio = "${nonarch_base_libdir}/firmware/qcom/apq8096/adsp*.*"
+FILES:${PN}-qcom-apq8096-modem = "${nonarch_base_libdir}/firmware/qcom/apq8096/mba.mbn ${nonarch_base_libdir}/firmware/qcom/apq8096/modem*.* ${nonarch_base_libdir}/firmware/qcom/apq8096/wlanmdsp.mbn"
FILES:${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*"
FILES:${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*"
FILES:${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn"
@@ -978,11 +986,15 @@ RDEPENDS:${PN}-qcom-venus-5.2 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-venus-5.4 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-vpu-1.0 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-vpu-2.0 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-adreno-a2xx = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-adreno-a3xx = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-adreno-a4xx = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-adreno-a530 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-adreno-a630 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-adreno-a650 = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-adreno-a660 = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-apq8096-audio = "${PN}-qcom-license"
+RDEPENDS:${PN}-qcom-apq8096-modem = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-sdm845-audio = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-sdm845-compute = "${PN}-qcom-license"
RDEPENDS:${PN}-qcom-sdm845-modem = "${PN}-qcom-license"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
index 3ff54b9ebb..ad206e4235 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.10.bb
@@ -11,13 +11,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "40a6731993d406d6c9fed43cb20c6a4f178ff2cc"
-SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623"
+SRCREV_machine ?= "a8d19259c63cbf1254fe545d0a1aacf8f82547ac"
+SRCREV_meta ?= "b368b4c1c8ee0e0e7573caa7f1596c3385ad855f"
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.10;destsuffix=${KMETA}"
-LINUX_VERSION ?= "5.10.109"
+LINUX_VERSION ?= "5.10.114"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb
index 87ccfc1f45..6bfb8deb1e 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.15.bb
@@ -11,13 +11,13 @@ python () {
raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
}
-SRCREV_machine ?= "29d051cc421a76432897019edc33edae35b16e39"
-SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6"
+SRCREV_machine ?= "b028c4baada43d48014d4350dd66debe7e4cf362"
+SRCREV_meta ?= "37891dc371e83a3451781dd81a8a85cccd60084b"
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.15;destsuffix=${KMETA}"
-LINUX_VERSION ?= "5.15.32"
+LINUX_VERSION ?= "5.15.38"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
index bbaa0ebc00..9a8e6ecffc 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.10.bb
@@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
-LINUX_VERSION ?= "5.10.109"
+LINUX_VERSION ?= "5.10.114"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
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 ?= "9524d0ca0feeeb4cb698e3c984f4391ccb4b8e19"
-SRCREV_machine ?= "bccf3a5f14511fb8ce6a9dd990216508d2c2ec6e"
-SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623"
+SRCREV_machine:qemuarm ?= "a0664baa09b1c6265bd404e4d3a7ceb14577dcb8"
+SRCREV_machine ?= "63b2e48029f00bfc90371adc378050181ba5d253"
+SRCREV_meta ?= "b368b4c1c8ee0e0e7573caa7f1596c3385ad855f"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb
index 43a5ad728a..0cf2d68d56 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.15.bb
@@ -5,7 +5,7 @@ KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
-LINUX_VERSION ?= "5.15.32"
+LINUX_VERSION ?= "5.15.38"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
@@ -14,8 +14,8 @@ DEPENDS += "openssl-native util-linux-native"
KMETA = "kernel-meta"
KCONF_BSP_AUDIT_LEVEL = "2"
-SRCREV_machine ?= "c3d54a67cbf3fb8e6df2d88c80e9d2c74f69aba4"
-SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6"
+SRCREV_machine ?= "7b1fe61102fd6efc26373305417cd683687eb7a0"
+SRCREV_meta ?= "37891dc371e83a3451781dd81a8a85cccd60084b"
PV = "${LINUX_VERSION}+git${SRCPV}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
index 06242ade68..ffd9538633 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.10.bb
@@ -13,23 +13,23 @@ KBRANCH:qemux86 ?= "v5.10/standard/base"
KBRANCH:qemux86-64 ?= "v5.10/standard/base"
KBRANCH:qemumips64 ?= "v5.10/standard/mti-malta64"
-SRCREV_machine:qemuarm ?= "dfeff112cafaf3a04da6cd60301d297406e1b77f"
-SRCREV_machine:qemuarm64 ?= "3641e4234255c71c33cb2d9422f54c17b70c8941"
-SRCREV_machine:qemumips ?= "7eead19134a43cf9ccc0fa9d75c45be2a7743f13"
-SRCREV_machine:qemuppc ?= "6e1d66b2a871be0450722a50fc087ff8ccbcddd7"
-SRCREV_machine:qemuriscv64 ?= "d2f7a595bf0b752275d503046494b668549cb151"
-SRCREV_machine:qemuriscv32 ?= "d2f7a595bf0b752275d503046494b668549cb151"
-SRCREV_machine:qemux86 ?= "d2f7a595bf0b752275d503046494b668549cb151"
-SRCREV_machine:qemux86-64 ?= "d2f7a595bf0b752275d503046494b668549cb151"
-SRCREV_machine:qemumips64 ?= "279f142932679a8ba212ebae4b9db851636a1fab"
-SRCREV_machine ?= "d2f7a595bf0b752275d503046494b668549cb151"
-SRCREV_meta ?= "2278ed571c14df6e87d8e01ac26f649d98020623"
+SRCREV_machine:qemuarm ?= "49e2af0d85dc824c7829427c18e06ad2b1abbb8d"
+SRCREV_machine:qemuarm64 ?= "2b403ec0a7f60be807890902dbd0d5467bdef545"
+SRCREV_machine:qemumips ?= "793de0c2e4a3aa0e2f3091af8ff06df35f156fb3"
+SRCREV_machine:qemuppc ?= "9875eb3923e3d20893774ee7304142e2ce5ab22b"
+SRCREV_machine:qemuriscv64 ?= "8ce5741d3f6c0aa649aca5f89ee8d1022f530437"
+SRCREV_machine:qemuriscv32 ?= "8ce5741d3f6c0aa649aca5f89ee8d1022f530437"
+SRCREV_machine:qemux86 ?= "8ce5741d3f6c0aa649aca5f89ee8d1022f530437"
+SRCREV_machine:qemux86-64 ?= "8ce5741d3f6c0aa649aca5f89ee8d1022f530437"
+SRCREV_machine:qemumips64 ?= "4c3d57cc8bec91ea6225a7c9f134fd97bc1e8e0d"
+SRCREV_machine ?= "8ce5741d3f6c0aa649aca5f89ee8d1022f530437"
+SRCREV_meta ?= "b368b4c1c8ee0e0e7573caa7f1596c3385ad855f"
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-5.10;destsuffix=${KMETA}"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.10.109"
+LINUX_VERSION ?= "5.10.114"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
@@ -50,6 +50,9 @@ KERNEL_FEATURES:append = " ${KERNEL_EXTRA_FEATURES}"
KERNEL_FEATURES:append:qemuall=" cfg/virtio.scc features/drm-bochs/drm-bochs.scc"
KERNEL_FEATURES:append:qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES:append:powerpc =" arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64 =" arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64le =" arch/powerpc/powerpc-debug.scc"
KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb
index 5cfa0c37d7..206cc0692d 100644
--- a/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb
+++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.15.bb
@@ -13,24 +13,24 @@ KBRANCH:qemux86 ?= "v5.15/standard/base"
KBRANCH:qemux86-64 ?= "v5.15/standard/base"
KBRANCH:qemumips64 ?= "v5.15/standard/mti-malta64"
-SRCREV_machine:qemuarm ?= "b6fd1a7dd80a336567fa30c1d674f0d5df9af836"
-SRCREV_machine:qemuarm64 ?= "387a676543764b59e38cf6b13d6474846fb07d78"
-SRCREV_machine:qemumips ?= "7c084cf3a700f7a2c68c8909501f4d35b3215e40"
-SRCREV_machine:qemuppc ?= "239f7c8f37bf9ade16325101df3c06a485ccc74e"
-SRCREV_machine:qemuriscv64 ?= "c9f3902d8069e32a8928153a38d8f6115194d128"
-SRCREV_machine:qemuriscv32 ?= "c9f3902d8069e32a8928153a38d8f6115194d128"
-SRCREV_machine:qemux86 ?= "c9f3902d8069e32a8928153a38d8f6115194d128"
-SRCREV_machine:qemux86-64 ?= "c9f3902d8069e32a8928153a38d8f6115194d128"
-SRCREV_machine:qemumips64 ?= "a4805fe749c9c56d18a60b5378674760ef0e85ed"
-SRCREV_machine ?= "c9f3902d8069e32a8928153a38d8f6115194d128"
-SRCREV_meta ?= "63e25b5717751b4b33685bd5991d10c52934a4c6"
+SRCREV_machine:qemuarm ?= "5a68f2d15d17f0f3c397e7f8c83f3f664f7037e5"
+SRCREV_machine:qemuarm64 ?= "00e666e6154fcdf52268f2a5a612b96afad073b0"
+SRCREV_machine:qemumips ?= "fb9e75076deade31754b7ad644952d63137e616b"
+SRCREV_machine:qemuppc ?= "49f6567f3b85a843e8b6042a79c58aab0bdbd0c9"
+SRCREV_machine:qemuriscv64 ?= "cc9695f5fd3b520464eb2ded66950734f308525c"
+SRCREV_machine:qemuriscv32 ?= "cc9695f5fd3b520464eb2ded66950734f308525c"
+SRCREV_machine:qemux86 ?= "cc9695f5fd3b520464eb2ded66950734f308525c"
+SRCREV_machine:qemux86-64 ?= "cc9695f5fd3b520464eb2ded66950734f308525c"
+SRCREV_machine:qemumips64 ?= "1ad01ab47ec056d4126798f6d57a33b65b2be49c"
+SRCREV_machine ?= "cc9695f5fd3b520464eb2ded66950734f308525c"
+SRCREV_meta ?= "37891dc371e83a3451781dd81a8a85cccd60084b"
# set your preferred provider of linux-yocto to 'linux-yocto-upstream', and you'll
# get the <version>/base branch, which is pure upstream -stable, and the same
# meta SRCREV as the linux-yocto-standard builds. Select your version using the
# normal PREFERRED_VERSION settings.
BBCLASSEXTEND = "devupstream:target"
-SRCREV_machine:class-devupstream ?= "e29be6724adbc9c3126d2a9550ec21f927f22f6d"
+SRCREV_machine:class-devupstream ?= "3fbf24b73f4a5bc8fd39a6b7a29145451c1039ce"
PN:class-devupstream = "linux-yocto-upstream"
KBRANCH:class-devupstream = "v5.15/base"
@@ -38,7 +38,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.15;destsuffix=${KMETA}"
LIC_FILES_CHKSUM = "file://COPYING;md5=6bc538ed5bd9a7fc9398086aedcd7e46"
-LINUX_VERSION ?= "5.15.32"
+LINUX_VERSION ?= "5.15.38"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
@@ -62,6 +62,9 @@ KERNEL_FEATURES:append:qemux86-64=" cfg/sound.scc cfg/paravirt_kvm.scc"
KERNEL_FEATURES:append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/scsi/scsi-debug.scc", "", d)}"
KERNEL_FEATURES:append = " ${@bb.utils.contains("DISTRO_FEATURES", "ptest", " features/gpio/mockup.scc", "", d)}"
+KERNEL_FEATURES:append:powerpc =" arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64 =" arch/powerpc/powerpc-debug.scc"
+KERNEL_FEATURES:append:powerpc64le =" arch/powerpc/powerpc-debug.scc"
INSANE_SKIP:kernel-vmlinux:qemuppc64 = "textrel"
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-sched-tracing-Append-prev_state-to-tp-args-inste.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-sched-tracing-Append-prev_state-to-tp-args-inste.patch
new file mode 100644
index 0000000000..b41053b6bc
--- /dev/null
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-fix-sched-tracing-Append-prev_state-to-tp-args-inste.patch
@@ -0,0 +1,59 @@
+From 9c5b8de32b5745f3ff31079c02da64595e101bee Mon Sep 17 00:00:00 2001
+From: Michael Jeanson <mjeanson@efficios.com>
+Date: Tue, 17 May 2022 11:46:29 -0400
+Subject: [PATCH] fix: sched/tracing: Append prev_state to tp args instead
+ (v5.18)
+
+See upstream commit :
+
+ commit 9c2136be0878c88c53dea26943ce40bb03ad8d8d
+ Author: Delyan Kratunov <delyank@fb.com>
+ Date: Wed May 11 18:28:36 2022 +0000
+
+ sched/tracing: Append prev_state to tp args instead
+
+ Commit fa2c3254d7cf (sched/tracing: Don't re-read p->state when emitting
+ sched_switch event, 2022-01-20) added a new prev_state argument to the
+ sched_switch tracepoint, before the prev task_struct pointer.
+
+ This reordering of arguments broke BPF programs that use the raw
+ tracepoint (e.g. tp_btf programs). The type of the second argument has
+ changed and existing programs that assume a task_struct* argument
+ (e.g. for bpf_task_storage access) will now fail to verify.
+
+ If we instead append the new argument to the end, all existing programs
+ would continue to work and can conditionally extract the prev_state
+ argument on supported kernel versions.
+
+
+Upstream-Status: Backport
+
+Change-Id: Ife2ec88a8bea2743562590cbd357068d7773863f
+Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
+Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
+---
+ include/instrumentation/events/sched.h | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/include/instrumentation/events/sched.h b/include/instrumentation/events/sched.h
+index 339bec94..c1c3df15 100644
+--- a/include/instrumentation/events/sched.h
++++ b/include/instrumentation/events/sched.h
+@@ -356,11 +356,11 @@ LTTNG_TRACEPOINT_EVENT_INSTANCE(sched_wakeup_template, sched_wakeup_new,
+ LTTNG_TRACEPOINT_EVENT(sched_switch,
+
+ TP_PROTO(bool preempt,
+- unsigned int prev_state,
+ struct task_struct *prev,
+- struct task_struct *next),
++ struct task_struct *next,
++ unsigned int prev_state),
+
+- TP_ARGS(preempt, prev_state, prev, next),
++ TP_ARGS(preempt, prev, next, prev_state),
+
+ TP_FIELDS(
+ ctf_array_text(char, prev_comm, prev->comm, TASK_COMM_LEN)
+--
+2.19.1
+
diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.3.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.3.bb
index 2b00534e53..a5e6b906d2 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.3.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.13.3.bb
@@ -20,6 +20,7 @@ SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \
file://0008-fix-scsi-core-Remove-scsi-scsi_request.h-v5.18.patch \
file://0009-Rename-genhd-wrapper-to-blkdev.patch \
file://0010-fix-mm-compaction-cleanup-the-compaction-trace-event.patch \
+ file://0001-fix-sched-tracing-Append-prev_state-to-tp-args-inste.patch \
"
# Use :append here so that the patch is applied also when using devupstream
diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.13.4.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.13.7.bb
index 0ea4da05ce..1a972ec836 100644
--- a/poky/meta/recipes-kernel/lttng/lttng-tools_2.13.4.bb
+++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.13.7.bb
@@ -39,7 +39,7 @@ SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \
file://disable-tests.patch \
"
-SRC_URI[sha256sum] = "565f3102410a53d484f4c8ff517978f1dc59f67f9d16f872f4357f3ca12200f6"
+SRC_URI[sha256sum] = "d17a02e8f178a7cf3403e3c9edfb90ad3a1628e20aa0b5131408ae47f722f08d"
inherit autotools ptest pkgconfig useradd python3-dir manpages systemd
@@ -113,7 +113,7 @@ do_install_ptest () {
for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do
cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f
case $f in
- *.so|userspace-probe-elf-binary)
+ *.so|userspace-probe-elf-*)
install -d ${D}${PTEST_PATH}/tests/$d/
ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f
# Remove any rpath/runpath to pass QA check.
@@ -124,6 +124,7 @@ do_install_ptest () {
done
chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary
+ chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/userspace-probe-elf-cxx-binary
chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libbar.so
chrpath --delete ${D}${PTEST_PATH}/tests/regression/ust/ust-dl/libfoo.so
@@ -185,4 +186,10 @@ do_install_ptest () {
INHIBIT_PACKAGE_STRIP_FILES = "\
${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary \
${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/.libs/userspace-probe-elf-binary \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/userspace-probe-elf-cxx-binary \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-cxx-binary/.libs/userspace-probe-elf-cxx-binary \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events/gen-syscall-events \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events/.libs/gen-syscall-events \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events-callstack/gen-syscall-events-callstack \
+ ${PKGD}${PTEST_PATH}/tests/utils/testapp/gen-syscall-events-callstack/.libs/gen-syscall-events-callstack \
"
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28778-gcc-warning-tweak-for-sprintf-precision-para.patch b/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28778-gcc-warning-tweak-for-sprintf-precision-para.patch
deleted file mode 100644
index 0801cb57ec..0000000000
--- a/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28778-gcc-warning-tweak-for-sprintf-precision-para.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-From b0422e9e5a539164af75cddcaeb01bceca56bf12 Mon Sep 17 00:00:00 2001
-From: "Frank Ch. Eigler" <fche@redhat.com>
-Date: Thu, 13 Jan 2022 18:33:15 -0500
-Subject: [PATCH] PR28778: gcc warning tweak for sprintf precision parameter
-
-A precision=-1 sentinel value got interpreted as UINT_MAX in a
-context, leading to diagnostics like:
-
-/usr/share/systemtap/runtime/vsprintf.c:341:23: error: 'strnlen' specified bound 4294967295 may exceed maximum object size 2147483647 [-Werror=stringop-overread]
-
-Adding a clamp_t() around the parameter field to keep it limited to
-STP_BUFFER_SIZE (8K by default), which is apprx. the limit for a
-single printf.
----
- runtime/vsprintf.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/runtime/vsprintf.c b/runtime/vsprintf.c
-index cd31a938b..606f685e8 100644
---- a/runtime/vsprintf.c
-+++ b/runtime/vsprintf.c
-@@ -338,7 +338,7 @@ _stp_vsprint_memory(char * str, char * end, const char * ptr,
- if (format == 's') {
- if ((unsigned long)ptr < PAGE_SIZE)
- ptr = "<NULL>";
-- len = strnlen(ptr, precision);
-+ len = strnlen(ptr, clamp_t(size_t, precision, 0, STP_BUFFER_SIZE));
- }
- else if (precision > 0)
- len = precision;
-@@ -410,7 +410,7 @@ _stp_vsprint_memory_size(const char * ptr, int width, int precision,
- if (format == 's') {
- if ((unsigned long)ptr < PAGE_SIZE)
- ptr = "<NULL>";
-- len = strnlen(ptr, precision);
-+ len = strnlen(ptr, clamp_t(size_t, precision, 0, STP_BUFFER_SIZE));
- }
- else if (precision > 0)
- len = precision;
---
-2.25.1
-
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28804-tune-default-stap-s-buffer-size-on-small-RAM.patch b/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28804-tune-default-stap-s-buffer-size-on-small-RAM.patch
deleted file mode 100644
index 931310db53..0000000000
--- a/poky/meta/recipes-kernel/systemtap/systemtap/0001-PR28804-tune-default-stap-s-buffer-size-on-small-RAM.patch
+++ /dev/null
@@ -1,84 +0,0 @@
-Upstream-Status: Backport
-Signed-off-by: Ross Burton <ross.burton@arm.com>
-
-PR28804: tune default stap -s ## buffer size on small RAM machines
-
-Insert a forgotten division by num_online_cpu() to adjust downward the
-calculated bufsize. Tweak normal defaults back to 128 * 2 * 64K
-(16MB) per CPU, as the stap man page indicates. This may need further
-tweaking when balancing against staprun consumption performance, but
-at least we have the docs lined up with the code at the moment.
-
-PR28804: tune default stap -s ## buffer size on small RAM machines
-
-Use si_meminfo to limit default buffer size. Note in the man page
-that the "-s ##" parameter is per-CPU.
-
-diff --git a/man/stap.1.in b/man/stap.1.in
-index 55dbc2c93..285a27b34 100644
---- a/man/stap.1.in
-+++ b/man/stap.1.in
-@@ -239,8 +239,8 @@ and average amount of time spent in each probe-point. Also shows
- the derivation for each probe-point.
- .TP
- .BI \-s " NUM"
--Use NUM megabyte buffers for kernel-to-user data transfer. On a
--multiprocessor in bulk mode, this is a per-processor amount.
-+Use NUM megabyte buffers for kernel-to-user data transfer per processor.
-+The default is 16MB, or less on smaller memory machines.
- .TP
- .BI \-I " DIR"
- Add the given directory to the tapset search directory. See the
-diff --git a/runtime/transport/transport.c b/runtime/transport/transport.c
-index 18ecccea2..44afff814 100644
---- a/runtime/transport/transport.c
-+++ b/runtime/transport/transport.c
-@@ -72,8 +72,11 @@ static inline void _stp_unlock_inode(struct inode *inode);
- #include "procfs.c"
- #include "control.c"
-
--static unsigned _stp_nsubbufs = 256;
--static unsigned _stp_subbuf_size = 8 * STP_BUFFER_SIZE; /* 64K */
-+/* set default buffer parameters. User may override these via stap -s #, and
-+ the runtime may auto-shrink it on low memory machines too. */
-+/* NB: Note default in man/stap.1.in */
-+static unsigned _stp_nsubbufs = 128;
-+static unsigned _stp_subbuf_size = 2 * STP_BUFFER_SIZE; /* 2 * 64K */
-
- /* module parameters */
- static int _stp_bufsize;
-@@ -602,17 +605,30 @@ static int _stp_transport_init(void)
- _stp_need_kallsyms_stext = 0;
- #endif
-
-- if (_stp_bufsize) {
-- unsigned size = _stp_bufsize * 1024 * 1024;
-+ if (_stp_bufsize == 0) { // option not specified?
-+ struct sysinfo si;
-+ long _stp_bufsize_avail;
-+ si_meminfo(&si);
-+ _stp_bufsize_avail = (long)((si.freeram + si.bufferram) / 4 / num_online_cpus())
-+ << PAGE_SHIFT; // limit to quarter of free ram total
-+ if ((_stp_nsubbufs * _stp_subbuf_size * num_online_cpus()) > _stp_bufsize_avail) {
-+ _stp_bufsize = max_t (int, 1, _stp_bufsize_avail / 1024 / 1024);
-+ dbug_trans(1, "Shrinking default _stp_bufsize to %d MB/cpu due to low free memory\n", _stp_bufsize);
-+ }
-+ }
-+
-+ if (_stp_bufsize) { // overridden by user or by si_meminfo heuristic?
-+ long size = _stp_bufsize * 1024 * 1024;
- _stp_subbuf_size = 65536;
-+ // bump up subbuf size from 64K to 1M to keep _stp_nsubbufs not too large
- while (size / _stp_subbuf_size > 64 &&
- _stp_subbuf_size < 1024 * 1024) {
- _stp_subbuf_size <<= 1;
- }
- _stp_nsubbufs = size / _stp_subbuf_size;
-- dbug_trans(1, "Using %d subbufs of size %d\n", _stp_nsubbufs, _stp_subbuf_size);
- }
--
-+ dbug_trans(1, "Using %d subbufs of size %d\n", _stp_nsubbufs, _stp_subbuf_size);
-+
- ret = _stp_transport_fs_init(THIS_MODULE->name);
- if (ret)
- goto err0;
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap/0001-gcc12-c-compatibility-re-tweak-for-rhel6-use-functio.patch b/poky/meta/recipes-kernel/systemtap/systemtap/0001-gcc12-c-compatibility-re-tweak-for-rhel6-use-functio.patch
deleted file mode 100644
index f885c44460..0000000000
--- a/poky/meta/recipes-kernel/systemtap/systemtap/0001-gcc12-c-compatibility-re-tweak-for-rhel6-use-functio.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-From f199d1982ef8a6c6d5c06c082d057b8793bcc6aa Mon Sep 17 00:00:00 2001
-From: Serhei Makarov <serhei@serhei.io>
-Date: Fri, 21 Jan 2022 18:21:46 -0500
-Subject: [PATCH] gcc12 c++ compatibility re-tweak for rhel6: use function
- pointer instead of lambdas instead of ptr_fun<>
-
-Saving 2 lines in ltrim/rtrim is probably not a good reason to drop
-compatibility with the RHEL6 system compiler. Actually declaring a
-named function and passing the function pointer is compatible with
-everything.
-
-Upstream-Status: Backport [https://sourceware.org/git/?p=systemtap.git;a=commit;h=f199d1982ef8a6c6d5c06c082d057b8793bcc6aa]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- util.cxx | 13 ++++++++-----
- 1 file changed, 8 insertions(+), 5 deletions(-)
-
---- a/util.cxx
-+++ b/util.cxx
-@@ -1757,21 +1757,24 @@ flush_to_stream (const string &fname, os
- return 1; // Failure
- }
-
-+int
-+not_isspace(unsigned char c)
-+{
-+ return !std::isspace(c);
-+}
-+
- // trim from start (in place)
- void
- ltrim(std::string &s)
- {
-- s.erase(s.begin(),
-- std::find_if(s.begin(), s.end(),
-- std::not1(std::ptr_fun<int, int>(std::isspace))));
-+ s.erase(s.begin(), std::find_if(s.begin(), s.end(), not_isspace));
- }
-
- // trim from end (in place)
- void
- rtrim(std::string &s)
- {
-- s.erase(std::find_if(s.rbegin(), s.rend(),
-- std::not1(std::ptr_fun<int, int>(std::isspace))).base(), s.end());
-+ s.erase(std::find_if(s.rbegin(), s.rend(), not_isspace).base(), s.end());
- }
-
- // trim from both ends (in place)
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap_git.bb b/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
index ce86d5274d..072fcb310a 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
+++ b/poky/meta/recipes-kernel/systemtap/systemtap_git.bb
@@ -6,9 +6,9 @@ HOMEPAGE = "https://sourceware.org/systemtap/"
require systemtap_git.inc
-SRC_URI += "file://0001-improve-reproducibility-for-c-compiling.patch \
- file://0001-staprun-address-ncurses-6.3-failures.patch \
- file://0001-gcc12-c-compatibility-re-tweak-for-rhel6-use-functio.patch \
+SRC_URI += " \
+ file://0001-improve-reproducibility-for-c-compiling.patch \
+ file://0001-staprun-address-ncurses-6.3-failures.patch \
"
DEPENDS = "elfutils"
diff --git a/poky/meta/recipes-kernel/systemtap/systemtap_git.inc b/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
index 5b5521b174..2b79aa8fca 100644
--- a/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/poky/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -1,14 +1,12 @@
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRCREV = "2e9f2f6967e44ce2bf8f34932b5bdd738ece2161"
-PV = "4.6"
+SRCREV = "0c335a75a789ff44b514e567d458881e15cc283d"
+PV = "4.7"
SRC_URI = "git://sourceware.org/git/systemtap.git;branch=master \
file://0001-Do-not-let-configure-write-a-python-location-into-th.patch \
file://0001-Install-python-modules-to-correct-library-dir.patch \
file://0001-staprun-stapbpf-don-t-support-installing-a-non-root.patch \
- file://0001-PR28778-gcc-warning-tweak-for-sprintf-precision-para.patch \
- file://0001-PR28804-tune-default-stap-s-buffer-size-on-small-RAM.patch \
"
COMPATIBLE_HOST = '(x86_64|i.86|powerpc|arm|aarch64|microblazeel|mips|riscv64).*-linux'
diff --git a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.bb b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.1.bb
index 96eef5e0fe..dd14f8df6f 100644
--- a/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.bb
+++ b/poky/meta/recipes-multimedia/ffmpeg/ffmpeg_5.0.1.bb
@@ -25,7 +25,7 @@ LIC_FILES_CHKSUM = "file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \
SRC_URI = "https://www.ffmpeg.org/releases/${BP}.tar.xz \
file://0001-libavutil-include-assembly-with-full-path-from-sourc.patch \
"
-SRC_URI[sha256sum] = "51e919f7d205062c0fd4fae6243a84850391115104ccf1efc451733bc0ac7298"
+SRC_URI[sha256sum] = "ef2efae259ce80a240de48ec85ecb062cecca26e4352ffb3fda562c21a93007b"
# Build fails when thumb is enabled: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7717
ARM_INSTRUCTION_SET:armv4 = "arm"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.2.bb
index ade7cb7dc3..4819a34b26 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gst-devtools_1.20.2.bb
@@ -12,7 +12,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-devtools/gst-devtools-${PV}
file://0001-connect-has-a-different-signature-on-musl.patch \
"
-SRC_URI[sha256sum] = "81f1c7ef105b8bdb63412638952f6320723b3161c96a80f113b020e2de554b2b"
+SRC_URI[sha256sum] = "b28dba953a92532208b30467ff91076295e266f65364b1b3482b4c4372d44b2a"
DEPENDS = "json-glib glib-2.0 glib-2.0-native gstreamer1.0 gstreamer1.0-plugins-base"
RRECOMMENDS:${PN} = "git"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.2.bb
index 16a298ab14..4ef9755c07 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-libav_1.20.2.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=69333daa044cb77e486cc36129f7a770 \
"
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-${PV}.tar.xz"
-SRC_URI[sha256sum] = "91a71fb633b75e1bd52e22a457845cb0ba563a2972ba5954ec88448f443a9fc7"
+SRC_URI[sha256sum] = "b5c531dd8413bf771c79dab66b8e389f20b3991f745115133f0fa0b8e32809f9"
S = "${WORKDIR}/gst-libav-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.2.bb
index 835f9a31fd..c4f5d719bb 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-omx_1.20.2.bb
@@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c \
SRC_URI = "https://gstreamer.freedesktop.org/src/gst-omx/gst-omx-${PV}.tar.xz"
-SRC_URI[sha256sum] = "86b52e30ebd0f59fcb5cf81a163211975f73ef32e5a6782562804646316bcd7c"
+SRC_URI[sha256sum] = "7efed7cc5b0acf9a669e38c5360a7892430a4e86c858daac6faa1ade2b151668"
S = "${WORKDIR}/gst-omx-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.2.bb
index 7c4665ae80..bb33e3822e 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.20.2.bb
@@ -11,7 +11,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad
file://0003-ensure-valid-sentinals-for-gst_structure_get-etc.patch \
file://0004-opencv-resolve-missing-opencv-data-dir-in-yocto-buil.patch \
"
-SRC_URI[sha256sum] = "09d3c2cf5911f0bc7da6bf557a55251779243d3de216b6a26cc90c445b423848"
+SRC_URI[sha256sum] = "4adc4c05f41051f8136b80cda99b0d049a34e777832f9fea7c5a70347658745b"
S = "${WORKDIR}/gst-plugins-bad-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.2.bb
index 0953261a98..e47851700a 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.20.2.bb
@@ -11,7 +11,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-ba
file://0003-viv-fb-Make-sure-config.h-is-included.patch \
file://0002-ssaparse-enhance-SSA-text-lines-parsing.patch \
"
-SRC_URI[sha256sum] = "96d8a6413ba9394fbec1217aeef63741a729d476a505a797c1d5337d8fa7c204"
+SRC_URI[sha256sum] = "ab0656f2ad4d38292a803e0cb4ca090943a9b43c8063f650b4d3e3606c317f17"
S = "${WORKDIR}/gst-plugins-base-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.2.bb
index 1f61d9a10e..6c52fb35b9 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-good_1.20.2.bb
@@ -8,7 +8,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-go
file://0001-qt-include-ext-qt-gstqtgl.h-instead-of-gst-gl-gstglf.patch \
"
-SRC_URI[sha256sum] = "3c66876f821d507bcdbebffb08b4f31a322727d6753f65a0f02c905ecb7084aa"
+SRC_URI[sha256sum] = "83589007bf002b8f9ef627718f308c16d83351905f0db8e85c3060f304143aae"
S = "${WORKDIR}/gst-plugins-good-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.2.bb
index b0746c087a..edc2ece979 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_1.20.2.bb
@@ -14,7 +14,7 @@ LICENSE_FLAGS = "commercial"
SRC_URI = " \
https://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-${PV}.tar.xz \
"
-SRC_URI[sha256sum] = "42035145e29983308d2828207bb4ef933ed0407bb587fb3a569738c6a57fdb19"
+SRC_URI[sha256sum] = "b43fb4df94459afbf67ec22003ca58ffadcd19e763f276dca25b64c848adb7bf"
S = "${WORKDIR}/gst-plugins-ugly-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.2.bb
index a8ae274631..34bc4bf4f4 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-python_1.20.2.bb
@@ -8,7 +8,7 @@ LICENSE = "LGPL-2.1-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=c34deae4e395ca07e725ab0076a5f740"
SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "ba6cd59faa3db3981d8c6982351c239d823c0b8e80b1acf58d2997b050289422"
+SRC_URI[sha256sum] = "853ea35a1088c762fb703e5aea9c30031a19222b59786b6599956e154620fa2f"
DEPENDS = "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
RDEPENDS:${PN} += "gstreamer1.0 gstreamer1.0-plugins-base python3-pygobject"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.2.bb
index 90d788ab80..fd6e16c2bf 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-rtsp-server_1.20.2.bb
@@ -10,7 +10,7 @@ PNREAL = "gst-rtsp-server"
SRC_URI = "https://gstreamer.freedesktop.org/src/${PNREAL}/${PNREAL}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "4745bc528ad7de711a41d576ddce7412266e66d05c4cfcc636c9ba4da5521509"
+SRC_URI[sha256sum] = "6a8e9d136bbee4fc03858a0680dd5cbf91e2e989c43da115858eb21fb1adbcab"
S = "${WORKDIR}/${PNREAL}-${PV}"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.2.bb
index 48b571f563..40dc21cf45 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0-vaapi_1.20.2.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c"
SRC_URI = "https://gstreamer.freedesktop.org/src/${REALPN}/${REALPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "87fbf6c537af9079c99a9aefe951da119e16e5bcc9cc8614f5035f062bf21137"
+SRC_URI[sha256sum] = "30126ab6e3105dab8da76bd9951a68886149bcd70c7fee0bac68de564de41d3d"
S = "${WORKDIR}/${REALPN}-${PV}"
DEPENDS = "libva gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
diff --git a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.1.bb b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.2.bb
index 81b94928d9..3aa9aa7048 100644
--- a/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.1.bb
+++ b/poky/meta/recipes-multimedia/gstreamer/gstreamer1.0_1.20.2.bb
@@ -23,7 +23,7 @@ SRC_URI = "https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-${PV}.tar.x
file://0004-tests-add-helper-script-to-run-the-installed_tests.patch;striplevel=3 \
file://0005-tests-remove-gstbin-test_watch_for_state_change-test.patch \
"
-SRC_URI[sha256sum] = "de094a404a3ad8f4977829ea87edf695a4da0b5c8f613ebe54ab414bac89f031"
+SRC_URI[sha256sum] = "df24e8792691a02dfe003b3833a51f1dbc6c3331ae625d143b17da939ceb5e0a"
PACKAGECONFIG ??= "${@bb.utils.contains('PTEST_ENABLED', '1', 'tests', '', d)} \
check \
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk/add_missing_include.patch b/poky/meta/recipes-sato/webkit/webkitgtk/add_missing_include.patch
deleted file mode 100644
index 8f59db3130..0000000000
--- a/poky/meta/recipes-sato/webkit/webkitgtk/add_missing_include.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Include locale.h for LC_MESSAGE definition
-
-This fixes build error
-Source/WebCore/accessibility/atspi/AccessibilityRootAtspi.cpp:115:51: error: use of undeclared identifier 'LC_MESSAGES'
- return g_variant_new_string(setlocale(LC_MESSAGES, nullptr));
- ^
-Upstream-Status: Submitted [https://bugs.webkit.org/show_bug.cgi?id=239030]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
-
---- a/Source/WebCore/accessibility/atspi/AccessibilityRootAtspi.cpp
-+++ b/Source/WebCore/accessibility/atspi/AccessibilityRootAtspi.cpp
-@@ -30,6 +30,7 @@
- #include "FrameView.h"
- #include "Page.h"
- #include <glib/gi18n-lib.h>
-+#include <locale.h>
-
- namespace WebCore {
-
diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.36.0.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.36.1.bb
index db8a565511..65757c36a7 100644
--- a/poky/meta/recipes-sato/webkit/webkitgtk_2.36.0.bb
+++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.36.1.bb
@@ -15,10 +15,9 @@ SRC_URI = "https://www.webkitgtk.org/releases/${BPN}-${PV}.tar.xz \
file://0001-Fix-build-without-opengl-or-es.patch \
file://reproducibility.patch \
file://0001-When-building-introspection-files-do-not-quote-CFLAG.patch \
- file://add_missing_include.patch \
"
-SRC_URI[sha256sum] = "b877cca1f105235f5dd57c7ac2b2c2be3c6b691ff444f93925c7254cf156c64d"
+SRC_URI[sha256sum] = "0149ea5fb1d20f2a9981677d45c952a047330001ea24a8dc29035239f12c0c8f"
inherit cmake pkgconfig gobject-introspection perlnative features_check upstream-version-is-even gtk-doc
diff --git a/poky/meta/recipes-support/atk/at-spi2-core_2.44.0.bb b/poky/meta/recipes-support/atk/at-spi2-core_2.44.1.bb
index e276eb7b8e..95a6c619f0 100644
--- a/poky/meta/recipes-support/atk/at-spi2-core_2.44.0.bb
+++ b/poky/meta/recipes-support/atk/at-spi2-core_2.44.1.bb
@@ -9,11 +9,9 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c"
MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
- file://08036a4c4491eea57d7b713bb4440f541584204b.patch \
- "
+SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz"
-SRC_URI[sha256sum] = "7eee3cf285b089060fd6b6e51b3eb2cacf752cca3a082c7f4c2c5ab841e51353"
+SRC_URI[sha256sum] = "4beb23270ba6cf7caf20b597354d75194d89afb69d2efcf15f4271688ba6f746"
X11DEPENDS = "virtual/libx11 libxi libxtst"
diff --git a/poky/meta/recipes-support/atk/files/08036a4c4491eea57d7b713bb4440f541584204b.patch b/poky/meta/recipes-support/atk/files/08036a4c4491eea57d7b713bb4440f541584204b.patch
deleted file mode 100644
index 0f002256c9..0000000000
--- a/poky/meta/recipes-support/atk/files/08036a4c4491eea57d7b713bb4440f541584204b.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 08036a4c4491eea57d7b713bb4440f541584204b Mon Sep 17 00:00:00 2001
-From: Mike Gorse <mgorse@suse.com>
-Date: Mon, 21 Mar 2022 10:19:03 -0500
-Subject: [PATCH] Fix build with X11 disabled
-
-Closes #51
-Upstream-Status: Backport
-Signed-off-by: Alexander Kanavin <alex@linutronix.de>
----
- registryd/deviceeventcontroller.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/registryd/deviceeventcontroller.c b/registryd/deviceeventcontroller.c
-index 8a321adc..3068ec4b 100644
---- a/registryd/deviceeventcontroller.c
-+++ b/registryd/deviceeventcontroller.c
-@@ -1720,16 +1720,16 @@ spi_dec_synth_keysym (SpiDEController *controller, long keysym)
- if (synth_mods != modifiers) {
- lock_mods = synth_mods & ~modifiers;
- spi_dec_plat_lock_modifiers (controller, lock_mods);
-- if (modifiers & LockMask)
-- spi_dec_plat_unlock_modifiers (controller, LockMask);
-+ if (modifiers & SPI_KEYMASK_SHIFTLOCK)
-+ spi_dec_plat_unlock_modifiers (controller, SPI_KEYMASK_SHIFTLOCK);
- }
- spi_dec_plat_synth_keycode_press (controller, key_synth_code);
- spi_dec_plat_synth_keycode_release (controller, key_synth_code);
-
- if (synth_mods != modifiers) {
- spi_dec_plat_unlock_modifiers (controller, lock_mods);
-- if (modifiers & LockMask)
-- spi_dec_plat_lock_modifiers (controller, LockMask);
-+ if (modifiers & SPI_KEYMASK_SHIFTLOCK)
-+ spi_dec_plat_lock_modifiers (controller, SPI_KEYMASK_SHIFTLOCK);
- }
- return TRUE;
- }
---
-GitLab
-
diff --git a/poky/meta/recipes-support/curl/curl_7.83.0.bb b/poky/meta/recipes-support/curl/curl_7.83.1.bb
index 07027a2f31..1d9de29a65 100644
--- a/poky/meta/recipes-support/curl/curl_7.83.0.bb
+++ b/poky/meta/recipes-support/curl/curl_7.83.1.bb
@@ -10,7 +10,7 @@ LICENSE = "MIT-open-group"
LIC_FILES_CHKSUM = "file://COPYING;md5=190c514872597083303371684954f238"
SRC_URI = "https://curl.se/download/${BP}.tar.xz"
-SRC_URI[sha256sum] = "bbff0e6b5047e773f3c3b084d80546cc1be4e354c09e419c2d0ef6116253511a"
+SRC_URI[sha256sum] = "2cb9c2356e7263a1272fd1435ef7cdebf2cd21400ec287b068396deb705c22c4"
# Curl has used many names over the years...
CVE_PRODUCT = "haxx:curl haxx:libcurl curl:curl curl:libcurl libcurl:libcurl daniel_stenberg:curl"
diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_208.bb b/poky/meta/recipes-support/diffoscope/diffoscope_212.bb
index 3c3b007d60..41f896d74f 100644
--- a/poky/meta/recipes-support/diffoscope/diffoscope_208.bb
+++ b/poky/meta/recipes-support/diffoscope/diffoscope_212.bb
@@ -12,7 +12,7 @@ PYPI_PACKAGE = "diffoscope"
inherit pypi setuptools3
-SRC_URI[sha256sum] = "2c5c0ac1159eefce158154849fe67f0f527dffc5295bfd3ca1aef14962ffcbcb"
+SRC_URI[sha256sum] = "744260ccf2bb869c58c50dfab68957dd494b12e446520993d0925b2394ea1db7"
RDEPENDS:${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic python3-rpm"
diff --git a/poky/meta/recipes-support/fribidi/fribidi_1.0.11.bb b/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb
index 56ca734558..b29c47822f 100644
--- a/poky/meta/recipes-support/fribidi/fribidi_1.0.11.bb
+++ b/poky/meta/recipes-support/fribidi/fribidi_1.0.12.bb
@@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=a916467b91076e631dd8edb7424769c7"
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.xz \
"
-SRC_URI[sha256sum] = "30f93e9c63ee627d1a2cedcf59ac34d45bf30240982f99e44c6e015466b4e73d"
+SRC_URI[sha256sum] = "0cd233f97fc8c67bb3ac27ce8440def5d3ffacf516765b91c2cc654498293495"
UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
diff --git a/poky/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch b/poky/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
index b58fbfe6f5..c4ede9ea5e 100644
--- a/poky/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
+++ b/poky/meta/recipes-support/gnupg/gnupg/0001-configure.ac-use-a-custom-value-for-the-location-of-.patch
@@ -1,4 +1,4 @@
-From bdde1faa774753e29d582d79186e08a38597de9e Mon Sep 17 00:00:00 2001
+From 89b98553084fbefe1ef2c7cbff9e72cf43144c49 Mon Sep 17 00:00:00 2001
From: Alexander Kanavin <alex.kanavin@gmail.com>
Date: Mon, 22 Jan 2018 18:00:21 +0200
Subject: [PATCH] configure.ac: use a custom value for the location of
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index 5cdd316..e5f2d6a 100644
+index d86c60e..65c22b2 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1962,7 +1962,7 @@ AC_DEFINE_UNQUOTED(GPGCONF_DISP_NAME, "GPGConf",
+@@ -1955,7 +1955,7 @@ AC_DEFINE_UNQUOTED(GPGCONF_DISP_NAME, "GPGConf",
AC_DEFINE_UNQUOTED(GPGTAR_NAME, "gpgtar", [The name of the gpgtar tool])
diff --git a/poky/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch b/poky/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch
deleted file mode 100644
index b4106d3620..0000000000
--- a/poky/meta/recipes-support/gnupg/gnupg/0003-dirmngr-uses-libgpg-error.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-From 9ace8f1b68ab708c44dce4c0152b975fbceb0398 Mon Sep 17 00:00:00 2001
-From: Saul Wold <sgw@linux.intel.com>
-Date: Wed, 16 Aug 2017 11:18:01 +0800
-Subject: [PATCH] dirmngr uses libgpg error
-
-Upstream-Status: Pending
-Signed-off-by: Saul Wold <sgw@linux.intel.com>
-
-Rebase to 2.1.23
-
-Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
-
----
- dirmngr/Makefile.am | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/dirmngr/Makefile.am b/dirmngr/Makefile.am
-index 77ca3f5..1446775 100644
---- a/dirmngr/Makefile.am
-+++ b/dirmngr/Makefile.am
-@@ -86,7 +86,7 @@ endif
- dirmngr_LDADD = $(libcommonpth) \
- $(DNSLIBS) $(LIBASSUAN_LIBS) \
- $(LIBGCRYPT_LIBS) $(KSBA_LIBS) $(NPTH_LIBS) \
-- $(NTBTLS_LIBS) $(LIBGNUTLS_LIBS) $(LIBINTL) $(LIBICONV) $(NETLIBS)
-+ $(NTBTLS_LIBS) $(LIBGNUTLS_LIBS) $(LIBINTL) $(LIBICONV) $(NETLIBS) $(GPG_ERROR_LIBS)
- if USE_LDAP
- dirmngr_LDADD += $(ldaplibs)
- endif
diff --git a/poky/meta/recipes-support/gnupg/gnupg/relocate.patch b/poky/meta/recipes-support/gnupg/gnupg/relocate.patch
index 74f48e9582..43999b8a6d 100644
--- a/poky/meta/recipes-support/gnupg/gnupg/relocate.patch
+++ b/poky/meta/recipes-support/gnupg/gnupg/relocate.patch
@@ -1,4 +1,4 @@
-From 1e34e1d477f843c0ee2f1a3fddc20201f0233e81 Mon Sep 17 00:00:00 2001
+From 89ae4f03307104689e1857d9857d452af6b35ac4 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Wed, 19 Sep 2018 14:44:40 +0100
Subject: [PATCH] Allow the environment to override where gnupg looks for its
@@ -14,10 +14,10 @@ Signed-off-by: Alexander Kanavin <alex@linutronix.de>
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/common/homedir.c b/common/homedir.c
-index 174d961..f4c25fb 100644
+index 260aeb2..1aeb08d 100644
--- a/common/homedir.c
+++ b/common/homedir.c
-@@ -1161,7 +1161,7 @@ gnupg_socketdir (void)
+@@ -1143,7 +1143,7 @@ gnupg_socketdir (void)
if (!name)
{
unsigned int dummy;
@@ -26,7 +26,7 @@ index 174d961..f4c25fb 100644
gpgrt_annotate_leaked_object (name);
}
-@@ -1193,7 +1193,7 @@ gnupg_sysconfdir (void)
+@@ -1175,7 +1175,7 @@ gnupg_sysconfdir (void)
if (dir)
return dir;
else
@@ -35,7 +35,7 @@ index 174d961..f4c25fb 100644
#endif /*!HAVE_W32_SYSTEM*/
}
-@@ -1229,7 +1229,7 @@ gnupg_bindir (void)
+@@ -1211,7 +1211,7 @@ gnupg_bindir (void)
return name;
}
else
@@ -44,7 +44,7 @@ index 174d961..f4c25fb 100644
#endif /*!HAVE_W32_SYSTEM*/
}
-@@ -1256,7 +1256,7 @@ gnupg_libexecdir (void)
+@@ -1238,7 +1238,7 @@ gnupg_libexecdir (void)
return name;
}
else
@@ -53,7 +53,7 @@ index 174d961..f4c25fb 100644
#endif /*!HAVE_W32_SYSTEM*/
}
-@@ -1286,7 +1286,7 @@ gnupg_libdir (void)
+@@ -1268,7 +1268,7 @@ gnupg_libdir (void)
return name;
}
else
@@ -62,7 +62,7 @@ index 174d961..f4c25fb 100644
#endif /*!HAVE_W32_SYSTEM*/
}
-@@ -1317,7 +1317,7 @@ gnupg_datadir (void)
+@@ -1299,7 +1299,7 @@ gnupg_datadir (void)
return name;
}
else
@@ -71,7 +71,7 @@ index 174d961..f4c25fb 100644
#endif /*!HAVE_W32_SYSTEM*/
}
-@@ -1349,7 +1349,7 @@ gnupg_localedir (void)
+@@ -1331,7 +1331,7 @@ gnupg_localedir (void)
return name;
}
else
diff --git a/poky/meta/recipes-support/gnupg/gnupg_2.3.4.bb b/poky/meta/recipes-support/gnupg/gnupg_2.3.6.bb
index d27bddb8bd..f35eb8c75a 100644
--- a/poky/meta/recipes-support/gnupg/gnupg_2.3.4.bb
+++ b/poky/meta/recipes-support/gnupg/gnupg_2.3.6.bb
@@ -16,7 +16,6 @@ inherit autotools gettext texinfo pkgconfig
UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
SRC_URI = "${GNUPG_MIRROR}/${BPN}/${BPN}-${PV}.tar.bz2 \
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 \
"
@@ -24,7 +23,7 @@ SRC_URI:append:class-native = " file://0001-configure.ac-use-a-custom-value-for-
file://relocate.patch"
SRC_URI:append:class-nativesdk = " file://relocate.patch"
-SRC_URI[sha256sum] = "f3468ecafb1d7f9ad7b51fd1db7aebf17ceb89d2efa8a05cf2f39b4d405402ae"
+SRC_URI[sha256sum] = "21f7fe2fc5c2f214184ab050977ec7a8e304e58bfae2ab098fec69f8fabda9c1"
EXTRA_OECONF = "--disable-ldap \
--disable-ccid-driver \
diff --git a/poky/meta/recipes-support/gnutls/gnutls_3.7.4.bb b/poky/meta/recipes-support/gnutls/gnutls_3.7.5.bb
index b34eb7f5f0..5feedb7fdc 100644
--- a/poky/meta/recipes-support/gnutls/gnutls_3.7.4.bb
+++ b/poky/meta/recipes-support/gnutls/gnutls_3.7.5.bb
@@ -23,7 +23,7 @@ SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar
file://arm_eabi.patch \
"
-SRC_URI[sha256sum] = "e6adbebcfbc95867de01060d93c789938cf89cc1d1f6ef9ef661890f6217451f"
+SRC_URI[sha256sum] = "1f85028475b4f255cc5b480af0c37e61eab43024c1507c8b75d6be506c0553ad"
inherit autotools texinfo pkgconfig gettext lib_package gtk-doc
diff --git a/poky/meta/recipes-support/libgcrypt/files/run-ptest b/poky/meta/recipes-support/libgcrypt/files/run-ptest
new file mode 100644
index 0000000000..4818a061b4
--- /dev/null
+++ b/poky/meta/recipes-support/libgcrypt/files/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+make -C build/tests runtest-TESTS
diff --git a/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb b/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb
index 251e0d0348..f7108013d3 100644
--- a/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb
+++ b/poky/meta/recipes-support/libgcrypt/libgcrypt_1.10.1.bb
@@ -7,10 +7,9 @@ BUGTRACKER = "https://bugs.g10code.com/gnupg/index"
SECTION = "libs"
# helper program gcryptrnd and getrandom are under GPL, rest LGPL
-LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later & GPL-3.0-or-later"
+LICENSE = "GPL-2.0-or-later & LGPL-2.1-or-later"
LICENSE:${PN} = "LGPL-2.1-or-later"
LICENSE:${PN}-dev = "GPL-2.0-or-later & LGPL-2.1-or-later"
-LICENSE:dumpsexp-dev = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff \
@@ -18,6 +17,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
"
DEPENDS = "libgpg-error"
+RDEPENDS:${PN}-ptest = "bash make"
UPSTREAM_CHECK_URI = "https://gnupg.org/download/index.html"
SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \
@@ -25,6 +25,7 @@ SRC_URI = "${GNUPG_MIRROR}/libgcrypt/libgcrypt-${PV}.tar.bz2 \
file://0003-tests-bench-slope.c-workaround-ICE-failure-on-mips-w.patch \
file://0002-libgcrypt-fix-building-error-with-O2-in-sysroot-path.patch \
file://0004-tests-Makefile.am-fix-undefined-reference-to-pthread.patch \
+ file://run-ptest \
"
SRC_URI[sha256sum] = "ef14ae546b0084cd84259f61a55e07a38c3b53afc0f546bffcef2f01baffe9de"
@@ -33,11 +34,13 @@ CVE_CHECK_IGNORE += "CVE-2018-12433 CVE-2018-12438"
BINCONFIG = "${bindir}/libgcrypt-config"
-inherit autotools texinfo binconfig-disabled pkgconfig
+inherit autotools texinfo binconfig-disabled pkgconfig ptest
EXTRA_OECONF = "--disable-asm"
EXTRA_OEMAKE:class-target = "LIBTOOLFLAGS='--tag=CC'"
+PRIVATE_LIBS:${PN}-ptest:append = " libgcrypt.so.20"
+
PACKAGECONFIG ??= "capabilities"
PACKAGECONFIG[capabilities] = "--with-capabilities,--without-capabilities,libcap"
@@ -52,9 +55,21 @@ do_install:append() {
install -m 0644 ${B}/src/libgcrypt.pc ${D}/${libdir}/pkgconfig/
}
-PACKAGES =+ "dumpsexp-dev"
+do_install_ptest() {
+ cp -r --preserve=mode,links -v ${S} ${D}${PTEST_PATH}
+ cp -r --preserve=mode,links -v ${B} ${D}${PTEST_PATH}
+ rm ${D}${PTEST_PATH}/build/cipher/gost-s-box
+ rm ${D}${PTEST_PATH}/build/doc/yat2m
+ rm ${D}${PTEST_PATH}/build/libtool
+ rm ${D}${PTEST_PATH}/build/config.status
+ rm ${D}${PTEST_PATH}/build/config.log
+ rm ${D}${PTEST_PATH}/build/src/mpicalc
+ rm ${D}${PTEST_PATH}/${BP}/autom4te* -rf
+ sed -i -e 's/Makefile:.*/Makefile-disabled:/' ${D}${PTEST_PATH}/build/Makefile
+ find ${D}/${PTEST_PATH}/build -name "*.cmake" -or -name "Makefile" \
+ | xargs sed -e "s|${WORKDIR}|${PTEST_PATH}|g" -e "s|${WORKDIR}/recipe-sysroot-native||g" -i
+}
-FILES:${PN}-dev += "${bindir}/hmac256"
-FILES:dumpsexp-dev += "${bindir}/dumpsexp"
+FILES:${PN}-dev += "${bindir}/hmac256 ${bindir}/dumpsexp"
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libnl/files/fa7f97f8982544c4fcb403893bae6701230d5165.patch b/poky/meta/recipes-support/libnl/files/fa7f97f8982544c4fcb403893bae6701230d5165.patch
new file mode 100644
index 0000000000..02662c939e
--- /dev/null
+++ b/poky/meta/recipes-support/libnl/files/fa7f97f8982544c4fcb403893bae6701230d5165.patch
@@ -0,0 +1,48 @@
+From fa7f97f8982544c4fcb403893bae6701230d5165 Mon Sep 17 00:00:00 2001
+From: Thomas Haller <thaller@redhat.com>
+Date: Fri, 15 Apr 2022 13:29:49 +0200
+Subject: [PATCH] build: avoid building check-direct with --disable-static
+
+"check-direct" needs to statically link with the libraries, because
+it wants to test internal ABI, which is hidden in the share libraries.
+When configuring with "--disable-static", static libs are not build
+and the test tool cannot be build.
+
+Just skip the test in that case.
+
+https://github.com/thom311/libnl/issues/306
+Upstream-Status: Backport [https://github.com/thom311/libnl/commit/fa7f97f8982544c4fcb403893bae6701230d5165]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ Makefile.am | 2 ++
+ configure.ac | 2 ++
+ 2 files changed, 4 insertions(+)
+
+diff --git a/Makefile.am b/Makefile.am
+index a6bcf553..2f5e0dfc 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -984,8 +984,10 @@ tests_check_all_LDADD = \
+ $(NULL)
+
+ if WITH_CHECK
++if ENABLE_STATIC
+ check_programs += tests/check-direct
+ endif
++endif
+
+ tests_check_direct_SOURCES = \
+ tests/check-direct.c \
+diff --git a/configure.ac b/configure.ac
+index 1f9ad0eb..0fd1cc0f 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -107,6 +107,8 @@ else
+ AC_CHECK_LIB([pthread], [pthread_mutex_lock], [], AC_MSG_ERROR([libpthread is required]))
+ fi
+
++AM_CONDITIONAL([ENABLE_STATIC], [test "$enable_static" != "no"])
++
+ AC_ARG_ENABLE([debug],
+ AS_HELP_STRING([--disable-debug], [Do not include debugging statements]),
+ [enable_debug="$enableval"], [enable_debug="yes"])
diff --git a/poky/meta/recipes-support/libnl/libnl_3.5.0.bb b/poky/meta/recipes-support/libnl/libnl_3.6.0.bb
index 41d7a9aed8..af3aa41040 100644
--- a/poky/meta/recipes-support/libnl/libnl_3.5.0.bb
+++ b/poky/meta/recipes-support/libnl/libnl_3.6.0.bb
@@ -18,10 +18,10 @@ SRC_URI = " \
https://github.com/thom311/${BPN}/releases/download/${BPN}${@d.getVar('PV').replace('.','_')}/${BP}.tar.gz \
file://enable-serial-tests.patch \
file://run-ptest \
+ file://fa7f97f8982544c4fcb403893bae6701230d5165.patch \
"
-SRC_URI[md5sum] = "74ba57b1b1d6f9f92268aa8141d8e8e4"
-SRC_URI[sha256sum] = "352133ec9545da76f77e70ccb48c9d7e5324d67f6474744647a7ed382b5e05fa"
+SRC_URI[sha256sum] = "532155fd011e5a805bd67121b87a01c757e2bb24112ac17e69cb86013b970009"
UPSTREAM_CHECK_URI = "https://github.com/thom311/${BPN}/releases"
@@ -54,6 +54,7 @@ RREPLACES:${PN}-genl = "libnl-genl2"
RCONFLICTS:${PN}-genl = "libnl-genl2"
RDEPENDS:${PN}-ptest += "libcheck"
+RRECOMMENDS:${PN}-ptest += "kernel-module-dummy kernel-module-bonding"
DEPENDS += "${@bb.utils.contains('PTEST_ENABLED', '1', 'libcheck', '', d)}"
# make sure the tests don't link against wrong so file
@@ -70,6 +71,8 @@ do_install_ptest(){
# upstream are not running these tests in their CI pipeline
# issue opened https://github.com/thom311/libnl/issues/270
install -m 0755 tests/.libs/* ${D}${PTEST_PATH}/
+ # contains build paths
+ rm ${D}${PTEST_PATH}/*.la
}
BBCLASSEXTEND = "native nativesdk"
diff --git a/poky/meta/recipes-support/libseccomp/libseccomp_2.5.3.bb b/poky/meta/recipes-support/libseccomp/libseccomp_2.5.4.bb
index e6260a7754..c76f3c3573 100644
--- a/poky/meta/recipes-support/libseccomp/libseccomp_2.5.3.bb
+++ b/poky/meta/recipes-support/libseccomp/libseccomp_2.5.4.bb
@@ -7,7 +7,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;beginline=0;endline=1;md5=8eac08d22113880357c
DEPENDS += "gperf-native"
-SRCREV = "57357d2741a3b3d3e8425889a6b79a130e0fa2f3"
+SRCREV = "f33f95014b36f97b42f0c2290e96d5c31647ed10"
SRC_URI = "git://github.com/seccomp/libseccomp.git;branch=release-2.5;protocol=https \
file://run-ptest \
@@ -51,4 +51,4 @@ FILES:${PN}-dbg += "${libdir}/${PN}/tests/.debug/* ${libdir}/${PN}/tools/.debug"
RDEPENDS:${PN}-ptest = "coreutils bash"
-PV = "2.5.3"
+PV = "2.5.4"
diff --git a/poky/meta/recipes-support/sqlite/sqlite3_3.38.2.bb b/poky/meta/recipes-support/sqlite/sqlite3_3.38.5.bb
index a37aff6fe7..d56a3a0209 100644
--- a/poky/meta/recipes-support/sqlite/sqlite3_3.38.2.bb
+++ b/poky/meta/recipes-support/sqlite/sqlite3_3.38.5.bb
@@ -4,7 +4,7 @@ LICENSE = "PD"
LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=786d3dc581eff03f4fd9e4a77ed00c66"
SRC_URI = "http://www.sqlite.org/2022/sqlite-autoconf-${SQLITE_PV}.tar.gz"
-SRC_URI[sha256sum] = "e7974aa1430bad690a5e9f79a6ee5c8492ada8269dc675875ad0fb747d7cada4"
+SRC_URI[sha256sum] = "5af07de982ba658fd91a03170c945f99c971f6955bc79df3266544373e39869c"
# -19242 is only an issue in specific development branch commits
CVE_CHECK_IGNORE += "CVE-2019-19242"
diff --git a/poky/meta/recipes-support/vim/vim.inc b/poky/meta/recipes-support/vim/vim.inc
index 21ff036cf4..c5922b7fcd 100644
--- a/poky/meta/recipes-support/vim/vim.inc
+++ b/poky/meta/recipes-support/vim/vim.inc
@@ -21,8 +21,8 @@ SRC_URI = "git://github.com/vim/vim.git;branch=master;protocol=https \
file://racefix.patch \
"
-PV .= ".4681"
-SRCREV = "15f74fab653a784548d5d966644926b47ba2cfa7"
+PV .= ".4912"
+SRCREV = "a7583c42cd6b64fd276a5d7bb0db5ce7bfafa730"
# Remove when 8.3 is out
UPSTREAM_VERSION_UNKNOWN = "1"
diff --git a/poky/meta/recipes-support/vte/vte_0.66.2.bb b/poky/meta/recipes-support/vte/vte_0.68.0.bb
index af1c47cf80..fc4324872d 100644
--- a/poky/meta/recipes-support/vte/vte_0.66.2.bb
+++ b/poky/meta/recipes-support/vte/vte_0.68.0.bb
@@ -21,7 +21,7 @@ inherit gnomebase gtk-doc features_check upstream-version-is-even gobject-intros
# vapigen.m4 is required when vala is not present (but the one from vala should be used normally)
SRC_URI += "file://0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch \
file://0001-Makefile.docs-correctly-substitute-gtkdoc-qemu-wrapp.patch"
-SRC_URI[archive.sha256sum] = "e89974673a72a0a06edac6d17830b82bb124decf0cb3b52cebc92ec3ff04d976"
+SRC_URI[archive.sha256sum] = "13e7d4789ca216a33780030d246c9b13ddbfd04094c6316eea7ff92284dd1749"
ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
diff --git a/poky/meta/site/common-musl b/poky/meta/site/common-musl
index d990c4e072..86aed4a38c 100644
--- a/poky/meta/site/common-musl
+++ b/poky/meta/site/common-musl
@@ -28,6 +28,9 @@ glib_cv_have_qsort_r=${glib_cv_have_qsort_r=yes}
#dbus-glib
ac_cv_have_abstract_sockets=${ac_cv_have_abstract_sockets=yes}
+# bash
+bash_cv_getcwd_malloc=${bash_cv_getcwd_malloc=yes}
+
# coreutils
fu_cv_sys_stat_statfs2_bsize=${fu_cv_sys_stat_statfs2_bsize=yes}
gl_cv_func_getcwd_abort_bug=${gl_cv_func_getcwd_abort_bug=no}
diff --git a/poky/scripts/autobuilder-worker-prereq-tests b/poky/scripts/autobuilder-worker-prereq-tests
index 82e9a77bd5..572227dccd 100755
--- a/poky/scripts/autobuilder-worker-prereq-tests
+++ b/poky/scripts/autobuilder-worker-prereq-tests
@@ -51,16 +51,31 @@ if (( $WATCHES < 65000 )); then
echo 'Need to increase watches (echo fs.inotify.max_user_watches=65536 | sudo tee -a /etc/sysctl.conf'
exit 1
fi
+OPEN_FILES=$(ulimit -n)
+if (( $OPEN_FILES < 65535 )); then
+ echo 'Increase maximum open files in /etc/security/limits.conf'
+ echo '* soft nofile 131072'
+ echo '* hard nofile 131072'
+ exit 1
+fi
+MAX_PROCESSES=$(ulimit -u)
+if (( $MAX_PROCESSES < 514542 )); then
+ echo 'Increase maximum user processes in /etc/security/limits.conf'
+ echo '* hard nproc 515294'
+ echo '* soft nproc 514543'
+ exit 1
+fi
+
mkdir -p tmp/deploy/images/qemux86-64
pushd tmp/deploy/images/qemux86-64
if [ ! -e core-image-minimal-qemux86-64.ext4 ]; then
- wget http://downloads.yoctoproject.org/releases/yocto/yocto-2.5.1/machines/qemu/qemux86-64/core-image-minimal-qemux86-64.ext4
+ wget http://downloads.yoctoproject.org/releases/yocto/yocto-4.0/machines/qemu/qemux86-64/core-image-minimal-qemux86-64.ext4
fi
if [ ! -e core-image-minimal-qemux86-64.qemuboot.conf ]; then
- wget http://downloads.yoctoproject.org/releases/yocto/yocto-2.5.1/machines/qemu/qemux86-64/core-image-minimal-qemux86-64.qemuboot.conf
+ wget http://downloads.yoctoproject.org/releases/yocto/yocto-4.0/machines/qemu/qemux86-64/core-image-minimal-qemux86-64.qemuboot.conf
fi
if [ ! -e bzImage-qemux86-64.bin ]; then
- wget http://downloads.yoctoproject.org/releases/yocto/yocto-2.5.1/machines/qemu/qemux86-64/bzImage-qemux86-64.bin
+ wget http://downloads.yoctoproject.org/releases/yocto/yocto-4.0/machines/qemu/qemux86-64/bzImage-qemux86-64.bin
fi
popd
bitbake qemu-helper-native
diff --git a/poky/scripts/contrib/patchreview.py b/poky/scripts/contrib/patchreview.py
index dc417b4c55..85d2169ad1 100755
--- a/poky/scripts/contrib/patchreview.py
+++ b/poky/scripts/contrib/patchreview.py
@@ -222,6 +222,7 @@ if __name__ == "__main__":
row = collections.Counter()
row["total"] = len(results)
row["date"] = subprocess.check_output(["git", "-C", args.directory, "show", "-s", "--pretty=format:%cd", "--date=format:%s"]).decode("utf-8").strip()
+ row["commit"] = subprocess.check_output(["git", "-C", args.directory, "show", "-s", "--pretty=format:%H"]).decode("utf-8").strip()
for r in results.values():
if r.upstream_status in status_values:
row[r.upstream_status] += 1
@@ -231,7 +232,7 @@ if __name__ == "__main__":
row['malformed-sob'] += 1
data.append(row)
- json.dump(data, open(args.json, "w"))
+ json.dump(data, open(args.json, "w"), sort_keys=True, indent="\t")
if args.histogram:
print()
diff --git a/poky/scripts/git-intercept/git b/poky/scripts/git
index 8adf5c9ecb..644055e540 100755
--- a/poky/scripts/git-intercept/git
+++ b/poky/scripts/git
@@ -10,7 +10,14 @@ os.environ['PSEUDO_UNLOAD'] = '1'
# calculate path to the real 'git'
path = os.environ['PATH']
-path = path.replace(os.path.dirname(sys.argv[0]), '')
+# we need to remove our path but also any other copy of this script which
+# may be present, e.g. eSDK.
+replacements = [os.path.dirname(sys.argv[0])]
+for p in path.split(":"):
+ if p.endswith("/scripts"):
+ replacements.append(p)
+for r in replacements:
+ path = path.replace(r, '/ignoreme')
real_git = shutil.which('git', path=path)
if len(sys.argv) == 1:
diff --git a/poky/scripts/lib/wic/help.py b/poky/scripts/lib/wic/help.py
index 4ff7470a6a..73e3380cde 100644
--- a/poky/scripts/lib/wic/help.py
+++ b/poky/scripts/lib/wic/help.py
@@ -940,6 +940,12 @@ DESCRIPTION
quotes. If not specified, the default string is
"defaults".
+ --fspassno: Specifies the order in which filesystem checks are done
+ at boot time by fsck. See fs_passno parameter of
+ fstab(5). This parameter will be copied into the
+ /etc/fstab file of the installed system. If not
+ specified the default value of "0" will be used.
+
--label label: Specifies the label to give to the filesystem
to be made on the partition. If the given
label is already in use by another filesystem,
diff --git a/poky/scripts/lib/wic/ksparser.py b/poky/scripts/lib/wic/ksparser.py
index 0df9eb0d05..a49b7b97c4 100644
--- a/poky/scripts/lib/wic/ksparser.py
+++ b/poky/scripts/lib/wic/ksparser.py
@@ -155,6 +155,7 @@ class KickStart():
part.add_argument('--change-directory')
part.add_argument("--extra-space", type=sizetype("M"))
part.add_argument('--fsoptions', dest='fsopts')
+ part.add_argument('--fspassno', dest='fspassno')
part.add_argument('--fstype', default='vfat',
choices=('ext2', 'ext3', 'ext4', 'btrfs',
'squashfs', 'vfat', 'msdos', 'erofs',
diff --git a/poky/scripts/lib/wic/partition.py b/poky/scripts/lib/wic/partition.py
index 09e491dd49..e50871b8d7 100644
--- a/poky/scripts/lib/wic/partition.py
+++ b/poky/scripts/lib/wic/partition.py
@@ -33,6 +33,7 @@ class Partition():
self.include_path = args.include_path
self.change_directory = args.change_directory
self.fsopts = args.fsopts
+ self.fspassno = args.fspassno
self.fstype = args.fstype
self.label = args.label
self.use_label = args.use_label
diff --git a/poky/scripts/lib/wic/plugins/imager/direct.py b/poky/scripts/lib/wic/plugins/imager/direct.py
index 4d0b836ef6..da483daed5 100644
--- a/poky/scripts/lib/wic/plugins/imager/direct.py
+++ b/poky/scripts/lib/wic/plugins/imager/direct.py
@@ -138,8 +138,9 @@ class DirectPlugin(ImagerPlugin):
device_name = "/dev/%s%s%d" % (part.disk, prefix, part.realnum)
opts = part.fsopts if part.fsopts else "defaults"
+ passno = part.fspassno if part.fspassno else "0"
line = "\t".join([device_name, part.mountpoint, part.fstype,
- opts, "0", "0"]) + "\n"
+ opts, "0", passno]) + "\n"
fstab_lines.append(line)
updated = True
diff --git a/poky/scripts/lib/wic/plugins/source/rootfs.py b/poky/scripts/lib/wic/plugins/source/rootfs.py
index 2e34e715ca..25bb41dd70 100644
--- a/poky/scripts/lib/wic/plugins/source/rootfs.py
+++ b/poky/scripts/lib/wic/plugins/source/rootfs.py
@@ -50,7 +50,7 @@ class RootfsPlugin(SourcePlugin):
@staticmethod
def __get_rootfs_dir(rootfs_dir):
- if os.path.isdir(rootfs_dir):
+ if rootfs_dir and os.path.isdir(rootfs_dir):
return os.path.realpath(rootfs_dir)
image_rootfs_dir = get_bitbake_var("IMAGE_ROOTFS", rootfs_dir)
@@ -97,6 +97,9 @@ class RootfsPlugin(SourcePlugin):
part.has_fstab = os.path.exists(os.path.join(part.rootfs_dir, "etc/fstab"))
pseudo_dir = os.path.join(part.rootfs_dir, "../pseudo")
if not os.path.lexists(pseudo_dir):
+ pseudo_dir = os.path.join(cls.__get_rootfs_dir(None), '../pseudo')
+
+ if not os.path.lexists(pseudo_dir):
logger.warn("%s folder does not exist. "
"Usernames and permissions will be invalid " % pseudo_dir)
pseudo_dir = None
diff --git a/poky/scripts/runqemu-addptable2image b/poky/scripts/runqemu-addptable2image
index ca29427258..87a8da3a63 100755
--- a/poky/scripts/runqemu-addptable2image
+++ b/poky/scripts/runqemu-addptable2image
@@ -1,6 +1,6 @@
#!/bin/sh
-# Add a partion table to an ext2 image file
+# Add a partition table to an ext2 image file
#
# Copyright (C) 2006-2007 OpenedHand Ltd.
#